CI repo for building Skia as a shared library

Related tags

DevOps ToolsSkiaBuild
Overview

Automated Skia builds

This repo is dedicated to building Skia binaries for use in Skija.

Prebuilt binaries

Prebuilt binaries can be found in releases.

Building next version of Skia

Update version in .github/workflows/build.yml.

Building locally

python3 script/checkout.py --version m91-b99622c05a
python3 script/build.py
python3 script/archive.py

To build a debug build:

python3 script/checkout.py --version m91-b99622c05a
python3 script/build.py --build-type Debug
python3 script/archive.py --build-type Debug
You might also like...
A repo for working with and building daos

DAO Mix DAO Mix About How to DAO No Code Tools Getting Started Prerequisites Installation Usage On-Chain Governance Example Off-Chain governance Examp

A simple shared budget manager web application

I hate money I hate money is a web application made to ease shared budget management. It keeps track of who bought what, when, and for whom; and helps

A PyTorch implementation of paper
A PyTorch implementation of paper "Learning Shared Semantic Space for Speech-to-Text Translation", ACL (Findings) 2021

Chimera: Learning Shared Semantic Space for Speech-to-Text Translation This is a Pytorch implementation for the "Chimera" paper Learning Shared Semant

IMGUR5K handwriting set. It is a handwritten in-the-wild dataset, which contains challenging real world handwritten samples from different writers.The dataset is shared as a set of image urls with annotations. This code downloads the images and verifies the hash to the image to avoid data contamination.  Shared Attention for Multi-label Zero-shot Learning
Shared Attention for Multi-label Zero-shot Learning

Shared Attention for Multi-label Zero-shot Learning Overview This repository contains the implementation of Shared Attention for Multi-label Zero-shot

Shared code for training sentence embeddings with Flax / JAX

flax-sentence-embeddings This repository will be used to share code for the Flax / JAX community event to train sentence embeddings on 1B+ training pa

Perfect implement. Model shared. x0.5 (Top1:60.646) and 1.0x (Top1:69.402).

Shufflenet-v2-Pytorch Introduction This is a Pytorch implementation of faceplusplus's ShuffleNet-v2. For details, please read the following papers:

This repository will (hopefully) always contain the latest version of the libProfessorP.asm.so shared object.

libPuhfessorP - Deploy Repo This repo should (hopefully) always contain the latest version of the libPuhfessorP.asm.so shared object, to be linked wit

A PyTorch implementation of paper
A PyTorch implementation of paper "Learning Shared Semantic Space for Speech-to-Text Translation", ACL (Findings) 2021

Chimera: Learning Shared Semantic Space for Speech-to-Text Translation This is a Pytorch implementation for the "Chimera" paper Learning Shared Semant

The implementation of the paper
The implementation of the paper "HIST: A Graph-based Framework for Stock Trend Forecasting via Mining Concept-Oriented Shared Information".

The HIST framework for stock trend forecasting The implementation of the paper "HIST: A Graph-based Framework for Stock Trend Forecasting via Mining C

Can a machine learning project be implemented to estimate the salaries of baseball players whose salary information and career statistics for 1986 are shared?

END TO END MACHINE LEARNING PROJECT ON HITTERS DATASET Can a machine learning project be implemented to estimate the salaries of baseball players whos

SongFinder Bot helps you to find song name by recognising via voice note or instagram reels shared link.

SongFinder V1.1 SongFinder to detect songs name by just sending voice note or instagram reels links to your telegram bot. FFMPEG must be installed on

Source code for CsiNet and CRNet using Fully Connected Layer-Shared feedback architecture.

FCS-applications Source code for CsiNet and CRNet using the Fully Connected Layer-Shared feedback architecture. Introduction This repository contains

Shared utility scripts for AI for Earth projects and team members

Overview Shared utilities developed by the Microsoft AI for Earth team The general convention in this repo is that users who want to consume these uti

A small site to list shared directories
A small site to list shared directories

Nebula Server Directories This site can be used to list folder and subdirectories in your server : Python It's required to have Python 3.8 or more ins

