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
Knock your images before these make you painful.

image-knocker Knock your images before these make you painful. Background One day, I had run my deep learning model training program and got off work

Yonghye Kwon 9 Jul 25, 2022
Honcho: a python clone of Foreman. For managing Procfile-based applications.

___ ___ ___ ___ ___ ___ /\__\ /\ \ /\__\ /\ \ /\__\ /\

Nick Stenning 1.5k Jan 03, 2023
Apache Airflow - A platform to programmatically author, schedule, and monitor workflows

Apache Airflow Apache Airflow (or simply Airflow) is a platform to programmatically author, schedule, and monitor workflows. When workflows are define

The Apache Software Foundation 28.6k Jan 01, 2023
Define and run multi-container applications with Docker

Docker Compose Docker Compose is a tool for running multi-container applications on Docker defined using the Compose file format. A Compose file is us

Docker 28.2k Jan 08, 2023
Simple, Pythonic remote execution and deployment.

Welcome to Fabric! Fabric is a high level Python (2.7, 3.4+) library designed to execute shell commands remotely over SSH, yielding useful Python obje

Fabric 13.8k Jan 06, 2023
strava-offline is a tool to keep a local mirror of Strava activities for further analysis/processing:

strava-offline Overview strava-offline is a tool to keep a local mirror of Strava activities for further analysis/processing: synchronizes metadata ab

Tomáš Janoušek 29 Dec 14, 2022
A cron monitoring tool written in Python & Django

Healthchecks Healthchecks is a cron job monitoring service. It listens for HTTP requests and email messages ("pings") from your cron jobs and schedule

Healthchecks 5.8k Jan 02, 2023
A tool to clone efficiently all the repos in an organization

cloner A tool to clone efficiently all the repos in an organization Installation MacOS (not yet tested) python3 -m venv .venv pip3 install virtualenv

Ramon 6 Apr 15, 2022
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
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
Automatically capture your Ookla Speedtest metrics and display them in a Grafana dashboard

Speedtest All-In-One Automatically capture your Ookla Speedtest metrics and display them in a Grafana dashboard. Getting Started About This Code This

Aaron Melton 2 Feb 22, 2022
Tiny Git is a simplified version of Git with only the basic functionalities to gain better understanding of git internals.

Tiny Git is a simplified version of Git with only the basic functionalities to gain better understanding of git internals. Implemented Functi

Ahmed Ayman 2 Oct 15, 2021
Prometheus exporter for AWS Simple Queue Service (SQS)

Prometheus SQS Exporter Prometheus exporter for AWS Simple Queue Service (SQS) Metrics Metric Description ApproximateNumberOfMessages Returns the appr

Gabriel M. Dutra 0 Jan 31, 2022
This projects provides the documentation and the automation(code) for the Oracle EMEA WLA COA Demo UseCase.

COA DevOps Training UseCase This projects provides the documentation and the automation(code) for the Oracle EMEA WLA COA Demo UseCase. Demo environme

Cosmin Tudor 1 Jan 28, 2022
Glances an Eye on your system. A top/htop alternative for GNU/Linux, BSD, Mac OS and Windows operating systems.

Glances - An eye on your system Summary Glances is a cross-platform monitoring tool which aims to present a large amount of monitoring information thr

Nicolas Hennion 22k Jan 08, 2023
a CLI that provides a generic automation layer for assessing the security of ML models

Counterfit About | Getting Started | Learn More | Acknowledgments | Contributing | Trademarks | Contact Us -------------------------------------------

Microsoft Azure 575 Jan 02, 2023
Let's learn how to build, release and operate your containerized applications to Amazon ECS and AWS Fargate using AWS Copilot.

🚀 Welcome to AWS Copilot Workshop In this workshop, you'll learn how to build, release and operate your containerised applications to Amazon ECS and

Donnie Prakoso 15 Jul 14, 2022
Pulumi - Developer-First Infrastructure as Code. Your Cloud, Your Language, Your Way 🚀

Pulumi's Infrastructure as Code SDK is the easiest way to create and deploy cloud software that use containers, serverless functions, hosted services,

Pulumi 14.7k Jan 08, 2023
RMRK spy bot for RMRK hackathon

rmrk_spy_bot RMRK spy bot https://t.me/RMRKspyBot for rmrk hacktoberfest https://rmrk.devpost.com/ Birds and items price and rarity estimation Reports

Victor Ryabinin 2 Sep 06, 2022
Flexible and scalable monitoring framework

Presentation of the Shinken project Welcome to the Shinken project. Shinken is a modern, Nagios compatible monitoring framework, written in Python. It

Gabès Jean 1.1k Dec 18, 2022