{"id":19462592,"url":"https://github.com/ndsol/subgn","last_synced_at":"2026-05-16T06:02:45.307Z","repository":{"id":180770466,"uuid":"93566249","full_name":"ndsol/subgn","owner":"ndsol","description":"gn meta-build system","archived":false,"fork":false,"pushed_at":"2020-05-23T22:23:55.000Z","size":6360,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-08T02:51:44.283Z","etag":null,"topics":["build-system","chromium","ninja"],"latest_commit_sha":null,"homepage":"https://chromium.googlesource.com/chromium/src/tools/gn","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ndsol.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2017-06-06T21:39:59.000Z","updated_at":"2021-11-27T08:27:51.000Z","dependencies_parsed_at":null,"dependency_job_id":"e6309b3b-e9a6-4802-a542-3caf6476d28f","html_url":"https://github.com/ndsol/subgn","commit_stats":null,"previous_names":["ndsol/subgn"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ndsol%2Fsubgn","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ndsol%2Fsubgn/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ndsol%2Fsubgn/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ndsol%2Fsubgn/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ndsol","download_url":"https://codeload.github.com/ndsol/subgn/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240672817,"owners_count":19838929,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["build-system","chromium","ninja"],"created_at":"2024-11-10T18:04:02.456Z","updated_at":"2026-05-16T06:02:40.257Z","avatar_url":"https://github.com/ndsol.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [gn meta-build system](https://github.com/ndsol/subgn) [![CI Status](https://travis-ci.org/ndsol/subgn.svg?branch=master)](https://travis-ci.org/ndsol/subgn)\n\nActually this is \"sub\"gn.\nsubgn:gn::[subninja](https://github.com/ndsol/subninja):ninja.\n\n\u003e GN is a meta-build system that generates\n[NinjaBuild](https://ninja-build.org/) files so that you can build\n~~Chromium~~ anything you want with Ninja.\n\nThe official **gn** is\n[here](https://chromium.googlesource.com/chromium/src/tools/gn/). This repo\ntracks the official repo with a few minor additional features.\n\n### So is this a fork then?\n\nYeah, sure. Since \"official gn\" lives on chromium.googlesource.com, this repo\ndoesn't bother to clone all git commits. The history has been squashed.\n\nPatches are kept to an absolute minimum. No changes here should ever cause a\nbuild to fail which works with \"official gn.\"\n\n# Building gn\n\nTo build `out_bootstrap/gn`, type:\n```\ngit clone https://github.com/ndsol/subgn\nsubgn/build.cmd\n```\n\n### How to replicate what is here\n\n[Build instructions](https://gist.github.com/mohamed/4fa7eb75807463d4dfa3)\n(semi-official?) from 2015:\n```\n#!/bin/bash\n\nset -e\nset -v\n\n# Get the sources\nmkdir gn-standalone\ncd gn-standalone\nmkdir tools\ncd tools\ngit clone https://chromium.googlesource.com/chromium/src/tools/gn\ncd ..\nmkdir -p third_party/libevent\ncd third_party/libevent\nwget --no-check-certificate https://chromium.googlesource.com/chromium/chromium/+archive/master/third_party/libevent.tar.gz\ntar -xvzf libevent.tar.gz\ncd ../..\ngit clone https://chromium.googlesource.com/chromium/src/base\ngit clone https://chromium.googlesource.com/chromium/src/build\ngit clone https://chromium.googlesource.com/chromium/src/build/config\nmkdir testing\ncd testing\ngit clone https://chromium.googlesource.com/chromium/testing/gtest\ncd ..\n\n# Build\ncd tools/gn\n./bootstrap/bootstrap.py -s\n```\n\nThe applied patch set is included as [subgn.patch](subgn.patch).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fndsol%2Fsubgn","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fndsol%2Fsubgn","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fndsol%2Fsubgn/lists"}