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
Oracle Cloud Infrastructure Object Storage fsspec implementation

Oracle Cloud Infrastructure Object Storage fsspec implementation The Oracle Cloud Infrastructure Object Storage service is an internet-scale, high-per

Oracle 9 Dec 18, 2022
Rundeck / Grafana / Prometheus / Rundeck Exporter integration demo

Rundeck / Prometheus / Grafana integration demo via Rundeck Exporter This is a demo environment that shows how to monitor a Rundeck instance using Run

Reiner 4 Oct 14, 2022
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
Python job scheduling for humans.

schedule Python job scheduling for humans. Run Python functions (or any other callable) periodically using a friendly syntax. A simple to use API for

Dan Bader 10.4k Jan 02, 2023
This Docker container is build to run on a server an provide an easy to use interface for every student to vote for their councilors

This Docker container is build to run on a server and provide an easy to use interface for every student to vote for their councilors.

Robin Adelwarth 7 Nov 23, 2022
framework providing automatic constructions of vulnerable infrastructures

中文 | English 1 Introduction Metarget = meta- + target, a framework providing automatic constructions of vulnerable infrastructures, used to deploy sim

rambolized 685 Dec 28, 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
Ganeti is a virtual machine cluster management tool built on top of existing virtualization technologies such as Xen or KVM and other open source software.

Ganeti 3.0 =========== For installation instructions, read the INSTALL and the doc/install.rst files. For a brief introduction, read the ganeti(7) m

395 Jan 04, 2023
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
Universal Command Line Interface for Amazon Web Services

aws-cli This package provides a unified command line interface to Amazon Web Services. Jump to: Getting Started Getting Help More Resources Getting St

Amazon Web Services 13.3k Jan 01, 2023
Hackergame nc 类题目的 Docker 容器资源限制、动态 flag、网页终端

Hackergame nc 类题目的 Docker 容器资源限制、动态 flag、网页终端 快速入门 配置证书 证书用于验证用户 Token。请确保这里的证书文件(cert.pem)与 Hackergame 平台 配置的证书相同,这样 Hackergame 平台为每个用户生成的 Token 才可以通

USTC Hackergame 68 Nov 09, 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
Ansible Collection: A collection of Ansible Modules and Lookup Plugins (MLP) from Linuxfabrik.

ansible_mlp An Ansible collection of Ansible Modules and Lookup Plugins (MLP) from Linuxfabrik. Ansible Bitwarden Item Lookup Plugin Returns a passwor

Linuxfabrik 2 Feb 07, 2022
Bugbane - Application security tools for CI/CD pipeline

BugBane Набор утилит для аудита безопасности приложений. Основные принципы и осо

GardaTech 20 Dec 09, 2022
Wiremind Kubernetes helper

Wiremind Kubernetes helper This Python library is a high-level set of Kubernetes Helpers allowing either to manage individual standard Kubernetes cont

Wiremind 3 Oct 09, 2021
sysctl/sysfs settings on a fly for Kubernetes Cluster. No restarts are required for clusters and nodes.

SysBindings Daemon Little toolkit for control the sysctl/sysfs bindings on Kubernetes Cluster on the fly and without unnecessary restarts of cluster o

Wallarm 19 May 06, 2022
Play Wordle from any Kubernetes cluster.

wordle-operator 🟩 ⬛ 🟩 🟨 ⬛ Play Wordle from any Kubernetes cluster. Using the power of CustomResourceDefinitions and Kubernetes Operators, now you c

Lucas Melin 1 Jan 15, 2022
Build and Push docker image in Python (luigi + docker-py)

Docker build images workflow in Python Since docker hub stopped building images for free accounts, I've been looking for another way to do it. I could

Fabien D. 2 Dec 15, 2022
Cobbler is a versatile Linux deployment server

Cobbler Cobbler is a Linux installation server that allows for rapid setup of network installation environments. It glues together and automates many

Cobbler 2.4k Dec 24, 2022
Dockerized iCloud drive

iCloud-drive-docker is a simple iCloud drive client in Docker environment. It uses pyiCloud python library to interact with iCloud

Mandar Patil 376 Jan 01, 2023