Implements a polyglot REPL which supports multiple languages and shared meta-object protocol scope between REPLs.
Implements a polyglot REPL which supports multiple languages and shared meta-object protocol scope between REPLs.

MetaCall Polyglot REPL Description This repository implements a Polyglot REPL which shares the state of the meta-object protocol between the REPLs. Us

GPU implementation of $k$-Nearest Neighbors and Shared-Nearest Neighbors

GPU implementation of kNN and SNN GPU implementation of $k$-Nearest Neighbors and Shared-Nearest Neighbors Supported by numba cuda and faiss library E

Scripts to convert the Ted-MDB corpora into the formats for DISRPT shared task and the converted corpora

Scripts to convert the Ted-MDB corpora into the formats for DISRPT shared task and the converted corpora.

Official codebase for ICLR oral paper Unsupervised Vision-Language Grammar Induction with Shared Structure Modeling

CLIORA This is the official codebase for ICLR oral paper: Unsupervised Vision-Language Grammar Induction with Shared Structure Modeling. We introduce

Comments
  • required source headers does not exist in zip

    required source headers does not exist in zip

    unfortunately there are still more header files not present in the zip

    /Users/smallville7123/StudioProjects/Astrid/app/src/main/cpp/SkiaApp/ViewSystem/SkiaBuild/Skia-m100-d5a507cafd-macos-Release-x64/src/gpu/GrShaderCaps.h:12:10: fatal error: 'src/gpu/glsl/GrGLSL.h' file not found #include "src/gpu/glsl/GrGLSL.h"

    Matthews-MacBook-Pro:SkiaApp smallville7123$ find . -name GrGLSL.h
    ./ViewSystem/SkiaBuild/skia/src/gpu/glsl/GrGLSL.h
    Matthews-MacBook-Pro:SkiaApp smallville7123$
    

    this is my CMake

    cmake_minimum_required(VERSION 3.10.2)
    project(SkiaBuild)
    
    set(CMAKE_CXX_STANDARD 17)
    set(CMAKE_CXX_STANDARD_REQUIRED ON)
    set(CMAKE_CXX_EXTENSIONS OFF)
    
    add_library(SkiaBuild SHARED empty.cpp)
    add_library(SkiaBuild_Debug SHARED empty.cpp)
    
    target_compile_definitions(SkiaBuild PUBLIC SK_GL=1 SK_RELEASE=1)
    target_compile_definitions(SkiaBuild_Debug PUBLIC SK_GL=1 SK_DEBUG=1)
    
    set(SKIA_OUT Shared)
    set(SKIA_OUT_DEBUG Shared_Debug)
    
    set(SKIA_DIR        skia) #Skia-m100-d5a507cafd-macos-${SKIA_OUT})
    set(SKIA_DIR_DEBUG  skia) #Skia-m100-d5a507cafd-macos-${SKIA_OUT_DEBUG})
    
    target_include_directories(SkiaBuild PUBLIC
        ${SKIA_DIR}
        ${SKIA_DIR}/include/android
        ${SKIA_DIR}/include/c
        ${SKIA_DIR}/include/codec
        ${SKIA_DIR}/include/config
        ${SKIA_DIR}/include/core
        ${SKIA_DIR}/include/docs
        ${SKIA_DIR}/include/effects
        ${SKIA_DIR}/include/encode
        ${SKIA_DIR}/include/gpu
        ${SKIA_DIR}/include/pathops
        ${SKIA_DIR}/include/ports
        ${SKIA_DIR}/include/private
        ${SKIA_DIR}/include/sksl
        ${SKIA_DIR}/include/svg
        ${SKIA_DIR}/include/third_party/skcms
        ${SKIA_DIR}/include/third_party/vulkan
        ${SKIA_DIR}/include/utils
        ${SKIA_DIR}/src/core
        ${SKIA_DIR}/src/c
        ${SKIA_DIR}/src/codec
        ${SKIA_DIR}/src/core
        ${SKIA_DIR}/src/effects
        ${SKIA_DIR}/src/gpu
        ${SKIA_DIR}/src/image
        ${SKIA_DIR}/src/images
        ${SKIA_DIR}/src/lazy
        ${SKIA_DIR}/src/opts
        ${SKIA_DIR}/src/pathops
        ${SKIA_DIR}/src/pdf
        ${SKIA_DIR}/src/ports
        ${SKIA_DIR}/src/sfnt
        ${SKIA_DIR}/src/shaders
        ${SKIA_DIR}/src/sksl
        ${SKIA_DIR}/src/svg
        ${SKIA_DIR}/src/utils
        ${SKIA_DIR}/src/xml
        ${SKIA_DIR}/src/xps
    )
    
    target_include_directories(SkiaBuild_Debug PUBLIC
        ${SKIA_DIR_DEBUG}
        ${SKIA_DIR_DEBUG}/include/android
        ${SKIA_DIR_DEBUG}/include/c
        ${SKIA_DIR_DEBUG}/include/codec
        ${SKIA_DIR_DEBUG}/include/config
        ${SKIA_DIR_DEBUG}/include/core
        ${SKIA_DIR_DEBUG}/include/docs
        ${SKIA_DIR_DEBUG}/include/effects
        ${SKIA_DIR_DEBUG}/include/encode
        ${SKIA_DIR_DEBUG}/include/gpu
        ${SKIA_DIR_DEBUG}/include/pathops
        ${SKIA_DIR_DEBUG}/include/ports
        ${SKIA_DIR_DEBUG}/include/private
        ${SKIA_DIR_DEBUG}/include/sksl
        ${SKIA_DIR_DEBUG}/include/svg
        ${SKIA_DIR_DEBUG}/include/third_party/skcms
        ${SKIA_DIR_DEBUG}/include/third_party/vulkan
        ${SKIA_DIR_DEBUG}/include/utils
        ${SKIA_DIR_DEBUG}/src/core
        ${SKIA_DIR_DEBUG}/src/c
        ${SKIA_DIR_DEBUG}/src/codec
        ${SKIA_DIR_DEBUG}/src/core
        ${SKIA_DIR_DEBUG}/src/effects
        ${SKIA_DIR_DEBUG}/src/gpu
        ${SKIA_DIR_DEBUG}/src/image
        ${SKIA_DIR_DEBUG}/src/images
        ${SKIA_DIR_DEBUG}/src/lazy
        ${SKIA_DIR_DEBUG}/src/opts
        ${SKIA_DIR_DEBUG}/src/pathops
        ${SKIA_DIR_DEBUG}/src/pdf
        ${SKIA_DIR_DEBUG}/src/ports
        ${SKIA_DIR_DEBUG}/src/sfnt
        ${SKIA_DIR_DEBUG}/src/shaders
        ${SKIA_DIR_DEBUG}/src/sksl
        ${SKIA_DIR_DEBUG}/src/svg
        ${SKIA_DIR_DEBUG}/src/utils
        ${SKIA_DIR_DEBUG}/src/xml
        ${SKIA_DIR_DEBUG}/src/xps
    )
    
    if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR
            CMAKE_CXX_COMPILER_ID MATCHES "GNU")
        if(APPLE)
            set(WHOLE_ARCHIVE_FLAG "-Wl,-all_load" CACHE INTERNAL "all_load flag")
            set(NO_WHOLE_ARCHIVE_FLAG "-Wl,-noall_load" CACHE INTERNAL "noall_load flag")
        else()
            set(WHOLE_ARCHIVE_FLAG "-Wl,--whole-archive" CACHE INTERNAL "whole-archive flag")
            set(NO_WHOLE_ARCHIVE_FLAG "-Wl,--no-whole-archive" CACHE INTERNAL "no-whole-archive flag")
        endif()
    else()
        set(WHOLE_ARCHIVE_FLAG "")
        set(NO_WHOLE_ARCHIVE_FLAG "")
    endif()
    
    # we cannot link to static libs such as icu, skresources, dng_sdk, pathkit, ect
    # attempting to do so brings undefined references
    
    #file(GLOB SKIA_LIBS_STATIC ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR}/out/${SKIA_OUT}/*.a)
    file(GLOB SKIA_WEBP_LIBS_STATIC ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR}/out/${SKIA_OUT}/libwebp*.a)
    file(GLOB SKIA_LIBS_SHARED ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR}/out/${SKIA_OUT}/*.so)
    
    target_link_libraries(
            SkiaBuild
            OpenGL_Library
            ${SKIA_LIBS_SHARED}
    
            ${WHOLE_ARCHIVE_FLAG}
            ${SKIA_LIBS_STATIC}
    
            # link to what we can
            ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR}/out/${SKIA_OUT}/libexpat.a
            ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR}/out/${SKIA_OUT}/libharfbuzz.a
            ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR}/out/${SKIA_OUT}/libjpeg.a
            ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR}/out/${SKIA_OUT}/libpiex.a
            ${SKIA_WEBP_LIBS_STATIC}
    
            ${NO_WHOLE_ARCHIVE_FLAG}
    )
    
    #file(GLOB SKIA_LIBS_STATIC_DEBUG ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR_DEBUG}/out/${SKIA_OUT_DEBUG}/*.a)
    file(GLOB SKIA_WEBP_LIBS_STATIC_DEBUG ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR_DEBUG}/out/${SKIA_OUT_DEBUG}/libwebp*.a)
    file(GLOB SKIA_LIBS_SHARED_DEBUG ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR_DEBUG}/out/${SKIA_OUT_DEBUG}/*.so)
    
    target_link_libraries(
            SkiaBuild_Debug
            OpenGL_Library
            ${SKIA_LIBS_SHARED_DEBUG}
    
            ${WHOLE_ARCHIVE_FLAG}
            ${SKIA_LIBS_STATIC_DEBUG}
    
            # link to what we can
            ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR_DEBUG}/out/${SKIA_OUT_DEBUG}/libexpat.a
            ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR_DEBUG}/out/${SKIA_OUT_DEBUG}/libharfbuzz.a
            ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR_DEBUG}/out/${SKIA_OUT_DEBUG}/libjpeg.a
            ${CMAKE_CURRENT_SOURCE_DIR}/${SKIA_DIR_DEBUG}/out/${SKIA_OUT_DEBUG}/libpiex.a
            ${SKIA_WEBP_LIBS_STATIC_DEBUG}
    
            ${NO_WHOLE_ARCHIVE_FLAG}
    )
    
    
    opened by mgood7123 7
  • [fork] on windows (Release)

    [fork] on windows (Release) "release.py" urllib.error.HTTPError: HTTP Error 401: Unauthorized

    I have created a fork in order to build a windows (Release) with direct3d disabled. Local build was unsuccessful, several errors, so I have forked SkiaBuild in order to run the same actions as original, with 'skia_use_direct3d=false' and go on to build a new skija dll from there. Trying to run current github actions, I get an authorization - permission error.

    "release.py" urllib.error.HTTPError: HTTP Error 401: Unauthorized Error: Process completed with exit code 1. ##[debug]Finishing: Run python3 script/release.py --version m109-664500fa93 --build-type Release

    Do we have any idea why?

    opened by istinnstudio 4
Releases(m109-664500fa93)
Owner
Humble UI
Humble UI
Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions

Linux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions

Arie Bregman 35.1k Jan 02, 2023
Blazingly-fast :rocket:, rock-solid, local application development :arrow_right: with Kubernetes.

Gefyra Gefyra gives Kubernetes-("cloud-native")-developers a completely new way of writing and testing their applications. Over are the times of custo

Michael Schilonka 352 Dec 26, 2022
A basic instruction for Kubernetes setup and understanding.

A basic instruction for Kubernetes setup and understanding Module ID Module Guide - Install Kubernetes Cluster k8s-install 3 Docker Core Technology mo

648 Jan 02, 2023
Travis CI testing a Dockerfile based on Palantir's remix of Apache Cassandra, testing IaC, and testing integration health of Debian

Testing Palantir's remix of Apache Cassandra with Snyk & Travis CI This repository is to show Travis CI testing a Dockerfile based on Palantir's remix

Montana Mendy 1 Dec 20, 2021
MLops tools review for execution on multiple cluster types: slurm, kubernetes, dask...

MLops tools review focused on execution using multiple cluster types: slurm, kubernetes, dask...

4 Nov 30, 2022
IP address management (IPAM) and data center infrastructure management (DCIM) tool.

NetBox is an IP address management (IPAM) and data center infrastructure management (DCIM) tool. Initially conceived by the network engineering team a

NetBox Community 11.8k Jan 07, 2023
Automate SSH in python easily!

RedExpect RedExpect makes automating remote machines over SSH very easy to do and is very fast in doing exactly what you ask of it. Based on ssh2-pyth

Red_M 19 Dec 17, 2022
Helperpod - A CLI tool to run a Kubernetes utility pod with pre-installed tools that can be used for debugging/testing purposes inside a Kubernetes cluster

Helperpod is a CLI tool to run a Kubernetes utility pod with pre-installed tools that can be used for debugging/testing purposes inside a Kubernetes cluster.

Atakan Tatlı 2 Feb 05, 2022
Run your clouds in RAID.

UniKlaud Run your clouds in RAID Table of Contents About The Project Built With Getting Started Installation Usage Roadmap Contributing License Contac

3 Jan 16, 2022
Push Container Image To Docker Registry In Python

push-container-image-to-docker-registry 概要 push-container-image-to-docker-registry は、エッジコンピューティング環境において、特定のエッジ端末上の Private Docker Registry に特定のコンテナイメー

Latona, Inc. 3 Nov 04, 2021
Convenient tool to manage multiple VMs at once using libvirt

Convenient tool to manage multiple VMs at once using libvirt Installing To install the tool and its dependencies: pip install -e . Getting completion

Cedric Bosdonnat 13 Nov 11, 2022
Simple ssh overlay for easy, remote server management written in Python GTK with paramiko

Simple "ssh" overlay for easy, remote server management written in Python GTK with paramiko

kłapouch 3 May 01, 2022
Cross-platform lib for process and system monitoring in Python

Home Install Documentation Download Forum Blog Funding What's new Summary psutil (process and system utilities) is a cross-platform library for retrie

Giampaolo Rodola 9k Jan 02, 2023
gunicorn 'Green Unicorn' is a WSGI HTTP Server for UNIX, fast clients and sleepy applications.

Gunicorn Gunicorn 'Green Unicorn' is a Python WSGI HTTP Server for UNIX. It's a pre-fork worker model ported from Ruby's Unicorn project. The Gunicorn

Benoit Chesneau 8.7k Jan 08, 2023
Hw-ci - Hardware CD/CI and Development Container

Hardware CI & Dev Containter These containers were created for my personal hardware development projects and courses duing my undergraduate degree. Pl

Matthew Dwyer 6 Dec 25, 2022
A curated list of awesome DataOps tools

Awesome DataOps A curated list of awesome DataOps tools. Awesome DataOps Data Catalog Data Exploration Data Ingestion Data Lake Data Processing Data Q

Kelvin S. do Prado 40 Dec 23, 2022
Tencent Yun tools with python

Tencent_Yun_tools 使用 python3.9 + 腾讯云 AccessKey 利用工具 使用之前请先填写config.ini配置文件 Usage python3 Tencent_rce.py -h Scanner python3 Tencent_rce.py -s 生成CSV

<img src="> 13 Dec 20, 2022
Utilitaire de contrôle de Kubernetes

Utilitaire de contrôle de Kubernetes ** What is this ??? ** Every time we use a word in English our manager tells us to use the French translation of

Théophane Vié 9 Dec 03, 2022
Asynchronous parallel SSH client library.

parallel-ssh Asynchronous parallel SSH client library. Run SSH commands over many - hundreds/hundreds of thousands - number of servers asynchronously

1.1k Dec 31, 2022
Official Python client library for kubernetes

Kubernetes Python Client Python client for the kubernetes API. Installation From source: git clone --recursive https://github.com/kubernetes-client/py

Kubernetes Clients 5.4k Jan 02, 2023