From 0518896e30cf9e3ceba575be011f1a822dae2c35 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 17 Sep 2025 14:40:49 -0400 Subject: [PATCH 001/200] wip --- .gitignore | 4 +- README.md | 2 +- cmd/buildweb/buildweb.go | 2 +- cmd/lint/lint.go | 23 ++-- main.go | 4 +- pack/build.go | 62 +++++---- pack/info.go | 21 ++-- pack/main.go | 21 ++-- pack/search.go | 2 +- packages/boost.json | 12 +- packages/eudev.json | 12 +- packages/expat.json | 12 +- packages/glibc.json | 12 +- packages/gtest.json | 12 +- packages/hidapi.json | 12 +- packages/icu4c.json | 12 +- packages/libevent.json | 12 +- packages/libiconv.json | 12 +- packages/libtor.json | 12 +- packages/libusb.json | 12 +- packages/native/android_ndk.json | 3 - packages/native/autoconf.json | 12 +- packages/native/automake.json | 12 +- packages/native/bash.json | 12 +- packages/native/binutils@2.42.json | 12 +- packages/native/bison.json | 12 +- packages/native/boost-b2.json | 12 +- .../native/bootstrap/cpan/archive-cpio.json | 12 +- .../native/bootstrap/cpan/archive-zip.json | 12 +- .../native/bootstrap/cpan/sub-override.json | 12 +- packages/native/bootstrap/make.json | 12 +- packages/native/bootstrap/perl.json | 12 +- .../bootstrap/strip-nondeterminism.json | 12 +- packages/native/cmake-toolchain.json | 12 +- packages/native/cmake.json | 12 +- packages/native/config.json | 12 +- packages/native/cpio.json | 23 ++++ packages/native/crosstool-ng.json | 33 ++--- packages/native/ct-tools.json | 119 ++++++++++++++++++ packages/native/curl.json | 27 ++++ packages/native/expat.json | 29 +++++ packages/native/flex.json | 26 ++++ packages/native/gawk.json | 20 ++- packages/native/gawk@5.2.2.json | 12 +- packages/native/gcc@13.2@stage1.json | 12 +- packages/native/gettext.json | 16 +-- packages/native/git.json | 24 ++++ packages/native/gmp.json | 12 +- packages/native/gperf.json | 12 +- packages/native/libiconv.json | 12 +- packages/native/libpsl.json | 23 ++++ packages/native/libtool.json | 12 +- packages/native/libxml2.json | 25 ++++ packages/native/linux-headers.json | 12 +- packages/native/m4.json | 12 +- packages/native/make.json | 12 +- packages/native/mpc.json | 12 +- packages/native/mpfr.json | 12 +- packages/native/ninja.json | 12 +- packages/native/nproc.json | 12 +- packages/native/openssl.json | 12 +- packages/native/osx-cross.json | 83 ++++++++++++ packages/native/p7zip.json | 12 +- packages/native/patch.json | 12 +- packages/native/pbzx.json | 24 ++++ packages/native/perl.json | 12 +- packages/native/pkgconf.json | 12 +- packages/native/protobuf.json | 12 +- packages/native/python@3.11.13.json | 12 +- packages/native/rsync.json | 12 +- packages/native/rust@1_54_0.json | 12 +- packages/native/rust@1_55_0.json | 12 +- packages/native/rust@1_56_1.json | 12 +- packages/native/rust@1_57_0.json | 12 +- packages/native/rust@1_58_1.json | 12 +- packages/native/rust@1_59_0.json | 12 +- packages/native/rust@1_60_0.json | 12 +- packages/native/rust@1_61_0.json | 12 +- packages/native/rust@1_62_0.json | 12 +- packages/native/rust@1_63_0.json | 12 +- packages/native/rust@1_64_0.json | 12 +- packages/native/rust@1_65_0.json | 12 +- packages/native/rust@1_66_1.json | 12 +- packages/native/rust@1_67_1.json | 12 +- packages/native/rust@1_68_2.json | 12 +- packages/native/rust@1_69_0.json | 12 +- packages/native/rust@1_70_0.json | 12 +- packages/native/rust@1_71_1.json | 12 +- packages/native/rust@1_72_1.json | 12 +- packages/native/rust@1_73_0.json | 12 +- packages/native/rust@1_74_1.json | 12 +- packages/native/rust@1_75_0.json | 12 +- packages/native/rust@1_76_0.json | 12 +- packages/native/rust@1_77_1.json | 12 +- packages/native/rust@1_78_0.json | 12 +- packages/native/rust@1_79_0.json | 12 +- packages/native/rust@1_80_1.json | 12 +- packages/native/rust@1_81_0.json | 12 +- packages/native/rust@1_82_0.json | 12 +- packages/native/rust@1_83_0.json | 12 +- packages/native/rust@1_84_1.json | 12 +- packages/native/rust@1_85_1.json | 12 +- packages/native/rust@1_86_0.json | 12 +- packages/native/rust@1_87_0.json | 12 +- packages/native/rust@1_88_0.json | 12 +- packages/native/sed.json | 12 +- packages/native/texinfo.json | 12 +- packages/native/xar.json | 29 +++++ packages/native/xz.json | 49 ++++++++ packages/native/zlib.json | 12 +- packages/ncurses.json | 12 +- packages/openssl.json | 12 +- packages/polyseed.json | 12 +- packages/protobuf.json | 12 +- packages/readline.json | 12 +- packages/sodium.json | 12 +- packages/torch.json | 12 +- packages/unbound.json | 12 +- packages/unwind.json | 12 +- packages/xz.json | 12 +- packages/zeromq.json | 12 +- packages/zlib.json | 12 +- packages/zstd.json | 12 +- utils/copy.go | 13 ++ 124 files changed, 1306 insertions(+), 577 deletions(-) create mode 100644 packages/native/cpio.json create mode 100644 packages/native/ct-tools.json create mode 100644 packages/native/curl.json create mode 100644 packages/native/expat.json create mode 100644 packages/native/flex.json create mode 100644 packages/native/git.json create mode 100644 packages/native/libpsl.json create mode 100644 packages/native/libxml2.json create mode 100644 packages/native/osx-cross.json create mode 100644 packages/native/pbzx.json create mode 100644 packages/native/xar.json create mode 100644 packages/native/xz.json create mode 100644 utils/copy.go diff --git a/.gitignore b/.gitignore index 6e5411a..68dedf8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,4 @@ .buildlib -*.tar.gz \ No newline at end of file +*.tar.gz +.build +ct-config \ No newline at end of file diff --git a/README.md b/README.md index 7381319..3f2a81a 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ All package definitions live inside of this repo (this is going to change soon * // (soon) "source" indicationg a package that only contains source code (e.g. that was pulled using custom tools such as `repo` or are too complex for the built in system to handle) "type": "host", // where to find the source code - "download": { + "download": [{ // "tar.gz" indicates a (who wouldn't have guessed) .tar.gz archive that will be extracted before build steps occur // "tar.bz2" indicares a (no way.. is it gonna be..) .tar.bz2 archive that will be extracted.. you get the drill // "git" indicates a Git repository being used diff --git a/cmd/buildweb/buildweb.go b/cmd/buildweb/buildweb.go index fec5bc7..3453fae 100644 --- a/cmd/buildweb/buildweb.go +++ b/cmd/buildweb/buildweb.go @@ -239,7 +239,7 @@ func BuildWeb() { packageDepth := strings.Count(pkg.Package.Package, "/") upPath := strings.Repeat("../", packageDepth+1) // +1 to get out of web directory - return fmt.Sprintf("%ssource/%s-%s.%s", upPath, pkg.Package.Package, pkg.Package.Version, pkg.Package.Download.Kind) + return fmt.Sprintf("%ssource/%s-%s.%s", upPath, pkg.Package.Package, pkg.Package.Version, pkg.Package.Download[0].Kind) }, "getBuiltFilePath": func(packageName, filePath string) string { packageDepth := strings.Count(packageName, "/") diff --git a/cmd/lint/lint.go b/cmd/lint/lint.go index a8676b7..a6164e5 100644 --- a/cmd/lint/lint.go +++ b/cmd/lint/lint.go @@ -16,13 +16,13 @@ import ( ) type OrderedPackage struct { - Package string `json:"package"` - Version string `json:"version"` - Type string `json:"type"` - Download map[string]interface{} `json:"download,omitempty"` - Dependencies []string `json:"dependencies,omitempty"` - Patches []string `json:"patches,omitempty"` - Build map[string]interface{} `json:"build,omitempty"` + Package string `json:"package"` + Version string `json:"version"` + Type string `json:"type"` + Download []map[string]interface{} `json:"download,omitempty"` + Dependencies []string `json:"dependencies,omitempty"` + Patches []string `json:"patches,omitempty"` + Build map[string]interface{} `json:"build,omitempty"` } func Lint() { @@ -61,8 +61,13 @@ func fixFormatting() { if v, ok := data["type"].(string); ok { ordered.Type = v } - if v, ok := data["download"].(map[string]interface{}); ok { - ordered.Download = v + if v, ok := data["download"].([]interface{}); ok { + ordered.Download = make([]map[string]interface{}, len(v)) + for i, download := range v { + if m, ok := download.(map[string]interface{}); ok { + ordered.Download[i] = m + } + } } if v, ok := data["dependencies"].([]interface{}); ok { nativeDeps := []string{} diff --git a/main.go b/main.go index 27275cb..b60e83f 100644 --- a/main.go +++ b/main.go @@ -57,7 +57,9 @@ func main() { } if *argDownload { for _, pkg := range packageNames { - pkg.DownloadSource() + for _, download := range pkg.Download { + pkg.DownloadSource(download) + } } log.Println("Downloaded all sources") return diff --git a/pack/build.go b/pack/build.go index 6ad0d56..4046013 100644 --- a/pack/build.go +++ b/pack/build.go @@ -36,18 +36,18 @@ func (p *Package) ExtractEnv(host *host.Host, envPath string) { } } -func (p *Package) DownloadSource() { - sourcePath := p.GenerateBuildPath(&host.Host{}, "source") +func (p *Package) DownloadSource(download *Download) { + sourcePath := p.GenerateSourceBuildPath(download) os.MkdirAll(filepath.Dir(sourcePath), 0755) - if p.Download.Kind == "none" { + if download.Kind == "none" { return } if _, err := os.Stat(sourcePath); os.IsNotExist(err) { var err error - if p.Download.Kind == "git" { - err = utils.DownloadGit(p.Package, sourcePath, p.Download.URL, p.Download.Sha256) + if download.Kind == "git" { + err = utils.DownloadGit(p.Package, sourcePath, download.URL, download.Sha256) } else { - err = utils.DownloadFile(p.Package, sourcePath, p.Download.URL, p.Download.Sha256, false) + err = utils.DownloadFile(p.Package, sourcePath, download.URL, download.Sha256, false) } if err != nil { log.Fatalf("Failed to download source: %v", err) @@ -56,26 +56,38 @@ func (p *Package) DownloadSource() { } func (p *Package) ExtractSource(host *host.Host, buildPath string) { - sourcePath := p.GenerateBuildPath(host, "source") - p.DownloadSource() - var err error - switch p.Download.Kind { - case "tar.bz2": - err = utils.ExtractTarBz2(sourcePath, buildPath) - case "tar.gz": - err = utils.ExtractTarGz(sourcePath, buildPath) - case "tar.xz": - err = utils.ExtractTarXz(sourcePath, buildPath) - case "git": - os.MkdirAll(buildPath, 0755) - err = os.CopyFS(buildPath, os.DirFS(sourcePath)) - case "none": - return - default: - log.Fatalf("Unsupported archive kind: %s", p.Download.Kind) + for _, download := range p.Download { + p.DownloadSource(download) } - if err != nil { - log.Fatalf("Failed to extract archive %s: %v", sourcePath, err) + var err error + for _, download := range p.Download { + sourcePath := p.GenerateSourceBuildPath(download) + actualBuildPath := buildPath + if download.Path != "" { + actualBuildPath = filepath.Join(buildPath, download.Path) + } + switch download.Kind { + case "tar.bz2": + err = utils.ExtractTarBz2(sourcePath, actualBuildPath) + case "tar.gz": + err = utils.ExtractTarGz(sourcePath, actualBuildPath) + case "tar.xz": + err = utils.ExtractTarXz(sourcePath, actualBuildPath) + case "git": + os.MkdirAll(actualBuildPath, 0755) + err = os.CopyFS(actualBuildPath, os.DirFS(sourcePath)) + case "blob": + os.MkdirAll(filepath.Dir(actualBuildPath), 0755) + err = utils.Copy(sourcePath, actualBuildPath) + case "none": + return + default: + log.Fatalf("Unsupported archive kind: %s", download.Kind) + } + + if err != nil { + log.Fatalf("Failed to extract archive %s: %v", sourcePath, err) + } } } diff --git a/pack/info.go b/pack/info.go index 1c5c10b..dfa2c43 100644 --- a/pack/info.go +++ b/pack/info.go @@ -53,15 +53,22 @@ func (p *Package) ShortName(h *host.Host) string { return p.Package + "-" + p.Version + "-" + p.GeneratePackageInfoShortHash(h) } -func (p *Package) GenerateBuildPath(h *host.Host, kind string) string { - if kind == "source" { +func (p *Package) GenerateSourceBuildPath(download *Download) string { + if download.Kind == "source" { var name string - if p.Download.Kind == "git" { - name = filepath.Base(p.Download.URL) + "-" + p.Download.Sha256[0:8] + ".git" + if download.Kind == "git" { + name = filepath.Base(download.URL) + "-" + download.Sha256[0:8] + ".git" } else { - name = filepath.Base(p.Download.URL) + name = filepath.Base(download.URL) } - return filepath.Join(host.DataDir(), "..", kind, name) + return filepath.Join(host.DataDir(), "..", download.Kind, name) + } + return filepath.Join(host.DataDir(), "source", filepath.Base(download.URL)) +} + +func (p *Package) GenerateBuildPath(h *host.Host, kind string) string { + if kind == "source" { + log.Fatalf("Source build path is not supported") } return filepath.Join(host.DataDir(), kind, h.Triplet, p.ShortName(h)) } @@ -83,7 +90,7 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { "PREFIX": h.GetEnvPath(), "HOME": h.GetEnvPath() + "/home/user", "HOST_PREFIX": h.GetEnvPath(), - "NUM_CORES": strconv.Itoa(runtime.NumCPU()), + "NUM_CORES": strconv.Itoa(getNumCores()), "PATCH_DIR": filepath.Join(getwd, "patches"), } diff --git a/pack/main.go b/pack/main.go index 35f1f21..e06fa55 100644 --- a/pack/main.go +++ b/pack/main.go @@ -14,16 +14,19 @@ import ( "github.com/ryanuber/go-glob" ) +type Download struct { + Kind string `json:"kind"` + URL string `json:"url"` + Sha256 string `json:"sha256"` + Path string `json:"path"` +} + type Package struct { - Package string `json:"package"` - Version string `json:"version"` - Type string `json:"type"` - Download struct { - Kind string `json:"kind"` - URL string `json:"url"` - Sha256 string `json:"sha256"` - } `json:"download"` - Build struct { + Package string `json:"package"` + Version string `json:"version"` + Type string `json:"type"` + Download []*Download `json:"download"` + Build struct { Env []string `json:"env"` Steps []string `json:"steps"` } `json:"build"` diff --git a/pack/search.go b/pack/search.go index 7367e77..31a554d 100644 --- a/pack/search.go +++ b/pack/search.go @@ -19,7 +19,7 @@ func GetPackagesByList(list string) []*Package { for _, name := range packageNames { pkg, err := FindPackage(name) if err != nil { - log.Printf("Package %s not found in %s", name, host.GetPackagesDir()) + log.Printf("Package %s not found in %s, %s", name, host.GetPackagesDir(), err) continue } packages = append(packages, pkg) diff --git a/packages/boost.json b/packages/boost.json index c6e6ce2..7ce0167 100644 --- a/packages/boost.json +++ b/packages/boost.json @@ -2,11 +2,13 @@ "package": "boost", "version": "1_85_0", "type": "host", - "download": { - "kind": "tar.bz2", - "sha256": "7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617", - "url": "http://downloads.sourceforge.net/project/boost/boost/1.85.0/boost_1_85_0.tar.bz2" - }, + "download": [ + { + "kind": "tar.bz2", + "sha256": "7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617", + "url": "http://downloads.sourceforge.net/project/boost/boost/1.85.0/boost_1_85_0.tar.bz2" + } + ], "dependencies": [ "*-android*:native/android_ndk", "*-linux-*:native/libtool", diff --git a/packages/eudev.json b/packages/eudev.json index aca9900..b1db833 100644 --- a/packages/eudev.json +++ b/packages/eudev.json @@ -2,11 +2,13 @@ "package": "eudev", "version": "v3.2.14", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "8da4319102f24abbf7fff5ce9c416af848df163b29590e666d334cc1927f006f", - "url": "http://github.com/eudev-project/eudev/releases/download/v3.2.14/eudev-3.2.14.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "8da4319102f24abbf7fff5ce9c416af848df163b29590e666d334cc1927f006f", + "url": "http://github.com/eudev-project/eudev/releases/download/v3.2.14/eudev-3.2.14.tar.gz" + } + ], "dependencies": [ "*-linux-gnu:native/gperf", "*-linux-gnu:native/make" diff --git a/packages/expat.json b/packages/expat.json index 72cd0be..8dc044b 100644 --- a/packages/expat.json +++ b/packages/expat.json @@ -2,11 +2,13 @@ "package": "expat", "version": "2.6.0", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "a13447b9aa67d7c860783fdf6820f33ebdea996900d6d8bbc50a628f55f099f7", - "url": "http://github.com/libexpat/libexpat/releases/download/R_2_6_0/expat-2.6.0.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "a13447b9aa67d7c860783fdf6820f33ebdea996900d6d8bbc50a628f55f099f7", + "url": "http://github.com/libexpat/libexpat/releases/download/R_2_6_0/expat-2.6.0.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/autoconf", diff --git a/packages/glibc.json b/packages/glibc.json index a2963b5..196fbd2 100644 --- a/packages/glibc.json +++ b/packages/glibc.json @@ -2,11 +2,13 @@ "package": "glibc", "version": "2.39", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "97f84f3b7588cd54093a6f6389b0c1a81e70d99708d74963a2e3eab7c7dc942d", - "url": "http://ftpmirror.gnu.org/gnu/libc/glibc-2.39.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "97f84f3b7588cd54093a6f6389b0c1a81e70d99708d74963a2e3eab7c7dc942d", + "url": "http://ftpmirror.gnu.org/gnu/libc/glibc-2.39.tar.gz" + } + ], "dependencies": [ "*-linux-gnu:native/binutils@2.42", "*-linux-gnu:native/bison", diff --git a/packages/gtest.json b/packages/gtest.json index 47a22ff..8200f9c 100644 --- a/packages/gtest.json +++ b/packages/gtest.json @@ -2,11 +2,13 @@ "package": "gtest", "version": "1.17.0", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "65fab701d9829d38cb77c14acdc431d2108bfdbf8979e40eb8ae567edf10b27c", - "url": "http://github.com/google/googletest/releases/download/v1.17.0/googletest-1.17.0.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "65fab701d9829d38cb77c14acdc431d2108bfdbf8979e40eb8ae567edf10b27c", + "url": "http://github.com/google/googletest/releases/download/v1.17.0/googletest-1.17.0.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/cmake", diff --git a/packages/hidapi.json b/packages/hidapi.json index 5207d9d..8536986 100644 --- a/packages/hidapi.json +++ b/packages/hidapi.json @@ -2,11 +2,13 @@ "package": "hidapi", "version": "0.13.1", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "476a2c9a4dc7d1fc97dd223b84338dbea3809a84caea2dcd887d9778725490e3", - "url": "http://github.com/libusb/hidapi/archive/refs/tags/hidapi-0.13.1.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "476a2c9a4dc7d1fc97dd223b84338dbea3809a84caea2dcd887d9778725490e3", + "url": "http://github.com/libusb/hidapi/archive/refs/tags/hidapi-0.13.1.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/autoconf", diff --git a/packages/icu4c.json b/packages/icu4c.json index fbcd6d1..c884ca7 100644 --- a/packages/icu4c.json +++ b/packages/icu4c.json @@ -2,11 +2,13 @@ "package": "icu4c", "version": "55.2", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "eda2aa9f9c787748a2e2d310590720ca8bcc6252adf6b4cfb03b65bef9d66759", - "url": "http://github.com/unicode-org/icu/releases/download/release-55-2/icu4c-55_2-src.tgz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "eda2aa9f9c787748a2e2d310590720ca8bcc6252adf6b4cfb03b65bef9d66759", + "url": "http://github.com/unicode-org/icu/releases/download/release-55-2/icu4c-55_2-src.tgz" + } + ], "patches": [ "icu-001-dont-build-static-dynamic-twice.patch" ], diff --git a/packages/libevent.json b/packages/libevent.json index 22bbc3e..6fe6a11 100644 --- a/packages/libevent.json +++ b/packages/libevent.json @@ -2,11 +2,13 @@ "package": "libevent", "version": "2.1.12", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb", - "url": "http://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb", + "url": "http://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/autoconf", diff --git a/packages/libiconv.json b/packages/libiconv.json index 4061ccc..658a5e4 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -2,11 +2,13 @@ "package": "libiconv", "version": "1.17", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "8f74213b56238c85a50a5329f77e06198771e70dd9a739779f4c02f65d971313", - "url": "http://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.17.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "8f74213b56238c85a50a5329f77e06198771e70dd9a739779f4c02f65d971313", + "url": "http://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.17.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/config", diff --git a/packages/libtor.json b/packages/libtor.json index 4fe89ac..0e900b2 100644 --- a/packages/libtor.json +++ b/packages/libtor.json @@ -2,11 +2,13 @@ "package": "libtor", "version": "tor-0.4.8.17", "type": "host", - "download": { - "kind": "git", - "sha256": "e41649c9a34f39f1d543e064fd2b97de26d3e097", - "url": "http://gitlab.torproject.org/tpo/core/tor.git" - }, + "download": [ + { + "kind": "git", + "sha256": "e41649c9a34f39f1d543e064fd2b97de26d3e097", + "url": "http://gitlab.torproject.org/tpo/core/tor.git" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/autoconf", diff --git a/packages/libusb.json b/packages/libusb.json index 3ea1275..bac7be2 100644 --- a/packages/libusb.json +++ b/packages/libusb.json @@ -2,11 +2,13 @@ "package": "libusb", "version": "1.0.26", "type": "host", - "download": { - "kind": "tar.bz2", - "sha256": "12ce7a61fc9854d1d2a1ffe095f7b5fac19ddba095c259e6067a46500381b5a5", - "url": "http://github.com/libusb/libusb/releases/download/v1.0.26/libusb-1.0.26.tar.bz2" - }, + "download": [ + { + "kind": "tar.bz2", + "sha256": "12ce7a61fc9854d1d2a1ffe095f7b5fac19ddba095c259e6067a46500381b5a5", + "url": "http://github.com/libusb/libusb/releases/download/v1.0.26/libusb-1.0.26.tar.bz2" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/config", diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index d6aec79..1cf4539 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -2,9 +2,6 @@ "package": "native/android_ndk", "version": "r28c", "type": "native", - "download": { - "kind": "none" - }, "dependencies": [ "all:native/p7zip" ], diff --git a/packages/native/autoconf.json b/packages/native/autoconf.json index 1ebd255..57ae147 100644 --- a/packages/native/autoconf.json +++ b/packages/native/autoconf.json @@ -2,11 +2,13 @@ "package": "native/autoconf", "version": "2.72", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "afb181a76e1ee72832f6581c0eddf8df032b83e2e0239ef79ebedc4467d92d6e", - "url": "http://ftpmirror.gnu.org/gnu/autoconf/autoconf-2.72.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "afb181a76e1ee72832f6581c0eddf8df032b83e2e0239ef79ebedc4467d92d6e", + "url": "http://ftpmirror.gnu.org/gnu/autoconf/autoconf-2.72.tar.gz" + } + ], "dependencies": [ "all:native/m4", "all:native/make", diff --git a/packages/native/automake.json b/packages/native/automake.json index 13357c0..8728d5f 100644 --- a/packages/native/automake.json +++ b/packages/native/automake.json @@ -2,11 +2,13 @@ "package": "native/automake", "version": "1.18", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "af6043a5d4b3beef0c48161f4a6936259321cd101a34c1ab0768328515626c8a", - "url": "http://ftpmirror.gnu.org/gnu/automake/automake-1.18.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "af6043a5d4b3beef0c48161f4a6936259321cd101a34c1ab0768328515626c8a", + "url": "http://ftpmirror.gnu.org/gnu/automake/automake-1.18.tar.gz" + } + ], "dependencies": [ "all:native/autoconf", "all:native/m4", diff --git a/packages/native/bash.json b/packages/native/bash.json index bfddd67..a1c05c4 100644 --- a/packages/native/bash.json +++ b/packages/native/bash.json @@ -2,11 +2,13 @@ "package": "native/bash", "version": "5.3", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "0d5cd86965f869a26cf64f4b71be7b96f90a3ba8b3d74e27e8e9d9d5550f31ba", - "url": "http://ftpmirror.gnu.org/bash/bash-5.3.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "0d5cd86965f869a26cf64f4b71be7b96f90a3ba8b3d74e27e8e9d9d5550f31ba", + "url": "http://ftpmirror.gnu.org/bash/bash-5.3.tar.gz" + } + ], "dependencies": [ "all:native/make" ], diff --git a/packages/native/binutils@2.42.json b/packages/native/binutils@2.42.json index 068d071..c2d3536 100644 --- a/packages/native/binutils@2.42.json +++ b/packages/native/binutils@2.42.json @@ -2,11 +2,13 @@ "package": "native/binutils@2.42", "version": "2.42", "type": "native", - "download": { - "kind": "tar.bz2", - "sha256": "aa54850ebda5064c72cd4ec2d9b056c294252991486350d9a97ab2a6dfdfaf12", - "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.42.tar.bz2" - }, + "download": [ + { + "kind": "tar.bz2", + "sha256": "aa54850ebda5064c72cd4ec2d9b056c294252991486350d9a97ab2a6dfdfaf12", + "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.42.tar.bz2" + } + ], "dependencies": [ "*-linux-gnu:native/bison", "*-linux-gnu:native/libiconv", diff --git a/packages/native/bison.json b/packages/native/bison.json index c68ef68..96ca982 100644 --- a/packages/native/bison.json +++ b/packages/native/bison.json @@ -2,11 +2,13 @@ "package": "native/bison", "version": "3.8", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "d5d184d421aee15603939973a6b0f372f908edfb24c5bc740697497021ad9458", - "url": "http://ftpmirror.gnu.org/gnu/bison/bison-3.8.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "d5d184d421aee15603939973a6b0f372f908edfb24c5bc740697497021ad9458", + "url": "http://ftpmirror.gnu.org/gnu/bison/bison-3.8.tar.gz" + } + ], "dependencies": [ "all:native/m4", "all:native/make", diff --git a/packages/native/boost-b2.json b/packages/native/boost-b2.json index a754134..0f0be1d 100644 --- a/packages/native/boost-b2.json +++ b/packages/native/boost-b2.json @@ -2,11 +2,13 @@ "package": "native/boost-b2", "version": "1_85_0", "type": "native", - "download": { - "kind": "tar.bz2", - "sha256": "7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617", - "url": "http://downloads.sourceforge.net/project/boost/boost/1.85.0/boost_1_85_0.tar.bz2" - }, + "download": [ + { + "kind": "tar.bz2", + "sha256": "7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617", + "url": "http://downloads.sourceforge.net/project/boost/boost/1.85.0/boost_1_85_0.tar.bz2" + } + ], "build": { "steps": [ "all:./bootstrap.sh", diff --git a/packages/native/bootstrap/cpan/archive-cpio.json b/packages/native/bootstrap/cpan/archive-cpio.json index d1304c3..de05da8 100644 --- a/packages/native/bootstrap/cpan/archive-cpio.json +++ b/packages/native/bootstrap/cpan/archive-cpio.json @@ -2,11 +2,13 @@ "package": "native/bootstrap/cpan/archive-cpio", "version": "0.10", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "246fb31669764e78336b2191134122e07c44f2d82dc4f37d552ab28f8668bed3", - "url": "https://cpan.metacpan.org/authors/id/P/PI/PIXEL/Archive-Cpio-0.10.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "246fb31669764e78336b2191134122e07c44f2d82dc4f37d552ab28f8668bed3", + "url": "https://cpan.metacpan.org/authors/id/P/PI/PIXEL/Archive-Cpio-0.10.tar.gz" + } + ], "dependencies": [ "all:native/bootstrap/make", "all:native/bootstrap/perl" diff --git a/packages/native/bootstrap/cpan/archive-zip.json b/packages/native/bootstrap/cpan/archive-zip.json index be9686e..da980b7 100644 --- a/packages/native/bootstrap/cpan/archive-zip.json +++ b/packages/native/bootstrap/cpan/archive-zip.json @@ -2,11 +2,13 @@ "package": "native/bootstrap/cpan/archive-zip", "version": "1.68", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "984e185d785baf6129c6e75f8eb44411745ac00bf6122fb1c8e822a3861ec650", - "url": "https://cpan.metacpan.org/authors/id/P/PH/PHRED/Archive-Zip-1.68.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "984e185d785baf6129c6e75f8eb44411745ac00bf6122fb1c8e822a3861ec650", + "url": "https://cpan.metacpan.org/authors/id/P/PH/PHRED/Archive-Zip-1.68.tar.gz" + } + ], "dependencies": [ "all:native/bootstrap/make", "all:native/bootstrap/perl" diff --git a/packages/native/bootstrap/cpan/sub-override.json b/packages/native/bootstrap/cpan/sub-override.json index 2a2dfc9..c016a1d 100644 --- a/packages/native/bootstrap/cpan/sub-override.json +++ b/packages/native/bootstrap/cpan/sub-override.json @@ -2,11 +2,13 @@ "package": "native/bootstrap/cpan/sub-override", "version": "0.09", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "939a67c1f729968e0cc81b74958db750e1bdb7c020bee1a263332f422c2e25b5", - "url": "https://cpan.metacpan.org/authors/id/O/OV/OVID/Sub-Override-0.09.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "939a67c1f729968e0cc81b74958db750e1bdb7c020bee1a263332f422c2e25b5", + "url": "https://cpan.metacpan.org/authors/id/O/OV/OVID/Sub-Override-0.09.tar.gz" + } + ], "dependencies": [ "all:native/bootstrap/make", "all:native/bootstrap/perl" diff --git a/packages/native/bootstrap/make.json b/packages/native/bootstrap/make.json index 442f2fd..ab81108 100644 --- a/packages/native/bootstrap/make.json +++ b/packages/native/bootstrap/make.json @@ -2,11 +2,13 @@ "package": "native/bootstrap/make", "version": "4.4", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "581f4d4e872da74b3941c874215898a7d35802f03732bdccee1d4a7979105d18", - "url": "http://ftpmirror.gnu.org/gnu/make/make-4.4.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "581f4d4e872da74b3941c874215898a7d35802f03732bdccee1d4a7979105d18", + "url": "http://ftpmirror.gnu.org/gnu/make/make-4.4.tar.gz" + } + ], "build": { "steps": [ "all:./configure --disable-dependency-tracking", diff --git a/packages/native/bootstrap/perl.json b/packages/native/bootstrap/perl.json index 5f545fa..9504ccf 100644 --- a/packages/native/bootstrap/perl.json +++ b/packages/native/bootstrap/perl.json @@ -2,11 +2,13 @@ "package": "native/bootstrap/perl", "version": "5.42.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "e093ef184d7f9a1b9797e2465296f55510adb6dab8842b0c3ed53329663096dc", - "url": "http://www.cpan.org/src/5.0/perl-5.42.0.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "e093ef184d7f9a1b9797e2465296f55510adb6dab8842b0c3ed53329663096dc", + "url": "http://www.cpan.org/src/5.0/perl-5.42.0.tar.gz" + } + ], "dependencies": [ "all:native/bootstrap/make" ], diff --git a/packages/native/bootstrap/strip-nondeterminism.json b/packages/native/bootstrap/strip-nondeterminism.json index 4499093..180ae76 100644 --- a/packages/native/bootstrap/strip-nondeterminism.json +++ b/packages/native/bootstrap/strip-nondeterminism.json @@ -2,11 +2,13 @@ "package": "native/bootstrap/strip-nondeterminism", "version": "1.13.0", "type": "native", - "download": { - "kind": "tar.bz2", - "sha256": "a70cdad5d728ea78b75d09880c4b51c7d887e89d0b610149b10cfb2abc70b4fc", - "url": "https://salsa.debian.org/reproducible-builds/reproducible-lfs/-/raw/master/releases/strip-nondeterminism/strip-nondeterminism_1.13.0.tar.bz2" - }, + "download": [ + { + "kind": "tar.bz2", + "sha256": "a70cdad5d728ea78b75d09880c4b51c7d887e89d0b610149b10cfb2abc70b4fc", + "url": "https://salsa.debian.org/reproducible-builds/reproducible-lfs/-/raw/master/releases/strip-nondeterminism/strip-nondeterminism_1.13.0.tar.bz2" + } + ], "dependencies": [ "all:native/bootstrap/cpan/archive-cpio", "all:native/bootstrap/cpan/archive-zip", diff --git a/packages/native/cmake-toolchain.json b/packages/native/cmake-toolchain.json index 4350ed2..4dcde1d 100644 --- a/packages/native/cmake-toolchain.json +++ b/packages/native/cmake-toolchain.json @@ -2,11 +2,13 @@ "package": "native/cmake-toolchain", "version": "0.0.0", "type": "native", - "download": { - "kind": "git", - "sha256": "c4e7b0e5f437121d1b9c05bc5c43dac75371d799", - "url": "https://github.com/MrCyjaneK/cmake-toolchain.git" - }, + "download": [ + { + "kind": "git", + "sha256": "c4e7b0e5f437121d1b9c05bc5c43dac75371d799", + "url": "https://github.com/MrCyjaneK/cmake-toolchain.git" + } + ], "build": { "env": [], "steps": [ diff --git a/packages/native/cmake.json b/packages/native/cmake.json index 22f0f16..3a96639 100644 --- a/packages/native/cmake.json +++ b/packages/native/cmake.json @@ -2,11 +2,13 @@ "package": "native/cmake", "version": "4.0.3", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "8d3537b7b7732660ea247398f166be892fe6131d63cc291944b45b91279f3ffb", - "url": "http://github.com/Kitware/CMake/releases/download/v4.0.3/cmake-4.0.3.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "8d3537b7b7732660ea247398f166be892fe6131d63cc291944b45b91279f3ffb", + "url": "http://github.com/Kitware/CMake/releases/download/v4.0.3/cmake-4.0.3.tar.gz" + } + ], "dependencies": [ "all:native/make", "all:native/openssl" diff --git a/packages/native/config.json b/packages/native/config.json index f64d490..7d78403 100644 --- a/packages/native/config.json +++ b/packages/native/config.json @@ -2,11 +2,13 @@ "package": "native/config", "version": "2025-07-10", "type": "native", - "download": { - "kind": "git", - "sha256": "a2287c3041a3f2a204eb942e09c015eab00dc7dd", - "url": "https://https.git.savannah.gnu.org/git/config.git" - }, + "download": [ + { + "kind": "git", + "sha256": "a2287c3041a3f2a204eb942e09c015eab00dc7dd", + "url": "https://https.git.savannah.gnu.org/git/config.git" + } + ], "build": { "env": [], "steps": [ diff --git a/packages/native/cpio.json b/packages/native/cpio.json new file mode 100644 index 0000000..f30d047 --- /dev/null +++ b/packages/native/cpio.json @@ -0,0 +1,23 @@ +{ + "package": "native/cpio", + "version": "2.15", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "efa50ef983137eefc0a02fdb51509d624b5e3295c980aa127ceee4183455499e", + "url": "http://ftpmirror.gnu.org/cpio/cpio-2.15.tar.gz" + } + ], + "dependencies": [ + "all:native/make" + ], + "build": { + "env": [], + "steps": [ + "all:./configure --prefix=$PREFIX/native", + "all:make -j$NUM_CORES", + "all:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index 3a6ec25..8b05d25 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -2,28 +2,31 @@ "package": "native/crosstool-ng", "version": "1.27.0", "type": "native", - "download": { - "kind": "tar.xz", - "sha256": "0506ab98fa0ad6d263a555feeb2c7fff9bc24a434635d4b0cdff9137fe5b4477", - "url": "http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.27.0.tar.xz" - }, + "download": [ + { + "kind": "tar.xz", + "sha256": "0506ab98fa0ad6d263a555feeb2c7fff9bc24a434635d4b0cdff9137fe5b4477", + "url": "http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.27.0.tar.xz" + } + ], "dependencies": [ - "*-linux-gnu:native/autoconf", - "*-linux-gnu:native/bash", - "*-linux-gnu:native/binutils@2.42", - "*-linux-gnu:native/make", - "*-linux-gnu:native/make", - "*-linux-gnu:native/sed" + "all:native/autoconf", + "all:native/automake", + "all:native/bash", + "all:native/m4", + "all:native/make", + "all:native/perl", + "all:native/sed" ], "build": { "env": [ "x86_64-linux-gnu:TOOL_TARGET=x86_64-linux-gnu" ], "steps": [ - "*-linux-gnu:./bootstrap", - "*-linux-gnu:./configure --prefix=$PREFIX/native", - "*-linux-gnu:make -j$NUM_CORES", - "*-linux-gnu:make install DESTDIR=$STAGING_DIR" + "all:./bootstrap", + "all:./configure --prefix=$PREFIX/native", + "all:make -j$NUM_CORES", + "all:make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json new file mode 100644 index 0000000..3633953 --- /dev/null +++ b/packages/native/ct-tools.json @@ -0,0 +1,119 @@ +{ + "package": "native/ct-tools", + "version": "1.0.0", + "type": "native", + "download": [ + { + "kind": "blob", + "path": ".build/tarballs/binutils-2.43.1.tar.xz", + "sha256": "13f74202a3c4c51118b797a39ea4200d3f6cfbe224da6d1d95bb938480132dfd", + "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.43.1.tar.xz" + }, + { + "kind": "blob", + "path": ".build/tarballs/expat-2.5.0.tar.xz", + "sha256": "ef2420f0232c087801abf705e89ae65f6257df6b7931d37846a193ef2e8cdcbe", + "url": "http://github.com/libexpat/libexpat/releases/download/R_2_5_0/expat-2.5.0.tar.xz" + }, + { + "kind": "blob", + "path": ".build/tarballs/gcc-14.2.0.tar.xz", + "sha256": "a7b39bc69cbf9e25826c5a60ab26477001f7c08d85cec04bc0e29cabed6f3cc9", + "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-14.2.0/gcc-14.2.0.tar.xz" + }, + { + "kind": "blob", + "path": ".build/tarballs/gdb-16.2.tar.xz", + "sha256": "4002cb7f23f45c37c790536a13a720942ce4be0402d929c9085e92f10d480119", + "url": "http://ftpmirror.gnu.org/gnu/gdb/gdb-16.2.tar.xz" + }, + { + "kind": "blob", + "path": ".build/tarballs/gettext-0.23.1.tar.xz", + "sha256": "c1f97a72a7385b7e71dd07b5fea6cdaf12c9b88b564976b23bd8c11857af2970", + "url": "http://ftpmirror.gnu.org/gnu/gettext/gettext-0.23.1.tar.xz" + }, + { + "kind": "blob", + "path": ".build/tarballs/glibc-2.41.tar.xz", + "sha256": "a5a26b22f545d6b7d7b3dd828e11e428f24f4fac43c934fb071b6a7d0828e901", + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.41.tar.xz" + }, + { + "kind": "blob", + "path": ".build/tarballs/gmp-6.3.0.tar.xz", + "sha256": "a3c2b80201b89e68616f4ad30bc66aee4927c3ce50e33929ca819d5c43538898", + "url": "http://ftpmirror.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz" + }, + { + "kind": "blob", + "path": ".build/tarballs/isl-0.26.tar.xz", + "sha256": "a0b5cb06d24f9fa9e77b55fabbe9a3c94a336190345c2555f9915bb38e976504", + "url": "https://libisl.sourceforge.io/isl-0.26.tar.xz" + }, + { + "kind": "blob", + "path": ".build/tarballs/libiconv-1.16.tar.gz", + "sha256": "e6a1b1b589654277ee790cce3734f07876ac4ccfaecbee8afa0b649cf529cc04", + "url": "https://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.16.tar.gz" + }, + { + "kind": "blob", + "path": ".build/tarballs/linux-6.13.tar.xz", + "sha256": "e79dcc6eb86695c6babfb07c2861912b635d5075c6cd1cd0567d1ea155f80d6e", + "url": "https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.13.tar.xz" + }, + { + "kind": "blob", + "path": ".build/tarballs/mpc-1.3.1.tar.gz", + "sha256": "ab642492f5cf882b74aa0cb730cd410a81edcdbec895183ce930e706c1c759b8", + "url": "http://ftpmirror.gnu.org/gnu/mpc/mpc-1.3.1.tar.gz" + }, + { + "kind": "blob", + "path": ".build/tarballs/mpfr-4.2.1.tar.xz", + "sha256": "277807353a6726978996945af13e52829e3abd7a9a5b7fb2793894e18f1fcbb2", + "url": "http://ftpmirror.gnu.org/gnu/mpfr/mpfr-4.2.1.tar.xz" + }, + { + "kind": "blob", + "path": ".build/tarballs/ncurses-6.4.tar.gz", + "sha256": "6931283d9ac87c5073f30b6290c4c75f21632bb4fc3603ac8100812bed248159", + "url": "http://ftpmirror.gnu.org/gnu/ncurses/ncurses-6.4.tar.gz" + }, + { + "kind": "blob", + "path": ".build/tarballs/zlib-1.3.1.tar.xz", + "sha256": "38ef96b8dfe510d42707d9c781877914792541133e1870841463bfa73f883e32", + "url": "http://www.zlib.net/zlib-1.3.1.tar.xz" + }, + { + "kind": "blob", + "path": ".build/tarballs/zstd-1.5.6.tar.gz", + "sha256": "8c29e06cf42aacc1eafc4077ae2ec6c6fcb96a626157e0593d5e82a34fd403c1", + "url": "https://github.com/facebook/zstd/releases/download/v1.5.6/zstd-1.5.6.tar.gz" + } + ], + "dependencies": [ + "all:native/autoconf", + "all:native/automake", + "all:native/bash", + "all:native/crosstool-ng", + "all:native/m4", + "all:native/make", + "all:native/perl", + "all:native/sed", + "all:native/flex" + ], + "build": { + "env": [ + "x86_64-linux-gnu:TOOL_TARGET=x86_64-unknown-linux-gnu", + "aarch64-linux-gnu:TOOL_TARGET=aarch64-unknown-linux-gnu" + ], + "steps": [ + "all:ct-ng $TOOL_TARGET", + "all:echo 'CT_FORBID_DOWNLOAD=y' >> .config", + "all:env -i PATH=$PATH HOME=$HOME ct-ng build" + ] + } +} \ No newline at end of file diff --git a/packages/native/curl.json b/packages/native/curl.json new file mode 100644 index 0000000..4a83108 --- /dev/null +++ b/packages/native/curl.json @@ -0,0 +1,27 @@ +{ + "package": "native/curl", + "version": "8.15.0", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "d85cfc79dc505ff800cb1d321a320183035011fa08cb301356425d86be8fc53c", + "url": "https://curl.se/download/curl-8.15.0.tar.gz" + } + ], + "dependencies": [ + "all:native/libpsl", + "all:native/make", + "all:native/openssl" + ], + "build": { + "env": [ + "all:config_opts=--with-openssl" + ], + "steps": [ + "all:./configure $config_opts --prefix=$PREFIX/native", + "all:make -j$NUM_CORES", + "all:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/expat.json b/packages/native/expat.json new file mode 100644 index 0000000..c1d0214 --- /dev/null +++ b/packages/native/expat.json @@ -0,0 +1,29 @@ +{ + "package": "native/expat", + "version": "2.6.0", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "a13447b9aa67d7c860783fdf6820f33ebdea996900d6d8bbc50a628f55f099f7", + "url": "http://github.com/libexpat/libexpat/releases/download/R_2_6_0/expat-2.6.0.tar.gz" + } + ], + "dependencies": [ + "all:native/autoconf", + "all:native/libiconv", + "all:native/make", + "all:native/perl" + ], + "build": { + "env": [ + "all:CFLAGS=$CFLAGS -fPIC", + "all:LDFLAGS=$LDFLAGS -fPIC" + ], + "steps": [ + "all:./configure --prefix=$PREFIX/native --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", + "all:make -j$NUM_CORES", + "all:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/flex.json b/packages/native/flex.json new file mode 100644 index 0000000..4628343 --- /dev/null +++ b/packages/native/flex.json @@ -0,0 +1,26 @@ +{ + "package": "native/flex", + "version": "2.6.4", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "e87aae032bf07c26f85ac0ed3250998c37621d95f8bd748b31f15b33c45ee995", + "url": "https://github.com/westes/flex/releases/download/v2.6.4/flex-2.6.4.tar.gz" + } + ], + "dependencies": [ + "all:native/make" + ], + "build": { + "env": [ + "all:CFLAGS=$CFLAGS -fPIC", + "all:LDFLAGS=$LDFLAGS -fPIC" + ], + "steps": [ + "all:./configure --prefix=$PREFIX/native --with-pic", + "all:make -j$NUM_CORES", + "all:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/gawk.json b/packages/native/gawk.json index d12f7c7..2501d08 100644 --- a/packages/native/gawk.json +++ b/packages/native/gawk.json @@ -2,13 +2,21 @@ "package": "native/gawk", "version": "5.3.2", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "8639a1a88fb411a1be02663739d03e902a6d313b5c6fe024d0bfeb3341a19a11", - "url": "http://ftpmirror.gnu.org/gnu/gawk/gawk-5.3.2.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "8639a1a88fb411a1be02663739d03e902a6d313b5c6fe024d0bfeb3341a19a11", + "url": "http://ftpmirror.gnu.org/gnu/gawk/gawk-5.3.2.tar.gz" + } + ], "dependencies": [ - "all:native/make" + "all:native/autoconf", + "all:native/automake", + "all:native/gettext", + "all:native/libtool", + "all:native/make", + "all:native/perl", + "all:native/pkgconf" ], "build": { "env": [ diff --git a/packages/native/gawk@5.2.2.json b/packages/native/gawk@5.2.2.json index 0a78a3c..f3a40d8 100644 --- a/packages/native/gawk@5.2.2.json +++ b/packages/native/gawk@5.2.2.json @@ -2,11 +2,13 @@ "package": "native/gawk@5.2.2", "version": "5.2.2", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "945aef7ccff101f20b22a10802bc005e994ab2b8ea3e724cc1a197c62f41f650", - "url": "http://ftpmirror.gnu.org/gnu/gawk/gawk-5.2.2.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "945aef7ccff101f20b22a10802bc005e994ab2b8ea3e724cc1a197c62f41f650", + "url": "http://ftpmirror.gnu.org/gnu/gawk/gawk-5.2.2.tar.gz" + } + ], "dependencies": [ "all:native/make" ], diff --git a/packages/native/gcc@13.2@stage1.json b/packages/native/gcc@13.2@stage1.json index 208ba96..b1e4e34 100644 --- a/packages/native/gcc@13.2@stage1.json +++ b/packages/native/gcc@13.2@stage1.json @@ -2,11 +2,13 @@ "package": "native/gcc@13.2@stage1", "version": "13.2", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "8cb4be3796651976f94b9356fa08d833524f62420d6292c5033a9a26af315078", - "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-13.2.0/gcc-13.2.0.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "8cb4be3796651976f94b9356fa08d833524f62420d6292c5033a9a26af315078", + "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-13.2.0/gcc-13.2.0.tar.gz" + } + ], "dependencies": [ "*-linux-gnu:native/config", "*-linux-gnu:native/gmp", diff --git a/packages/native/gettext.json b/packages/native/gettext.json index 3a47cba..eadcd33 100644 --- a/packages/native/gettext.json +++ b/packages/native/gettext.json @@ -2,17 +2,17 @@ "package": "native/gettext", "version": "0.26", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "39acf4b0371e9b110b60005562aace5b3631fed9b1bb9ecccfc7f56e58bb1d7f", - "url": "http://ftpmirror.gnu.org/gnu/gettext/gettext-0.26.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "39acf4b0371e9b110b60005562aace5b3631fed9b1bb9ecccfc7f56e58bb1d7f", + "url": "http://ftpmirror.gnu.org/gnu/gettext/gettext-0.26.tar.gz" + } + ], "dependencies": [ - "all:native/bison", "all:native/libiconv", "all:native/make", - "all:native/sed", - "all:native/texinfo" + "all:native/sed" ], "build": { "env": [ diff --git a/packages/native/git.json b/packages/native/git.json new file mode 100644 index 0000000..c8448cb --- /dev/null +++ b/packages/native/git.json @@ -0,0 +1,24 @@ +{ + "package": "native/git", + "version": "2.51", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "3524fc5fd81f16f80e1696a8281bd8ad831048b67848015d7b7382bf365ae685", + "url": "https://github.com/git/git/archive/refs/tags/v2.51.0.tar.gz" + } + ], + "dependencies": [ + "all:native/curl", + "all:native/expat", + "all:native/make" + ], + "build": { + "env": [], + "steps": [ + "all:make -j$NUM_CORES", + "all:make DESTDIR=$STAGING_DIR$PREFIX/native install" + ] + } +} \ No newline at end of file diff --git a/packages/native/gmp.json b/packages/native/gmp.json index 4e63f8c..6de6e64 100644 --- a/packages/native/gmp.json +++ b/packages/native/gmp.json @@ -2,11 +2,13 @@ "package": "native/gmp", "version": "6.3.0", "type": "native", - "download": { - "kind": "tar.xz", - "sha256": "a3c2b80201b89e68616f4ad30bc66aee4927c3ce50e33929ca819d5c43538898", - "url": "http://ftpmirror.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz" - }, + "download": [ + { + "kind": "tar.xz", + "sha256": "a3c2b80201b89e68616f4ad30bc66aee4927c3ce50e33929ca819d5c43538898", + "url": "http://ftpmirror.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz" + } + ], "dependencies": [ "all:native/m4", "all:native/make", diff --git a/packages/native/gperf.json b/packages/native/gperf.json index 9e45c2a..572d01e 100644 --- a/packages/native/gperf.json +++ b/packages/native/gperf.json @@ -2,11 +2,13 @@ "package": "native/gperf", "version": "0.26", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "fd87e0aba7e43ae054837afd6cd4db03a3f2693deb3619085e6ed9d8d9604ad8", - "url": "http://ftpmirror.gnu.org/gnu/gperf/gperf-3.3.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "fd87e0aba7e43ae054837afd6cd4db03a3f2693deb3619085e6ed9d8d9604ad8", + "url": "http://ftpmirror.gnu.org/gnu/gperf/gperf-3.3.tar.gz" + } + ], "dependencies": [ "all:native/make" ], diff --git a/packages/native/libiconv.json b/packages/native/libiconv.json index 38c24d7..87dc74f 100644 --- a/packages/native/libiconv.json +++ b/packages/native/libiconv.json @@ -2,11 +2,13 @@ "package": "native/libiconv", "version": "1.17", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "8f74213b56238c85a50a5329f77e06198771e70dd9a739779f4c02f65d971313", - "url": "http://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.17.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "8f74213b56238c85a50a5329f77e06198771e70dd9a739779f4c02f65d971313", + "url": "http://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.17.tar.gz" + } + ], "dependencies": [ "all:native/config", "all:native/make" diff --git a/packages/native/libpsl.json b/packages/native/libpsl.json new file mode 100644 index 0000000..fb41ad0 --- /dev/null +++ b/packages/native/libpsl.json @@ -0,0 +1,23 @@ +{ + "package": "native/libpsl", + "version": "0.21.5", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "1dcc9ceae8b128f3c0b3f654decd0e1e891afc6ff81098f227ef260449dae208", + "url": "https://github.com/rockdaboot/libpsl/releases/download/0.21.5/libpsl-0.21.5.tar.gz" + } + ], + "dependencies": [ + "all:native/make" + ], + "build": { + "env": [], + "steps": [ + "all:./configure --prefix=$PREFIX/native", + "all:make -j$NUM_CORES", + "all:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/libtool.json b/packages/native/libtool.json index 3933633..b5adbe0 100644 --- a/packages/native/libtool.json +++ b/packages/native/libtool.json @@ -2,11 +2,13 @@ "package": "native/libtool", "version": "2.5.4", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "da8ebb2ce4dcf46b90098daf962cffa68f4b4f62ea60f798d0ef12929ede6adf", - "url": "http://ftpmirror.gnu.org/gnu/libtool/libtool-2.5.4.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "da8ebb2ce4dcf46b90098daf962cffa68f4b4f62ea60f798d0ef12929ede6adf", + "url": "http://ftpmirror.gnu.org/gnu/libtool/libtool-2.5.4.tar.gz" + } + ], "dependencies": [ "all:native/m4", "all:native/make" diff --git a/packages/native/libxml2.json b/packages/native/libxml2.json new file mode 100644 index 0000000..436e3fd --- /dev/null +++ b/packages/native/libxml2.json @@ -0,0 +1,25 @@ +{ + "package": "native/libxml2", + "version": "2.14.5s", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "03d006f3537616833c16c53addcdc32a0eb20e55443cba4038307e3fa7d8d44b", + "url": "https://download.gnome.org/sources/libxml2/2.14/libxml2-2.14.5.tar.xz" + } + ], + "dependencies": [ + "all:native/make", + "all:native/pkgconf", + "all:native/python@3.11.13" + ], + "build": { + "env": [], + "steps": [ + "all:./configure --prefix=$PREFIX/native", + "all:make -j$NUM_CORES", + "all:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/linux-headers.json b/packages/native/linux-headers.json index 75fc5f7..b04836d 100644 --- a/packages/native/linux-headers.json +++ b/packages/native/linux-headers.json @@ -2,11 +2,13 @@ "package": "native/linux-headers", "version": "6.15.9", "type": "native", - "download": { - "kind": "tar.xz", - "sha256": "e94f3af85492302f7a819441458f80bca0ad9912e5a4c83c699ff3c63c52957d", - "url": "https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.15.9.tar.xz" - }, + "download": [ + { + "kind": "tar.xz", + "sha256": "e94f3af85492302f7a819441458f80bca0ad9912e5a4c83c699ff3c63c52957d", + "url": "https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.15.9.tar.xz" + } + ], "dependencies": [ "*-linux-*:native/make", "*-linux-*:native/rsync", diff --git a/packages/native/m4.json b/packages/native/m4.json index 7de297f..4a7c370 100644 --- a/packages/native/m4.json +++ b/packages/native/m4.json @@ -2,11 +2,13 @@ "package": "native/m4", "version": "1.4.20", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "6ac4fc31ce440debe63987c2ebbf9d7b6634e67a7c3279257dc7361de8bdb3ef", - "url": "http://ftpmirror.gnu.org/gnu/m4/m4-1.4.20.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "6ac4fc31ce440debe63987c2ebbf9d7b6634e67a7c3279257dc7361de8bdb3ef", + "url": "http://ftpmirror.gnu.org/gnu/m4/m4-1.4.20.tar.gz" + } + ], "dependencies": [ "all:native/make" ], diff --git a/packages/native/make.json b/packages/native/make.json index e54a4af..75a93b1 100644 --- a/packages/native/make.json +++ b/packages/native/make.json @@ -2,11 +2,13 @@ "package": "native/make", "version": "4.4", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "581f4d4e872da74b3941c874215898a7d35802f03732bdccee1d4a7979105d18", - "url": "http://ftpmirror.gnu.org/gnu/make/make-4.4.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "581f4d4e872da74b3941c874215898a7d35802f03732bdccee1d4a7979105d18", + "url": "http://ftpmirror.gnu.org/gnu/make/make-4.4.tar.gz" + } + ], "build": { "env": [], "steps": [ diff --git a/packages/native/mpc.json b/packages/native/mpc.json index 1b89487..3fd273e 100644 --- a/packages/native/mpc.json +++ b/packages/native/mpc.json @@ -2,11 +2,13 @@ "package": "native/mpc", "version": "1.3.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "ab642492f5cf882b74aa0cb730cd410a81edcdbec895183ce930e706c1c759b8", - "url": "http://ftpmirror.gnu.org/gnu/mpc/mpc-1.3.1.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "ab642492f5cf882b74aa0cb730cd410a81edcdbec895183ce930e706c1c759b8", + "url": "http://ftpmirror.gnu.org/gnu/mpc/mpc-1.3.1.tar.gz" + } + ], "dependencies": [ "all:native/gmp", "all:native/make", diff --git a/packages/native/mpfr.json b/packages/native/mpfr.json index 939abcc..f9b0ee9 100644 --- a/packages/native/mpfr.json +++ b/packages/native/mpfr.json @@ -2,11 +2,13 @@ "package": "native/mpfr", "version": "4.2.2", "type": "native", - "download": { - "kind": "tar.xz", - "sha256": "b67ba0383ef7e8a8563734e2e889ef5ec3c3b898a01d00fa0a6869ad81c6ce01", - "url": "http://www.mpfr.org/mpfr-current/mpfr-4.2.2.tar.xz" - }, + "download": [ + { + "kind": "tar.xz", + "sha256": "b67ba0383ef7e8a8563734e2e889ef5ec3c3b898a01d00fa0a6869ad81c6ce01", + "url": "http://www.mpfr.org/mpfr-current/mpfr-4.2.2.tar.xz" + } + ], "dependencies": [ "all:native/gmp", "all:native/make" diff --git a/packages/native/ninja.json b/packages/native/ninja.json index 1af0597..3a75e70 100644 --- a/packages/native/ninja.json +++ b/packages/native/ninja.json @@ -2,11 +2,13 @@ "package": "native/ninja", "version": "1.13.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "f0055ad0369bf2e372955ba55128d000cfcc21777057806015b45e4accbebf23", - "url": "https://github.com/ninja-build/ninja/archive/refs/tags/v1.13.1.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "f0055ad0369bf2e372955ba55128d000cfcc21777057806015b45e4accbebf23", + "url": "https://github.com/ninja-build/ninja/archive/refs/tags/v1.13.1.tar.gz" + } + ], "dependencies": [ "all:native/python@3.11.13" ], diff --git a/packages/native/nproc.json b/packages/native/nproc.json index c1ff1ec..823a49c 100644 --- a/packages/native/nproc.json +++ b/packages/native/nproc.json @@ -2,11 +2,13 @@ "package": "native/nproc", "version": "0.0.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "353715a0799c3d965762b1207646b99503deb57603af779547b06c944ace4bad", - "url": "http://github.com/MrCyjaneK/nproc/archive/30acb0de0e18a2b16c277e6db840e5ce389d962d.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "353715a0799c3d965762b1207646b99503deb57603af779547b06c944ace4bad", + "url": "http://github.com/MrCyjaneK/nproc/archive/30acb0de0e18a2b16c277e6db840e5ce389d962d.tar.gz" + } + ], "build": { "env": [], "steps": [ diff --git a/packages/native/openssl.json b/packages/native/openssl.json index a699fcc..2d51627 100644 --- a/packages/native/openssl.json +++ b/packages/native/openssl.json @@ -2,11 +2,13 @@ "package": "native/openssl", "version": "3.5.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "529043b15cffa5f36077a4d0af83f3de399807181d607441d734196d889b641f", - "url": "http://www.openssl.org/source/openssl-3.5.1.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "529043b15cffa5f36077a4d0af83f3de399807181d607441d734196d889b641f", + "url": "http://www.openssl.org/source/openssl-3.5.1.tar.gz" + } + ], "dependencies": [ "all:native/make", "all:native/perl" diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json new file mode 100644 index 0000000..51eb674 --- /dev/null +++ b/packages/native/osx-cross.json @@ -0,0 +1,83 @@ +{ + "package": "native/osx-cross", + "version": "master@f873f53", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "7ff7657a435e709dfc81e79965bf2d0544d71bea26432991db8837b797290c28", + "url": "https://github.com/tpoechtrager/osxcross/archive/f873f534c6cdb0776e457af8c7513da1e02abe59.tar.gz" + }, + { + "kind": "blob", + "path": "Xcode_16.4.xip", + "sha256": "2dbf65ba28fb85b34e72c14c529a42d5c3189ab0f11fb29fdebd5f4ee6c87900", + "url": "https://download.developer.apple.com/Developer_Tools/Xcode_16.4/Xcode_16.4.xip" + }, + { + "kind": "blob", + "path": "tarballs/llvmorg-20.1.8.zip", + "sha256": "b115ce6285dd9f3f401459912c12d28eb2e2d81e2387a71f6300aa11f7bc3288", + "url": "https://github.com/llvm/llvm-project/archive/refs/tags/llvmorg-20.1.8.zip" + }, + { + "kind": "blob", + "path": "tarballs/20250402.zip", + "sha256": "b8e87f026e19259e6eac347746661e11592e0ff8bcdb657e177800223d7438ce", + "url": "https://github.com/apple/llvm-project/archive/refs/heads/stable/20250402.zip" + }, + { + "kind": "tar.gz", + "path": "build/apple-libtapi", + "sha256": "a00b170901cc484c7041bbae1288e88ff3169728b572febd37418c52c2036935", + "url": "https://github.com/tpoechtrager/apple-libtapi/archive/refs/heads/1300.6.5.tar.gz" + }, + { + "kind": "tar.gz", + "path": "build/cctools-port", + "sha256": "1b69237d99047afa8e840975d97b1733dcaba1d9135e1116d07f2f81cc0b8b64", + "url": "https://github.com/tpoechtrager/cctools-port/archive/refs/heads/986-ld64-711.tar.gz" + } + ], + "dependencies": [ + "all:native/cmake", + "all:native/cpio", + "all:native/git", + "all:native/libxml2", + "all:native/openssl", + "all:native/patch", + "all:native/pbzx", + "all:native/perl", + "all:native/python@3.11.13", + "all:native/xar", + "all:native/xz" + ], + "build": { + "env": [ + "all:JOBS=$NUM_CORES", + "all:PORTABLE=1", + "all:TARGET_DIR=$STAGING_DIR$PREFIX/native/", + "aarch64-apple-darwin:ENABLE_ARCHS=arm64", + "x86_64-apple-darwin:ENABLE_ARCHS=x86_64", + "all:UNATTENDED=1", + "all:SDK_VERSION=15.5" + ], + "steps": [ + "all:sed -i.bak 's/build_xar/echo build_xar/g' tools/gen_sdk_package_pbzx.sh", + "all:sed -i.bak 's/build_xar/echo build_xar/g' build.sh", + "all:sed -i.bak 's/build_pbxz/echo build_pbxz/g' tools/gen_sdk_package_pbzx.sh", + "all:sed -i.bak 's/git /echo git /g' tools/tools.sh", + "all:sed -i.bak 's/$TARGET_DIR\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", + "all:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", + "all:sed -i.bak 's/download $CLANG_LLVM_PKG/echo download $CLANG_LLVM_PKG/g' build_clang.sh", + "all:sed -i.bak 's/rm -f $(basename $CLANG_LLVM_PKG)/echo rm -f $(basename $CLANG_LLVM_PKG)/g' build_clang.sh", + "all:./tools/gen_sdk_package_pbzx.sh ./Xcode_16.4.xip", + "all:mv MacOSX15.* tarballs", + "all:yes | INSTALLPREFIX=$PREFIX/native ./build_clang.sh", + "none:cd build/clang-20.1.8/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", + "all:yes | INSTALLPREFIX=$PREFIX/native ./build_apple_clang.sh", + "all:cd build/clang-21/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", + "all:./build.sh" + ] + } +} \ No newline at end of file diff --git a/packages/native/p7zip.json b/packages/native/p7zip.json index 2dd53e3..846c3ec 100644 --- a/packages/native/p7zip.json +++ b/packages/native/p7zip.json @@ -2,11 +2,13 @@ "package": "native/p7zip", "version": "1_36_1", "type": "native", - "download": { - "kind": "tar.bz2", - "sha256": "5eb20ac0e2944f6cb9c2d51dd6c4518941c185347d4089ea89087ffdd6e2341f", - "url": "http://downloads.sourceforge.net/project/p7zip/p7zip/16.02/p7zip_16.02_src_all.tar.bz2" - }, + "download": [ + { + "kind": "tar.bz2", + "sha256": "5eb20ac0e2944f6cb9c2d51dd6c4518941c185347d4089ea89087ffdd6e2341f", + "url": "http://downloads.sourceforge.net/project/p7zip/p7zip/16.02/p7zip_16.02_src_all.tar.bz2" + } + ], "dependencies": [ "all:native/make" ], diff --git a/packages/native/patch.json b/packages/native/patch.json index 3112d5c..17fd298 100644 --- a/packages/native/patch.json +++ b/packages/native/patch.json @@ -2,11 +2,13 @@ "package": "native/patch", "version": "2.8", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "308a4983ff324521b9b21310bfc2398ca861798f02307c79eb99bb0e0d2bf980", - "url": "http://ftpmirror.gnu.org/gnu/patch/patch-2.8.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "308a4983ff324521b9b21310bfc2398ca861798f02307c79eb99bb0e0d2bf980", + "url": "http://ftpmirror.gnu.org/gnu/patch/patch-2.8.tar.gz" + } + ], "dependencies": [ "all:native/make" ], diff --git a/packages/native/pbzx.json b/packages/native/pbzx.json new file mode 100644 index 0000000..573c92d --- /dev/null +++ b/packages/native/pbzx.json @@ -0,0 +1,24 @@ +{ + "package": "native/pbzx", + "version": "1.6.1-patch", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "a9b3e9f29d9f020f75e4edf203359fbed6c1b0d2085f386bf770feaf07ae1694", + "url": "https://github.com/tpoechtrager/pbzx/archive/2a4d7c3300c826d918def713a24d25c237c8ed53.tar.gz" + } + ], + "dependencies": [ + "all:native/make", + "all:native/xar", + "all:native/xz" + ], + "build": { + "env": [], + "steps": [ + "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "all:$CC -O2 -Wall -I $PREFIX/native/include -L $PREFIX/native/lib pbzx.c -o $STAGING_DIR$PREFIX/native/bin/pbzx -llzma -lxar -Wl,-rpath,$PREFIX/native/lib" + ] + } +} \ No newline at end of file diff --git a/packages/native/perl.json b/packages/native/perl.json index 0f90774..4e06d4d 100644 --- a/packages/native/perl.json +++ b/packages/native/perl.json @@ -2,11 +2,13 @@ "package": "native/perl", "version": "5.42.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "e093ef184d7f9a1b9797e2465296f55510adb6dab8842b0c3ed53329663096dc", - "url": "http://www.cpan.org/src/5.0/perl-5.42.0.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "e093ef184d7f9a1b9797e2465296f55510adb6dab8842b0c3ed53329663096dc", + "url": "http://www.cpan.org/src/5.0/perl-5.42.0.tar.gz" + } + ], "dependencies": [ "all:native/make" ], diff --git a/packages/native/pkgconf.json b/packages/native/pkgconf.json index 60ba8c0..f431beb 100644 --- a/packages/native/pkgconf.json +++ b/packages/native/pkgconf.json @@ -2,11 +2,13 @@ "package": "native/pkgconf", "version": "2.5.1", "type": "native", - "download": { - "kind": "git", - "sha256": "4fc570f91d9d8d843ab32d2198a5c064538d8ffd", - "url": "http://github.com/pkgconf/pkgconf.git" - }, + "download": [ + { + "kind": "git", + "sha256": "4fc570f91d9d8d843ab32d2198a5c064538d8ffd", + "url": "http://github.com/pkgconf/pkgconf.git" + } + ], "dependencies": [ "all:native/autoconf", "all:native/automake", diff --git a/packages/native/protobuf.json b/packages/native/protobuf.json index 967d56e..618a8a4 100644 --- a/packages/native/protobuf.json +++ b/packages/native/protobuf.json @@ -2,11 +2,13 @@ "package": "native/protobuf", "version": "3.6.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "b3732e471a9bb7950f090fd0457ebd2536a9ba0891b7f3785919c654fe2a2529", - "url": "http://github.com/protocolbuffers/protobuf/releases/download/v3.6.1/protobuf-cpp-3.6.1.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "b3732e471a9bb7950f090fd0457ebd2536a9ba0891b7f3785919c654fe2a2529", + "url": "http://github.com/protocolbuffers/protobuf/releases/download/v3.6.1/protobuf-cpp-3.6.1.tar.gz" + } + ], "dependencies": [ "all:native/autoconf", "all:native/automake", diff --git a/packages/native/python@3.11.13.json b/packages/native/python@3.11.13.json index e863421..c540da0 100644 --- a/packages/native/python@3.11.13.json +++ b/packages/native/python@3.11.13.json @@ -2,11 +2,13 @@ "package": "native/python@3.11.13", "version": "3.11.13", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "0f1a22f4dfd34595a29cf69ee7ea73b9eff8b1cc89d7ab29b3ab0ec04179dad8", - "url": "http://www.python.org/ftp/python/3.11.13/Python-3.11.13.tgz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "0f1a22f4dfd34595a29cf69ee7ea73b9eff8b1cc89d7ab29b3ab0ec04179dad8", + "url": "http://www.python.org/ftp/python/3.11.13/Python-3.11.13.tgz" + } + ], "dependencies": [ "all:native/make", "all:native/patch", diff --git a/packages/native/rsync.json b/packages/native/rsync.json index b8841b5..aa01354 100644 --- a/packages/native/rsync.json +++ b/packages/native/rsync.json @@ -2,11 +2,13 @@ "package": "native/rsync", "version": "3.4.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "2924bcb3a1ed8b551fc101f740b9f0fe0a202b115027647cf69850d65fd88c52", - "url": "https://github.com/RsyncProject/rsync/releases/download/v3.4.1/rsync-3.4.1.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "2924bcb3a1ed8b551fc101f740b9f0fe0a202b115027647cf69850d65fd88c52", + "url": "https://github.com/RsyncProject/rsync/releases/download/v3.4.1/rsync-3.4.1.tar.gz" + } + ], "dependencies": [ "all:native/make", "all:native/python@3.11.13" diff --git a/packages/native/rust@1_54_0.json b/packages/native/rust@1_54_0.json index e5fc4e6..e2dc714 100644 --- a/packages/native/rust@1_54_0.json +++ b/packages/native/rust@1_54_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_54_0", "version": "1.54.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "d3d3b84a100e71628afecf1125dbaa9bfc54ef9578c4fd81d75dca34c96f2565", - "url": "http://github.com/thepowersgang/mrustc/archive/06b87d1af49d2db3bd850fdee8888055dd540dd1.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "d3d3b84a100e71628afecf1125dbaa9bfc54ef9578c4fd81d75dca34c96f2565", + "url": "http://github.com/thepowersgang/mrustc/archive/06b87d1af49d2db3bd850fdee8888055dd540dd1.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_55_0.json b/packages/native/rust@1_55_0.json index d850f65..ea08503 100644 --- a/packages/native/rust@1_55_0.json +++ b/packages/native/rust@1_55_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_55_0", "version": "1.55.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "b2379ac710f5f876ee3c3e03122fe33098d6765d371cac6c31b1b6fc8e43821e", - "url": "http://static.rust-lang.org/dist/rustc-1.55.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "b2379ac710f5f876ee3c3e03122fe33098d6765d371cac6c31b1b6fc8e43821e", + "url": "http://static.rust-lang.org/dist/rustc-1.55.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_56_1.json b/packages/native/rust@1_56_1.json index 9967338..15e6768 100644 --- a/packages/native/rust@1_56_1.json +++ b/packages/native/rust@1_56_1.json @@ -2,11 +2,13 @@ "package": "native/rust@1_56_1", "version": "1.56.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "c3898dfaadaa193dc88ddbc5345946a163211b58621df1cfff70186b4fc79511", - "url": "http://static.rust-lang.org/dist/rustc-1.56.1-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "c3898dfaadaa193dc88ddbc5345946a163211b58621df1cfff70186b4fc79511", + "url": "http://static.rust-lang.org/dist/rustc-1.56.1-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_57_0.json b/packages/native/rust@1_57_0.json index 782c185..c6294f4 100644 --- a/packages/native/rust@1_57_0.json +++ b/packages/native/rust@1_57_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_57_0", "version": "1.57.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "3546f9c3b91b1f8b8efd26c94d6b50312c08210397b4072ed2748e2bd4445c1a", - "url": "http://static.rust-lang.org/dist/rustc-1.57.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "3546f9c3b91b1f8b8efd26c94d6b50312c08210397b4072ed2748e2bd4445c1a", + "url": "http://static.rust-lang.org/dist/rustc-1.57.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_58_1.json b/packages/native/rust@1_58_1.json index dad2003..fa1ffff 100644 --- a/packages/native/rust@1_58_1.json +++ b/packages/native/rust@1_58_1.json @@ -2,11 +2,13 @@ "package": "native/rust@1_58_1", "version": "1.58.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "a839afdd3625d6f3f3c4c10b79813675d1775c460d14be1feaf33a6c829c07c7", - "url": "http://static.rust-lang.org/dist/rustc-1.58.1-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "a839afdd3625d6f3f3c4c10b79813675d1775c460d14be1feaf33a6c829c07c7", + "url": "http://static.rust-lang.org/dist/rustc-1.58.1-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_59_0.json b/packages/native/rust@1_59_0.json index 84811b5..7b18678 100644 --- a/packages/native/rust@1_59_0.json +++ b/packages/native/rust@1_59_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_59_0", "version": "1.59.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "a7c8eeaee85bfcef84c96b02b3171d1e6540d15179ff83dddd9eafba185f85f9", - "url": "http://static.rust-lang.org/dist/rustc-1.59.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "a7c8eeaee85bfcef84c96b02b3171d1e6540d15179ff83dddd9eafba185f85f9", + "url": "http://static.rust-lang.org/dist/rustc-1.59.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_60_0.json b/packages/native/rust@1_60_0.json index 72142df..ea3d5d2 100644 --- a/packages/native/rust@1_60_0.json +++ b/packages/native/rust@1_60_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_60_0", "version": "1.60.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "20ca826d1cf674daf8e22c4f8c4b9743af07973211c839b85839742314c838b7", - "url": "http://static.rust-lang.org/dist/rustc-1.60.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "20ca826d1cf674daf8e22c4f8c4b9743af07973211c839b85839742314c838b7", + "url": "http://static.rust-lang.org/dist/rustc-1.60.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_61_0.json b/packages/native/rust@1_61_0.json index d151f2b..393acf5 100644 --- a/packages/native/rust@1_61_0.json +++ b/packages/native/rust@1_61_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_61_0", "version": "1.61.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "ad0b4351675aa9abdf4c7e066613bd274c4391c5506db152983426376101daed", - "url": "http://static.rust-lang.org/dist/rustc-1.61.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "ad0b4351675aa9abdf4c7e066613bd274c4391c5506db152983426376101daed", + "url": "http://static.rust-lang.org/dist/rustc-1.61.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_62_0.json b/packages/native/rust@1_62_0.json index acbefa5..9b7ebac 100644 --- a/packages/native/rust@1_62_0.json +++ b/packages/native/rust@1_62_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_62_0", "version": "1.62.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "7d0878809b64d206825acae3eb7f60afb2212d81e3de1adf4c11c6032b36c027", - "url": "http://static.rust-lang.org/dist/rustc-1.62.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "7d0878809b64d206825acae3eb7f60afb2212d81e3de1adf4c11c6032b36c027", + "url": "http://static.rust-lang.org/dist/rustc-1.62.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_63_0.json b/packages/native/rust@1_63_0.json index 9cbbc26..4e62b4a 100644 --- a/packages/native/rust@1_63_0.json +++ b/packages/native/rust@1_63_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_63_0", "version": "1.63.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "1f9580295642ef5da7e475a8da2397d65153d3f2cb92849dbd08ed0effca99d0", - "url": "http://static.rust-lang.org/dist/rustc-1.63.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "1f9580295642ef5da7e475a8da2397d65153d3f2cb92849dbd08ed0effca99d0", + "url": "http://static.rust-lang.org/dist/rustc-1.63.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_64_0.json b/packages/native/rust@1_64_0.json index 7f88988..dcf2a06 100644 --- a/packages/native/rust@1_64_0.json +++ b/packages/native/rust@1_64_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_64_0", "version": "1.64.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "b3cd9f481e1a2901bf6f3808d30c69cc4ea80d93c4cc4e2ed52258b180381205", - "url": "http://static.rust-lang.org/dist/rustc-1.64.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "b3cd9f481e1a2901bf6f3808d30c69cc4ea80d93c4cc4e2ed52258b180381205", + "url": "http://static.rust-lang.org/dist/rustc-1.64.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_65_0.json b/packages/native/rust@1_65_0.json index 9a099fa..8f420a1 100644 --- a/packages/native/rust@1_65_0.json +++ b/packages/native/rust@1_65_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_65_0", "version": "1.65.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "5828bb67f677eabf8c384020582b0ce7af884e1c84389484f7f8d00dd82c0038", - "url": "http://static.rust-lang.org/dist/rustc-1.65.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "5828bb67f677eabf8c384020582b0ce7af884e1c84389484f7f8d00dd82c0038", + "url": "http://static.rust-lang.org/dist/rustc-1.65.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_66_1.json b/packages/native/rust@1_66_1.json index 358fdf2..299b552 100644 --- a/packages/native/rust@1_66_1.json +++ b/packages/native/rust@1_66_1.json @@ -2,11 +2,13 @@ "package": "native/rust@1_66_1", "version": "1.66.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "5b3c933a94c72187705d4ee293198babfdd09442f5937fbd685db3a81f4959ba", - "url": "http://static.rust-lang.org/dist/rustc-1.66.1-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "5b3c933a94c72187705d4ee293198babfdd09442f5937fbd685db3a81f4959ba", + "url": "http://static.rust-lang.org/dist/rustc-1.66.1-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_67_1.json b/packages/native/rust@1_67_1.json index 6876b47..7a288e9 100644 --- a/packages/native/rust@1_67_1.json +++ b/packages/native/rust@1_67_1.json @@ -2,11 +2,13 @@ "package": "native/rust@1_67_1", "version": "1.67.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "46483d3e5de85a3bd46f8e7a3ae1837496391067dbe713a25d3cf051b3d9ff6e", - "url": "http://static.rust-lang.org/dist/rustc-1.67.1-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "46483d3e5de85a3bd46f8e7a3ae1837496391067dbe713a25d3cf051b3d9ff6e", + "url": "http://static.rust-lang.org/dist/rustc-1.67.1-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_68_2.json b/packages/native/rust@1_68_2.json index 9848db4..50e9d24 100644 --- a/packages/native/rust@1_68_2.json +++ b/packages/native/rust@1_68_2.json @@ -2,11 +2,13 @@ "package": "native/rust@1_68_2", "version": "1.68.2", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "93339c23f7cd4d0c45db58e18b4c6e16d6070f4277aad9d2492d23294bf32e96", - "url": "http://static.rust-lang.org/dist/rustc-1.68.2-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "93339c23f7cd4d0c45db58e18b4c6e16d6070f4277aad9d2492d23294bf32e96", + "url": "http://static.rust-lang.org/dist/rustc-1.68.2-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_69_0.json b/packages/native/rust@1_69_0.json index b6f32dc..de94b3e 100644 --- a/packages/native/rust@1_69_0.json +++ b/packages/native/rust@1_69_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_69_0", "version": "1.69.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "fb05971867ad6ccabbd3720279f5a94b99f61024923187b56bb5c455fa3cf60f", - "url": "http://static.rust-lang.org/dist/rustc-1.69.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "fb05971867ad6ccabbd3720279f5a94b99f61024923187b56bb5c455fa3cf60f", + "url": "http://static.rust-lang.org/dist/rustc-1.69.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_70_0.json b/packages/native/rust@1_70_0.json index 3cbf985..0d50b21 100644 --- a/packages/native/rust@1_70_0.json +++ b/packages/native/rust@1_70_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_70_0", "version": "1.70.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "b2bfae000b7a5040e4ec4bbc50a09f21548190cb7570b0ed77358368413bd27c", - "url": "http://static.rust-lang.org/dist/rustc-1.70.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "b2bfae000b7a5040e4ec4bbc50a09f21548190cb7570b0ed77358368413bd27c", + "url": "http://static.rust-lang.org/dist/rustc-1.70.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_71_1.json b/packages/native/rust@1_71_1.json index 99fce4a..36d3cf4 100644 --- a/packages/native/rust@1_71_1.json +++ b/packages/native/rust@1_71_1.json @@ -2,11 +2,13 @@ "package": "native/rust@1_71_1", "version": "1.71.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "6fa90d50d1d529a75f6cc349784de57d7ec0ba2419b09bde7d335c25bd4e472e", - "url": "http://static.rust-lang.org/dist/rustc-1.71.1-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "6fa90d50d1d529a75f6cc349784de57d7ec0ba2419b09bde7d335c25bd4e472e", + "url": "http://static.rust-lang.org/dist/rustc-1.71.1-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_72_1.json b/packages/native/rust@1_72_1.json index 1cb9020..0c18d03 100644 --- a/packages/native/rust@1_72_1.json +++ b/packages/native/rust@1_72_1.json @@ -2,11 +2,13 @@ "package": "native/rust@1_72_1", "version": "1.72.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "7f48845f6a52cdbb5d63fb0528fd5f520eb443275b55f98e328159f86568f895", - "url": "http://static.rust-lang.org/dist/rustc-1.72.1-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "7f48845f6a52cdbb5d63fb0528fd5f520eb443275b55f98e328159f86568f895", + "url": "http://static.rust-lang.org/dist/rustc-1.72.1-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_73_0.json b/packages/native/rust@1_73_0.json index d394443..711eff9 100644 --- a/packages/native/rust@1_73_0.json +++ b/packages/native/rust@1_73_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_73_0", "version": "1.73.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "96d62e6d1f2d21df7ac8acb3b9882411f9e7c7036173f7f2ede9e1f1f6b1bb3a", - "url": "http://static.rust-lang.org/dist/rustc-1.73.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "96d62e6d1f2d21df7ac8acb3b9882411f9e7c7036173f7f2ede9e1f1f6b1bb3a", + "url": "http://static.rust-lang.org/dist/rustc-1.73.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_74_1.json b/packages/native/rust@1_74_1.json index b74c4ab..5ad0ffc 100644 --- a/packages/native/rust@1_74_1.json +++ b/packages/native/rust@1_74_1.json @@ -2,11 +2,13 @@ "package": "native/rust@1_74_1", "version": "1.74.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "67db3e22fc9921c885baae5953ba144fc474cde29ec69ab56d43ce764206231d", - "url": "http://static.rust-lang.org/dist/rustc-1.74.1-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "67db3e22fc9921c885baae5953ba144fc474cde29ec69ab56d43ce764206231d", + "url": "http://static.rust-lang.org/dist/rustc-1.74.1-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_75_0.json b/packages/native/rust@1_75_0.json index 0f9d3ed..157f0bc 100644 --- a/packages/native/rust@1_75_0.json +++ b/packages/native/rust@1_75_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_75_0", "version": "1.75.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "5b739f45bc9d341e2d1c570d65d2375591e22c2d23ef5b8a37711a0386abc088", - "url": "http://static.rust-lang.org/dist/rustc-1.75.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "5b739f45bc9d341e2d1c570d65d2375591e22c2d23ef5b8a37711a0386abc088", + "url": "http://static.rust-lang.org/dist/rustc-1.75.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_76_0.json b/packages/native/rust@1_76_0.json index 5b22383..9f12c7f 100644 --- a/packages/native/rust@1_76_0.json +++ b/packages/native/rust@1_76_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_76_0", "version": "1.76.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "9e5cff033a7f0d2266818982ad90e4d3e4ef8f8ee1715776c6e25073a136c021", - "url": "http://static.rust-lang.org/dist/rustc-1.76.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "9e5cff033a7f0d2266818982ad90e4d3e4ef8f8ee1715776c6e25073a136c021", + "url": "http://static.rust-lang.org/dist/rustc-1.76.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_77_1.json b/packages/native/rust@1_77_1.json index 204639f..1df0069 100644 --- a/packages/native/rust@1_77_1.json +++ b/packages/native/rust@1_77_1.json @@ -2,11 +2,13 @@ "package": "native/rust@1_77_1", "version": "1.77.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "ee106e4c569f52dba3b5b282b105820f86bd8f6b3d09c06b8dce82fb1bb3a4a1", - "url": "http://static.rust-lang.org/dist/rustc-1.77.1-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "ee106e4c569f52dba3b5b282b105820f86bd8f6b3d09c06b8dce82fb1bb3a4a1", + "url": "http://static.rust-lang.org/dist/rustc-1.77.1-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_78_0.json b/packages/native/rust@1_78_0.json index 7f47811..2b8a973 100644 --- a/packages/native/rust@1_78_0.json +++ b/packages/native/rust@1_78_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_78_0", "version": "1.78.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "ff544823a5cb27f2738128577f1e7e00ee8f4c83f2a348781ae4fc355e91d5a9", - "url": "http://static.rust-lang.org/dist/rustc-1.78.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "ff544823a5cb27f2738128577f1e7e00ee8f4c83f2a348781ae4fc355e91d5a9", + "url": "http://static.rust-lang.org/dist/rustc-1.78.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_79_0.json b/packages/native/rust@1_79_0.json index 423464a..a476d20 100644 --- a/packages/native/rust@1_79_0.json +++ b/packages/native/rust@1_79_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_79_0", "version": "1.79.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "172ecf3c7d1f9d9fb16cd2a628869782670416ded0129e524a86751f961448c0", - "url": "http://static.rust-lang.org/dist/rustc-1.79.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "172ecf3c7d1f9d9fb16cd2a628869782670416ded0129e524a86751f961448c0", + "url": "http://static.rust-lang.org/dist/rustc-1.79.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_80_1.json b/packages/native/rust@1_80_1.json index a52b8dc..d400084 100644 --- a/packages/native/rust@1_80_1.json +++ b/packages/native/rust@1_80_1.json @@ -2,11 +2,13 @@ "package": "native/rust@1_80_1", "version": "1.80.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "2c0b8f643942dcb810cbcc50f292564b1b6e44db5d5f45091153996df95d2dc4", - "url": "http://static.rust-lang.org/dist/rustc-1.80.1-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "2c0b8f643942dcb810cbcc50f292564b1b6e44db5d5f45091153996df95d2dc4", + "url": "http://static.rust-lang.org/dist/rustc-1.80.1-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_81_0.json b/packages/native/rust@1_81_0.json index fa6cd17..708a697 100644 --- a/packages/native/rust@1_81_0.json +++ b/packages/native/rust@1_81_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_81_0", "version": "1.81.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "872448febdff32e50c3c90a7e15f9bb2db131d13c588fe9071b0ed88837ccfa7", - "url": "http://static.rust-lang.org/dist/rustc-1.81.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "872448febdff32e50c3c90a7e15f9bb2db131d13c588fe9071b0ed88837ccfa7", + "url": "http://static.rust-lang.org/dist/rustc-1.81.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_82_0.json b/packages/native/rust@1_82_0.json index 80828f3..930a6c4 100644 --- a/packages/native/rust@1_82_0.json +++ b/packages/native/rust@1_82_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_82_0", "version": "1.82.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "7c53f4509eda184e174efa6ba7d5eeb586585686ce8edefc781a2b11a7cf512a", - "url": "http://static.rust-lang.org/dist/rustc-1.82.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "7c53f4509eda184e174efa6ba7d5eeb586585686ce8edefc781a2b11a7cf512a", + "url": "http://static.rust-lang.org/dist/rustc-1.82.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_83_0.json b/packages/native/rust@1_83_0.json index 499cae0..a4e4bc5 100644 --- a/packages/native/rust@1_83_0.json +++ b/packages/native/rust@1_83_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_83_0", "version": "1.83.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "722d773bd4eab2d828d7dd35b59f0b017ddf9a97ee2b46c1b7f7fac5c8841c6e", - "url": "http://static.rust-lang.org/dist/rustc-1.83.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "722d773bd4eab2d828d7dd35b59f0b017ddf9a97ee2b46c1b7f7fac5c8841c6e", + "url": "http://static.rust-lang.org/dist/rustc-1.83.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_84_1.json b/packages/native/rust@1_84_1.json index edafbda..913720b 100644 --- a/packages/native/rust@1_84_1.json +++ b/packages/native/rust@1_84_1.json @@ -2,11 +2,13 @@ "package": "native/rust@1_84_1", "version": "1.84.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "5e2fb5d49628a549f7671b2ccf9855ab379fd442831a7c2af16e0cdcc31bb375", - "url": "http://static.rust-lang.org/dist/rustc-1.84.1-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "5e2fb5d49628a549f7671b2ccf9855ab379fd442831a7c2af16e0cdcc31bb375", + "url": "http://static.rust-lang.org/dist/rustc-1.84.1-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_85_1.json b/packages/native/rust@1_85_1.json index 5a2ae76..e5f4249 100644 --- a/packages/native/rust@1_85_1.json +++ b/packages/native/rust@1_85_1.json @@ -2,11 +2,13 @@ "package": "native/rust@1_85_1", "version": "1.85.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "0f2995ca083598757a8d9a293939e569b035799e070f419a686b0996fb94238a", - "url": "http://static.rust-lang.org/dist/rustc-1.85.1-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "0f2995ca083598757a8d9a293939e569b035799e070f419a686b0996fb94238a", + "url": "http://static.rust-lang.org/dist/rustc-1.85.1-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_86_0.json b/packages/native/rust@1_86_0.json index 71b89f0..ba98941 100644 --- a/packages/native/rust@1_86_0.json +++ b/packages/native/rust@1_86_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_86_0", "version": "1.86.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "022a27286df67900a044d227d9db69d4732ec3d833e4ffc259c4425ed71eed80", - "url": "http://static.rust-lang.org/dist/rustc-1.86.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "022a27286df67900a044d227d9db69d4732ec3d833e4ffc259c4425ed71eed80", + "url": "http://static.rust-lang.org/dist/rustc-1.86.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_87_0.json b/packages/native/rust@1_87_0.json index ec29e2d..01bfb6a 100644 --- a/packages/native/rust@1_87_0.json +++ b/packages/native/rust@1_87_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_87_0", "version": "1.87.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "149bb9fd29be592da4e87900fc68f0629a37bf6850b46339dd44434c04fd8e76", - "url": "http://static.rust-lang.org/dist/rustc-1.87.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "149bb9fd29be592da4e87900fc68f0629a37bf6850b46339dd44434c04fd8e76", + "url": "http://static.rust-lang.org/dist/rustc-1.87.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/rust@1_88_0.json b/packages/native/rust@1_88_0.json index 01e3c6a..e74c3d8 100644 --- a/packages/native/rust@1_88_0.json +++ b/packages/native/rust@1_88_0.json @@ -2,11 +2,13 @@ "package": "native/rust@1_88_0", "version": "1.88.0", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "3a97544434848ae3d193d1d6bc83d6f24cb85c261ad95f955fde47ec64cfcfbe", - "url": "http://static.rust-lang.org/dist/rustc-1.88.0-src.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "3a97544434848ae3d193d1d6bc83d6f24cb85c261ad95f955fde47ec64cfcfbe", + "url": "http://static.rust-lang.org/dist/rustc-1.88.0-src.tar.gz" + } + ], "dependencies": [ "all:native/cmake", "all:native/make", diff --git a/packages/native/sed.json b/packages/native/sed.json index f37fca7..05b8b56 100644 --- a/packages/native/sed.json +++ b/packages/native/sed.json @@ -2,11 +2,13 @@ "package": "native/sed", "version": "4.9", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "d1478a18f033a73ac16822901f6533d30b6be561bcbce46ffd7abce93602282e", - "url": "http://ftpmirror.gnu.org/gnu/sed/sed-4.9.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "d1478a18f033a73ac16822901f6533d30b6be561bcbce46ffd7abce93602282e", + "url": "http://ftpmirror.gnu.org/gnu/sed/sed-4.9.tar.gz" + } + ], "dependencies": [ "all:native/make", "all:native/perl" diff --git a/packages/native/texinfo.json b/packages/native/texinfo.json index ae84a3e..77872cb 100644 --- a/packages/native/texinfo.json +++ b/packages/native/texinfo.json @@ -2,11 +2,13 @@ "package": "native/texinfo", "version": "7.2", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "e86de7dfef6b352aa1bf647de3a6213d1567c70129eccbf8977706d9c91919c8", - "url": "http://ftpmirror.gnu.org/gnu/texinfo/texinfo-7.2.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "e86de7dfef6b352aa1bf647de3a6213d1567c70129eccbf8977706d9c91919c8", + "url": "http://ftpmirror.gnu.org/gnu/texinfo/texinfo-7.2.tar.gz" + } + ], "dependencies": [ "all:native/automake", "all:native/gawk", diff --git a/packages/native/xar.json b/packages/native/xar.json new file mode 100644 index 0000000..0250f93 --- /dev/null +++ b/packages/native/xar.json @@ -0,0 +1,29 @@ +{ + "package": "native/xar", + "version": "1.6.1-patch", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "0ef6618d4b841c16d16ff6c9b0f1cd908f5f785ba08bef50178b293a7d170ff4", + "url": "https://github.com/tpoechtrager/xar/archive/5fa4675419cfec60ac19a9c7f7c2d0e7c831a497.tar.gz" + } + ], + "dependencies": [ + "all:native/make", + "all:native/xz" + ], + "build": { + "env": [ + "all:CFLAGS=$CFLAGS -w", + "all:config_opts=--with-bzip2", + "all:config_opts=$config_opts --with-lzma=$PREFIX/native" + ], + "steps": [ + "all:cd xar && ./configure --prefix=$PREFIX/native", + "all:cd xar && make -j$NUM_CORES", + "all:cd xar && make DESTDIR=$STAGING_DIR install", + "all:mkdir -p $STAGING_DIR$PREFIX/native/include" + ] + } +} \ No newline at end of file diff --git a/packages/native/xz.json b/packages/native/xz.json new file mode 100644 index 0000000..f5a7cdb --- /dev/null +++ b/packages/native/xz.json @@ -0,0 +1,49 @@ +{ + "package": "xz", + "version": "5.8.1", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "507825b599356c10dca1cd720c9d0d0c9d5400b9de300af00e4d1ea150795543", + "url": "http://github.com/tukaani-project/xz/releases/download/v5.8.1/xz-5.8.1.tar.gz" + } + ], + "dependencies": [ + "*-android*:native/android_ndk", + "all:native/autoconf", + "all:native/automake", + "all:native/gettext", + "all:native/libtool", + "all:native/m4", + "all:native/make", + "all:native/perl" + ], + "patches": [ + "fix_declaration.patch" + ], + "build": { + "env": [ + "all:HOSTOVERRIDE=$HOST", + "aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", + "all:config_opts=--prefix=$PREFIX --host=$HOSTOVERRIDE", + "all:config_opts=$config_opts --disable-shared", + "all:config_opts=$config_opts --enable-static", + "all:config_opts=$config_opts --disable-doc", + "all:config_opts=$config_opts --disable-scripts", + "all:config_opts=$config_opts --disable-xz", + "all:config_opts=$config_opts --disable-xzdec", + "all:config_opts=$config_opts --disable-lzmadec", + "all:config_opts=$config_opts --disable-lzmainfo", + "all:config_opts=$config_opts --disable-lzma-links" + ], + "steps": [ + "all:pwd", + "all:./autogen.sh --no-po4a", + "all:./configure $config_opts", + "all:make -j$NUM_CORES", + "all:make DESTDIR=$STAGING_DIR install", + "all:rm $STAGING_DIR$PREFIX/lib/*.la" + ] + } +} \ No newline at end of file diff --git a/packages/native/zlib.json b/packages/native/zlib.json index 614d94f..00259cd 100644 --- a/packages/native/zlib.json +++ b/packages/native/zlib.json @@ -2,11 +2,13 @@ "package": "native/zlib", "version": "1.3.1", "type": "native", - "download": { - "kind": "tar.gz", - "sha256": "9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23", - "url": "http://www.zlib.net/zlib-1.3.1.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23", + "url": "http://www.zlib.net/zlib-1.3.1.tar.gz" + } + ], "dependencies": [ "all:native/libtool", "all:native/make" diff --git a/packages/ncurses.json b/packages/ncurses.json index 5c281fc..b68f931 100644 --- a/packages/ncurses.json +++ b/packages/ncurses.json @@ -2,11 +2,13 @@ "package": "ncurses", "version": "6.5", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "136d91bc269a9a5785e5f9e980bc76ab57428f604ce3e5a5a90cebc767971cc6", - "url": "http://ftpmirror.gnu.org/gnu/ncurses/ncurses-6.5.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "136d91bc269a9a5785e5f9e980bc76ab57428f604ce3e5a5a90cebc767971cc6", + "url": "http://ftpmirror.gnu.org/gnu/ncurses/ncurses-6.5.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk" ], diff --git a/packages/openssl.json b/packages/openssl.json index af1b15b..eead0f3 100644 --- a/packages/openssl.json +++ b/packages/openssl.json @@ -2,11 +2,13 @@ "package": "openssl", "version": "3.5.1", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "529043b15cffa5f36077a4d0af83f3de399807181d607441d734196d889b641f", - "url": "http://www.openssl.org/source/openssl-3.5.1.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "529043b15cffa5f36077a4d0af83f3de399807181d607441d734196d889b641f", + "url": "http://www.openssl.org/source/openssl-3.5.1.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/make", diff --git a/packages/polyseed.json b/packages/polyseed.json index 65f8a20..feed932 100644 --- a/packages/polyseed.json +++ b/packages/polyseed.json @@ -2,11 +2,13 @@ "package": "polyseed", "version": "2.1.0-patch", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "28a86b0bc178076ac65dc7d8cc28a79eb546708473efc0e8dce688f1e237ccc2", - "url": "http://github.com/MrCyjaneK/polyseed/archive/refs/tags/v2.0.0-patch.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "28a86b0bc178076ac65dc7d8cc28a79eb546708473efc0e8dce688f1e237ccc2", + "url": "http://github.com/MrCyjaneK/polyseed/archive/refs/tags/v2.0.0-patch.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/cmake", diff --git a/packages/protobuf.json b/packages/protobuf.json index 6ea0253..3b7874e 100644 --- a/packages/protobuf.json +++ b/packages/protobuf.json @@ -2,11 +2,13 @@ "package": "protobuf", "version": "3.6.1", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "b3732e471a9bb7950f090fd0457ebd2536a9ba0891b7f3785919c654fe2a2529", - "url": "http://github.com/protocolbuffers/protobuf/releases/download/v3.6.1/protobuf-cpp-3.6.1.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "b3732e471a9bb7950f090fd0457ebd2536a9ba0891b7f3785919c654fe2a2529", + "url": "http://github.com/protocolbuffers/protobuf/releases/download/v3.6.1/protobuf-cpp-3.6.1.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/autoconf", diff --git a/packages/readline.json b/packages/readline.json index 34a5723..3246dd5 100644 --- a/packages/readline.json +++ b/packages/readline.json @@ -2,11 +2,13 @@ "package": "readline", "version": "8.0", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "e339f51971478d369f8a053a330a190781acb9864cf4c541060f12078948e461", - "url": "http://ftpmirror.gnu.org/gnu/readline/readline-8.0.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "e339f51971478d369f8a053a330a190781acb9864cf4c541060f12078948e461", + "url": "http://ftpmirror.gnu.org/gnu/readline/readline-8.0.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/autoconf", diff --git a/packages/sodium.json b/packages/sodium.json index d112520..49a355b 100644 --- a/packages/sodium.json +++ b/packages/sodium.json @@ -2,11 +2,13 @@ "package": "sodium", "version": "1.0.18", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "6f504490b342a4f8a4c4a02fc9b866cbef8622d5df4e5452b46be121e46636c1", - "url": "http://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "6f504490b342a4f8a4c4a02fc9b866cbef8622d5df4e5452b46be121e46636c1", + "url": "http://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/config" diff --git a/packages/torch.json b/packages/torch.json index 460b1e6..14f0e7b 100644 --- a/packages/torch.json +++ b/packages/torch.json @@ -2,11 +2,13 @@ "package": "torch", "version": "tor-0.4.8.17", "type": "host", - "download": { - "kind": "git", - "sha256": "b7a785a538a31ab0cf5baf62d936e3e41182e0b7", - "url": "https://github.com/MrCyjaneK/torch.git" - }, + "download": [ + { + "kind": "git", + "sha256": "b7a785a538a31ab0cf5baf62d936e3e41182e0b7", + "url": "https://github.com/MrCyjaneK/torch.git" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/cmake", diff --git a/packages/unbound.json b/packages/unbound.json index 04671eb..12d838f 100644 --- a/packages/unbound.json +++ b/packages/unbound.json @@ -2,11 +2,13 @@ "package": "unbound", "version": "1.23.0", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "959bd5f3875316d7b3f67ee237a56de5565f5b35fc9b5fc3cea6cfe735a03bb8", - "url": "http://www.nlnetlabs.nl/downloads/unbound/unbound-1.23.0.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "959bd5f3875316d7b3f67ee237a56de5565f5b35fc9b5fc3cea6cfe735a03bb8", + "url": "http://www.nlnetlabs.nl/downloads/unbound/unbound-1.23.0.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/autoconf", diff --git a/packages/unwind.json b/packages/unwind.json index b22a0a5..5c25113 100644 --- a/packages/unwind.json +++ b/packages/unwind.json @@ -2,11 +2,13 @@ "package": "unwind", "version": "1.5.0", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "90337653d92d4a13de590781371c604f9031cdb50520366aa1e3a91e1efb1017", - "url": "http://download.savannah.nongnu.org/releases/libunwind/libunwind-1.5.0.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "90337653d92d4a13de590781371c604f9031cdb50520366aa1e3a91e1efb1017", + "url": "http://download.savannah.nongnu.org/releases/libunwind/libunwind-1.5.0.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/config", diff --git a/packages/xz.json b/packages/xz.json index fd6afe8..f5ead7e 100644 --- a/packages/xz.json +++ b/packages/xz.json @@ -2,11 +2,13 @@ "package": "xz", "version": "5.8.1", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "507825b599356c10dca1cd720c9d0d0c9d5400b9de300af00e4d1ea150795543", - "url": "http://github.com/tukaani-project/xz/releases/download/v5.8.1/xz-5.8.1.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "507825b599356c10dca1cd720c9d0d0c9d5400b9de300af00e4d1ea150795543", + "url": "http://github.com/tukaani-project/xz/releases/download/v5.8.1/xz-5.8.1.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/autoconf", diff --git a/packages/zeromq.json b/packages/zeromq.json index c2df2aa..ef0cbe8 100644 --- a/packages/zeromq.json +++ b/packages/zeromq.json @@ -2,11 +2,13 @@ "package": "zeromq", "version": "4.3.5", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "6653ef5910f17954861fe72332e68b03ca6e4d9c7160eb3a8de5a5a913bfab43", - "url": "http://github.com/zeromq/libzmq/releases/download/v4.3.5/zeromq-4.3.5.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "6653ef5910f17954861fe72332e68b03ca6e4d9c7160eb3a8de5a5a913bfab43", + "url": "http://github.com/zeromq/libzmq/releases/download/v4.3.5/zeromq-4.3.5.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk" ], diff --git a/packages/zlib.json b/packages/zlib.json index 2f67972..549a515 100644 --- a/packages/zlib.json +++ b/packages/zlib.json @@ -2,11 +2,13 @@ "package": "zlib", "version": "1.3.1", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23", - "url": "http://www.zlib.net/zlib-1.3.1.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23", + "url": "http://www.zlib.net/zlib-1.3.1.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/libtool", diff --git a/packages/zstd.json b/packages/zstd.json index bb19b29..7d7da8d 100644 --- a/packages/zstd.json +++ b/packages/zstd.json @@ -2,11 +2,13 @@ "package": "zstd", "version": "1.5.7", "type": "host", - "download": { - "kind": "tar.gz", - "sha256": "eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3", - "url": "http://github.com/facebook/zstd/releases/download/v1.5.7/zstd-1.5.7.tar.gz" - }, + "download": [ + { + "kind": "tar.gz", + "sha256": "eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3", + "url": "http://github.com/facebook/zstd/releases/download/v1.5.7/zstd-1.5.7.tar.gz" + } + ], "dependencies": [ "*-android*:native/android_ndk", "all:native/make" diff --git a/utils/copy.go b/utils/copy.go new file mode 100644 index 0000000..9984ad7 --- /dev/null +++ b/utils/copy.go @@ -0,0 +1,13 @@ +package utils + +import ( + "os" +) + +func Copy(src string, dst string) error { + data, err := os.ReadFile(src) + if err != nil { + return err + } + return os.WriteFile(dst, data, 0644) +} From b17fd7787f8a06b0e4638d1a6c24b181b6a91dfd Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 17 Sep 2025 17:11:58 -0400 Subject: [PATCH 002/200] fixes to ct tools --- packages/native/crosstool-ng.json | 9 ++++++++- packages/native/ct-tools.json | 8 +++++++- packages/native/help2man.json | 27 +++++++++++++++++++++++++++ 3 files changed, 42 insertions(+), 2 deletions(-) create mode 100644 packages/native/help2man.json diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index 8b05d25..3b40749 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -12,11 +12,18 @@ "dependencies": [ "all:native/autoconf", "all:native/automake", + "all:native/texinfo", "all:native/bash", + "all:native/bison", "all:native/m4", + "all:native/libtool", + "all:native/help2man", "all:native/make", "all:native/perl", - "all:native/sed" + "all:native/python@3.11.13", + "all:native/sed", + "all:native/flex", + "all:native/zlib" ], "build": { "env": [ diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 3633953..ad406d0 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -98,12 +98,17 @@ "all:native/autoconf", "all:native/automake", "all:native/bash", + "all:native/bison", "all:native/crosstool-ng", "all:native/m4", + "all:native/libtool", + "all:native/help2man", "all:native/make", "all:native/perl", + "all:native/python@3.11.13", "all:native/sed", - "all:native/flex" + "all:native/flex", + "all:native/zlib" ], "build": { "env": [ @@ -113,6 +118,7 @@ "steps": [ "all:ct-ng $TOOL_TARGET", "all:echo 'CT_FORBID_DOWNLOAD=y' >> .config", + "all:sed -i.bak 's/CT_GDB_CROSS=y/CT_GDB_CROSS=n/g' .config", "all:env -i PATH=$PATH HOME=$HOME ct-ng build" ] } diff --git a/packages/native/help2man.json b/packages/native/help2man.json new file mode 100644 index 0000000..d3933c9 --- /dev/null +++ b/packages/native/help2man.json @@ -0,0 +1,27 @@ +{ + "package": "native/help2man", + "version": "1.49.3", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "4d7e4fdef2eca6afe07a2682151cea78781e0a4e8f9622142d9f70c083a2fd4f", + "url": "http://ftpmirror.gnu.org/gnu/help2man/help2man-1.49.3.tar.xz" + } + ], + "dependencies": [ + "all:native/make" + ], + "build": { + "env": [ + "all:config_opts=--prefix=$PREFIX/native", + "all:config_opts=$config_opts --disable-shared", + "all:config_opts=$config_opts --enable-static" + ], + "steps": [ + "all:./configure $config_opts", + "all:make -j$NUM_CORES", + "all:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file From 08cdae5a73ac90613a09d483b980d834b8f2f4c9 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 10 Oct 2025 21:09:25 -0400 Subject: [PATCH 003/200] wip --- host/main.go | 24 +++++++++--------- packages/libevent.json | 8 +----- packages/native/_.json | 42 +++++++++++++++++++++++++++++++ packages/native/crosstool-ng.json | 8 +++--- packages/native/ct-tools.json | 15 +++++++++-- packages/native/nproc.json | 6 ++--- packages/torch.json | 5 +--- 7 files changed, 76 insertions(+), 32 deletions(-) create mode 100644 packages/native/_.json diff --git a/host/main.go b/host/main.go index 3b35d82..ed7ee34 100644 --- a/host/main.go +++ b/host/main.go @@ -147,19 +147,19 @@ var SupportedHosts = map[string]*Host{ "all:HOST=x86_64-linux-gnu", "all:TARGET=x86_64-linux-gnu", "all:CC_target=x86_64-linux-gnu", - "all:CC=x86_64-linux-gnu-gcc", - "all:CXX=x86_64-linux-gnu-g++", + "all:CC=x86_64-unknown-linux-gnu-gcc", + "all:CXX=x86_64-unknown-linux-gnu-g++", "all:CXXFLAGS=$CFLAGS", - "all:RANLIB=x86_64-linux-gnu-ranlib", - "all:AR=x86_64-linux-gnu-ar", - "all:AS=x86_64-linux-gnu-as", - "all:LIBTOOL=x86_64-linux-gnu-libtool", - "all:OBJCOPY=x86_64-linux-gnu-objcopy", - "all:OBJDUMP=x86_64-linux-gnu-objdump", - "all:STRIP=x86_64-linux-gnu-strip", - "all:READELF=x86_64-linux-gnu-readelf", - "all:LD=x86_64-linux-gnu-ld", - "all:NM=x86_64-linux-gnu-nm", + "all:RANLIB=x86_64-unknown-linux-gnu-ranlib", + "all:AR=x86_64-unknown-linux-gnu-ar", + "all:AS=x86_64-unknown-linux-gnu-as", + "all:LIBTOOL=x86_64-unknown-linux-gnu-libtool", + "all:OBJCOPY=x86_64-unknown-linux-gnu-objcopy", + "all:OBJDUMP=x86_64-unknown-linux-gnu-objdump", + "all:STRIP=x86_64-unknown-linux-gnu-strip", + "all:READELF=x86_64-unknown-linux-gnu-readelf", + "all:LD=x86_64-unknown-linux-gnu-ld", + "all:NM=x86_64-unknown-linux-gnu-nm", }, }, "aarch64-linux-gnu": { diff --git a/packages/libevent.json b/packages/libevent.json index 6fe6a11..4825f93 100644 --- a/packages/libevent.json +++ b/packages/libevent.json @@ -10,13 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/autoconf", - "all:native/automake", - "all:native/libtool", - "all:native/m4", - "all:native/make", - "all:native/perl" + "all:native/_" ], "build": { "env": [ diff --git a/packages/native/_.json b/packages/native/_.json new file mode 100644 index 0000000..a7d3f0e --- /dev/null +++ b/packages/native/_.json @@ -0,0 +1,42 @@ +{ + "package": "native/_", + "version": "0.0.0", + "type": "native", + "dependencies": [ + "*-android*:native/android_ndk", + "*-apple-*:native/osx-cross", + "all:native/autoconf", + "all:native/automake", + "all:native/bash", + "all:native/bison", + "all:native/cmake", + "all:native/cmake-toolchain", + "all:native/config", + "all:native/ct-tools", + "all:native/gawk", + "all:native/gettext", + "all:native/m4", + "all:native/make", + "all:native/mpc", + "all:native/mpfr", + "all:native/ninja", + "all:native/nproc", + "all:native/patch", + "all:native/perl", + "all:native/pkgconf", + "all:native/rsync", + "all:native/sed", + "all:native/texinfo" + ], + "build": { + "env": [ + "none:A_=This is a meta-package library that includes common tools needed for builds", + "none:B_=All packages included as dependencies (other than bootstrap packages) are copied over to staging dir" + ], + "steps": [ + "all:mkdir -p $STAGING_DIR$PREFIX ", + "all:rsync -a $PREFIX/* $STAGING_DIR$PREFIX", + "all:rm -rf $STAGING_DIR$PREFIX/native/bootstrap" + ] + } +} \ No newline at end of file diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index 3b40749..6a0a754 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -12,17 +12,17 @@ "dependencies": [ "all:native/autoconf", "all:native/automake", - "all:native/texinfo", "all:native/bash", "all:native/bison", - "all:native/m4", - "all:native/libtool", + "all:native/flex", "all:native/help2man", + "all:native/libtool", + "all:native/m4", "all:native/make", "all:native/perl", "all:native/python@3.11.13", "all:native/sed", - "all:native/flex", + "all:native/texinfo", "all:native/zlib" ], "build": { diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index ad406d0..70ed82f 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -113,13 +113,24 @@ "build": { "env": [ "x86_64-linux-gnu:TOOL_TARGET=x86_64-unknown-linux-gnu", - "aarch64-linux-gnu:TOOL_TARGET=aarch64-unknown-linux-gnu" + "aarch64-linux-gnu:TOOL_TARGET=aarch64-unknown-linux-gnu", + "x86_64-linux-musl:TOOL_TARGET=x86_64-multilib-linux-musl", + "x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32" ], "steps": [ "all:ct-ng $TOOL_TARGET", "all:echo 'CT_FORBID_DOWNLOAD=y' >> .config", + "all:echo 'CT_CC_SUPPORT_GOLANG=y' >> .config", + "all:echo 'CT_CC_SUPPORT_FORTRAN=y' >> .config", + "none:echo 'CT_CC_SUPPORT_JAVA=y' >> .config", + "all:echo 'CT_CC_SUPPORT_ADA=y' >> .config", + "all:echo 'CT_CC_SUPPORT_OBJC=y' >> .config", + "all:echo 'CT_CC_SUPPORT_OBJCXX=y' >> .config", "all:sed -i.bak 's/CT_GDB_CROSS=y/CT_GDB_CROSS=n/g' .config", - "all:env -i PATH=$PATH HOME=$HOME ct-ng build" + "all:env -i PATH=$PATH HOME=$HOME ct-ng build", + "all:mkdir -p $STAGING_DIR$PREFIX/native", + "all:chmod -R u+x $HOME/x-tools/$TOOL_TARGET/", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/* $STAGING_DIR$PREFIX/native" ] } } \ No newline at end of file diff --git a/packages/native/nproc.json b/packages/native/nproc.json index 823a49c..e07a7d3 100644 --- a/packages/native/nproc.json +++ b/packages/native/nproc.json @@ -12,9 +12,9 @@ "build": { "env": [], "steps": [ - "all:mkdir -p $STAGING_DIR$PREFIX/bin", - "all:cp nproc.sh $STAGING_DIR$PREFIX/bin/nproc", - "all:chmod +x $STAGING_DIR$PREFIX/bin/nproc" + "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "all:cp nproc.sh $STAGING_DIR$PREFIX/native/bin/nproc", + "all:chmod +x $STAGING_DIR$PREFIX/native/bin/nproc" ] } } \ No newline at end of file diff --git a/packages/torch.json b/packages/torch.json index 14f0e7b..ffc8b27 100644 --- a/packages/torch.json +++ b/packages/torch.json @@ -10,10 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/cmake", - "all:native/cmake-toolchain", - "all:native/make", + "all:native/_", "all:libevent", "all:libtor", "all:openssl", From 10ff3d976bf6a087412f5bb82a4a76684823ed94 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 14 Oct 2025 17:08:38 +0200 Subject: [PATCH 004/200] fix: linux build on macOS --- go.mod | 27 +-- go.sum | 147 +------------ host/main.go | 63 ++++-- pack/build.go | 3 +- pack/info.go | 49 ++++- packages/boost.json | 3 +- packages/eudev.json | 3 +- packages/expat.json | 5 +- packages/gtest.json | 5 +- packages/hidapi.json | 9 +- packages/libiconv.json | 5 +- packages/libtor.json | 7 +- packages/libusb.json | 2 +- packages/native/_.json | 5 +- packages/native/binutils@2.42.json | 61 +++--- packages/native/crosstool-ng.json | 17 +- packages/native/ct-tools.json | 128 +++++++----- packages/native/git.json | 1 + packages/native/openssl.json | 3 +- packages/native/osx-cross.json | 15 +- packages/native/python@3.11.13.json | 2 +- packages/native/texinfo.json | 3 +- packages/native/xar.json | 1 + packages/native/xz.json | 11 +- packages/ncurses.json | 2 +- packages/openssl.json | 4 +- packages/polyseed.json | 4 +- packages/protobuf.json | 7 +- packages/readline.json | 4 +- packages/sodium.json | 2 +- packages/unbound.json | 5 +- packages/unwind.json | 2 +- packages/xz.json | 6 +- packages/zeromq.json | 2 +- packages/zlib.json | 7 +- packages/zstd.json | 10 +- .../native_python3/deterministic_build.patch | 18 -- utils/download.go | 8 +- utils/git.go | 195 +++++++++++------- 39 files changed, 389 insertions(+), 462 deletions(-) delete mode 100644 patches/native_python3/deterministic_build.patch diff --git a/go.mod b/go.mod index 6586144..16127b3 100644 --- a/go.mod +++ b/go.mod @@ -3,31 +3,6 @@ module github.com/mrcyjanek/simplybs go 1.24.5 require ( - github.com/go-git/go-git/v5 v5.12.0 github.com/ryanuber/go-glob v1.0.0 - github.com/ulikunitz/xz v0.5.12 -) - -require ( - dario.cat/mergo v1.0.0 // indirect - github.com/Microsoft/go-winio v0.6.1 // indirect - github.com/ProtonMail/go-crypto v1.0.0 // indirect - github.com/cloudflare/circl v1.3.7 // indirect - github.com/cyphar/filepath-securejoin v0.2.4 // indirect - github.com/emirpasic/gods v1.18.1 // indirect - github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect - github.com/go-git/go-billy/v5 v5.5.0 // indirect - github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect - github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect - github.com/kevinburke/ssh_config v1.2.0 // indirect - github.com/pjbgf/sha1cd v0.3.0 // indirect - github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect - github.com/skeema/knownhosts v1.2.2 // indirect - github.com/xanzy/ssh-agent v0.3.3 // indirect - golang.org/x/crypto v0.37.0 // indirect - golang.org/x/mod v0.12.0 // indirect - golang.org/x/net v0.39.0 // indirect - golang.org/x/sys v0.32.0 // indirect - golang.org/x/tools v0.13.0 // indirect - gopkg.in/warnings.v0 v0.1.2 // indirect + github.com/ulikunitz/xz v0.5.15 ) diff --git a/go.sum b/go.sum index 8a7c773..411b896 100644 --- a/go.sum +++ b/go.sum @@ -1,149 +1,6 @@ -dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= -dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= -github.com/Microsoft/go-winio v0.5.2/go.mod h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v8QkMxJ6pZY= -github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= -github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= -github.com/ProtonMail/go-crypto v1.0.0 h1:LRuvITjQWX+WIfr930YHG2HNfjR1uOfyf5vE0kC2U78= -github.com/ProtonMail/go-crypto v1.0.0/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= -github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFIImctFaOjnTIavg87rW78vTPkQqLI8= -github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4= -github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio= -github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= -github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0= -github.com/cloudflare/circl v1.3.3/go.mod h1:5XYMA4rFBvNIrhs50XuiBJ15vF2pZn4nnUKZrLbUZFA= -github.com/cloudflare/circl v1.3.7 h1:qlCDlTPz2n9fu58M0Nh1J/JzcFpfgkFHHX3O35r5vcU= -github.com/cloudflare/circl v1.3.7/go.mod h1:sRTcRWXGLrKw6yIGJ+l7amYJFfAXbZG0kBSc8r4zxgA= -github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= -github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= -github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= -github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a h1:mATvB/9r/3gvcejNsXKSkQ6lcIaNec2nyfOdlTBR2lU= -github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM= -github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc= -github.com/emirpasic/gods v1.18.1/go.mod h1:8tpGGwCnJ5H4r6BWwaV6OrWmMoPhUl5jm/FMNAnJvWQ= -github.com/gliderlabs/ssh v0.3.7 h1:iV3Bqi942d9huXnzEF2Mt+CY9gLu8DNM4Obd+8bODRE= -github.com/gliderlabs/ssh v0.3.7/go.mod h1:zpHEXBstFnQYtGnB8k8kQLol82umzn/2/snG7alWVD8= -github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI= -github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic= -github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU= -github.com/go-git/go-billy/v5 v5.5.0/go.mod h1:hmexnoNsr2SJU1Ju67OaNz5ASJY3+sHgFRpCtpDCKow= -github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4= -github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII= -github.com/go-git/go-git/v5 v5.12.0 h1:7Md+ndsjrzZxbddRDZjF14qK+NN56sy6wkqaVrjZtys= -github.com/go-git/go-git/v5 v5.12.0/go.mod h1:FTM9VKtnI2m65hNI/TenDDDnUf2Q9FHnXYjuz9i5OEY= -github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= -github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= -github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A= -github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i6rXxKeerYnT8Nvf0QmHCRC1n8sfWVwXF2Frvo= -github.com/kevinburke/ssh_config v1.2.0 h1:x584FjTGwHzMwvHx18PXxbBVzfnxogHaAReU4gf13a4= -github.com/kevinburke/ssh_config v1.2.0/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM= -github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= -github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= -github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= -github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= -github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= -github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= -github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= -github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M= -github.com/pjbgf/sha1cd v0.3.0 h1:4D5XXmUUBUl/xQ6IjCkEAbqXskkq/4O7LmGn0AqMDs4= -github.com/pjbgf/sha1cd v0.3.0/go.mod h1:nZ1rrWOcGJ5uZgEEVL1VUM9iRQiZvWdbZjkKyFzPPsI= -github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= -github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M= -github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA= github.com/ryanuber/go-glob v1.0.0 h1:iQh3xXAumdQ+4Ufa5b25cRpC5TYKlno6hsv6Cb3pkBk= github.com/ryanuber/go-glob v1.0.0/go.mod h1:807d1WSdnB0XRJzKNil9Om6lcp/3a0v4qIHxIXzX/Yc= -github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8= -github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4= -github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= -github.com/skeema/knownhosts v1.2.2 h1:Iug2P4fLmDw9f41PB6thxUkNUkJzB5i+1/exaj40L3A= -github.com/skeema/knownhosts v1.2.2/go.mod h1:xYbVRSPxqBZFrdmDyMmsOs+uX1UZC3nTN3ThzgDxUwo= -github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= -github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= -github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= -github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/ulikunitz/xz v0.5.12 h1:37Nm15o69RwBkXM0J6A5OlE67RZTfzUxTj8fB3dfcsc= github.com/ulikunitz/xz v0.5.12/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= -github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM= -github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI1Bc68Uw= -github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= -golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= -golang.org/x/crypto v0.37.0 h1:kJNSjF/Xp7kU0iB2Z+9viTPMW4EqqsrywMXLJOOsXSE= -golang.org/x/crypto v0.37.0/go.mod h1:vg+k43peMZ0pUMhYmVAWysMK35e6ioLh3wB8ZCAfbVc= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/mod v0.12.0 h1:rmsUpXtvNzj340zd98LZ4KntptpfRHwpFOHG188oHXc= -golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= -golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= -golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= -golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY= -golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E= -golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E= -golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= -golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.32.0 h1:s77OFDvIQeibCmezSnk/q6iAfkdiQaJi4VzroCFrN20= -golang.org/x/sys v0.32.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= -golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= -golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= -golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= -golang.org/x/term v0.31.0 h1:erwDkOK1Msy6offm1mOgvspSkslFnIGsFnxOKoufg3o= -golang.org/x/term v0.31.0/go.mod h1:R4BeIy7D95HzImkxGkTW1UQTtP54tio2RyHz7PwK0aw= -golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= -golang.org/x/text v0.24.0 h1:dd5Bzh4yt5KYA8f9CJHCP4FB4D51c2c6JvN37xJJkJ0= -golang.org/x/text v0.24.0/go.mod h1:L8rBsPeo2pSS+xqN0d5u2ikmjtmoJbDBT1b7nHvFCdU= -golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= -golang.org/x/tools v0.13.0 h1:Iey4qkscZuv0VvIt8E0neZjtPVQFSc870HQ448QgEmQ= -golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58= -golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= -gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= -gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME= -gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI= -gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= -gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= -gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +github.com/ulikunitz/xz v0.5.15 h1:9DNdB5s+SgV3bQ2ApL10xRc35ck0DuIX/isZvIk+ubY= +github.com/ulikunitz/xz v0.5.15/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= diff --git a/host/main.go b/host/main.go index ed7ee34..dc4d01d 100644 --- a/host/main.go +++ b/host/main.go @@ -120,27 +120,48 @@ var SupportedHosts = map[string]*Host{ "all:SDK_PATH=" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path"), }, }, - "x86_64-linux-musl": { - Triplet: "x86_64-linux-musl", - Env: []string{ - "all:HOST=x86_64-linux-musl", - "all:TARGET=x86_64-linux-musl", - "all:CC_target=x86_64-linux-musl", - "all:CC=x86_64-linux-musl-gcc", - "all:CXX=x86_64-linux-musl-g++", - "all:CXXFLAGS=$CFLAGS", - "all:RANLIB=x86_64-linux-musl-ranlib", - "all:AR=x86_64-linux-musl-ar", - "all:AS=x86_64-linux-musl-as", - "all:LIBTOOL=x86_64-linux-musl-libtool", - "all:OBJCOPY=x86_64-linux-musl-objcopy", - "all:OBJDUMP=x86_64-linux-musl-objdump", - "all:STRIP=x86_64-linux-musl-strip", - "all:READELF=x86_64-linux-musl-readelf", - "all:LD=x86_64-linux-musl-ld", - "all:NM=x86_64-linux-musl-nm", - }, - }, + // "x86_64-linux-musl": { + // Triplet: "x86_64-linux-musl", + // Env: []string{ + // "all:HOST=x86_64-linux-musl", + // "all:TARGET=x86_64-linux-musl", + // "all:CC_target=x86_64-linux-musl", + // "all:CC=x86_64-linux-musl-gcc", + // "all:CXX=x86_64-linux-musl-g++", + // "all:CXXFLAGS=$CFLAGS", + // "all:RANLIB=x86_64-linux-musl-ranlib", + // "all:AR=x86_64-linux-musl-ar", + // "all:AS=x86_64-linux-musl-as", + // "all:LIBTOOL=x86_64-linux-musl-libtool", + // "all:OBJCOPY=x86_64-linux-musl-objcopy", + // "all:OBJDUMP=x86_64-linux-musl-objdump", + // "all:STRIP=x86_64-linux-musl-strip", + // "all:READELF=x86_64-linux-musl-readelf", + // "all:LD=x86_64-linux-musl-ld", + // "all:NM=x86_64-linux-musl-nm", + // }, + // }, + // "x86_64-w64-mingw32": { + // Triplet: "x86_64-w64-mingw32", + // Env: []string{ + // "all:HOST=x86_64-w64-mingw32", + // "all:TARGET=x86_64-w64-mingw32", + // "all:CC_target=x86_64-w64-mingw32", + // "all:CC=x86_64-w64-mingw32-gcc", + // "all:CXX=x86_64-w64-mingw32-g++", + // "all:CXXFLAGS=$CFLAGS", + // "all:RANLIB=x86_64-w64-mingw32-ranlib", + // "all:AR=x86_64-w64-mingw32-ar", + // "all:AS=x86_64-w64-mingw32-as", + // "all:LIBTOOL=x86_64-w64-mingw32-libtool", + // "all:OBJCOPY=x86_64-w64-mingw32-objcopy", + // "all:OBJDUMP=x86_64-w64-mingw32-objdump", + // "all:STRIP=x86_64-w64-mingw32-strip", + // "all:READELF=x86_64-w64-mingw32-readelf", + // "all:LD=x86_64-w64-mingw32-ld", + // "all:NM=x86_64-w64-mingw32-nm", + // }, + // }, "x86_64-linux-gnu": { Triplet: "x86_64-linux-gnu", Env: []string{ diff --git a/pack/build.go b/pack/build.go index 4046013..0f26c54 100644 --- a/pack/build.go +++ b/pack/build.go @@ -74,8 +74,7 @@ func (p *Package) ExtractSource(host *host.Host, buildPath string) { case "tar.xz": err = utils.ExtractTarXz(sourcePath, actualBuildPath) case "git": - os.MkdirAll(actualBuildPath, 0755) - err = os.CopyFS(actualBuildPath, os.DirFS(sourcePath)) + err = utils.ExtractGitCloneBundle(sourcePath, actualBuildPath) case "blob": os.MkdirAll(filepath.Dir(actualBuildPath), 0755) err = utils.Copy(sourcePath, actualBuildPath) diff --git a/pack/info.go b/pack/info.go index dfa2c43..c26b678 100644 --- a/pack/info.go +++ b/pack/info.go @@ -15,11 +15,56 @@ import ( "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/utils" + "github.com/ryanuber/go-glob" ) +func (p *Package) FilterForHost(h *host.Host) *Package { + filtered := &Package{ + Package: p.Package, + Version: p.Version, + Type: p.Type, + Download: p.Download, + Dependencies: []string{}, + } + filtered.Build.Env = []string{} + filtered.Build.Steps = []string{} + + for _, dep := range p.Dependencies { + if strings.Contains(dep, ":") { + prefix := strings.Split(dep, ":")[0] + if !glob.Glob(prefix, h.Triplet) && prefix != "all" { + continue + } + } + filtered.Dependencies = append(filtered.Dependencies, dep) + } + + for _, env := range p.Build.Env { + if strings.Contains(env, ":") { + prefix := strings.Split(env, ":")[0] + if !glob.Glob(prefix, h.Triplet) && prefix != "all" { + continue + } + } + filtered.Build.Env = append(filtered.Build.Env, env) + } + + for _, step := range p.Build.Steps { + if strings.Contains(step, ":") { + prefix := strings.Split(step, ":")[0] + if !glob.Glob(prefix, h.Triplet) && prefix != "all" { + continue + } + } + filtered.Build.Steps = append(filtered.Build.Steps, step) + } + + return filtered +} + func (p *Package) GeneratePackageInfo(h *host.Host) string { pkgs := map[string]interface{}{} - pkgs["_target"] = p + pkgs["_target"] = p.FilterForHost(h) for _, dep := range p.Dependencies { if strings.Contains(dep, ":") { dep = dep[strings.Index(dep, ":")+1:] @@ -28,7 +73,7 @@ func (p *Package) GeneratePackageInfo(h *host.Host) string { if err != nil { log.Fatalf("Package %s not found in info", dep) } - pkgs[dep] = pkg + pkgs[dep] = pkg.FilterForHost(h) } env := p.GetEnvForLogs(h) delete(env, "PATH") diff --git a/packages/boost.json b/packages/boost.json index 7ce0167..9942cb5 100644 --- a/packages/boost.json +++ b/packages/boost.json @@ -10,8 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "*-linux-*:native/libtool", + "all:native/_", "all:native/boost-b2", "all:native/python@3.11.13", "all:libiconv" diff --git a/packages/eudev.json b/packages/eudev.json index b1db833..8424b9e 100644 --- a/packages/eudev.json +++ b/packages/eudev.json @@ -10,8 +10,7 @@ } ], "dependencies": [ - "*-linux-gnu:native/gperf", - "*-linux-gnu:native/make" + "*-linux-gnu:native/_" ], "build": { "env": [ diff --git a/packages/expat.json b/packages/expat.json index 8dc044b..a973ffa 100644 --- a/packages/expat.json +++ b/packages/expat.json @@ -10,10 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/autoconf", - "all:native/make", - "all:native/perl", + "all:native/_", "all:libiconv" ], "build": { diff --git a/packages/gtest.json b/packages/gtest.json index 8200f9c..bd34292 100644 --- a/packages/gtest.json +++ b/packages/gtest.json @@ -10,10 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/cmake", - "all:native/cmake-toolchain", - "all:native/make" + "all:native/_" ], "build": { "env": [ diff --git a/packages/hidapi.json b/packages/hidapi.json index 8536986..b4ed48a 100644 --- a/packages/hidapi.json +++ b/packages/hidapi.json @@ -10,14 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/autoconf", - "all:native/automake", - "all:native/libtool", - "all:native/m4", - "all:native/make", - "all:native/patch", - "all:native/perl", + "all:native/_", "all:eudev", "all:libusb" ], diff --git a/packages/libiconv.json b/packages/libiconv.json index 658a5e4..872df62 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -10,9 +10,8 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/config", - "all:native/make" + "all:native/_", + "all:native/config" ], "build": { "env": [ diff --git a/packages/libtor.json b/packages/libtor.json index 0e900b2..981f077 100644 --- a/packages/libtor.json +++ b/packages/libtor.json @@ -10,12 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/autoconf", - "all:native/automake", - "all:native/m4", - "all:native/make", - "all:native/perl", + "all:native/_", "all:libevent", "all:openssl", "all:xz", diff --git a/packages/libusb.json b/packages/libusb.json index bac7be2..d4dc2aa 100644 --- a/packages/libusb.json +++ b/packages/libusb.json @@ -10,7 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", + "all:native/_", "all:native/config", "all:native/make" ], diff --git a/packages/native/_.json b/packages/native/_.json index a7d3f0e..c07dcc3 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -12,9 +12,12 @@ "all:native/cmake", "all:native/cmake-toolchain", "all:native/config", - "all:native/ct-tools", + "*-linux-gnu:native/ct-tools", + "*-linux-musl:native/ct-tools", + "*-w64-mingw32:native/ct-tools", "all:native/gawk", "all:native/gettext", + "all:native/libtool", "all:native/m4", "all:native/make", "all:native/mpc", diff --git a/packages/native/binutils@2.42.json b/packages/native/binutils@2.42.json index c2d3536..427d38e 100644 --- a/packages/native/binutils@2.42.json +++ b/packages/native/binutils@2.42.json @@ -10,49 +10,36 @@ } ], "dependencies": [ - "*-linux-gnu:native/bison", - "*-linux-gnu:native/libiconv", - "*-linux-gnu:native/make", - "*-linux-gnu:native/perl", - "*-linux-gnu:native/pkgconf", - "*-linux-gnu:native/texinfo", - "*-linux-gnu:native/zlib" + "all:native/bison", + "all:native/libiconv", + "all:native/make", + "all:native/perl", + "all:native/pkgconf", + "all:native/texinfo", + "all:native/zlib" ], "build": { "env": [ "x86_64-linux-gnu:TOOL_TARGET=x86_64-linux-gnu", - "*-linux-gnu:config_opts=--prefix=$PREFIX/native", - "*-linux-gnu:config_opts=$config_opts --disable-nls", - "*-linux-gnu:config_opts=$config_opts --disable-werror", - "*-linux-gnu:config_opts=$config_opts --with-system-zlib", - "*-linux-gnu:config_opts=$config_opts --enable-targets=$TOOL_TARGET", - "*-linux-gnu:config_opts=$config_opts --target=$TOOL_TARGET", - "*-linux-gnu:config_opts=$config_opts --libdir=$PREFIX/native/lib/$TOOL_TARGET", - "*-linux-gnu:config_opts=$config_opts --infodir=$PREFIX/native/share/info/$TOOL_TARGET", - "*-linux-gnu:CPPFLAGS=-I$PREFIX/native/include", - "*-linux-gnu:LDFLAGS=-L$PREFIX/native/lib" + "aarch64-linux-gnu:TOOL_TARGET=aarch64-linux-gnu", + "x86_64-linux-musl:TOOL_TARGET=x86_64-linux-musl", + "x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", + "all:config_opts=--prefix=$PREFIX/native", + "all:config_opts=$config_opts --disable-nls", + "all:config_opts=$config_opts --disable-werror", + "all:config_opts=$config_opts --with-system-zlib", + "all:config_opts=$config_opts --enable-targets=$TOOL_TARGET", + "all:config_opts=$config_opts --target=$TOOL_TARGET", + "all:config_opts=$config_opts --libdir=$PREFIX/native/lib/$TOOL_TARGET", + "all:config_opts=$config_opts --infodir=$PREFIX/native/share/info/$TOOL_TARGET", + "all:CPPFLAGS=-I$PREFIX/native/include", + "all:LDFLAGS=-L$PREFIX/native/lib" ], "steps": [ - "*-linux-gnu:mkdir -p build", - "*-linux-gnu:cd build && ../configure $config_opts", - "*-linux-gnu:cd build && make -j$NUM_CORES", - "*-linux-gnu:cd build && make install DESTDIR=$STAGING_DIR", - "*-linux-gnu:ln -s $TOOL_TARGET-gprof $STAGING_DIR$PREFIX/native/bin/gprof", - "*-linux-gnu:ln -s $TOOL_TARGET-ranlib $STAGING_DIR$PREFIX/native/bin/ranlib", - "*-linux-gnu:ln -s $TOOL_TARGET-addr2line $STAGING_DIR$PREFIX/native/bin/addr2line", - "*-linux-gnu:ln -s $TOOL_TARGET-ld $STAGING_DIR$PREFIX/native/bin/ld", - "*-linux-gnu:ln -s $TOOL_TARGET-readelf $STAGING_DIR$PREFIX/native/bin/readelf", - "*-linux-gnu:ln -s $TOOL_TARGET-ar $STAGING_DIR$PREFIX/native/bin/ar", - "*-linux-gnu:ln -s $TOOL_TARGET-ld.bfd $STAGING_DIR$PREFIX/native/bin/ld.bfd", - "*-linux-gnu:ln -s $TOOL_TARGET-size $STAGING_DIR$PREFIX/native/bin/size", - "*-linux-gnu:ln -s $TOOL_TARGET-as $STAGING_DIR$PREFIX/native/bin/as", - "*-linux-gnu:ln -s $TOOL_TARGET-nm $STAGING_DIR$PREFIX/native/bin/nm", - "*-linux-gnu:ln -s $TOOL_TARGET-strings $STAGING_DIR$PREFIX/native/bin/strings", - "*-linux-gnu:ln -s $TOOL_TARGET-c++filt $STAGING_DIR$PREFIX/native/bin/c++filt", - "*-linux-gnu:ln -s $TOOL_TARGET-objcopy $STAGING_DIR$PREFIX/native/bin/objcopy", - "*-linux-gnu:ln -s $TOOL_TARGET-strip $STAGING_DIR$PREFIX/native/bin/strip", - "*-linux-gnu:ln -s $TOOL_TARGET-elfedit $STAGING_DIR$PREFIX/native/bin/elfedit", - "*-linux-gnu:ln -s $TOOL_TARGET-objdump $STAGING_DIR$PREFIX/native/bin/objdump" + "all:mkdir -p build", + "all:cd build && ../configure $config_opts", + "all:cd build && make -j$NUM_CORES", + "all:cd build && make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index 6a0a754..f79d122 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -1,20 +1,23 @@ { "package": "native/crosstool-ng", - "version": "1.27.0", + "version": "1.28.0", "type": "native", "download": [ { "kind": "tar.xz", - "sha256": "0506ab98fa0ad6d263a555feeb2c7fff9bc24a434635d4b0cdff9137fe5b4477", - "url": "http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.27.0.tar.xz" + "sha256": "5750e29a2bda5cd8d67900592576b1670a1987a4dcd5e4f6beae09138a1f5699", + "url": "http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.28.0.tar.xz" } ], "dependencies": [ "all:native/autoconf", "all:native/automake", "all:native/bash", + "all:native/binutils@2.42", "all:native/bison", "all:native/flex", + "all:native/gawk", + "all:native/gettext", "all:native/help2man", "all:native/libtool", "all:native/m4", @@ -23,14 +26,20 @@ "all:native/python@3.11.13", "all:native/sed", "all:native/texinfo", + "all:native/xz", "all:native/zlib" ], "build": { "env": [ - "x86_64-linux-gnu:TOOL_TARGET=x86_64-linux-gnu" + "x86_64-linux-gnu:TOOL_TARGET=x86_64-linux-gnu", + "x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", + "aarch64-linux-gnu:TOOL_TARGET=aarch64-linux-gnu", + "x86_64-linux-musl:TOOL_TARGET=x86_64-linux-musl" ], "steps": [ "all:./bootstrap", + "all:ln -s $TOOL_TARGET-objcopy $PREFIX/native/bin/objcopy", + "all:ln -s $TOOL_TARGET-readelf $PREFIX/native/bin/readelf", "all:./configure --prefix=$PREFIX/native", "all:make -j$NUM_CORES", "all:make install DESTDIR=$STAGING_DIR" diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 70ed82f..9472c2d 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -5,39 +5,45 @@ "download": [ { "kind": "blob", - "path": ".build/tarballs/binutils-2.43.1.tar.xz", - "sha256": "13f74202a3c4c51118b797a39ea4200d3f6cfbe224da6d1d95bb938480132dfd", - "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.43.1.tar.xz" + "path": ".build/tarballs/binutils-2.45.tar.xz", + "sha256": "c50c0e7f9cb188980e2cc97e4537626b1672441815587f1eab69d2a1bfbef5d2", + "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.45.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/expat-2.5.0.tar.xz", - "sha256": "ef2420f0232c087801abf705e89ae65f6257df6b7931d37846a193ef2e8cdcbe", - "url": "http://github.com/libexpat/libexpat/releases/download/R_2_5_0/expat-2.5.0.tar.xz" + "path": ".build/tarballs/VERSION_2_5_21.tar.gz", + "sha256": "470aa72e7018f0beadb5fbe3c932a62ba1b0594c29158a744c614bfa42133e59", + "url": "https://github.com/johnsonjh/duma/archive/refs/tags/VERSION_2_5_21.tar.gz" }, { "kind": "blob", - "path": ".build/tarballs/gcc-14.2.0.tar.xz", - "sha256": "a7b39bc69cbf9e25826c5a60ab26477001f7c08d85cec04bc0e29cabed6f3cc9", - "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-14.2.0/gcc-14.2.0.tar.xz" + "path": ".build/tarballs/expat-2.7.1.tar.xz", + "sha256": "354552544b8f99012e5062f7d570ec77f14b412a3ff5c7d8d0dae62c0d217c30", + "url": "http://github.com/libexpat/libexpat/releases/download/R_2_7_1/expat-2.7.1.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/gdb-16.2.tar.xz", - "sha256": "4002cb7f23f45c37c790536a13a720942ce4be0402d929c9085e92f10d480119", - "url": "http://ftpmirror.gnu.org/gnu/gdb/gdb-16.2.tar.xz" + "path": ".build/tarballs/gcc-15.2.0.tar.xz", + "sha256": "438fd996826b0c82485a29da03a72d71d6e3541a83ec702df4271f6fe025d24e", + "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-15.2.0/gcc-15.2.0.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/gettext-0.23.1.tar.xz", - "sha256": "c1f97a72a7385b7e71dd07b5fea6cdaf12c9b88b564976b23bd8c11857af2970", - "url": "http://ftpmirror.gnu.org/gnu/gettext/gettext-0.23.1.tar.xz" + "path": ".build/tarballs/gdb-16.3.tar.xz", + "sha256": "bcfcd095528a987917acf9fff3f1672181694926cc18d609c99d0042c00224c5", + "url": "http://ftpmirror.gnu.org/gnu/gdb/gdb-16.3.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/glibc-2.41.tar.xz", - "sha256": "a5a26b22f545d6b7d7b3dd828e11e428f24f4fac43c934fb071b6a7d0828e901", - "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.41.tar.xz" + "path": ".build/tarballs/gettext-0.26.tar.xz", + "sha256": "d1fb86e260cfe7da6031f94d2e44c0da55903dbae0a2fa0fae78c91ae1b56f00", + "url": "http://ftpmirror.gnu.org/gnu/gettext/gettext-0.26.tar.xz" + }, + { + "kind": "blob", + "path": ".build/tarballs/glibc-2.42.tar.xz", + "sha256": "d1775e32e4628e64ef930f435b67bb63af7599acb6be2b335b9f19f16509f17f", + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.42.tar.xz" }, { "kind": "blob", @@ -47,21 +53,33 @@ }, { "kind": "blob", - "path": ".build/tarballs/isl-0.26.tar.xz", - "sha256": "a0b5cb06d24f9fa9e77b55fabbe9a3c94a336190345c2555f9915bb38e976504", - "url": "https://libisl.sourceforge.io/isl-0.26.tar.xz" + "path": ".build/tarballs/isl-0.27.tar.xz", + "sha256": "6d8babb59e7b672e8cb7870e874f3f7b813b6e00e6af3f8b04f7579965643d5c", + "url": "https://libisl.sourceforge.io/isl-0.27.tar.xz" + }, + { + "kind": "blob", + "path": ".build/tarballs/libiconv-1.18.tar.gz", + "sha256": "3b08f5f4f9b4eb82f151a7040bfd6fe6c6fb922efe4b1659c66ea933276965e8", + "url": "https://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.18.tar.gz" }, { "kind": "blob", - "path": ".build/tarballs/libiconv-1.16.tar.gz", - "sha256": "e6a1b1b589654277ee790cce3734f07876ac4ccfaecbee8afa0b649cf529cc04", - "url": "https://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.16.tar.gz" + "path": ".build/tarballs/linux-6.16.tar.xz", + "sha256": "1a4be2fe6b5246aa4ac8987a8a4af34c42a8dd7d08b46ab48516bcc1befbcd83", + "url": "https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.16.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/linux-6.13.tar.xz", - "sha256": "e79dcc6eb86695c6babfb07c2861912b635d5075c6cd1cd0567d1ea155f80d6e", - "url": "https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.13.tar.xz" + "path": ".build/tarballs/mingw-w64-v13.0.0.tar.bz2", + "sha256": "5afe822af5c4edbf67daaf45eec61d538f49eef6b19524de64897c6b95828caf", + "url": "https://downloads.sourceforge.net/project/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v13.0.0.tar.bz2" + }, + { + "kind": "blob", + "path": ".build/tarballs/musl-1.2.5.tar.gz", + "sha256": "a9a118bbe84d8764da0ea0d28b3ab3fae8477fc7e4085d90102b8596fc7c75e4", + "url": "https://www.musl-libc.org/releases/musl-1.2.5.tar.gz" }, { "kind": "blob", @@ -71,15 +89,15 @@ }, { "kind": "blob", - "path": ".build/tarballs/mpfr-4.2.1.tar.xz", + "path": ".build/tarballs/mpfr-4.2.2.tar.xz", "sha256": "277807353a6726978996945af13e52829e3abd7a9a5b7fb2793894e18f1fcbb2", - "url": "http://ftpmirror.gnu.org/gnu/mpfr/mpfr-4.2.1.tar.xz" + "url": "http://ftpmirror.gnu.org/gnu/mpfr/mpfr-4.2.2.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/ncurses-6.4.tar.gz", + "path": ".build/tarballs/ncurses-6.5.tar.gz", "sha256": "6931283d9ac87c5073f30b6290c4c75f21632bb4fc3603ac8100812bed248159", - "url": "http://ftpmirror.gnu.org/gnu/ncurses/ncurses-6.4.tar.gz" + "url": "http://ftpmirror.gnu.org/gnu/ncurses/ncurses-6.5.tar.gz" }, { "kind": "blob", @@ -89,48 +107,64 @@ }, { "kind": "blob", - "path": ".build/tarballs/zstd-1.5.6.tar.gz", - "sha256": "8c29e06cf42aacc1eafc4077ae2ec6c6fcb96a626157e0593d5e82a34fd403c1", - "url": "https://github.com/facebook/zstd/releases/download/v1.5.6/zstd-1.5.6.tar.gz" + "path": ".build/tarballs/zstd-1.5.7.tar.gz", + "sha256": "eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3", + "url": "https://github.com/facebook/zstd/releases/download/v1.5.7/zstd-1.5.7.tar.gz" } ], "dependencies": [ "all:native/autoconf", "all:native/automake", "all:native/bash", + "all:native/binutils@2.42", "all:native/bison", "all:native/crosstool-ng", - "all:native/m4", - "all:native/libtool", + "all:native/flex", + "all:native/gawk", + "all:native/gettext", "all:native/help2man", + "all:native/libtool", + "all:native/m4", "all:native/make", "all:native/perl", "all:native/python@3.11.13", "all:native/sed", - "all:native/flex", + "all:native/texinfo", + "all:native/xz", "all:native/zlib" ], "build": { "env": [ "x86_64-linux-gnu:TOOL_TARGET=x86_64-unknown-linux-gnu", + "x86_64-linux-gnu:TOOL_TARGET_ALT=x86_64-linux-gnu", "aarch64-linux-gnu:TOOL_TARGET=aarch64-unknown-linux-gnu", + "aarch64-linux-gnu:TOOL_TARGET_ALT=aarch64-linux-gnu", "x86_64-linux-musl:TOOL_TARGET=x86_64-multilib-linux-musl", - "x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32" + "x86_64-linux-musl:TOOL_TARGET_ALT=x86_64-linux-musl", + "x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", + "x86_64-w64-mingw32:TOOL_TARGET_ALT=x86_64-w64-mingw32" ], "steps": [ "all:ct-ng $TOOL_TARGET", + "all:echo 'CT_EXPERIMENTAL=y' >> .config", "all:echo 'CT_FORBID_DOWNLOAD=y' >> .config", - "all:echo 'CT_CC_SUPPORT_GOLANG=y' >> .config", - "all:echo 'CT_CC_SUPPORT_FORTRAN=y' >> .config", - "none:echo 'CT_CC_SUPPORT_JAVA=y' >> .config", - "all:echo 'CT_CC_SUPPORT_ADA=y' >> .config", - "all:echo 'CT_CC_SUPPORT_OBJC=y' >> .config", - "all:echo 'CT_CC_SUPPORT_OBJCXX=y' >> .config", + "all:echo 'CT_CC_LANG_GOLANG=y' >> .config", + "all:echo 'CT_BINUTILS_EXTRA_CONFIG_ARRAY=\"--with-system-zlib\"' >> .config", + "all:echo 'CT_CC_GCC_SYSTEM_ZLIB=y' >> .config", + "all:echo 'CT_DEBUG_CT_SAVE_STEPS=y' >> .config", "all:sed -i.bak 's/CT_GDB_CROSS=y/CT_GDB_CROSS=n/g' .config", - "all:env -i PATH=$PATH HOME=$HOME ct-ng build", + "all:sed -i.bak 's/CT_GDB_GDBSERVER=y/CT_GDB_GDBSERVER=n/g' .config", + "all:echo 'CT_GDB=n' >> .config", + "all:echo 'CT_GDB_NATIVE=n' >> .config", + "all:ln -s $TOOL_TARGET_ALT-objcopy $PREFIX/native/bin/objcopy", + "all:ln -s $TOOL_TARGET_ALT-readelf $PREFIX/native/bin/readelf", + "x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ar $PREFIX/native/bin/ar", + "x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ranlib $PREFIX/native/bin/ranlib", + "all:unset LD_LIBRARY_PATH LIBRARY_PATH CC CXX CFLAGS; ct-ng build", "all:mkdir -p $STAGING_DIR$PREFIX/native", - "all:chmod -R u+x $HOME/x-tools/$TOOL_TARGET/", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/* $STAGING_DIR$PREFIX/native" + "all:chmod -R u+rwx $HOME/x-tools/$TOOL_TARGET/", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/* $STAGING_DIR$PREFIX/native", + "all:rm $STAGING_DIR$PREFIX/native/*.log*" ] } } \ No newline at end of file diff --git a/packages/native/git.json b/packages/native/git.json index c8448cb..11a1b35 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -12,6 +12,7 @@ "dependencies": [ "all:native/curl", "all:native/expat", + "all:native/gettext", "all:native/make" ], "build": { diff --git a/packages/native/openssl.json b/packages/native/openssl.json index 2d51627..5d2a664 100644 --- a/packages/native/openssl.json +++ b/packages/native/openssl.json @@ -11,7 +11,8 @@ ], "dependencies": [ "all:native/make", - "all:native/perl" + "all:native/perl", + "all:native/xz" ], "build": { "env": [ diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 51eb674..88a7fca 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -10,9 +10,9 @@ }, { "kind": "blob", - "path": "Xcode_16.4.xip", - "sha256": "2dbf65ba28fb85b34e72c14c529a42d5c3189ab0f11fb29fdebd5f4ee6c87900", - "url": "https://download.developer.apple.com/Developer_Tools/Xcode_16.4/Xcode_16.4.xip" + "path": "Xcode_26.0.1.xip", + "sha256": "9881c457068c86ac91e94cca2d7116dfd01cb7179c22b0863b63c7f3bb7e7695", + "url": "https://download.developer.apple.com/Developer_Tools/Xcode_26.0.1/Xcode_26.0.1_Universal.xip" }, { "kind": "blob", @@ -42,12 +42,14 @@ "dependencies": [ "all:native/cmake", "all:native/cpio", + "all:native/gettext", "all:native/git", "all:native/libxml2", "all:native/openssl", "all:native/patch", "all:native/pbzx", "all:native/perl", + "all:native/pkgconf", "all:native/python@3.11.13", "all:native/xar", "all:native/xz" @@ -60,7 +62,7 @@ "aarch64-apple-darwin:ENABLE_ARCHS=arm64", "x86_64-apple-darwin:ENABLE_ARCHS=x86_64", "all:UNATTENDED=1", - "all:SDK_VERSION=15.5" + "all:SDK_VERSION=26.0" ], "steps": [ "all:sed -i.bak 's/build_xar/echo build_xar/g' tools/gen_sdk_package_pbzx.sh", @@ -71,8 +73,9 @@ "all:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", "all:sed -i.bak 's/download $CLANG_LLVM_PKG/echo download $CLANG_LLVM_PKG/g' build_clang.sh", "all:sed -i.bak 's/rm -f $(basename $CLANG_LLVM_PKG)/echo rm -f $(basename $CLANG_LLVM_PKG)/g' build_clang.sh", - "all:./tools/gen_sdk_package_pbzx.sh ./Xcode_16.4.xip", - "all:mv MacOSX15.* tarballs", + "all:sed -i.bak '8,11d' tools/gen_sdk_package_pbzx.sh", + "all:./tools/gen_sdk_package_pbzx.sh ./Xcode_26.0.1.xip", + "all:mv MacOSX26.* tarballs", "all:yes | INSTALLPREFIX=$PREFIX/native ./build_clang.sh", "none:cd build/clang-20.1.8/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", "all:yes | INSTALLPREFIX=$PREFIX/native ./build_apple_clang.sh", diff --git a/packages/native/python@3.11.13.json b/packages/native/python@3.11.13.json index c540da0..aec9731 100644 --- a/packages/native/python@3.11.13.json +++ b/packages/native/python@3.11.13.json @@ -17,7 +17,7 @@ "build": { "env": [], "steps": [ - "all:sed -i.bak '/^#ifndef DATE/i\\\n\\/* Deterministic date and time. *\\/\\\n#define DATE \"Jan 1 1970\"\\\n#define TIME \"00:00:01\"' Modules/getbuildinfo.c", + "all:sed -i.bak '/^#ifndef DATE/i\\\n\\/* Deterministic date and time. *\\/\\\n#define DATE \"Jan 1 1970\"\\\n#define TIME \"00:00:01\"\\\n' Modules/getbuildinfo.c", "all:sed -i.bak 's/^#\\(zlib[[:space:]]\\+zlibmodule\\.c[[:space:]]\\+-lz\\)/\\1/' Modules/Setup", "all:./configure --disable-test-modules --prefix=$PREFIX/native", "all:make -j$NUM_CORES", diff --git a/packages/native/texinfo.json b/packages/native/texinfo.json index 77872cb..f42ef71 100644 --- a/packages/native/texinfo.json +++ b/packages/native/texinfo.json @@ -5,13 +5,14 @@ "download": [ { "kind": "tar.gz", - "sha256": "e86de7dfef6b352aa1bf647de3a6213d1567c70129eccbf8977706d9c91919c8", + "sha256": "e86de7dfef6b352aa1bf647de3a621w3d1567c70129eccbf8977706d9c91919c8", "url": "http://ftpmirror.gnu.org/gnu/texinfo/texinfo-7.2.tar.gz" } ], "dependencies": [ "all:native/automake", "all:native/gawk", + "all:native/gettext", "all:native/make", "all:native/perl" ], diff --git a/packages/native/xar.json b/packages/native/xar.json index 0250f93..5760cf9 100644 --- a/packages/native/xar.json +++ b/packages/native/xar.json @@ -11,6 +11,7 @@ ], "dependencies": [ "all:native/make", + "all:native/openssl", "all:native/xz" ], "build": { diff --git a/packages/native/xz.json b/packages/native/xz.json index f5a7cdb..8178edb 100644 --- a/packages/native/xz.json +++ b/packages/native/xz.json @@ -26,16 +26,11 @@ "env": [ "all:HOSTOVERRIDE=$HOST", "aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "all:config_opts=--prefix=$PREFIX --host=$HOSTOVERRIDE", + "all:config_opts=--prefix=$PREFIX/native --host=$HOSTOVERRIDE", "all:config_opts=$config_opts --disable-shared", "all:config_opts=$config_opts --enable-static", "all:config_opts=$config_opts --disable-doc", - "all:config_opts=$config_opts --disable-scripts", - "all:config_opts=$config_opts --disable-xz", - "all:config_opts=$config_opts --disable-xzdec", - "all:config_opts=$config_opts --disable-lzmadec", - "all:config_opts=$config_opts --disable-lzmainfo", - "all:config_opts=$config_opts --disable-lzma-links" + "all:config_opts=$config_opts --disable-scripts" ], "steps": [ "all:pwd", @@ -43,7 +38,7 @@ "all:./configure $config_opts", "all:make -j$NUM_CORES", "all:make DESTDIR=$STAGING_DIR install", - "all:rm $STAGING_DIR$PREFIX/lib/*.la" + "all:rm $STAGING_DIR$PREFIX/native/lib/*.la" ] } } \ No newline at end of file diff --git a/packages/ncurses.json b/packages/ncurses.json index b68f931..8d85e0c 100644 --- a/packages/ncurses.json +++ b/packages/ncurses.json @@ -10,7 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk" + "all:native/_" ], "patches": [ "fallback.c" diff --git a/packages/openssl.json b/packages/openssl.json index eead0f3..5495aba 100644 --- a/packages/openssl.json +++ b/packages/openssl.json @@ -10,9 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/make", - "all:native/perl" + "all:native/_" ], "build": { "env": [ diff --git a/packages/polyseed.json b/packages/polyseed.json index feed932..cedfcfc 100644 --- a/packages/polyseed.json +++ b/packages/polyseed.json @@ -10,9 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/cmake", - "all:native/cmake-toolchain" + "all:native/_" ], "build": { "env": [], diff --git a/packages/protobuf.json b/packages/protobuf.json index 3b7874e..63e93ca 100644 --- a/packages/protobuf.json +++ b/packages/protobuf.json @@ -10,12 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/autoconf", - "all:native/automake", - "all:native/config", - "all:native/m4", - "all:native/perl" + "all:native/_" ], "patches": [ "visibility.patch" diff --git a/packages/readline.json b/packages/readline.json index 3246dd5..068068c 100644 --- a/packages/readline.json +++ b/packages/readline.json @@ -10,9 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/autoconf", - "all:native/perl", + "all:native/_", "all:ncurses" ], "build": { diff --git a/packages/sodium.json b/packages/sodium.json index 49a355b..b53625f 100644 --- a/packages/sodium.json +++ b/packages/sodium.json @@ -10,7 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", + "all:native/_", "all:native/config" ], "patches": [ diff --git a/packages/unbound.json b/packages/unbound.json index 12d838f..094a1e4 100644 --- a/packages/unbound.json +++ b/packages/unbound.json @@ -10,10 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/autoconf", - "all:native/m4", - "all:native/perl", + "all:native/_", "all:expat", "all:openssl" ], diff --git a/packages/unwind.json b/packages/unwind.json index 5c25113..264d234 100644 --- a/packages/unwind.json +++ b/packages/unwind.json @@ -10,7 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", + "all:native/_", "all:native/config", "all:native/gettext" ], diff --git a/packages/xz.json b/packages/xz.json index f5ead7e..8cc6e81 100644 --- a/packages/xz.json +++ b/packages/xz.json @@ -10,11 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/autoconf", - "all:native/automake", - "all:native/gettext", - "all:native/libtool", + "all:native/_", "all:native/m4", "all:native/make", "all:native/perl" diff --git a/packages/zeromq.json b/packages/zeromq.json index ef0cbe8..0ffbdca 100644 --- a/packages/zeromq.json +++ b/packages/zeromq.json @@ -10,7 +10,7 @@ } ], "dependencies": [ - "*-android*:native/android_ndk" + "all:native/_" ], "patches": [ "fix_declaration.patch" diff --git a/packages/zlib.json b/packages/zlib.json index 549a515..9613750 100644 --- a/packages/zlib.json +++ b/packages/zlib.json @@ -10,9 +10,8 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/libtool", - "all:native/make" + "all:native/_", + "all:native/libtool" ], "build": { "env": [ @@ -24,6 +23,8 @@ "all:./configure $config_opts", "*-android*:sed -i.bak s/^AR=.\\*$/AR=\"llvm-ar\"/ Makefile", "*-android*:sed -i.bak s/^ARFLAGS=.\\*$/ARFLAGS=\"rcs\"/ Makefile", + "*-linux-gnu:sed -i.bak s/^AR=.\\*$/AR=\"$AR\"/ Makefile", + "*-linux-gnu:sed -i.bak s/^ARFLAGS=.\\*$/ARFLAGS=\"rcs\"/ Makefile", "all:make -j$NUM_CORES", "all:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/zstd.json b/packages/zstd.json index 7d7da8d..493cc25 100644 --- a/packages/zstd.json +++ b/packages/zstd.json @@ -10,14 +10,18 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", - "all:native/make" + "all:native/_" ], "build": { "env": [ "all:LIBTOOL=$PREFIX/native/bin/libtool", "armv7a-linux-androideabi:CFLAGS=$CFLAGS -DLIBC_NO_FSEEKO", - "armv7a-linux-androideabi:CXXFLAGS=$CXXFLAGS -DLIBC_NO_FSEEKO" + "armv7a-linux-androideabi:CXXFLAGS=$CXXFLAGS -DLIBC_NO_FSEEKO", + "*-linux-*:TARGET_SYSTEM=Linux", + "*-apple-*:TARGET_SYSTEM=Darwin", + "*-mingw32:TARGET_SYSTEM=Windows", + "all:UNAME_TARGET_SYSTEM=$TARGET_SYSTEM", + "all:OS=$TARGET_SYSTEM" ], "steps": [ "all:make -j$NUM_CORES", diff --git a/patches/native_python3/deterministic_build.patch b/patches/native_python3/deterministic_build.patch deleted file mode 100644 index 46a9a4b..0000000 --- a/patches/native_python3/deterministic_build.patch +++ /dev/null @@ -1,18 +0,0 @@ -Always provide the same date and time in 'Py_GetBuildInfo'. -This is the information shown at the REPL and in 'sys.version'. -We cannot pass it in CPPFLAGS due to whitespace in the DATE string. -https://codeberg.org/guix/guix/src/branch/master/gnu/packages/patches/python-3-deterministic-build-info.patch - ---- a/Modules/getbuildinfo.c -+++ b/Modules/getbuildinfo.c -@@ -4,6 +4,10 @@ - #include - #endif - -+/* Deterministic date and time. */ -+#define DATE "Jan 1 1970" -+#define TIME "00:00:01" -+ - #ifndef DATE - #ifdef __DATE__ - #define DATE __DATE__ \ No newline at end of file diff --git a/utils/download.go b/utils/download.go index 7186cdb..d4c228d 100644 --- a/utils/download.go +++ b/utils/download.go @@ -88,12 +88,12 @@ func DownloadFile(packageName, path, url, expectedSha256 string, isMirror bool) resp, err := http.Get(url) if err != nil { - return fmt.Errorf("Failed to download file from %s: %v", url, err) + return fmt.Errorf("failed to download file from %s: %v", url, err) } defer resp.Body.Close() if resp.StatusCode != http.StatusOK { - return fmt.Errorf("Failed to download file: HTTP %d %s", resp.StatusCode, resp.Status) + return fmt.Errorf("failed to download file: HTTP %d %s", resp.StatusCode, resp.Status) } var totalSize int64 @@ -105,7 +105,7 @@ func DownloadFile(packageName, path, url, expectedSha256 string, isMirror bool) out, err := os.Create(path) if err != nil { - return fmt.Errorf("Failed to create file %s: %v", path, err) + return fmt.Errorf("failed to create file %s: %v", path, err) } defer out.Close() @@ -121,7 +121,7 @@ func DownloadFile(packageName, path, url, expectedSha256 string, isMirror bool) _, err = io.Copy(multiWriter, resp.Body) if err != nil { - return fmt.Errorf("Failed to write file %s: %v", path, err) + return fmt.Errorf("failed to write file %s: %v", path, err) } progressWriter.finish() diff --git a/utils/git.go b/utils/git.go index 6348d4c..81887a8 100644 --- a/utils/git.go +++ b/utils/git.go @@ -1,116 +1,163 @@ package utils import ( + "fmt" "log" + "net/http" "os" - - "github.com/go-git/go-git/v5" - "github.com/go-git/go-git/v5/plumbing" + "os/exec" + "path/filepath" + "strings" ) -func optimizeGitRepo(repoPath string) { - log.Printf("Optimizing repository at %s", repoPath) +func verifyBundleHasRef(bundlePath, ref string) bool { + // Try to verify the bundle contains our ref by attempting to fetch it + tempVerifyDir := bundlePath + ".verify.tmp" + defer os.RemoveAll(tempVerifyDir) - repo, err := git.PlainOpen(repoPath) - if err != nil { - log.Printf("Warning: Failed to open repository at %s: %v", repoPath, err) - return - } + os.MkdirAll(tempVerifyDir, 0755) - remotes, err := repo.Remotes() - if err == nil { - for _, remote := range remotes { - err = repo.DeleteRemote(remote.Config().Name) - if err != nil { - log.Printf("Warning: Failed to remove remote %s in %s: %v", remote.Config().Name, repoPath, err) - } - } + // Initialize a temporary git repo + initCmd := exec.Command("git", "init") + initCmd.Dir = tempVerifyDir + if err := initCmd.Run(); err != nil { + return false } - refs, err := repo.References() - if err == nil { - head, headErr := repo.Head() - if headErr == nil { - err = refs.ForEach(func(ref *plumbing.Reference) error { - if ref.Name().IsBranch() && ref.Hash() != head.Hash() { - return repo.Storer.RemoveReference(ref.Name()) - } - return nil - }) - if err != nil { - log.Printf("Warning: Failed to remove some branches in %s: %v", repoPath, err) - } - } + // Try to fetch the specific ref from the bundle + fetchCmd := exec.Command("git", "fetch", bundlePath, ref) + fetchCmd.Dir = tempVerifyDir + if err := fetchCmd.Run(); err != nil { + log.Printf("Bundle does not contain ref %s", ref) + return false } - log.Printf("Repository optimization completed for %s", repoPath) + log.Printf("Bundle contains ref %s", ref) + return true } -func resolveRef(repo *git.Repository, refStr string) (plumbing.Hash, error) { - if len(refStr) == 40 { - hash := plumbing.NewHash(refStr) - _, err := repo.CommitObject(hash) - if err == nil { - return hash, nil - } +func downloadBundleFromMirror(bundlePath, ref string) error { + mirrorURL := "http://static.mrcyjanek.net/lfs/simplybs/source/" + filepath.Base(bundlePath) + log.Printf("Trying to download bundle from mirror: %s", mirrorURL) + + resp, err := http.Get(mirrorURL) + if err != nil { + return fmt.Errorf("failed to download from mirror: %w", err) } + defer resp.Body.Close() - tagRef, err := repo.Tag(refStr) - if err == nil { - return tagRef.Hash(), nil + if resp.StatusCode != http.StatusOK { + return fmt.Errorf("mirror returned HTTP %d", resp.StatusCode) } - branchRef, err := repo.Reference(plumbing.ReferenceName("refs/heads/"+refStr), true) - if err == nil { - return branchRef.Hash(), nil + tempFile := bundlePath + ".download.tmp" + defer os.Remove(tempFile) + + out, err := os.Create(tempFile) + if err != nil { + return fmt.Errorf("failed to create temp file: %w", err) } - remoteRef, err := repo.Reference(plumbing.ReferenceName("refs/remotes/origin/"+refStr), true) - if err == nil { - return remoteRef.Hash(), nil + _, err = out.ReadFrom(resp.Body) + out.Close() + if err != nil { + return fmt.Errorf("failed to download bundle: %w", err) } - ref, err := repo.Reference(plumbing.ReferenceName(refStr), true) - if err == nil { - return ref.Hash(), nil + if !verifyBundleHasRef(tempFile, ref) { + return fmt.Errorf("mirror bundle does not contain ref %s", ref) } - return plumbing.ZeroHash, err + os.MkdirAll(filepath.Dir(bundlePath), 0755) + if err := os.Rename(tempFile, bundlePath); err != nil { + return fmt.Errorf("failed to move bundle to final location: %w", err) + } + + log.Printf("Successfully downloaded bundle from mirror") + return nil } -func DownloadGit(packageName, path, url, expectedSha256 string) error { - log.Printf("Downloading %s to %s", url, path) +func createBundleFromRepo(bundlePath, url, ref string) error { + log.Printf("Creating bundle from repository %s", url) - repo, err := git.PlainClone(path, false, &git.CloneOptions{ - URL: url, - Progress: os.Stdout, - }) - if err != nil { - return err + tempDir := bundlePath + ".clone.tmp" + defer os.RemoveAll(tempDir) + + log.Printf("Cloning repository from %s", url) + cloneCmd := exec.Command("git", "clone", url, tempDir) + cloneCmd.Stdout = os.Stdout + cloneCmd.Stderr = os.Stderr + if err := cloneCmd.Run(); err != nil { + return fmt.Errorf("failed to clone repository: %w", err) } - worktree, err := repo.Worktree() - if err != nil { - return err + log.Printf("Checking out reference %s", ref) + checkoutCmd := exec.Command("git", "checkout", ref) + checkoutCmd.Dir = tempDir + checkoutCmd.Stdout = os.Stdout + checkoutCmd.Stderr = os.Stderr + if err := checkoutCmd.Run(); err != nil { + return fmt.Errorf("failed to checkout ref %s: %w", ref, err) } - log.Printf("Checking out reference %s", expectedSha256) - targetHash, err := resolveRef(repo, expectedSha256) + revParseCmd := exec.Command("git", "rev-parse", "HEAD") + revParseCmd.Dir = tempDir + commitHash, err := revParseCmd.Output() if err != nil { - return err + return fmt.Errorf("failed to get commit hash: %w", err) } + log.Printf("Checked out commit: %s", strings.TrimSpace(string(commitHash))) + + log.Printf("Creating bundle file...") + os.MkdirAll(filepath.Dir(bundlePath), 0755) + bundleCmd := exec.Command("git", "bundle", "create", bundlePath, "HEAD") + bundleCmd.Dir = tempDir + bundleCmd.Stdout = os.Stdout + bundleCmd.Stderr = os.Stderr + if err := bundleCmd.Run(); err != nil { + return fmt.Errorf("failed to create bundle: %w", err) + } + + log.Printf("Successfully created bundle at %s", bundlePath) + return nil +} - err = worktree.Checkout(&git.CheckoutOptions{ - Hash: targetHash, - }) +func DownloadGit(packageName, bundlePath, url, ref string) error { + log.Printf("Downloading %s to bundle %s", url, bundlePath) + + if _, err := os.Stat(bundlePath); err == nil { + log.Printf("Bundle already exists, verifying it contains ref %s", ref) + if verifyBundleHasRef(bundlePath, ref) { + log.Printf("Bundle is valid and contains the required ref") + return nil + } + log.Printf("Bundle does not contain ref %s, removing and re-downloading", ref) + os.Remove(bundlePath) + } + + err := downloadBundleFromMirror(bundlePath, ref) if err != nil { - return err + log.Printf("Failed to download from mirror: %v, creating bundle from original URL", err) + return createBundleFromRepo(bundlePath, url, ref) } - log.Printf("Cleaning up and optimizing repository...") + return nil +} - optimizeGitRepo(path) +func ExtractGitCloneBundle(bundlePath, destPath string) error { + log.Printf("Extracting git bundle from %s to %s", bundlePath, destPath) + + // Ensure destination directory exists + os.MkdirAll(destPath, 0755) + + // Clone from bundle + cloneCmd := exec.Command("git", "clone", bundlePath, destPath) + cloneCmd.Stdout = os.Stdout + cloneCmd.Stderr = os.Stderr + if err := cloneCmd.Run(); err != nil { + return fmt.Errorf("failed to clone from bundle: %w", err) + } - log.Printf("Successfully downloaded and optimized %s", path) + log.Printf("Successfully extracted bundle to %s", destPath) return nil } From 095b9fb25c9d9b9425e5e4d6e70b086a33bddccb Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 14 Oct 2025 18:53:25 +0200 Subject: [PATCH 005/200] aarch64 fixes --- host/main.go | 18 ++++--- packages/boost.json | 10 ++-- packages/eudev.json | 1 + packages/glibc.json | 42 --------------- packages/libiconv.json | 6 +-- packages/native/boost-b2.json | 6 +-- packages/native/gcc@13.2@stage1.json | 78 ---------------------------- packages/native/osx-cross.json | 66 +++++++++++------------ packages/native/rust@1_54_0.json | 6 +++ 9 files changed, 63 insertions(+), 170 deletions(-) delete mode 100644 packages/glibc.json delete mode 100644 packages/native/gcc@13.2@stage1.json diff --git a/host/main.go b/host/main.go index dc4d01d..47c6efc 100644 --- a/host/main.go +++ b/host/main.go @@ -189,13 +189,19 @@ var SupportedHosts = map[string]*Host{ "all:HOST=aarch64-linux-gnu", "all:TARGET=aarch64-linux-gnu", "all:CC_target=aarch64-linux-gnu", - "all:CC=aarch64-linux-gnu-gcc", - "all:CXX=aarch64-linux-gnu-g++", - "all:CFLAGS=", + "all:CC=aarch64-unknown-linux-gnu-gcc", + "all:CXX=aarch64-unknown-linux-gnu-g++", "all:CXXFLAGS=$CFLAGS", - "all:RANLIB=aarch64-linux-gnu-ranlib", - "all:AR=aarch64-linux-gnu-ar", - "all:LIBTOOL=aarch64-linux-gnu-libtool", + "all:RANLIB=aarch64-unknown-linux-gnu-ranlib", + "all:AR=aarch64-unknown-linux-gnu-ar", + "all:AS=aarch64-unknown-linux-gnu-as", + "all:LIBTOOL=aarch64-unknown-linux-gnu-libtool", + "all:OBJCOPY=aarch64-unknown-linux-gnu-objcopy", + "all:OBJDUMP=aarch64-unknown-linux-gnu-objdump", + "all:STRIP=aarch64-unknown-linux-gnu-strip", + "all:READELF=aarch64-unknown-linux-gnu-readelf", + "all:LD=aarch64-unknown-linux-gnu-ld", + "all:NM=aarch64-unknown-linux-gnu-nm", }, }, "aarch64-linux-android": { diff --git a/packages/boost.json b/packages/boost.json index 9942cb5..ce79a13 100644 --- a/packages/boost.json +++ b/packages/boost.json @@ -1,12 +1,12 @@ { "package": "boost", - "version": "1_85_0", + "version": "1_89_0", "type": "host", "download": [ { "kind": "tar.bz2", - "sha256": "7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617", - "url": "http://downloads.sourceforge.net/project/boost/boost/1.85.0/boost_1_85_0.tar.bz2" + "sha256": "85a33fa22621b4f314f8e85e1a5e2a9363d22e4f4992925d4bb3bc631b5a0c7a", + "url": "http://downloads.sourceforge.net/project/boost/boost/1.89.0/boost_1_89_0.tar.bz2" } ], "dependencies": [ @@ -46,12 +46,12 @@ "*-ios*:toolset2=iphone", "*-ios-simulator*:toolset2=~iphone", "all:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log", - "all:CXXFLAGS=-fPIC", + "all:CXXFLAGS=-fPIC -std=c++17", "*-darwin*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", "*-ios*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", "*-ios-simulator*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", "*-apple-*:AR=libtool", - "*-linux-android*:ARFLAGS=rcs" + "*-linux-*:ARFLAGS=rcs" ], "steps": [ "all:echo \"using $toolset : $toolset2 : $CXX $CXXFLAGS : \"$CXXFLAGS\" \"$LDFLAGS\" \"$AR\" \"$ARFLAGS\" \"$STRIP\" \"$RANLIB\" \"$WINDRES\" \"$target_os\" : ;\" > user-config.jam", diff --git a/packages/eudev.json b/packages/eudev.json index 8424b9e..990ea76 100644 --- a/packages/eudev.json +++ b/packages/eudev.json @@ -16,6 +16,7 @@ "env": [ "all:config_opts=--host=$HOST --prefix=$PREFIX", "all:config_opts=$config_opts --disable-gudev --disable-introspection --disable-hwdb --disable-manpages --disable-shared", + "*-linux-gnu:ARFLAGS=rcs", "all:config_opts=$config_opts AR_FLAGS=$ARFLAGS", "all:SHOULD_BUILD=echo", "*-linux-gnu:SHOULD_BUILD=" diff --git a/packages/glibc.json b/packages/glibc.json deleted file mode 100644 index 196fbd2..0000000 --- a/packages/glibc.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "package": "glibc", - "version": "2.39", - "type": "host", - "download": [ - { - "kind": "tar.gz", - "sha256": "97f84f3b7588cd54093a6f6389b0c1a81e70d99708d74963a2e3eab7c7dc942d", - "url": "http://ftpmirror.gnu.org/gnu/libc/glibc-2.39.tar.gz" - } - ], - "dependencies": [ - "*-linux-gnu:native/binutils@2.42", - "*-linux-gnu:native/bison", - "*-linux-gnu:native/config", - "*-linux-gnu:native/gawk@5.2.2", - "*-linux-gnu:native/gcc@13.2@stage1", - "*-linux-gnu:native/linux-headers", - "*-linux-gnu:native/m4", - "*-linux-gnu:native/make", - "*-linux-gnu:native/perl", - "*-linux-gnu:native/python@3.11.13", - "*-linux-gnu:native/sed" - ], - "build": { - "env": [ - "*-linux-gnu:HOST_TARGET=x86_64-linux-gnu", - "*-linux-gnu:SYSROOT=$PREFIX/sysroots/$HOST_TARGET", - "*-linux-gnu:config_opts=--prefix=$PREFIX --host=$HOST_TARGET --with-headers=$PREFIX/include --disable-multilib", - "*-linux-gnu:config_opts=$config_opts --disable-werror", - "*-linux-gnu:CFLAGS=$CFLAGS -O2", - "*-linux-gnu:CFLAGS=$CFLAGS -Wno-error=attributes" - ], - "steps": [ - "*-linux-gnu:mkdir -p build", - "*-linux-gnu:sed -i.bak '/.eh_frame/d' sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c", - "*-linux-gnu:cd build && ../configure $config_opts", - "*-linux-gnu:cd build && make -j1", - "*-linux-gnu:cd build && make -j1 install DESTDIR=$STAGING_DIR" - ] - } -} \ No newline at end of file diff --git a/packages/libiconv.json b/packages/libiconv.json index 872df62..7244edd 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -1,12 +1,12 @@ { "package": "libiconv", - "version": "1.17", + "version": "1.18", "type": "host", "download": [ { "kind": "tar.gz", - "sha256": "8f74213b56238c85a50a5329f77e06198771e70dd9a739779f4c02f65d971313", - "url": "http://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.17.tar.gz" + "sha256": "3b08f5f4f9b4eb82f151a7040bfd6fe6c6fb922efe4b1659c66ea933276965e8", + "url": "http://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.18.tar.gz" } ], "dependencies": [ diff --git a/packages/native/boost-b2.json b/packages/native/boost-b2.json index 0f0be1d..970baab 100644 --- a/packages/native/boost-b2.json +++ b/packages/native/boost-b2.json @@ -1,12 +1,12 @@ { "package": "native/boost-b2", - "version": "1_85_0", + "version": "1_89_0", "type": "native", "download": [ { "kind": "tar.bz2", - "sha256": "7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617", - "url": "http://downloads.sourceforge.net/project/boost/boost/1.85.0/boost_1_85_0.tar.bz2" + "sha256": "85a33fa22621b4f314f8e85e1a5e2a9363d22e4f4992925d4bb3bc631b5a0c7a", + "url": "http://downloads.sourceforge.net/project/boost/boost/1.89.0/boost_1_89_0.tar.bz2" } ], "build": { diff --git a/packages/native/gcc@13.2@stage1.json b/packages/native/gcc@13.2@stage1.json deleted file mode 100644 index b1e4e34..0000000 --- a/packages/native/gcc@13.2@stage1.json +++ /dev/null @@ -1,78 +0,0 @@ -{ - "package": "native/gcc@13.2@stage1", - "version": "13.2", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "8cb4be3796651976f94b9356fa08d833524f62420d6292c5033a9a26af315078", - "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-13.2.0/gcc-13.2.0.tar.gz" - } - ], - "dependencies": [ - "*-linux-gnu:native/config", - "*-linux-gnu:native/gmp", - "*-linux-gnu:native/libiconv", - "*-linux-gnu:native/linux-headers", - "*-linux-gnu:native/make", - "*-linux-gnu:native/mpc", - "*-linux-gnu:native/mpfr", - "*-linux-gnu:native/zlib" - ], - "build": { - "env": [ - "*-linux-gnu:LIBRARY_PATH=", - "x86_64-linux-gnu:TOOL_TARGET=x86_64-linux-gnu", - "*-linux-gnu:SYSROOT=$PREFIX", - "*-linux-gnu:config_opts=--prefix=$PREFIX/native", - "*-linux-gnu:config_opts=$config_opts --target=$TOOL_TARGET", - "*-linux-gnu:config_opts=$config_opts --disable-nls", - "*-linux-gnu:config_opts=$config_opts --disable-multilib", - "*-linux-gnu:config_opts=$config_opts --enable-languages=c,c++", - "*-linux-gnu:config_opts=$config_opts --without-headers", - "*-linux-gnu:config_opts=$config_opts --with-newlib", - "*-linux-gnu:config_opts=$config_opts --disable-shared", - "*-linux-gnu:config_opts=$config_opts --disable-threads", - "*-linux-gnu:config_opts=$config_opts --disable-libssp", - "*-linux-gnu:config_opts=$config_opts --disable-libstdcxx", - "*-linux-gnu:config_opts=$config_opts --disable-libsanitizer", - "*-linux-gnu:config_opts=$config_opts --with-system-zlib" - ], - "steps": [ - "*-linux-gnu:sed -i.bak 's/^#undef isalpha/\\/\\/ #undef isalpha/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#define isalpha/\\/\\/ #define isalpha/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#undef isalnum/\\/\\/ #undef isalnum/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#define isalnum/\\/\\/ #define isalnum/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#undef iscntrl/\\/\\/ #undef iscntrl/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#define iscntrl/\\/\\/ #define iscntrl/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#undef isdigit/\\/\\/ #undef isdigit/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#define isdigit/\\/\\/ #define isdigit/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#undef isgraph/\\/\\/ #undef isgraph/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#define isgraph/\\/\\/ #define isgraph/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#undef islower/\\/\\/ #undef islower/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#define islower/\\/\\/ #define islower/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#undef isprint/\\/\\/ #undef isprint/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#define isprint/\\/\\/ #define isprint/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#undef ispunct/\\/\\/ #undef ispunct/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#define ispunct/\\/\\/ #define ispunct/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#undef isspace/\\/\\/ #undef isspace/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#define isspace/\\/\\/ #define isspace/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#undef isupper/\\/\\/ #undef isupper/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#define isupper/\\/\\/ #define isupper/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#undef isxdigit/\\/\\/ #undef isxdigit/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#define isxdigit/\\/\\/ #define isxdigit/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#undef toupper/\\/\\/ #undef toupper/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#define toupper/\\/\\/ #define toupper/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#undef tolower/\\/\\/ #undef tolower/' include/safe-ctype.h", - "*-linux-gnu:sed -i.bak 's/^#define tolower/\\/\\/ #define tolower/' include/safe-ctype.h", - "*-linux-gnu:mkdir -p build", - "*-linux-gnu:cd build && ../configure $config_opts", - "*-linux-gnu:cd build && make -j$NUM_CORES all-gcc", - "*-linux-gnu:cd build && make install-gcc DESTDIR=$STAGING_DIR", - "*-linux-gnu:cd build && make -j$NUM_CORES all-target-libgcc TARGET_CONFIGARGS='--disable-shared --enable-static --without-headers --with-newlib' CFLAGS_FOR_TARGET='-g -O2 -nostdlib -nostartfiles' CXXFLAGS_FOR_TARGET='-g -O2 -nostdlib -nostartfiles'", - "*-linux-gnu:cd build && make install-target-libgcc DESTDIR=$STAGING_DIR", - "*-linux-gnu:ln -s $TOOL_TARGET-gcc $STAGING_DIR$PREFIX/native/bin/gcc", - "*-linux-gnu:ln -s $TOOL_TARGET-g++ $STAGING_DIR$PREFIX/native/bin/g++" - ] - } -} \ No newline at end of file diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 88a7fca..3b04c4b 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -40,47 +40,47 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/cpio", - "all:native/gettext", - "all:native/git", - "all:native/libxml2", - "all:native/openssl", - "all:native/patch", - "all:native/pbzx", - "all:native/perl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/xar", - "all:native/xz" + "*-apple-darwin:native/cmake", + "*-apple-darwin:native/cpio", + "*-apple-darwin:native/gettext", + "*-apple-darwin:native/git", + "*-apple-darwin:native/libxml2", + "*-apple-darwin:native/openssl", + "*-apple-darwin:native/patch", + "*-apple-darwin:native/pbzx", + "*-apple-darwin:native/perl", + "*-apple-darwin:native/pkgconf", + "*-apple-darwin:native/python@3.11.13", + "*-apple-darwin:native/xar", + "*-apple-darwin:native/xz" ], "build": { "env": [ - "all:JOBS=$NUM_CORES", - "all:PORTABLE=1", - "all:TARGET_DIR=$STAGING_DIR$PREFIX/native/", + "*-apple-darwin:JOBS=$NUM_CORES", + "*-apple-darwin:PORTABLE=1", + "*-apple-darwin:TARGET_DIR=$STAGING_DIR$PREFIX/native/", "aarch64-apple-darwin:ENABLE_ARCHS=arm64", "x86_64-apple-darwin:ENABLE_ARCHS=x86_64", - "all:UNATTENDED=1", - "all:SDK_VERSION=26.0" + "*-apple-darwin:UNATTENDED=1", + "*-apple-darwin:SDK_VERSION=26.0" ], "steps": [ - "all:sed -i.bak 's/build_xar/echo build_xar/g' tools/gen_sdk_package_pbzx.sh", - "all:sed -i.bak 's/build_xar/echo build_xar/g' build.sh", - "all:sed -i.bak 's/build_pbxz/echo build_pbxz/g' tools/gen_sdk_package_pbzx.sh", - "all:sed -i.bak 's/git /echo git /g' tools/tools.sh", - "all:sed -i.bak 's/$TARGET_DIR\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", - "all:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", - "all:sed -i.bak 's/download $CLANG_LLVM_PKG/echo download $CLANG_LLVM_PKG/g' build_clang.sh", - "all:sed -i.bak 's/rm -f $(basename $CLANG_LLVM_PKG)/echo rm -f $(basename $CLANG_LLVM_PKG)/g' build_clang.sh", - "all:sed -i.bak '8,11d' tools/gen_sdk_package_pbzx.sh", - "all:./tools/gen_sdk_package_pbzx.sh ./Xcode_26.0.1.xip", - "all:mv MacOSX26.* tarballs", - "all:yes | INSTALLPREFIX=$PREFIX/native ./build_clang.sh", + "*-apple-darwin:sed -i.bak 's/build_xar/echo build_xar/g' tools/gen_sdk_package_pbzx.sh", + "*-apple-darwin:sed -i.bak 's/build_xar/echo build_xar/g' build.sh", + "*-apple-darwin:sed -i.bak 's/build_pbxz/echo build_pbxz/g' tools/gen_sdk_package_pbzx.sh", + "*-apple-darwin:sed -i.bak 's/git /echo git /g' tools/tools.sh", + "*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", + "*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", + "*-apple-darwin:sed -i.bak 's/download $CLANG_LLVM_PKG/echo download $CLANG_LLVM_PKG/g' build_clang.sh", + "*-apple-darwin:sed -i.bak 's/rm -f $(basename $CLANG_LLVM_PKG)/echo rm -f $(basename $CLANG_LLVM_PKG)/g' build_clang.sh", + "*-apple-darwin:sed -i.bak '8,11d' tools/gen_sdk_package_pbzx.sh", + "*-apple-darwin:./tools/gen_sdk_package_pbzx.sh ./Xcode_26.0.1.xip", + "*-apple-darwin:mv MacOSX26.* tarballs", + "*-apple-darwin:yes | INSTALLPREFIX=$PREFIX/native ./build_clang.sh", "none:cd build/clang-20.1.8/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", - "all:yes | INSTALLPREFIX=$PREFIX/native ./build_apple_clang.sh", - "all:cd build/clang-21/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", - "all:./build.sh" + "*-apple-darwin:yes | INSTALLPREFIX=$PREFIX/native ./build_apple_clang.sh", + "*-apple-darwin:cd build/clang-21/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", + "*-apple-darwin:./build.sh" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_54_0.json b/packages/native/rust@1_54_0.json index e2dc714..f49dfd7 100644 --- a/packages/native/rust@1_54_0.json +++ b/packages/native/rust@1_54_0.json @@ -7,6 +7,12 @@ "kind": "tar.gz", "sha256": "d3d3b84a100e71628afecf1125dbaa9bfc54ef9578c4fd81d75dca34c96f2565", "url": "http://github.com/thepowersgang/mrustc/archive/06b87d1af49d2db3bd850fdee8888055dd540dd1.tar.gz" + }, + { + "kind": "blob", + "path": "./rustc-1.54.0-src.tar.gz", + "sha256": "ac8511633e9b5a65ad030a1a2e5bdaa841fdfe3132f2baaa52cc04e71c6c6976", + "url": "http://static.rust-lang.org/dist/rustc-1.54.0-src.tar.gz" } ], "dependencies": [ From a45801aca90016b7bc211b33cc914273499092d0 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 15 Oct 2025 01:36:37 +0200 Subject: [PATCH 006/200] rust: back to stage 3 build, update to 1_90_0 --- packages/native/rust@1_55_0.json | 8 +++--- packages/native/rust@1_56_1.json | 8 +++--- packages/native/rust@1_57_0.json | 8 +++--- packages/native/rust@1_58_1.json | 8 +++--- packages/native/rust@1_59_0.json | 8 +++--- packages/native/rust@1_60_0.json | 8 +++--- packages/native/rust@1_61_0.json | 8 +++--- packages/native/rust@1_62_0.json | 8 +++--- packages/native/rust@1_63_0.json | 8 +++--- packages/native/rust@1_64_0.json | 8 +++--- packages/native/rust@1_65_0.json | 8 +++--- packages/native/rust@1_66_1.json | 8 +++--- packages/native/rust@1_67_1.json | 8 +++--- packages/native/rust@1_68_2.json | 8 +++--- packages/native/rust@1_69_0.json | 8 +++--- packages/native/rust@1_70_0.json | 8 +++--- packages/native/rust@1_71_1.json | 8 +++--- packages/native/rust@1_72_1.json | 8 +++--- packages/native/rust@1_73_0.json | 8 +++--- packages/native/rust@1_74_1.json | 8 +++--- packages/native/rust@1_75_0.json | 8 +++--- packages/native/rust@1_76_0.json | 8 +++--- packages/native/rust@1_77_1.json | 8 +++--- packages/native/rust@1_78_0.json | 8 +++--- packages/native/rust@1_79_0.json | 8 +++--- packages/native/rust@1_80_1.json | 8 +++--- packages/native/rust@1_81_0.json | 8 +++--- packages/native/rust@1_82_0.json | 8 +++--- packages/native/rust@1_83_0.json | 8 +++--- packages/native/rust@1_84_1.json | 8 +++--- packages/native/rust@1_85_1.json | 8 +++--- packages/native/rust@1_86_0.json | 8 +++--- packages/native/rust@1_87_0.json | 6 ++-- packages/native/rust@1_88_0.json | 17 +++-------- packages/native/rust@1_89_0.json | 40 ++++++++++++++++++++++++++ packages/native/rust@1_90_0.json | 49 ++++++++++++++++++++++++++++++++ 36 files changed, 224 insertions(+), 144 deletions(-) create mode 100644 packages/native/rust@1_89_0.json create mode 100644 packages/native/rust@1_90_0.json diff --git a/packages/native/rust@1_55_0.json b/packages/native/rust@1_55_0.json index ea08503..cb1a5a9 100644 --- a/packages/native/rust@1_55_0.json +++ b/packages/native/rust@1_55_0.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools/*/release/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_56_1.json b/packages/native/rust@1_56_1.json index 15e6768..0b17533 100644 --- a/packages/native/rust@1_56_1.json +++ b/packages/native/rust@1_56_1.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools/*/release/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_57_0.json b/packages/native/rust@1_57_0.json index c6294f4..5c6226b 100644 --- a/packages/native/rust@1_57_0.json +++ b/packages/native/rust@1_57_0.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools/*/release/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_58_1.json b/packages/native/rust@1_58_1.json index fa1ffff..0b3f653 100644 --- a/packages/native/rust@1_58_1.json +++ b/packages/native/rust@1_58_1.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools/*/release/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_59_0.json b/packages/native/rust@1_59_0.json index 7b18678..0f7a043 100644 --- a/packages/native/rust@1_59_0.json +++ b/packages/native/rust@1_59_0.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools/*/release/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_60_0.json b/packages/native/rust@1_60_0.json index ea3d5d2..1ce02b6 100644 --- a/packages/native/rust@1_60_0.json +++ b/packages/native/rust@1_60_0.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools/*/release/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_61_0.json b/packages/native/rust@1_61_0.json index 393acf5..ad4f5b0 100644 --- a/packages/native/rust@1_61_0.json +++ b/packages/native/rust@1_61_0.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools/*/release/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_62_0.json b/packages/native/rust@1_62_0.json index 9b7ebac..26f191d 100644 --- a/packages/native/rust@1_62_0.json +++ b/packages/native/rust@1_62_0.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools/*/release/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_63_0.json b/packages/native/rust@1_63_0.json index 4e62b4a..fcf382e 100644 --- a/packages/native/rust@1_63_0.json +++ b/packages/native/rust@1_63_0.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools/*/release/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_64_0.json b/packages/native/rust@1_64_0.json index dcf2a06..fd582a4 100644 --- a/packages/native/rust@1_64_0.json +++ b/packages/native/rust@1_64_0.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools/*/release/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_65_0.json b/packages/native/rust@1_65_0.json index 8f420a1..7329a49 100644 --- a/packages/native/rust@1_65_0.json +++ b/packages/native/rust@1_65_0.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools/*/release/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_66_1.json b/packages/native/rust@1_66_1.json index 299b552..5e124a7 100644 --- a/packages/native/rust@1_66_1.json +++ b/packages/native/rust@1_66_1.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools/*/release/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_67_1.json b/packages/native/rust@1_67_1.json index 7a288e9..177a061 100644 --- a/packages/native/rust@1_67_1.json +++ b/packages/native/rust@1_67_1.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools/*/release/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_68_2.json b/packages/native/rust@1_68_2.json index 50e9d24..0da4f8c 100644 --- a/packages/native/rust@1_68_2.json +++ b/packages/native/rust@1_68_2.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_69_0.json b/packages/native/rust@1_69_0.json index de94b3e..c134c46 100644 --- a/packages/native/rust@1_69_0.json +++ b/packages/native/rust@1_69_0.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_70_0.json b/packages/native/rust@1_70_0.json index 0d50b21..e307dc8 100644 --- a/packages/native/rust@1_70_0.json +++ b/packages/native/rust@1_70_0.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_71_1.json b/packages/native/rust@1_71_1.json index 36d3cf4..e77be3f 100644 --- a/packages/native/rust@1_71_1.json +++ b/packages/native/rust@1_71_1.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j$NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j$NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_72_1.json b/packages/native/rust@1_72_1.json index 0c18d03..05e276b 100644 --- a/packages/native/rust@1_72_1.json +++ b/packages/native/rust@1_72_1.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_73_0.json b/packages/native/rust@1_73_0.json index 711eff9..ea13c7e 100644 --- a/packages/native/rust@1_73_0.json +++ b/packages/native/rust@1_73_0.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_74_1.json b/packages/native/rust@1_74_1.json index 5ad0ffc..8ed128a 100644 --- a/packages/native/rust@1_74_1.json +++ b/packages/native/rust@1_74_1.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_75_0.json b/packages/native/rust@1_75_0.json index 157f0bc..70cb31d 100644 --- a/packages/native/rust@1_75_0.json +++ b/packages/native/rust@1_75_0.json @@ -37,11 +37,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_76_0.json b/packages/native/rust@1_76_0.json index 9f12c7f..071d8f9 100644 --- a/packages/native/rust@1_76_0.json +++ b/packages/native/rust@1_76_0.json @@ -34,11 +34,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_77_1.json b/packages/native/rust@1_77_1.json index 1df0069..58255e6 100644 --- a/packages/native/rust@1_77_1.json +++ b/packages/native/rust@1_77_1.json @@ -34,11 +34,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_78_0.json b/packages/native/rust@1_78_0.json index 2b8a973..526dc57 100644 --- a/packages/native/rust@1_78_0.json +++ b/packages/native/rust@1_78_0.json @@ -30,11 +30,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_79_0.json b/packages/native/rust@1_79_0.json index a476d20..9070841 100644 --- a/packages/native/rust@1_79_0.json +++ b/packages/native/rust@1_79_0.json @@ -30,11 +30,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_80_1.json b/packages/native/rust@1_80_1.json index d400084..6dcf0da 100644 --- a/packages/native/rust@1_80_1.json +++ b/packages/native/rust@1_80_1.json @@ -30,11 +30,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_81_0.json b/packages/native/rust@1_81_0.json index 708a697..764d827 100644 --- a/packages/native/rust@1_81_0.json +++ b/packages/native/rust@1_81_0.json @@ -30,11 +30,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_82_0.json b/packages/native/rust@1_82_0.json index 930a6c4..ba2414e 100644 --- a/packages/native/rust@1_82_0.json +++ b/packages/native/rust@1_82_0.json @@ -30,11 +30,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_83_0.json b/packages/native/rust@1_83_0.json index a4e4bc5..76e9538 100644 --- a/packages/native/rust@1_83_0.json +++ b/packages/native/rust@1_83_0.json @@ -30,11 +30,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_84_1.json b/packages/native/rust@1_84_1.json index 913720b..cebde38 100644 --- a/packages/native/rust@1_84_1.json +++ b/packages/native/rust@1_84_1.json @@ -30,11 +30,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_85_1.json b/packages/native/rust@1_85_1.json index e5f4249..6937a38 100644 --- a/packages/native/rust@1_85_1.json +++ b/packages/native/rust@1_85_1.json @@ -30,11 +30,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_86_0.json b/packages/native/rust@1_86_0.json index ba98941..59740fa 100644 --- a/packages/native/rust@1_86_0.json +++ b/packages/native/rust@1_86_0.json @@ -30,11 +30,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_87_0.json b/packages/native/rust@1_87_0.json index 01bfb6a..4bac9eb 100644 --- a/packages/native/rust@1_87_0.json +++ b/packages/native/rust@1_87_0.json @@ -30,10 +30,10 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 1 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", "all:cp -a build/*/stage0-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } diff --git a/packages/native/rust@1_88_0.json b/packages/native/rust@1_88_0.json index e74c3d8..2fde79f 100644 --- a/packages/native/rust@1_88_0.json +++ b/packages/native/rust@1_88_0.json @@ -21,15 +21,6 @@ "env": [], "steps": [ "all:echo '[build]' > config.toml", - "aarch64-apple-darwin:echo 'target = [\"aarch64-apple-darwin\"]' >> config.toml", - "x86_64-apple-darwin:echo 'target = [\"x86_64-apple-darwin\"]' >> config.toml", - "aarch64-apple-ios:echo 'target = [\"aarch64-apple-ios\"]' >> config.toml", - "aarch64-apple-ios-simulator:echo 'target = [\"aarch64-apple-ios-sim\"]' >> config.toml", - "x86_64-linux-gnu:echo 'target = [\"x86_64-unknown-linux-gnu\"]' >> config.toml", - "aarch64-linux-gnu:echo 'target = [\"aarch64-unknown-linux-gnu\"]' >> config.toml", - "aarch64-linux-android:echo 'target = [\"aarch64-linux-android\"]' >> config.toml", - "x86_64-linux-android:echo 'target = [\"x86_64-linux-android\"]' >> config.toml", - "armv7a-linux-androideabi:echo 'target = [\"armv7-linux-androideabi\"]' >> config.toml", "all:echo 'full-bootstrap = true' >> config.toml", "all:echo 'vendor = true' >> config.toml", "all:echo 'extended = true' >> config.toml", @@ -39,11 +30,11 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 2 --verbose -j $NUM_CORES", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage1/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage1-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_89_0.json b/packages/native/rust@1_89_0.json new file mode 100644 index 0000000..a16e45e --- /dev/null +++ b/packages/native/rust@1_89_0.json @@ -0,0 +1,40 @@ +{ + "package": "native/rust@1_89_0", + "version": "1.89.0", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "2576f9f440dd99b0151bd28f59aa0ac6102d5c4f3ed4ef8a810c8dd05057250d", + "url": "http://static.rust-lang.org/dist/rustc-1.89.0-src.tar.gz" + } + ], + "dependencies": [ + "all:native/cmake", + "all:native/make", + "all:native/openssl", + "all:native/pkgconf", + "all:native/python@3.11.13", + "all:native/rust@1_88_0" + ], + "build": { + "env": [], + "steps": [ + "all:echo '[build]' > config.toml", + "all:echo 'full-bootstrap = true' >> config.toml", + "all:echo 'vendor = true' >> config.toml", + "all:echo 'extended = true' >> config.toml", + "all:echo 'tools = [\"cargo\"]' >> config.toml", + "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "all:echo '[llvm]' >> config.toml", + "all:echo 'ninja = false' >> config.toml", + "all:echo 'download-ci-llvm = false' >> config.toml", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + ] + } +} \ No newline at end of file diff --git a/packages/native/rust@1_90_0.json b/packages/native/rust@1_90_0.json new file mode 100644 index 0000000..e5bff6d --- /dev/null +++ b/packages/native/rust@1_90_0.json @@ -0,0 +1,49 @@ +{ + "package": "native/rust@1_90_0", + "version": "1.90.0", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "799a9f9cba4ed5351e071048bcf6b5560755d9009648def33a407dd4961f9b7e", + "url": "http://static.rust-lang.org/dist/rustc-1.90.0-src.tar.gz" + } + ], + "dependencies": [ + "all:native/cmake", + "all:native/make", + "all:native/openssl", + "all:native/pkgconf", + "all:native/python@3.11.13", + "all:native/rust@1_89_0" + ], + "build": { + "env": [], + "steps": [ + "all:echo '[build]' > config.toml", + "aarch64-apple-darwin:echo 'target = [\"aarch64-apple-darwin\"]' >> config.toml", + "x86_64-apple-darwin:echo 'target = [\"x86_64-apple-darwin\"]' >> config.toml", + "aarch64-apple-ios:echo 'target = [\"aarch64-apple-ios\"]' >> config.toml", + "aarch64-apple-ios-simulator:echo 'target = [\"aarch64-apple-ios-sim\"]' >> config.toml", + "x86_64-linux-gnu:echo 'target = [\"x86_64-unknown-linux-gnu\"]' >> config.toml", + "aarch64-linux-gnu:echo 'target = [\"aarch64-unknown-linux-gnu\"]' >> config.toml", + "aarch64-linux-android:echo 'target = [\"aarch64-linux-android\"]' >> config.toml", + "x86_64-linux-android:echo 'target = [\"x86_64-linux-android\"]' >> config.toml", + "armv7a-linux-androideabi:echo 'target = [\"armv7-linux-androideabi\"]' >> config.toml", + "all:echo 'full-bootstrap = true' >> config.toml", + "all:echo 'vendor = true' >> config.toml", + "all:echo 'extended = true' >> config.toml", + "all:echo 'tools = [\"cargo\"]' >> config.toml", + "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "all:echo '[llvm]' >> config.toml", + "all:echo 'ninja = false' >> config.toml", + "all:echo 'download-ci-llvm = false' >> config.toml", + "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + ] + } +} \ No newline at end of file From bacaaefd45c606d7fa8b3046aaa063cf882f66b2 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 15 Oct 2025 08:31:11 -0400 Subject: [PATCH 007/200] wip --- builder/builder_darwin_arm64.go | 14 +++---- cmd/buildweb/buildweb.go | 4 +- cmd/buildweb/package.tpl | 35 +++++++++++++--- crash/handle.go | 2 +- pack/build.go | 3 +- pack/info.go | 11 ++--- packages/audit-userspace.json | 34 +++++++++++++++ packages/bzip2.json | 23 ++++++++++ packages/eudev.json | 3 +- packages/glib.json | 42 +++++++++++++++++++ packages/libcap.json | 22 ++++++++++ packages/libffi.json | 23 ++++++++++ packages/libxcrypt.json | 27 ++++++++++++ packages/{native => }/linux-headers.json | 6 +-- packages/native/_.json | 6 +-- packages/native/bzip2.json | 23 ++++++++++ packages/native/ct-tools.json | 27 +++++++++--- packages/native/git.json | 3 +- packages/native/meson.json | 23 ++++++++++ packages/native/osx-cross.json | 3 +- .../{rust@1_62_0.json => rust@1_62_1.json} | 8 ++-- packages/native/rust@1_63_0.json | 2 +- packages/native/rust@1_66_1.json | 3 ++ packages/native/rust@1_67_1.json | 2 +- packages/native/xar.json | 1 + packages/native/xmlto.json | 30 +++++++++++++ packages/pcre2.json | 22 ++++++++++ packages/selinux.json | 39 +++++++++++++++++ packages/unwind.json | 3 +- utils/extract.go | 39 +++++++++++++++-- 30 files changed, 431 insertions(+), 52 deletions(-) create mode 100644 packages/audit-userspace.json create mode 100644 packages/bzip2.json create mode 100644 packages/glib.json create mode 100644 packages/libcap.json create mode 100644 packages/libffi.json create mode 100644 packages/libxcrypt.json rename packages/{native => }/linux-headers.json (88%) create mode 100644 packages/native/bzip2.json create mode 100644 packages/native/meson.json rename packages/native/{rust@1_62_0.json => rust@1_62_1.json} (90%) create mode 100644 packages/native/xmlto.json create mode 100644 packages/pcre2.json create mode 100644 packages/selinux.json diff --git a/builder/builder_darwin_arm64.go b/builder/builder_darwin_arm64.go index d4e880e..ce17dac 100644 --- a/builder/builder_darwin_arm64.go +++ b/builder/builder_darwin_arm64.go @@ -4,14 +4,14 @@ var HostBuilder = Builder{ GlobalEnv: []string{ "all:HOST=aarch64-apple-darwin", "all:TARGET=aarch64-apple-darwin", - "all:OSX_MIN_VERSION=10.15", + "all:OSX_MIN_VERSION=13", "all:CC=/usr/bin/clang", "all:CXX=/usr/bin/clang++", - "all:AR=" + shellOutput("xcrun --sdk macosx --find ar"), - "all:RANLIB=" + shellOutput("xcrun --sdk macosx --find ranlib"), - "all:STRIP=" + shellOutput("xcrun --sdk macosx --find strip"), - "all:NM=" + shellOutput("xcrun --sdk macosx --find nm"), - "all:OTOOL=" + shellOutput("xcrun --sdk macosx --find otool"), - "all:INSTALL_NAME_TOOL=" + shellOutput("xcrun --sdk macosx --find install_name_tool"), + "all:AR=/usr/bin/ar", + "all:RANLIB=/usr/bin/ranlib", + "all:STRIP=/usr/bin/strip", + "all:NM=/usr/bin/nm", + "all:OTOOL=/usr/bin/otool", + "all:INSTALL_NAME_TOOL=/usr/bin/install_name_tool", }, } diff --git a/cmd/buildweb/buildweb.go b/cmd/buildweb/buildweb.go index 3453fae..cb0f1be 100644 --- a/cmd/buildweb/buildweb.go +++ b/cmd/buildweb/buildweb.go @@ -235,11 +235,11 @@ func BuildWeb() { return upPath + toPackage + ".html" }, "formatFileSize": formatFileSize, - "getMirrorPath": func(pkg *pack.PackageWithBuilds) string { + "getMirrorPath": func(pkg *pack.PackageWithBuilds, download *pack.Download) string { packageDepth := strings.Count(pkg.Package.Package, "/") upPath := strings.Repeat("../", packageDepth+1) // +1 to get out of web directory - return fmt.Sprintf("%ssource/%s-%s.%s", upPath, pkg.Package.Package, pkg.Package.Version, pkg.Package.Download[0].Kind) + return fmt.Sprintf("%ssource/%s-%s.%s", upPath, pkg.Package.Package, pkg.Package.Version, download.Kind) }, "getBuiltFilePath": func(packageName, filePath string) string { packageDepth := strings.Count(packageName, "/") diff --git a/cmd/buildweb/package.tpl b/cmd/buildweb/package.tpl index fc8aad0..edcd2b9 100644 --- a/cmd/buildweb/package.tpl +++ b/cmd/buildweb/package.tpl @@ -345,14 +345,37 @@ + {{if .Package.Download}}
-

Source Download

- - - - -
Kind{{.Package.Download.Kind}}
URL{{.Package.Download.URL}}
SHA256{{.Package.Download.Sha256}}
+

Source Downloads

+ {{range $index, $download := .Package.Download}} +
+
+
Download {{if gt (len $.Package.Download) 1}}{{add $index 1}}{{end}}
+
{{$download.Kind}}
+
+
+
+ URL: + + {{$download.URL}} + +
+
+ SHA256: + {{$download.Sha256}} +
+ {{if $download.Path}} +
+ Path: + {{$download.Path}} +
+ {{end}} +
+
+ {{end}}
+ {{end}} {{if .Package.Dependencies}}
diff --git a/crash/handle.go b/crash/handle.go index e74aeab..82b8447 100644 --- a/crash/handle.go +++ b/crash/handle.go @@ -4,6 +4,6 @@ import "log" func Handle(err error) { if err != nil { - log.Fatalln(err) + log.Panicln(err) } } diff --git a/pack/build.go b/pack/build.go index 0f26c54..c32c908 100644 --- a/pack/build.go +++ b/pack/build.go @@ -32,7 +32,7 @@ func (p *Package) ExtractEnv(host *host.Host, envPath string) { archive := p.GenerateBuildPath(host, "built") + ".tar.gz" err := utils.ExtractTarGz(archive, envPath) if err != nil { - log.Fatalf("Failed to extract archive %s: %v", archive, err) + log.Panicf("Failed to extract archive %s: %v", archive, err) } } @@ -91,7 +91,6 @@ func (p *Package) ExtractSource(host *host.Host, buildPath string) { } func (p *Package) BuildPackage(h *host.Host, buildDependencies bool) { - p.buildPackageInternal(h, buildDependencies) } diff --git a/pack/info.go b/pack/info.go index c26b678..26c5536 100644 --- a/pack/info.go +++ b/pack/info.go @@ -99,14 +99,9 @@ func (p *Package) ShortName(h *host.Host) string { } func (p *Package) GenerateSourceBuildPath(download *Download) string { - if download.Kind == "source" { - var name string - if download.Kind == "git" { - name = filepath.Base(download.URL) + "-" + download.Sha256[0:8] + ".git" - } else { - name = filepath.Base(download.URL) - } - return filepath.Join(host.DataDir(), "..", download.Kind, name) + if download.Kind == "git" { + name := filepath.Base(download.URL) + "-" + download.Sha256[0:8] + ".bundle" + return filepath.Join(host.DataDir(), "source", name) } return filepath.Join(host.DataDir(), "source", filepath.Base(download.URL)) } diff --git a/packages/audit-userspace.json b/packages/audit-userspace.json new file mode 100644 index 0000000..a9e33b7 --- /dev/null +++ b/packages/audit-userspace.json @@ -0,0 +1,34 @@ +{ + "package": "audit-userspace", + "version": "4.1.2", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "4db9c700b0c8b24a8113bc00d98101228e7d0212", + "url": "https://github.com/linux-audit/audit-userspace" + } + ], + "dependencies": [ + "all:native/_", + "all:linux-headers" + ], + "build": { + "env": [ + "all:config_opts=--prefix=$PREFIX --host=$HOST --disable-shared --enable-static", + "all:config_opts=$config_opts --with-python3=no", + "all:config_opts=$config_opts --enable-gssapi-krb5=no", + "arm*:config_opts=$config_opts --with-arm=no", + "aarch64-*:config_opts=$config_opts --with-aarch64=no", + "all:config_opts=$config_opts --with-libcap-ng=no", + "all:config_opts=$config_opts --with-io_uring=no", + "all:config_opts=$config_opts --disable-zos-remote" + ], + "steps": [ + "all:autoreconf -f --install", + "all:./configure $config_opts", + "all:make -j$NUM_CORES", + "all:make install DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/bzip2.json b/packages/bzip2.json new file mode 100644 index 0000000..df8af1e --- /dev/null +++ b/packages/bzip2.json @@ -0,0 +1,23 @@ +{ + "package": "bzip2", + "version": "1.0.8", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269", + "url": "https://sourceware.org/pub/bzip2/bzip2-1.0.8.tar.gz" + } + ], + "dependencies": [ + "all:native/_", + "all:openssl" + ], + "build": { + "steps": [ + "all:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", + "all:make -j$NUM_CORES", + "all:make install PREFIX=$STAGING_DIR$PREFIX" + ] + } +} \ No newline at end of file diff --git a/packages/eudev.json b/packages/eudev.json index 990ea76..e0468b1 100644 --- a/packages/eudev.json +++ b/packages/eudev.json @@ -10,7 +10,8 @@ } ], "dependencies": [ - "*-linux-gnu:native/_" + "*-linux-gnu:native/_", + "*-linux-gnu:selinux" ], "build": { "env": [ diff --git a/packages/glib.json b/packages/glib.json new file mode 100644 index 0000000..0eb3fb7 --- /dev/null +++ b/packages/glib.json @@ -0,0 +1,42 @@ +{ + "package": "glib", + "version": "2.86.0", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "e33be08bda99f453e497064e9e021d6306bbeb7d", + "url": "https://gitlab.gnome.org/GNOME/glib.git" + }, + { + "kind": "git", + "path": "subprojects/gvdb", + "sha256": "2b42fc75f09dbe1cd1057580b5782b08f2dcb400", + "url": "https://gitlab.gnome.org/GNOME/gvdb" + }, + { + "kind": "git", + "path": "subprojects/sysprof", + "sha256": "02e50efa49885a5a20a84a8cd7feda10ae7e7e98", + "url": "https://gitlab.gnome.org/GNOME/sysprof" + } + ], + "dependencies": [ + "all:native/_", + "all:native/meson", + "all:native/ninja", + "all:native/python@3.11.13", + "all:libffi", + "all:libiconv", + "all:pcre2", + "all:unwind", + "all:zlib" + ], + "build": { + "steps": [ + "all:meson setup --prefix $PREFIX _build", + "all:meson compile -C _build -j$NUM_CORES", + "all:meson install -C _build DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/libcap.json b/packages/libcap.json new file mode 100644 index 0000000..75a9ec9 --- /dev/null +++ b/packages/libcap.json @@ -0,0 +1,22 @@ +{ + "package": "libcap", + "version": "v1.2.76", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "413789501269f0f258a6716c6fa3edae178ba4a3", + "url": "https://git.kernel.org/pub/scm/libs/libcap/libcap.git" + } + ], + "dependencies": [ + "all:native/_" + ], + "build": { + "steps": [ + "all:make prefix=$PREFIX -j$NUM_CORES", + "all:make prefix=$PREFIX DESTDIR=$STAGING_DIR install", + "x86_64-linux-gnu:mv $STAGING_DIR$PREFIX/lib64 $STAGING_DIR$PREFIX/lib" + ] + } +} \ No newline at end of file diff --git a/packages/libffi.json b/packages/libffi.json new file mode 100644 index 0000000..be60b1e --- /dev/null +++ b/packages/libffi.json @@ -0,0 +1,23 @@ +{ + "package": "libffi", + "version": "v3.5.2", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "e2eda0cf72a0598b44278cc91860ea402273fa29", + "url": "https://github.com/libffi/libffi.git" + } + ], + "dependencies": [ + "*-linux-gnu:native/_" + ], + "build": { + "steps": [ + "*-linux-gnu:./autogen.sh", + "*-linux-gnu:./configure --host=$HOST --prefix=$PREFIX --enable-static --disable-shared --disable-docs --with-pic", + "*-linux-gnu:make -j$NUM_CORES", + "*-linux-gnu:make install DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/libxcrypt.json b/packages/libxcrypt.json new file mode 100644 index 0000000..c1b66e8 --- /dev/null +++ b/packages/libxcrypt.json @@ -0,0 +1,27 @@ +{ + "package": "libxcrypt", + "version": "4.4.38", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "55ea777e8d567e5e86ffac917c28815ac54cc341", + "url": "https://github.com/besser82/libxcrypt" + } + ], + "dependencies": [ + "all:native/_" + ], + "build": { + "env": [ + "all:config_opts=--host=$HOST --prefix=$PREFIX", + "all:config_opts=$config_opts --enable-static --disable-shared --with-pic" + ], + "steps": [ + "all:./autogen.sh", + "all:./configure $config_opts", + "all:make -j$NUM_CORES", + "all:make install DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/native/linux-headers.json b/packages/linux-headers.json similarity index 88% rename from packages/native/linux-headers.json rename to packages/linux-headers.json index b04836d..c999936 100644 --- a/packages/native/linux-headers.json +++ b/packages/linux-headers.json @@ -1,7 +1,7 @@ { - "package": "native/linux-headers", + "package": "linux-headers", "version": "6.15.9", - "type": "native", + "type": "host", "download": [ { "kind": "tar.xz", @@ -10,7 +10,7 @@ } ], "dependencies": [ - "*-linux-*:native/make", + "*-linux-*:native/_", "*-linux-*:native/rsync", "*-linux-*:native/sed" ], diff --git a/packages/native/_.json b/packages/native/_.json index c07dcc3..eee28af 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -5,6 +5,9 @@ "dependencies": [ "*-android*:native/android_ndk", "*-apple-*:native/osx-cross", + "*-linux-gnu:native/ct-tools", + "*-linux-musl:native/ct-tools", + "*-w64-mingw32:native/ct-tools", "all:native/autoconf", "all:native/automake", "all:native/bash", @@ -12,9 +15,6 @@ "all:native/cmake", "all:native/cmake-toolchain", "all:native/config", - "*-linux-gnu:native/ct-tools", - "*-linux-musl:native/ct-tools", - "*-w64-mingw32:native/ct-tools", "all:native/gawk", "all:native/gettext", "all:native/libtool", diff --git a/packages/native/bzip2.json b/packages/native/bzip2.json new file mode 100644 index 0000000..f59b85c --- /dev/null +++ b/packages/native/bzip2.json @@ -0,0 +1,23 @@ +{ + "package": "native/bzip2", + "version": "1.0.8", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269", + "url": "https://sourceware.org/pub/bzip2/bzip2-1.0.8.tar.gz" + } + ], + "dependencies": [ + "all:native/make", + "all:native/openssl" + ], + "build": { + "steps": [ + "all:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", + "all:make -j$NUM_CORES", + "all:make install PREFIX=$STAGING_DIR$PREFIX/native" + ] + } +} \ No newline at end of file diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 9472c2d..938c68c 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -41,9 +41,9 @@ }, { "kind": "blob", - "path": ".build/tarballs/glibc-2.42.tar.xz", - "sha256": "d1775e32e4628e64ef930f435b67bb63af7599acb6be2b335b9f19f16509f17f", - "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.42.tar.xz" + "path": ".build/tarballs/glibc-2.38.tar.xz", + "sha256": "fb82998998b2b29965467bc1b69d152e9c307d2cf301c9eafb4555b770ef3fd2", + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.38.tar.xz" }, { "kind": "blob", @@ -148,23 +148,38 @@ "all:ct-ng $TOOL_TARGET", "all:echo 'CT_EXPERIMENTAL=y' >> .config", "all:echo 'CT_FORBID_DOWNLOAD=y' >> .config", + "all:echo 'CT_CC_LANG_CXX=y' >> .config", + "all:echo 'CT_CC_LANG_FORTRAN=y' >> .config", + "none:echo 'CT_CC_LANG_D=y' >> .config", + "none:echo 'CT_CC_LANG_OBJC=y' >> .config", + "none:echo 'CT_CC_LANG_OBJCXX=y' >> .config", "all:echo 'CT_CC_LANG_GOLANG=y' >> .config", "all:echo 'CT_BINUTILS_EXTRA_CONFIG_ARRAY=\"--with-system-zlib\"' >> .config", "all:echo 'CT_CC_GCC_SYSTEM_ZLIB=y' >> .config", "all:echo 'CT_DEBUG_CT_SAVE_STEPS=y' >> .config", "all:sed -i.bak 's/CT_GDB_CROSS=y/CT_GDB_CROSS=n/g' .config", + "all:sed -i.bak 's/CT_GLIBC_VERSION=\"2.42\"/CT_GLIBC_VERSION=\"2.38\"/g' .config", "all:sed -i.bak 's/CT_GDB_GDBSERVER=y/CT_GDB_GDBSERVER=n/g' .config", "all:echo 'CT_GDB=n' >> .config", "all:echo 'CT_GDB_NATIVE=n' >> .config", + "all:echo 'CT_PREFIX_DIR_RO=y' >> .config", "all:ln -s $TOOL_TARGET_ALT-objcopy $PREFIX/native/bin/objcopy", "all:ln -s $TOOL_TARGET_ALT-readelf $PREFIX/native/bin/readelf", "x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ar $PREFIX/native/bin/ar", "x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ranlib $PREFIX/native/bin/ranlib", "all:unset LD_LIBRARY_PATH LIBRARY_PATH CC CXX CFLAGS; ct-ng build", "all:mkdir -p $STAGING_DIR$PREFIX/native", - "all:chmod -R u+rwx $HOME/x-tools/$TOOL_TARGET/", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/* $STAGING_DIR$PREFIX/native", - "all:rm $STAGING_DIR$PREFIX/native/*.log*" + "all:cp -a $HOME/x-tools/$TOOL_TARGET/bin $STAGING_DIR$PREFIX/native", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/include $STAGING_DIR$PREFIX/native", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/lib $STAGING_DIR$PREFIX/native", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/libexec $STAGING_DIR$PREFIX/native", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/share $STAGING_DIR$PREFIX/native", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/etc $STAGING_DIR$PREFIX/etc", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib $STAGING_DIR$PREFIX/lib", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib64 $STAGING_DIR$PREFIX/lib64", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/sbin $STAGING_DIR$PREFIX/sbin", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr $STAGING_DIR$PREFIX/usr", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/var $STAGING_DIR$PREFIX/var" ] } } \ No newline at end of file diff --git a/packages/native/git.json b/packages/native/git.json index 11a1b35..a01b2de 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -13,7 +13,8 @@ "all:native/curl", "all:native/expat", "all:native/gettext", - "all:native/make" + "all:native/make", + "all:native/openssl" ], "build": { "env": [], diff --git a/packages/native/meson.json b/packages/native/meson.json new file mode 100644 index 0000000..2dffd08 --- /dev/null +++ b/packages/native/meson.json @@ -0,0 +1,23 @@ +{ + "package": "native/meson", + "version": "1.9.1", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "751b09390996163348612f0b106114256305ee40", + "url": "https://github.com/mesonbuild/meson.git" + } + ], + "dependencies": [ + "all:native/python@3.11.13" + ], + "build": { + "env": [], + "steps": [ + "all:python3 ./packaging/create_zipapp.py --outfile meson.pyz --interpreter \"$(which python3)\" .", + "all:mkdir -p $STAGING_DIR$PREFIX/native/bin/", + "all:mv meson.pyz $STAGING_DIR$PREFIX/native/bin/meson" + ] + } +} \ No newline at end of file diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 3b04c4b..258233e 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -12,7 +12,7 @@ "kind": "blob", "path": "Xcode_26.0.1.xip", "sha256": "9881c457068c86ac91e94cca2d7116dfd01cb7179c22b0863b63c7f3bb7e7695", - "url": "https://download.developer.apple.com/Developer_Tools/Xcode_26.0.1/Xcode_26.0.1_Universal.xip" + "url": "https://developer.apple.com/services-account/download?path=/Developer_Tools/Xcode_26.0.1/Xcode_26.0.1_Universal.xip" }, { "kind": "blob", @@ -40,6 +40,7 @@ } ], "dependencies": [ + "*-apple-darwin:native/bzip2", "*-apple-darwin:native/cmake", "*-apple-darwin:native/cpio", "*-apple-darwin:native/gettext", diff --git a/packages/native/rust@1_62_0.json b/packages/native/rust@1_62_1.json similarity index 90% rename from packages/native/rust@1_62_0.json rename to packages/native/rust@1_62_1.json index 26f191d..28cc5e1 100644 --- a/packages/native/rust@1_62_0.json +++ b/packages/native/rust@1_62_1.json @@ -1,12 +1,12 @@ { - "package": "native/rust@1_62_0", - "version": "1.62.0", + "package": "native/rust@1_62_1", + "version": "1.62.1", "type": "native", "download": [ { "kind": "tar.gz", - "sha256": "7d0878809b64d206825acae3eb7f60afb2212d81e3de1adf4c11c6032b36c027", - "url": "http://static.rust-lang.org/dist/rustc-1.62.0-src.tar.gz" + "sha256": "72acbe6ffcd94f598382a7430b0d85ee8f679e6d0b27f3f566ed1c16c978133f", + "url": "http://static.rust-lang.org/dist/rustc-1.62.1-src.tar.gz" } ], "dependencies": [ diff --git a/packages/native/rust@1_63_0.json b/packages/native/rust@1_63_0.json index fcf382e..7ba4bce 100644 --- a/packages/native/rust@1_63_0.json +++ b/packages/native/rust@1_63_0.json @@ -16,7 +16,7 @@ "all:native/patch", "all:native/pkgconf", "all:native/python@3.11.13", - "all:native/rust@1_62_0" + "all:native/rust@1_62_1" ], "patches": [ "assembly.h.patch", diff --git a/packages/native/rust@1_66_1.json b/packages/native/rust@1_66_1.json index 5e124a7..f709741 100644 --- a/packages/native/rust@1_66_1.json +++ b/packages/native/rust@1_66_1.json @@ -35,8 +35,11 @@ "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", "all:echo '[llvm]' >> config.toml", + "all:echo 'assertions = true' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", + "all:echo '[rust]' >> config.toml", + "all:echo 'debug = true' >> config.toml", "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", diff --git a/packages/native/rust@1_67_1.json b/packages/native/rust@1_67_1.json index 177a061..97e6f21 100644 --- a/packages/native/rust@1_67_1.json +++ b/packages/native/rust@1_67_1.json @@ -37,7 +37,7 @@ "all:echo '[llvm]' >> config.toml", "all:echo 'ninja = false' >> config.toml", "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "all:env -i PATH=$PATH python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", diff --git a/packages/native/xar.json b/packages/native/xar.json index 5760cf9..e731e19 100644 --- a/packages/native/xar.json +++ b/packages/native/xar.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "all:native/bzip2", "all:native/make", "all:native/openssl", "all:native/xz" diff --git a/packages/native/xmlto.json b/packages/native/xmlto.json new file mode 100644 index 0000000..55ff8cd --- /dev/null +++ b/packages/native/xmlto.json @@ -0,0 +1,30 @@ +{ + "package": "native/xmlto", + "version": "0.0.29", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "13a831d76467c88f9e79f9804e2471137ec05331", + "url": "https://pagure.io/xmlto.git" + } + ], + "dependencies": [ + "all:native/automake", + "all:native/flex", + "all:native/gawk", + "all:native/gettext", + "all:native/libxml2", + "all:native/make", + "all:native/perl" + ], + "build": { + "env": [], + "steps": [ + "all:autoreconf -f -i", + "all:./configure --prefix=$PREFIX/native", + "all:make xmlto -j$NUM_CORES", + "all:make DESTDIR=$STAGING_DIR install-exec" + ] + } +} \ No newline at end of file diff --git a/packages/pcre2.json b/packages/pcre2.json new file mode 100644 index 0000000..9e3de29 --- /dev/null +++ b/packages/pcre2.json @@ -0,0 +1,22 @@ +{ + "package": "pcre2", + "version": "10.46", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "8d28d7f2c3b970c3a4bf3776bcbb5adfc923183ce74bc8df1ebaad8c1985bd07", + "url": "https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.46/pcre2-10.46.tar.gz" + } + ], + "dependencies": [ + "*-linux-gnu:native/_" + ], + "build": { + "steps": [ + "*-linux-gnu:./configure --host=$HOST --prefix=$PREFIX --enable-static --disable-shared --with-pic", + "*-linux-gnu:make -j$NUM_CORES", + "*-linux-gnu:make install DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/selinux.json b/packages/selinux.json new file mode 100644 index 0000000..7848c4a --- /dev/null +++ b/packages/selinux.json @@ -0,0 +1,39 @@ +{ + "package": "selinux", + "version": "3.9", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "919e9e64cc4b20f5a1e4df1e38cce1bfe15aff09", + "url": "https://github.com/SELinuxProject/selinux" + } + ], + "dependencies": [ + "all:native/_", + "all:native/flex", + "all:native/python@3.11.13", + "all:audit-userspace", + "all:bzip2", + "all:glib", + "all:libcap", + "all:libxcrypt", + "all:pcre2" + ], + "build": { + "env": [ + "all:PANDOC=true" + ], + "steps": [ + "all:cd libsepol && make PREFIX=$PREFIX -j$NUM_CORES", + "all:cd libsepol && make PREFIX=$PREFIX install && make install PREFIX=$PREFIX DESTDIR=$STAGING_DIR", + "all:cd checkpolicy && make y.tab.c", + "all:sed -i.bak 's/void yyerror/int yyerror/g' ./checkpolicy/y.tab.*", + "all:sed -i.bak 's/XMLTO = xmlto/XMLTO = true/g' ./secilc/Makefile", + "all:sed -i.bak 's/$(LIBSELINUX_LDLIBS)/$(LIBSELINUX_LDLIBS) -lsemanage/g' policycoreutils/semodule/Makefile", + "all:sed -i.bak 's/$(LIBSELINUX_LDLIBS)/$(LIBSELINUX_LDLIBS) -lsemanage -lsepol/g' policycoreutils/setsebool/Makefile", + "all:make PREFIX=$PREFIX -j$NUM_CORES", + "all:make PREFIX=$PREFIX install DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/unwind.json b/packages/unwind.json index 264d234..8f62fd1 100644 --- a/packages/unwind.json +++ b/packages/unwind.json @@ -20,8 +20,7 @@ "build": { "env": [ "*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX", - "*-linux-gnu:config_opts=$config_opts --disable-shared --enable-static --disable-tests --disable-documentation", - "*-linux-gnu:AR_FLAGS=$ARFLAGS" + "*-linux-gnu:config_opts=$config_opts --disable-shared --enable-static --disable-tests --disable-documentation" ], "steps": [ "all:cp -f $PREFIX/native/usr/share/config/config.guess config/config.guess", diff --git a/utils/extract.go b/utils/extract.go index 89fc509..80c7154 100644 --- a/utils/extract.go +++ b/utils/extract.go @@ -59,6 +59,32 @@ func detectCommonPrefix(readerFactory readerFactory) (string, error) { return "", nil } +func ensureParentDirsPermissions(target, destPath string) error { + parentDir := filepath.Dir(target) + + for { + if parentDir == destPath || parentDir == filepath.Dir(destPath) { + break + } + + if err := os.MkdirAll(parentDir, 0755); err != nil { + return err + } + + if err := os.Chmod(parentDir, 0755); err != nil { + return err + } + + nextParent := filepath.Dir(parentDir) + if nextParent == parentDir { + break + } + parentDir = nextParent + } + + return nil +} + func extractTar(tr *tar.Reader, destPath, commonPrefix string) error { for { header, err := tr.Next() @@ -85,17 +111,21 @@ func extractTar(tr *tar.Reader, destPath, commonPrefix string) error { continue } + // Ensure parent directories have rwx permissions up to destPath + if err := ensureParentDirsPermissions(target, destPath); err != nil { + log.Printf("Warning: Failed to set permissions for parent directories of %s: %v", target, err) + } + switch header.Typeflag { case tar.TypeDir: dirMode := os.FileMode(header.Mode) & 0777 if dirMode == 0 { dirMode = 0755 } - if dirMode&0111 == 0 { - dirMode |= 0755 - } + dirMode |= 0700 if err := os.MkdirAll(target, dirMode); err != nil { + panic(err) return err } @@ -104,6 +134,7 @@ func extractTar(tr *tar.Reader, destPath, commonPrefix string) error { } case tar.TypeReg: if err := os.MkdirAll(filepath.Dir(target), 0755); err != nil { + panic(err) return err } @@ -113,6 +144,7 @@ func extractTar(tr *tar.Reader, destPath, commonPrefix string) error { } fileMode &^= (os.ModeSetuid | os.ModeSetgid | os.ModeSticky) + os.Chmod(target, 0777) os.Remove(target) outFile, err := os.OpenFile(target, os.O_CREATE|os.O_RDWR, fileMode) @@ -131,6 +163,7 @@ func extractTar(tr *tar.Reader, destPath, commonPrefix string) error { } case tar.TypeSymlink: if err := os.MkdirAll(filepath.Dir(target), 0755); err != nil { + panic(err) return err } From e9088293a2fd63799283cb092d7484196aef1bc6 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 16 Oct 2025 00:46:06 +0200 Subject: [PATCH 008/200] packages: - added gn - added dart (wip) - missing bootstrap path - ct-tools removed hacks in favor of config options --- cmd/gengitdeps/go.mod | 3 + cmd/gengitdeps/main.go | 117 ++++++++++++++ go.sum | 2 - packages/native/ct-tools.json | 2 +- packages/native/dart.json | 279 ++++++++++++++++++++++++++++++++++ packages/native/gn.json | 27 ++++ 6 files changed, 427 insertions(+), 3 deletions(-) create mode 100644 cmd/gengitdeps/go.mod create mode 100644 cmd/gengitdeps/main.go create mode 100644 packages/native/dart.json create mode 100644 packages/native/gn.json diff --git a/cmd/gengitdeps/go.mod b/cmd/gengitdeps/go.mod new file mode 100644 index 0000000..a449114 --- /dev/null +++ b/cmd/gengitdeps/go.mod @@ -0,0 +1,3 @@ +module github.com/mrcyjanek/simplybs/cmd/gengitdeps + +go 1.25.2 diff --git a/cmd/gengitdeps/main.go b/cmd/gengitdeps/main.go new file mode 100644 index 0000000..f530495 --- /dev/null +++ b/cmd/gengitdeps/main.go @@ -0,0 +1,117 @@ +package main + +import ( + "encoding/json" + "fmt" + "os" + "os/exec" + "path/filepath" + "strings" +) + +type Download struct { + Kind string `json:"kind"` + Path string `json:"path,omitempty"` + SHA256 string `json:"sha256"` + URL string `json:"url"` +} + +type Output struct { + Download []Download `json:"download"` +} + +func main() { + currentDir, err := os.Getwd() + if err != nil { + fmt.Fprintf(os.Stderr, "Error getting current directory: %v\n", err) + os.Exit(1) + } + + var downloads []Download + + // Walk the directory tree + err = filepath.Walk(currentDir, func(path string, info os.FileInfo, err error) error { + if err != nil { + return err + } + + // Check if this is a .git directory + if info.IsDir() && info.Name() == ".git" { + // Get the repository directory (parent of .git) + repoDir := filepath.Dir(path) + + // Get git commit hash + commitHash, err := getGitCommit(repoDir) + if err != nil { + fmt.Fprintf(os.Stderr, "Warning: Could not get commit for %s: %v\n", repoDir, err) + return filepath.SkipDir + } + + // Get git remote URL + remoteURL, err := getGitRemoteURL(repoDir) + if err != nil { + fmt.Fprintf(os.Stderr, "Warning: Could not get remote URL for %s: %v\n", repoDir, err) + return filepath.SkipDir + } + + // Calculate relative path from current directory + relPath, err := filepath.Rel(currentDir, repoDir) + if err != nil { + fmt.Fprintf(os.Stderr, "Warning: Could not get relative path for %s: %v\n", repoDir, err) + return filepath.SkipDir + } + + download := Download{ + Kind: "git", + SHA256: commitHash, + URL: remoteURL, + } + + // Add path only if it's not the current directory + if relPath != "." { + download.Path = relPath + } + + downloads = append(downloads, download) + + // Skip further traversal into this .git directory + return filepath.SkipDir + } + + return nil + }) + + if err != nil { + fmt.Fprintf(os.Stderr, "Error walking directory: %v\n", err) + os.Exit(1) + } + + // Output JSON + output := Output{Download: downloads} + encoder := json.NewEncoder(os.Stdout) + encoder.SetIndent("", " ") + if err := encoder.Encode(output); err != nil { + fmt.Fprintf(os.Stderr, "Error encoding JSON: %v\n", err) + os.Exit(1) + } +} + +func getGitCommit(repoDir string) (string, error) { + cmd := exec.Command("git", "rev-parse", "HEAD") + cmd.Dir = repoDir + output, err := cmd.Output() + if err != nil { + return "", err + } + return strings.TrimSpace(string(output)), nil +} + +func getGitRemoteURL(repoDir string) (string, error) { + cmd := exec.Command("git", "config", "--get", "remote.origin.url") + cmd.Dir = repoDir + output, err := cmd.Output() + if err != nil { + return "", err + } + return strings.TrimSpace(string(output)), nil +} diff --git a/go.sum b/go.sum index 411b896..94b473a 100644 --- a/go.sum +++ b/go.sum @@ -1,6 +1,4 @@ github.com/ryanuber/go-glob v1.0.0 h1:iQh3xXAumdQ+4Ufa5b25cRpC5TYKlno6hsv6Cb3pkBk= github.com/ryanuber/go-glob v1.0.0/go.mod h1:807d1WSdnB0XRJzKNil9Om6lcp/3a0v4qIHxIXzX/Yc= -github.com/ulikunitz/xz v0.5.12 h1:37Nm15o69RwBkXM0J6A5OlE67RZTfzUxTj8fB3dfcsc= -github.com/ulikunitz/xz v0.5.12/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= github.com/ulikunitz/xz v0.5.15 h1:9DNdB5s+SgV3bQ2ApL10xRc35ck0DuIX/isZvIk+ubY= github.com/ulikunitz/xz v0.5.15/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 938c68c..93e080f 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -162,7 +162,7 @@ "all:sed -i.bak 's/CT_GDB_GDBSERVER=y/CT_GDB_GDBSERVER=n/g' .config", "all:echo 'CT_GDB=n' >> .config", "all:echo 'CT_GDB_NATIVE=n' >> .config", - "all:echo 'CT_PREFIX_DIR_RO=y' >> .config", + "all:echo 'CT_PREFIX_DIR_RO=n' >> .config", "all:ln -s $TOOL_TARGET_ALT-objcopy $PREFIX/native/bin/objcopy", "all:ln -s $TOOL_TARGET_ALT-readelf $PREFIX/native/bin/readelf", "x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ar $PREFIX/native/bin/ar", diff --git a/packages/native/dart.json b/packages/native/dart.json new file mode 100644 index 0000000..fd03db4 --- /dev/null +++ b/packages/native/dart.json @@ -0,0 +1,279 @@ +{ + "package": "native/dart", + "version": "3.9.4", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "2f5a888a5e6a7316074416822a9584d54e3f5ab5", + "url": "https://dart.googlesource.com/sdk.git" + }, + { + "kind": "git", + "path": "build/secondary/third_party/protobuf", + "sha256": "ca669f79945418f6229e4fef89b666b2a88cbb10", + "url": "https://fuchsia.googlesource.com/protobuf-gn" + }, + { + "kind": "git", + "path": "buildtools/clang_format/script", + "sha256": "bb994c6f067340c1135eb43eed84f4b33cfa7397", + "url": "https://chromium.googlesource.com/chromium/llvm-project/cfe/tools/clang-format.git" + }, + { + "kind": "git", + "path": "tests/co19/src", + "sha256": "a5d7b62b78dd9278c30a44cb2d22b8870b360a0e", + "url": "https://dart.googlesource.com/co19" + }, + { + "kind": "git", + "path": "third_party/WebCore", + "sha256": "bcb10901266c884e7b3740abc597ab95373ab55c", + "url": "https://dart.googlesource.com/webcore.git" + }, + { + "kind": "git", + "path": "third_party/binaryen/src", + "sha256": "8470f1b1f157201d1bc62f3202e474e7043df0ba", + "url": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl/src", + "sha256": "be5be0a4f5ebf00da151a06860deb11a0ffb609f", + "url": "https://boringssl.googlesource.com/boringssl.git" + }, + { + "kind": "git", + "path": "third_party/cpu_features/src", + "sha256": "936b9ab5515dead115606559502e3864958f7f6e", + "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" + }, + { + "kind": "git", + "path": "third_party/emsdk", + "sha256": "e41b8c68a248da5f18ebd03bd0420953945d52ff", + "url": "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git" + }, + { + "kind": "git", + "path": "third_party/icu", + "sha256": "43953f57b037778a1b8005564afabe214834f7bd", + "url": "https://chromium.googlesource.com/chromium/deps/icu.git" + }, + { + "kind": "git", + "path": "third_party/jinja2", + "sha256": "2222b31554f03e62600cd7e383376a7c187967a1", + "url": "https://chromium.googlesource.com/chromium/src/third_party/jinja2.git" + }, + { + "kind": "git", + "path": "third_party/libc", + "sha256": "5af39a19a1ad51ce93972cdab206dcd3ff9b6afa", + "url": "https://llvm.googlesource.com/llvm-project/libc" + }, + { + "kind": "git", + "path": "third_party/libcxx", + "sha256": "bd557f6f764d1e40b62528a13b124ce740624f8f", + "url": "https://llvm.googlesource.com/llvm-project/libcxx" + }, + { + "kind": "git", + "path": "third_party/libcxxabi", + "sha256": "a4dda1589d37a7e4b4f7a81ebad01b1083f2e726", + "url": "https://llvm.googlesource.com/llvm-project/libcxxabi" + }, + { + "kind": "git", + "path": "third_party/markupsafe", + "sha256": "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", + "url": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe.git" + }, + { + "kind": "git", + "path": "third_party/mdn/browser-compat-data/src", + "sha256": "ac8cae697014da1ff7124fba33b0b4245cc6cd1b", + "url": "https://chromium.googlesource.com/external/github.com/mdn/browser-compat-data" + }, + { + "kind": "git", + "path": "third_party/perfetto", + "sha256": "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b", + "url": "https://android.googlesource.com/platform/external/perfetto" + }, + { + "kind": "git", + "path": "third_party/pkg/ai", + "sha256": "64dfa7f138aa4d9bcc06e807858136b7d4d296d3", + "url": "https://dart.googlesource.com/ai.git" + }, + { + "kind": "git", + "path": "third_party/pkg/core", + "sha256": "b59ecf4ceebe6153e1c0166b7c9a7fdd9458a89d", + "url": "https://dart.googlesource.com/core.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dart_style", + "sha256": "44e8cfe7ba5a873ef81b6b39c07d50171eccf021", + "url": "https://dart.googlesource.com/dart_style.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dartdoc", + "sha256": "882aea9351262d618c955322f4c9aafe9540b848", + "url": "https://dart.googlesource.com/dartdoc.git" + }, + { + "kind": "git", + "path": "third_party/pkg/ecosystem", + "sha256": "d5233c6dd0767cffa5742e32c4bc7c230c9c4b12", + "url": "https://dart.googlesource.com/ecosystem.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http", + "sha256": "7d2d87ebfba86035a9ca6b79160ccc2ac1253c0c", + "url": "https://dart.googlesource.com/http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/i18n", + "sha256": "c45e050426bdeaaa120e5ce856abb486863d0476", + "url": "https://dart.googlesource.com/i18n.git" + }, + { + "kind": "git", + "path": "third_party/pkg/leak_tracker", + "sha256": "f5620600a5ce1c44f65ddaa02001e200b096e14c", + "url": "https://dart.googlesource.com/leak_tracker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/native", + "sha256": "723cd56a5edc89699db32bca1b5bf91aa0bcf0cf", + "url": "https://dart.googlesource.com/native.git" + }, + { + "kind": "git", + "path": "third_party/pkg/protobuf", + "sha256": "bce362dec347ae3cca085bd28db2aa2649f754e5", + "url": "https://dart.googlesource.com/protobuf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub", + "sha256": "52f512315bc886de487061091ef82056abf9dab8", + "url": "https://dart.googlesource.com/pub.git" + }, + { + "kind": "git", + "path": "third_party/pkg/shelf", + "sha256": "082d3ac2d13a98700d8148e8fad8f3e12a6fd0e1", + "url": "https://dart.googlesource.com/shelf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sync_http", + "sha256": "c07f96f89a7eec7e3daac641fa6c587224fcfbaa", + "url": "https://dart.googlesource.com/sync_http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tar", + "sha256": "5a1ea943e70cdf3fa5e1102cdbb9418bd9b4b81a", + "url": "https://dart.googlesource.com/external/github.com/simolus3/tar.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test", + "sha256": "2be5ca067bdf09e999be2ad760ab8efab854e789", + "url": "https://dart.googlesource.com/test.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tools", + "sha256": "fd7cc89aaac774fb34502502803a3bcf62cb83cd", + "url": "https://dart.googlesource.com/tools.git" + }, + { + "kind": "git", + "path": "third_party/pkg/vector_math", + "sha256": "13f185f7e97d559e003f5ac79201da12f9a01049", + "url": "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web", + "sha256": "354e22995859757223cea3fccbff0ad86c540d60", + "url": "https://dart.googlesource.com/web.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdev", + "sha256": "7f376d242709e933fff70610503d0c5c09b2e17e", + "url": "https://dart.googlesource.com/webdev.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdriver", + "sha256": "cfab787b30fbfb5509f9fc45cfce51157fb9f369", + "url": "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webkit_inspection_protocol", + "sha256": "effa75205516757795683d527c3dea9546eb0c32", + "url": "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git" + }, + { + "kind": "git", + "path": "third_party/ply", + "sha256": "604b32590ffad5cbb82e4afef1d305512d06ae93", + "url": "https://chromium.googlesource.com/chromium/src/third_party/ply.git" + }, + { + "kind": "git", + "path": "third_party/protobuf", + "sha256": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", + "url": "https://fuchsia.googlesource.com/third_party/protobuf" + }, + { + "kind": "git", + "path": "third_party/zlib", + "sha256": "470d3a2ee4ef721688ce6961bc865a99fcb64070", + "url": "https://chromium.googlesource.com/chromium/src/third_party/zlib.git" + } + ], + "dependencies": [ + "all:native/gn", + "all:native/make", + "all:native/ninja", + "all:native/python@3.11.13", + "all:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "all:mkdir -p buildtools/mac-x64/clang/.versions", + "all:mkdir -p buildtools/mac-arm64/clang/.versions", + "all:mkdir -p buildtools/linux-x64/clang/.versions", + "all:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "all:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "all:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "all:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "all:ln -s $(which gn) buildtools/gn", + "all:mkdir -p buildtools/ninja", + "all:ln -s $(which ninja) buildtools/ninja/ninja", + "all:mkdir -p buildtools/mac-arm64/clang/bin", + "all:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "all:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "all:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "all:python3 ./tools/build.py" + ] + } +} \ No newline at end of file diff --git a/packages/native/gn.json b/packages/native/gn.json new file mode 100644 index 0000000..38c5507 --- /dev/null +++ b/packages/native/gn.json @@ -0,0 +1,27 @@ +{ + "package": "native/gn", + "version": "0.0.0", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "07d3c6f4dc290fae5ca6152ebcb37d6815c411ab", + "url": "https://gn.googlesource.com/gn.git" + } + ], + "dependencies": [ + "all:native/git", + "all:native/ninja", + "all:native/python@3.11.13" + ], + "build": { + "env": [], + "steps": [ + "all:git tag -a initial-commit -m '0.0.0' 95374957437b818e9addc26c83340b27a1b38202", + "all:python3 build/gen.py", + "all:ninja -C out", + "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "all:cp out/gn $STAGING_DIR$PREFIX/native/bin/gn" + ] + } +} \ No newline at end of file From 0c36be484113914341467fd90533e15e310f1e9f Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 16 Oct 2025 01:31:11 +0200 Subject: [PATCH 009/200] wip --- cmd/gengitdeps/main.go | 42 +++++++- packages/native/ndk.json | 220 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 260 insertions(+), 2 deletions(-) create mode 100644 packages/native/ndk.json diff --git a/cmd/gengitdeps/main.go b/cmd/gengitdeps/main.go index f530495..989ba97 100644 --- a/cmd/gengitdeps/main.go +++ b/cmd/gengitdeps/main.go @@ -35,8 +35,22 @@ func main() { return err } - // Check if this is a .git directory - if info.IsDir() && info.Name() == ".git" { + // Check if this is a .git directory (or symlink to one) + if info.Name() == ".git" { + // Check if it's a directory or a symlink to a directory + isGitDir := info.IsDir() + if !isGitDir && info.Mode()&os.ModeSymlink != 0 { + // It's a symlink, check if it points to a directory + target, err := os.Stat(path) + if err == nil && target.IsDir() { + isGitDir = true + } + } + + if !isGitDir { + return filepath.SkipDir + } + // Get the repository directory (parent of .git) repoDir := filepath.Dir(path) @@ -107,11 +121,35 @@ func getGitCommit(repoDir string) (string, error) { } func getGitRemoteURL(repoDir string) (string, error) { + // Try origin first cmd := exec.Command("git", "config", "--get", "remote.origin.url") cmd.Dir = repoDir output, err := cmd.Output() + if err == nil { + return strings.TrimSpace(string(output)), nil + } + + // If origin doesn't exist, get the first available remote + cmd = exec.Command("git", "remote") + cmd.Dir = repoDir + output, err = cmd.Output() if err != nil { return "", err } + + remotes := strings.Split(strings.TrimSpace(string(output)), "\n") + if len(remotes) == 0 || remotes[0] == "" { + return "", fmt.Errorf("no remotes found") + } + + // Get the URL of the first remote + firstRemote := remotes[0] + cmd = exec.Command("git", "config", "--get", fmt.Sprintf("remote.%s.url", firstRemote)) + cmd.Dir = repoDir + output, err = cmd.Output() + if err != nil { + return "", err + } + return strings.TrimSpace(string(output)), nil } diff --git a/packages/native/ndk.json b/packages/native/ndk.json new file mode 100644 index 0000000..bbb823c --- /dev/null +++ b/packages/native/ndk.json @@ -0,0 +1,220 @@ +{ + "package": "native/ndk", + "version": "r29", + "type": "native", + "download": [ + { + "kind": "git", + "path": ".repo/manifests", + "sha256": "82eb8adcaafe02dce4e462db2379fad3ea0b54d8", + "url": "https://android.googlesource.com/platform/manifest" + }, + { + "kind": "git", + "path": ".repo/repo", + "sha256": "38d2fe11b9df521727fcca23c9dac086ce8378d3", + "url": "https://gerrit.googlesource.com/git-repo" + }, + { + "kind": "git", + "path": "bionic", + "sha256": "a63b21091ada240d92f8ceadb1cabbdedaaab81b", + "url": "https://android.googlesource.com/platform/bionic" + }, + { + "kind": "git", + "path": "development", + "sha256": "d84a5b9d746f241c3c77b16e8c6964b0f86f86e2", + "url": "https://android.googlesource.com/platform/development" + }, + { + "kind": "git", + "path": "external/effcee", + "sha256": "291037172dcb79318a7d0214a194e985c9ad0d7b", + "url": "https://android.googlesource.com/platform/external/effcee" + }, + { + "kind": "git", + "path": "external/googletest", + "sha256": "dc81c03b5db576f5ab8a468b6eebf584b016fa5b", + "url": "https://android.googlesource.com/platform/external/googletest" + }, + { + "kind": "git", + "path": "external/python/astroid", + "sha256": "062ae590ebac6acf05a5c7583be35870f0b563ba", + "url": "https://android.googlesource.com/platform/external/python/astroid" + }, + { + "kind": "git", + "path": "external/python/pylint", + "sha256": "6169a46fd0a78ed1f3c9fd2c41c1636eb0ed35c5", + "url": "https://android.googlesource.com/platform/external/python/pylint" + }, + { + "kind": "git", + "path": "external/regex-re2", + "sha256": "2e598de2ffcec7903d52742d4ecb80f11e7e1b92", + "url": "https://android.googlesource.com/platform/external/regex-re2" + }, + { + "kind": "git", + "path": "external/shaderc/glslang", + "sha256": "2222fa5818324771ceb99fd8802e54a50a2fb1a4", + "url": "https://android.googlesource.com/platform/external/shaderc/glslang" + }, + { + "kind": "git", + "path": "external/shaderc/shaderc", + "sha256": "8045a61b8c6b79c9fdaa86f36653a824880bab4d", + "url": "https://android.googlesource.com/platform/external/shaderc/shaderc" + }, + { + "kind": "git", + "path": "external/shaderc/spirv-headers", + "sha256": "907059dfed550925a45217e1ed9a7bc42ff8d770", + "url": "https://android.googlesource.com/platform/external/shaderc/spirv-headers" + }, + { + "kind": "git", + "path": "external/shaderc/spirv-tools", + "sha256": "12f5c853ee9e06ba6565006d8d36ee261a140d91", + "url": "https://android.googlesource.com/platform/external/shaderc/spirv-tools" + }, + { + "kind": "git", + "path": "external/vulkan-headers", + "sha256": "062f62b42a62e18a8eaccbce323d4f58548677be", + "url": "https://android.googlesource.com/platform/external/vulkan-headers" + }, + { + "kind": "git", + "path": "ndk", + "sha256": "196e0661200bad5361340700fea67be12e1f1684", + "url": "https://android.googlesource.com/platform/ndk" + }, + { + "kind": "git", + "path": "prebuilts/build-tools", + "sha256": "434d914996ecc2abcda46a1841c82946241b1c35", + "url": "https://android.googlesource.com/platform/prebuilts/build-tools" + }, + { + "kind": "git", + "path": "prebuilts/clang/host/darwin-x86", + "sha256": "2ede290b28d234595fcc23207c633961690c57ba", + "url": "https://android.googlesource.com/platform/prebuilts/clang/host/darwin-x86" + }, + { + "kind": "git", + "path": "prebuilts/clang/host/linux-x86", + "sha256": "568b941cf0c249b9c2a1f853e94a29f0e6291c59", + "url": "https://android.googlesource.com/platform/prebuilts/clang/host/linux-x86" + }, + { + "kind": "git", + "path": "prebuilts/clang/host/windows-x86", + "sha256": "31edac0247a8e13bd12d2f7359fc290689c84ab8", + "url": "https://android.googlesource.com/platform/prebuilts/clang/host/windows-x86" + }, + { + "kind": "git", + "path": "prebuilts/cmake/darwin-x86", + "sha256": "7aea7e9880110799088cd1de509886871078306f", + "url": "https://android.googlesource.com/platform/prebuilts/cmake/darwin-x86" + }, + { + "kind": "git", + "path": "prebuilts/cmake/linux-x86", + "sha256": "e57c88d59d7d8408a32b16425158fd2aa64e2b3e", + "url": "https://android.googlesource.com/platform/prebuilts/cmake/linux-x86" + }, + { + "kind": "git", + "path": "prebuilts/cmake/windows-x86", + "sha256": "f6283abb0a655968016437be07d04370fd815e6c", + "url": "https://android.googlesource.com/platform/prebuilts/cmake/windows-x86" + }, + { + "kind": "git", + "path": "prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.17-4.8", + "sha256": "49917e030f76c01f35d5a46b66a2b85b2976647c", + "url": "https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.17-4.8" + }, + { + "kind": "git", + "path": "prebuilts/gcc/linux-x86/host/x86_64-w64-mingw32-4.8", + "sha256": "d6b93efcc5c2d123cb44eee4f74d6fd35d5efd9f", + "url": "https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/host/x86_64-w64-mingw32-4.8" + }, + { + "kind": "git", + "path": "prebuilts/ndk", + "sha256": "c0815fea3a8081be6215440de330c63246e6551f", + "url": "https://android.googlesource.com/platform/prebuilts/ndk" + }, + { + "kind": "git", + "path": "prebuilts/ninja/darwin-x86", + "sha256": "f321e197944c19d273cec788b9a3e8ca94331248", + "url": "https://android.googlesource.com/platform/prebuilts/ninja/darwin-x86" + }, + { + "kind": "git", + "path": "prebuilts/ninja/linux-x86", + "sha256": "8a10824f74fe0e22af9bf314a837f5b70e2bb67f", + "url": "https://android.googlesource.com/platform/prebuilts/ninja/linux-x86" + }, + { + "kind": "git", + "path": "prebuilts/ninja/windows-x86", + "sha256": "4d526002f0158a5d103bb6e54d43943c0e1c2778", + "url": "https://android.googlesource.com/platform/prebuilts/ninja/windows-x86" + }, + { + "kind": "git", + "path": "prebuilts/python/darwin-x86", + "sha256": "3400487f6a77cc05ee5d4799575372713ce63232", + "url": "https://android.googlesource.com/platform/prebuilts/python/darwin-x86" + }, + { + "kind": "git", + "path": "prebuilts/python/linux-x86", + "sha256": "fce2346610379fdcce9dc7423c0e9a04e1a43cbf", + "url": "https://android.googlesource.com/platform/prebuilts/python/linux-x86" + }, + { + "kind": "git", + "path": "prebuilts/python/windows-x86", + "sha256": "6d619afe3f821388a57b7b2b473bee85debfdd7c", + "url": "https://android.googlesource.com/platform/prebuilts/python/windows-x86" + }, + { + "kind": "git", + "path": "prebuilts/simpleperf", + "sha256": "c04e1425e49ad7a106bdb5911e7ebbc5ff4afa20", + "url": "https://android.googlesource.com/platform/prebuilts/simpleperf" + }, + { + "kind": "git", + "path": "toolchain/make", + "sha256": "44fc4fe66a484b91844c302f03eaa8438e065d17", + "url": "https://android.googlesource.com/toolchain/make" + }, + { + "kind": "git", + "path": "toolchain/yasm", + "sha256": "7a28367b72cb1e1667b081d6404afbd063898e70", + "url": "https://android.googlesource.com/toolchain/yasm" + } + ], + "dependencies": [ + "all:native/make", + "all:native/python@3.11.13" + ], + "build": { + "steps": [ + "*-android*:cd ndk && python3 checkbuild.py" + ] + } +} \ No newline at end of file From 036528954a1b4af7ca61a6666fbd253601603432 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 16 Oct 2025 11:56:31 +0200 Subject: [PATCH 010/200] fix: buildweb templates and paths package: added ndk (wip) package: xz drop android_ndk as dependency downloads: git - optimize for local size --- cmd/buildweb/builder_matrix.tpl | 2 +- cmd/buildweb/buildweb.go | 12 +++- cmd/buildweb/package.tpl | 4 +- pack/build.go | 13 +++++ packages/native/ndk.json | 100 ++++---------------------------- packages/native/xz.json | 1 - utils/git.go | 36 ++++++------ 7 files changed, 56 insertions(+), 112 deletions(-) diff --git a/cmd/buildweb/builder_matrix.tpl b/cmd/buildweb/builder_matrix.tpl index 5c03b04..455f4ab 100644 --- a/cmd/buildweb/builder_matrix.tpl +++ b/cmd/buildweb/builder_matrix.tpl @@ -151,7 +151,7 @@ {{if and (eq .Builder $.Builder) (eq .Target $target)}} {{$found = true}} - ✓ diff --git a/cmd/buildweb/buildweb.go b/cmd/buildweb/buildweb.go index cb0f1be..d34d38a 100644 --- a/cmd/buildweb/buildweb.go +++ b/cmd/buildweb/buildweb.go @@ -239,13 +239,23 @@ func BuildWeb() { packageDepth := strings.Count(pkg.Package.Package, "/") upPath := strings.Repeat("../", packageDepth+1) // +1 to get out of web directory - return fmt.Sprintf("%ssource/%s-%s.%s", upPath, pkg.Package.Package, pkg.Package.Version, download.Kind) + if download.Kind == "git" { + bundleName := filepath.Base(download.URL) + "-" + download.Sha256[0:8] + ".bundle" + return fmt.Sprintf("%ssource/%s", upPath, bundleName) + } + return fmt.Sprintf("%ssource/%s", upPath, filepath.Base(download.URL)) }, "getBuiltFilePath": func(packageName, filePath string) string { packageDepth := strings.Count(packageName, "/") upPath := strings.Repeat("../", packageDepth+1) // +1 to get out of web directory return upPath + filePath }, + "getFileDetailsPath": func(packageName, builder, target, packageVersion, buildID string) string { + packageDepth := strings.Count(packageName, "/") + upPath := strings.Repeat("../", packageDepth) + fileName := fmt.Sprintf("%s-%s-%s.html", packageName, packageVersion, buildID) + return fmt.Sprintf("%sfiles/%s/%s/%s", upPath, builder, target, fileName) + }, "getBuildMatrix": func(pkg *pack.PackageWithBuilds) map[string]map[string]*pack.BuiltFile { builders := make([]string, len(builder.Builders)) copy(builders, builder.Builders) diff --git a/cmd/buildweb/package.tpl b/cmd/buildweb/package.tpl index edcd2b9..edcdfe8 100644 --- a/cmd/buildweb/package.tpl +++ b/cmd/buildweb/package.tpl @@ -477,7 +477,7 @@ {{$build := index (index $matrix $builder) $target}} {{if $build}} - ✓ @@ -518,7 +518,7 @@
- + 📋 View Contents diff --git a/pack/build.go b/pack/build.go index c32c908..46dedf7 100644 --- a/pack/build.go +++ b/pack/build.go @@ -1,6 +1,7 @@ package pack import ( + "fmt" "log" "os" "os/exec" @@ -236,6 +237,18 @@ func (p *Package) StartShell(h *host.Host) { log.Fatalf("Invalid step: %s", step) } } + fmt.Print("\n\n") + for _, step := range p.Build.Steps { + if strings.Contains(step, ":") { + prefix := strings.Split(step, ":")[0] + if !glob.Glob(prefix, h.Triplet) && prefix != "all" { + continue + } + step = step[strings.Index(step, ":")+1:] + fmt.Printf("%s;", step) + } + } + fmt.Print("\n\n") log.Printf("Starting %s in %s with build environment for %s", userShell, buildPath, h.Triplet) log.Printf("Type 'exit' to leave the shell") diff --git a/packages/native/ndk.json b/packages/native/ndk.json index bbb823c..f506de6 100644 --- a/packages/native/ndk.json +++ b/packages/native/ndk.json @@ -93,102 +93,12 @@ "sha256": "196e0661200bad5361340700fea67be12e1f1684", "url": "https://android.googlesource.com/platform/ndk" }, - { - "kind": "git", - "path": "prebuilts/build-tools", - "sha256": "434d914996ecc2abcda46a1841c82946241b1c35", - "url": "https://android.googlesource.com/platform/prebuilts/build-tools" - }, - { - "kind": "git", - "path": "prebuilts/clang/host/darwin-x86", - "sha256": "2ede290b28d234595fcc23207c633961690c57ba", - "url": "https://android.googlesource.com/platform/prebuilts/clang/host/darwin-x86" - }, - { - "kind": "git", - "path": "prebuilts/clang/host/linux-x86", - "sha256": "568b941cf0c249b9c2a1f853e94a29f0e6291c59", - "url": "https://android.googlesource.com/platform/prebuilts/clang/host/linux-x86" - }, - { - "kind": "git", - "path": "prebuilts/clang/host/windows-x86", - "sha256": "31edac0247a8e13bd12d2f7359fc290689c84ab8", - "url": "https://android.googlesource.com/platform/prebuilts/clang/host/windows-x86" - }, - { - "kind": "git", - "path": "prebuilts/cmake/darwin-x86", - "sha256": "7aea7e9880110799088cd1de509886871078306f", - "url": "https://android.googlesource.com/platform/prebuilts/cmake/darwin-x86" - }, - { - "kind": "git", - "path": "prebuilts/cmake/linux-x86", - "sha256": "e57c88d59d7d8408a32b16425158fd2aa64e2b3e", - "url": "https://android.googlesource.com/platform/prebuilts/cmake/linux-x86" - }, - { - "kind": "git", - "path": "prebuilts/cmake/windows-x86", - "sha256": "f6283abb0a655968016437be07d04370fd815e6c", - "url": "https://android.googlesource.com/platform/prebuilts/cmake/windows-x86" - }, - { - "kind": "git", - "path": "prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.17-4.8", - "sha256": "49917e030f76c01f35d5a46b66a2b85b2976647c", - "url": "https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.17-4.8" - }, - { - "kind": "git", - "path": "prebuilts/gcc/linux-x86/host/x86_64-w64-mingw32-4.8", - "sha256": "d6b93efcc5c2d123cb44eee4f74d6fd35d5efd9f", - "url": "https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/host/x86_64-w64-mingw32-4.8" - }, { "kind": "git", "path": "prebuilts/ndk", "sha256": "c0815fea3a8081be6215440de330c63246e6551f", "url": "https://android.googlesource.com/platform/prebuilts/ndk" }, - { - "kind": "git", - "path": "prebuilts/ninja/darwin-x86", - "sha256": "f321e197944c19d273cec788b9a3e8ca94331248", - "url": "https://android.googlesource.com/platform/prebuilts/ninja/darwin-x86" - }, - { - "kind": "git", - "path": "prebuilts/ninja/linux-x86", - "sha256": "8a10824f74fe0e22af9bf314a837f5b70e2bb67f", - "url": "https://android.googlesource.com/platform/prebuilts/ninja/linux-x86" - }, - { - "kind": "git", - "path": "prebuilts/ninja/windows-x86", - "sha256": "4d526002f0158a5d103bb6e54d43943c0e1c2778", - "url": "https://android.googlesource.com/platform/prebuilts/ninja/windows-x86" - }, - { - "kind": "git", - "path": "prebuilts/python/darwin-x86", - "sha256": "3400487f6a77cc05ee5d4799575372713ce63232", - "url": "https://android.googlesource.com/platform/prebuilts/python/darwin-x86" - }, - { - "kind": "git", - "path": "prebuilts/python/linux-x86", - "sha256": "fce2346610379fdcce9dc7423c0e9a04e1a43cbf", - "url": "https://android.googlesource.com/platform/prebuilts/python/linux-x86" - }, - { - "kind": "git", - "path": "prebuilts/python/windows-x86", - "sha256": "6d619afe3f821388a57b7b2b473bee85debfdd7c", - "url": "https://android.googlesource.com/platform/prebuilts/python/windows-x86" - }, { "kind": "git", "path": "prebuilts/simpleperf", @@ -209,11 +119,21 @@ } ], "dependencies": [ + "all:native/cmake", "all:native/make", + "all:native/ninja", "all:native/python@3.11.13" ], "build": { "steps": [ + "*-android*:mkdir -p prebuilts/clang/host/darwin-x86/clang-r563880c", + "*-android*:mkdir -p prebuilts/clang/host/linux-x86/clang-r563880c", + "*-android*:mkdir -p prebuilts/clang/host/windows-x86/clang-r563880c", + "*-android*:touch prebuilts/clang/host/darwin-x86/clang-r563880c/NOTICE", + "*-android*:touch prebuilts/clang/host/linux-x86/clang-r563880c/NOTICE", + "*-android*:touch prebuilts/clang/host/windows-x86/clang-r563880c/NOTICE", + "*-android*:mkdir -p prebuilts/simpleperf", + "*-android*:touch prebuilts/simpleperf/NOTICE", "*-android*:cd ndk && python3 checkbuild.py" ] } diff --git a/packages/native/xz.json b/packages/native/xz.json index 8178edb..3d8c7ab 100644 --- a/packages/native/xz.json +++ b/packages/native/xz.json @@ -10,7 +10,6 @@ } ], "dependencies": [ - "*-android*:native/android_ndk", "all:native/autoconf", "all:native/automake", "all:native/gettext", diff --git a/utils/git.go b/utils/git.go index 81887a8..c2d1d27 100644 --- a/utils/git.go +++ b/utils/git.go @@ -91,13 +91,25 @@ func createBundleFromRepo(bundlePath, url, ref string) error { return fmt.Errorf("failed to clone repository: %w", err) } - log.Printf("Checking out reference %s", ref) - checkoutCmd := exec.Command("git", "checkout", ref) - checkoutCmd.Dir = tempDir - checkoutCmd.Stdout = os.Stdout - checkoutCmd.Stderr = os.Stderr - if err := checkoutCmd.Run(); err != nil { - return fmt.Errorf("failed to checkout ref %s: %w", ref, err) + log.Printf("Checking out reference %s and creating bundle...", ref) + os.MkdirAll(filepath.Dir(bundlePath), 0755) + + cmds := [][]string{ + {"git", "checkout", ref}, + {"git", "gc", "--aggressive", "--prune=now"}, + {"git", "repack", "-Ad", "-l"}, + {"git", "prune", "--expire", "now"}, + {"git", "bundle", "create", bundlePath, "HEAD"}, + } + + for _, cmdArgs := range cmds { + cmd := exec.Command(cmdArgs[0], cmdArgs[1:]...) + cmd.Dir = tempDir + cmd.Stdout = os.Stdout + cmd.Stderr = os.Stderr + if err := cmd.Run(); err != nil { + return fmt.Errorf("failed to run %v: %w", cmdArgs, err) + } } revParseCmd := exec.Command("git", "rev-parse", "HEAD") @@ -108,16 +120,6 @@ func createBundleFromRepo(bundlePath, url, ref string) error { } log.Printf("Checked out commit: %s", strings.TrimSpace(string(commitHash))) - log.Printf("Creating bundle file...") - os.MkdirAll(filepath.Dir(bundlePath), 0755) - bundleCmd := exec.Command("git", "bundle", "create", bundlePath, "HEAD") - bundleCmd.Dir = tempDir - bundleCmd.Stdout = os.Stdout - bundleCmd.Stderr = os.Stderr - if err := bundleCmd.Run(); err != nil { - return fmt.Errorf("failed to create bundle: %w", err) - } - log.Printf("Successfully created bundle at %s", bundlePath) return nil } From 09be1ebda5389631e8839b56f1597aa104974632 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 16 Oct 2025 21:26:07 +0200 Subject: [PATCH 011/200] wip: add google llvm --- pack/build.go | 15 +++++---- packages/native/llvm@google@r563880.json | 41 ++++++++++++++++++++++++ 2 files changed, 49 insertions(+), 7 deletions(-) create mode 100644 packages/native/llvm@google@r563880.json diff --git a/pack/build.go b/pack/build.go index 46dedf7..6cec0da 100644 --- a/pack/build.go +++ b/pack/build.go @@ -224,28 +224,29 @@ func (p *Package) StartShell(h *host.Host) { if userShell == "" { userShell = "/bin/sh" } - + fmt.Print("\n\n") for _, step := range p.Build.Steps { if strings.Contains(step, ":") { prefix := strings.Split(step, ":")[0] if !glob.Glob(prefix, h.Triplet) && prefix != "all" { - log.Printf("[no match] %s", step) continue } - log.Printf(" [match] %s", step) - } else { - log.Fatalf("Invalid step: %s", step) + step = step[strings.Index(step, ":")+1:] + fmt.Printf("%s;\n", utils.ExpandEnvFromMap(step, env)) } } fmt.Print("\n\n") + for _, step := range p.Build.Steps { if strings.Contains(step, ":") { prefix := strings.Split(step, ":")[0] if !glob.Glob(prefix, h.Triplet) && prefix != "all" { + log.Printf("[no match] %s", utils.ExpandEnvFromMap(step, env)) continue } - step = step[strings.Index(step, ":")+1:] - fmt.Printf("%s;", step) + log.Printf(" [match] %s", utils.ExpandEnvFromMap(step, env)) + } else { + log.Fatalf("Invalid step: %s", step) } } fmt.Print("\n\n") diff --git a/packages/native/llvm@google@r563880.json b/packages/native/llvm@google@r563880.json new file mode 100644 index 0000000..6c950dd --- /dev/null +++ b/packages/native/llvm@google@r563880.json @@ -0,0 +1,41 @@ +{ + "package": "native/llvm@google@r563880", + "version": "r563880", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "5e96669f06077099aa41290cdb4c5e6fa0f59349", + "url": "https://android.googlesource.com/toolchain/llvm-project" + } + ], + "dependencies": [ + "*-android*:native/cmake", + "*-android*:native/ninja", + "*-android*:native/python@3.11.13" + ], + "build": { + "env": [ + "*-android*:config_opts=-DCMAKE_BUILD_TYPE=Release", + "*-android*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*-android*:config_opts=$config_opts -DLLVM_ENABLE_PROJECTS='clang;lld;libc;openmp;pstl'", + "*-android*:config_opts=$config_opts -DLLVM_ENABLE_RUNTIMES='compiler-rt'", + "aarch64-linux-android:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='AArch64' -DLLVM_DEFAULT_TARGET_TRIPLE='aarch64-linux-android' -DCOMPILER_RT_TARGET_TRIPLE='aarch64-linux-android'", + "x86_64-linux-android:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='X86' -DLLVM_DEFAULT_TARGET_TRIPLE='x86_64-linux-android' -DCOMPILER_RT_TARGET_TRIPLE='x86_64-linux-android'", + "armv7a-linux-androideabi:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='ARM' -DLLVM_DEFAULT_TARGET_TRIPLE='armv7a-linux-androideabi' -DCOMPILER_RT_TARGET_TRIPLE='armv7a-linux-androideabi'", + "*-android*:config_opts=$config_opts -DLLVM_ENABLE_BINDINGS=OFF", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_BAREMETAL_BUILD=ON", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_SANITIZERS=OFF", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_XRAY=OFF", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_LIBFUZZER=OFF", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_PROFILE=OFF", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_BUILTINS=ON" + ], + "steps": [ + "*-android*:cmake -S llvm -B build -G Ninja $config_opts", + "*-android*:cd build && ninja -j $NUM_CORES", + "*-android*:cd build && DESTDIR=$STAGING_DIR ninja install" + ] + } +} \ No newline at end of file From feb99cb5cb5b62485180647d1d90d30ea0255c5e Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 16 Oct 2025 23:10:11 +0200 Subject: [PATCH 012/200] fix: ct-tools: symlink tools to avoid accidentally using host tools when script doesn't respect $AS drop: linux-headers, it is built as part of ct-tools audit-userspace: build only for linux --- packages/audit-userspace.json | 23 +++++++------- packages/linux-headers.json | 28 ----------------- packages/native/ct-tools.json | 59 +++++++++++++++++++++++++++++++---- 3 files changed, 64 insertions(+), 46 deletions(-) delete mode 100644 packages/linux-headers.json diff --git a/packages/audit-userspace.json b/packages/audit-userspace.json index a9e33b7..1f28c48 100644 --- a/packages/audit-userspace.json +++ b/packages/audit-userspace.json @@ -10,25 +10,24 @@ } ], "dependencies": [ - "all:native/_", - "all:linux-headers" + "*-linux-gnu:native/_" ], "build": { "env": [ - "all:config_opts=--prefix=$PREFIX --host=$HOST --disable-shared --enable-static", - "all:config_opts=$config_opts --with-python3=no", - "all:config_opts=$config_opts --enable-gssapi-krb5=no", + "*-linux-gnu:config_opts=--prefix=$PREFIX --host=$HOST --disable-shared --enable-static", + "*-linux-gnu:config_opts=$config_opts --with-python3=no", + "*-linux-gnu:config_opts=$config_opts --enable-gssapi-krb5=no", "arm*:config_opts=$config_opts --with-arm=no", "aarch64-*:config_opts=$config_opts --with-aarch64=no", - "all:config_opts=$config_opts --with-libcap-ng=no", - "all:config_opts=$config_opts --with-io_uring=no", - "all:config_opts=$config_opts --disable-zos-remote" + "*-linux-gnu:config_opts=$config_opts --with-libcap-ng=no", + "*-linux-gnu:config_opts=$config_opts --with-io_uring=no", + "*-linux-gnu:config_opts=$config_opts --disable-zos-remote" ], "steps": [ - "all:autoreconf -f --install", - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make install DESTDIR=$STAGING_DIR" + "*-linux-gnu:autoreconf -f --install", + "*-linux-gnu:./configure $config_opts", + "*-linux-gnu:make -j$NUM_CORES", + "*-linux-gnu:make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/linux-headers.json b/packages/linux-headers.json deleted file mode 100644 index c999936..0000000 --- a/packages/linux-headers.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "package": "linux-headers", - "version": "6.15.9", - "type": "host", - "download": [ - { - "kind": "tar.xz", - "sha256": "e94f3af85492302f7a819441458f80bca0ad9912e5a4c83c699ff3c63c52957d", - "url": "https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.15.9.tar.xz" - } - ], - "dependencies": [ - "*-linux-*:native/_", - "*-linux-*:native/rsync", - "*-linux-*:native/sed" - ], - "build": { - "env": [ - "x86_64*:ARCH=x86_64", - "arm*:ARCH=arm", - "aarch64*:ARCH=arm64" - ], - "steps": [ - "*-linux-*:sed -i.bak '/arch\\/x86\\/tools relocs/ s/.*/\\ttrue/' arch/x86/Makefile", - "*-linux-*:make ARCH=$ARCH INSTALL_HDR_PATH=$STAGING_DIR$PREFIX/usr headers_install" - ] - } -} \ No newline at end of file diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 93e080f..5bcaedb 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -174,12 +174,59 @@ "all:cp -a $HOME/x-tools/$TOOL_TARGET/lib $STAGING_DIR$PREFIX/native", "all:cp -a $HOME/x-tools/$TOOL_TARGET/libexec $STAGING_DIR$PREFIX/native", "all:cp -a $HOME/x-tools/$TOOL_TARGET/share $STAGING_DIR$PREFIX/native", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/etc $STAGING_DIR$PREFIX/etc", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib $STAGING_DIR$PREFIX/lib", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib64 $STAGING_DIR$PREFIX/lib64", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/sbin $STAGING_DIR$PREFIX/sbin", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr $STAGING_DIR$PREFIX/usr", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/var $STAGING_DIR$PREFIX/var" + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/etc $STAGING_DIR$PREFIX/", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib $STAGING_DIR$PREFIX/", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib64 $STAGING_DIR$PREFIX/", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/sbin $STAGING_DIR$PREFIX/", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/bin $STAGING_DIR$PREFIX/", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/include $STAGING_DIR$PREFIX/", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/lib $STAGING_DIR$PREFIX/", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/lib64 $STAGING_DIR$PREFIX/", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/libexec $STAGING_DIR$PREFIX/", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/sbin $STAGING_DIR$PREFIX/", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/share $STAGING_DIR$PREFIX/", + "all:mkdir -p $STAGING_DIR$PREFIX/usr", + "all:ln -s ../bin $STAGING_DIR$PREFIX/usr/bin", + "all:ln -s ../include $STAGING_DIR$PREFIX/usr/include", + "all:ln -s ../lib $STAGING_DIR$PREFIX/usr/lib", + "all:ln -s ../lib64 $STAGING_DIR$PREFIX/usr/lib64", + "all:ln -s ../libexec $STAGING_DIR$PREFIX/usr/libexec", + "all:ln -s ../sbin $STAGING_DIR$PREFIX/usr/sbin", + "all:ln -s ../share $STAGING_DIR$PREFIX/usr/share", + "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/var $STAGING_DIR$PREFIX/", + "all:ln -s $TOOL_TARGET-addr2line $STAGING_DIR$PREFIX/native/bin/addr2line", + "all:ln -s $TOOL_TARGET-ar $STAGING_DIR$PREFIX/native/bin/ar", + "all:ln -s $TOOL_TARGET-as $STAGING_DIR$PREFIX/native/bin/as", + "all:ln -s $TOOL_TARGET-c++ $STAGING_DIR$PREFIX/native/bin/c++", + "all:ln -s $TOOL_TARGET-c++filt $STAGING_DIR$PREFIX/native/bin/c++filt", + "all:ln -s $TOOL_TARGET-cc $STAGING_DIR$PREFIX/native/bin/cc", + "all:ln -s $TOOL_TARGET-cpp $STAGING_DIR$PREFIX/native/bin/cpp", + "all:ln -s $TOOL_TARGET-elfedit $STAGING_DIR$PREFIX/native/bin/elfedit", + "all:ln -s $TOOL_TARGET-g++ $STAGING_DIR$PREFIX/native/bin/g++", + "all:ln -s $TOOL_TARGET-gcc $STAGING_DIR$PREFIX/native/bin/gcc", + "all:ln -s $TOOL_TARGET-gcc-15.2.0 $STAGING_DIR$PREFIX/native/bin/gcc-15.2.0", + "all:ln -s $TOOL_TARGET-gcc-ar $STAGING_DIR$PREFIX/native/bin/gcc-ar", + "all:ln -s $TOOL_TARGET-gcc-nm $STAGING_DIR$PREFIX/native/bin/gcc-nm", + "all:ln -s $TOOL_TARGET-gcc-ranlib $STAGING_DIR$PREFIX/native/bin/gcc-ranlib", + "all:ln -s $TOOL_TARGET-gccgo $STAGING_DIR$PREFIX/native/bin/gccgo", + "all:ln -s $TOOL_TARGET-gcov $STAGING_DIR$PREFIX/native/bin/gcov", + "all:ln -s $TOOL_TARGET-gcov-dump $STAGING_DIR$PREFIX/native/bin/gcov-dump", + "all:ln -s $TOOL_TARGET-gcov-tool $STAGING_DIR$PREFIX/native/bin/gcov-tool", + "all:ln -s $TOOL_TARGET-gfortran $STAGING_DIR$PREFIX/native/bin/gfortran", + "all:ln -s $TOOL_TARGET-gprof $STAGING_DIR$PREFIX/native/bin/gprof", + "all:ln -s $TOOL_TARGET-ld $STAGING_DIR$PREFIX/native/bin/ld", + "all:ln -s $TOOL_TARGET-ld.bfd $STAGING_DIR$PREFIX/native/bin/ld.bfd", + "all:ln -s $TOOL_TARGET-ldd $STAGING_DIR$PREFIX/native/bin/ldd", + "all:ln -s $TOOL_TARGET-lto-dump $STAGING_DIR$PREFIX/native/bin/lto-dump", + "all:ln -s $TOOL_TARGET-nm $STAGING_DIR$PREFIX/native/bin/nm", + "all:ln -s $TOOL_TARGET-objcopy $STAGING_DIR$PREFIX/native/bin/objcopy", + "all:ln -s $TOOL_TARGET-objdump $STAGING_DIR$PREFIX/native/bin/objdump", + "all:ln -s $TOOL_TARGET-populate $STAGING_DIR$PREFIX/native/bin/populate", + "all:ln -s $TOOL_TARGET-ranlib $STAGING_DIR$PREFIX/native/bin/ranlib", + "all:ln -s $TOOL_TARGET-readelf $STAGING_DIR$PREFIX/native/bin/readelf", + "all:ln -s $TOOL_TARGET-size $STAGING_DIR$PREFIX/native/bin/size", + "all:ln -s $TOOL_TARGET-strings $STAGING_DIR$PREFIX/native/bin/strings", + "all:ln -s $TOOL_TARGET-strip $STAGING_DIR$PREFIX/native/bin/strip" ] } } \ No newline at end of file From 74d1099d59f0e8fe04856f4517cf9a735b9b91ee Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 16 Oct 2025 21:01:09 -0400 Subject: [PATCH 013/200] all -> * --- README.md | 22 +- builder/builder_darwin_arm64.go | 22 +- builder/builder_linux_amd64.go | 22 +- builder/builder_linux_arm64.go | 22 +- cmd/lint/lint.go | 10 +- go.mod | 1 + go.sum | 2 + host/main.go | 302 +++++++++--------- pack/build.go | 17 +- pack/info.go | 37 ++- pack/main.go | 9 +- packages/boost.json | 26 +- packages/bzip2.json | 10 +- packages/eudev.json | 14 +- packages/expat.json | 16 +- packages/glib.json | 24 +- packages/gtest.json | 26 +- packages/hidapi.json | 20 +- packages/libcap.json | 6 +- packages/libevent.json | 36 +-- packages/libiconv.json | 22 +- packages/libtor.json | 68 ++-- packages/libusb.json | 22 +- packages/libxcrypt.json | 14 +- packages/native/_.json | 50 +-- packages/native/android_ndk.json | 2 +- packages/native/autoconf.json | 12 +- packages/native/automake.json | 18 +- packages/native/bash.json | 8 +- packages/native/binutils@2.42.json | 42 +-- packages/native/bison.json | 16 +- packages/native/boost-b2.json | 6 +- .../native/bootstrap/cpan/archive-cpio.json | 12 +- .../native/bootstrap/cpan/archive-zip.json | 12 +- .../native/bootstrap/cpan/sub-override.json | 12 +- packages/native/bootstrap/make.json | 8 +- packages/native/bootstrap/perl.json | 12 +- .../bootstrap/strip-nondeterminism.json | 22 +- packages/native/bzip2.json | 10 +- packages/native/cmake-toolchain.json | 4 +- packages/native/cmake.json | 14 +- packages/native/config.json | 6 +- packages/native/cpio.json | 8 +- packages/native/crosstool-ng.json | 48 +-- packages/native/ct-tools.json | 178 +++++------ packages/native/curl.json | 14 +- packages/native/dart.json | 40 +-- packages/native/expat.json | 18 +- packages/native/flex.json | 12 +- packages/native/gawk.json | 26 +- packages/native/gawk@5.2.2.json | 14 +- packages/native/gettext.json | 16 +- packages/native/git.json | 14 +- packages/native/gmp.json | 20 +- packages/native/gn.json | 16 +- packages/native/gperf.json | 10 +- packages/native/help2man.json | 14 +- packages/native/libiconv.json | 20 +- packages/native/libpsl.json | 8 +- packages/native/libtool.json | 10 +- packages/native/libxml2.json | 12 +- packages/native/m4.json | 10 +- packages/native/make.json | 12 +- packages/native/meson.json | 8 +- packages/native/mpc.json | 18 +- packages/native/mpfr.json | 16 +- packages/native/ndk.json | 8 +- packages/native/ninja.json | 10 +- packages/native/nproc.json | 6 +- packages/native/openssl.json | 26 +- packages/native/p7zip.json | 14 +- packages/native/patch.json | 10 +- packages/native/pbzx.json | 10 +- packages/native/perl.json | 10 +- packages/native/pkgconf.json | 24 +- packages/native/protobuf.json | 40 +-- packages/native/python@3.11.13.json | 16 +- packages/native/rsync.json | 20 +- packages/native/rust@1_54_0.json | 44 +-- packages/native/rust@1_55_0.json | 48 +-- packages/native/rust@1_56_1.json | 48 +-- packages/native/rust@1_57_0.json | 48 +-- packages/native/rust@1_58_1.json | 48 +-- packages/native/rust@1_59_0.json | 48 +-- packages/native/rust@1_60_0.json | 48 +-- packages/native/rust@1_61_0.json | 48 +-- packages/native/rust@1_62_1.json | 48 +-- packages/native/rust@1_63_0.json | 48 +-- packages/native/rust@1_64_0.json | 48 +-- packages/native/rust@1_65_0.json | 48 +-- packages/native/rust@1_66_1.json | 54 ++-- packages/native/rust@1_67_1.json | 48 +-- packages/native/rust@1_68_2.json | 48 +-- packages/native/rust@1_69_0.json | 48 +-- packages/native/rust@1_70_0.json | 48 +-- packages/native/rust@1_71_1.json | 48 +-- packages/native/rust@1_72_1.json | 48 +-- packages/native/rust@1_73_0.json | 48 +-- packages/native/rust@1_74_1.json | 48 +-- packages/native/rust@1_75_0.json | 48 +-- packages/native/rust@1_76_0.json | 44 +-- packages/native/rust@1_77_1.json | 44 +-- packages/native/rust@1_78_0.json | 42 +-- packages/native/rust@1_79_0.json | 42 +-- packages/native/rust@1_80_1.json | 42 +-- packages/native/rust@1_81_0.json | 42 +-- packages/native/rust@1_82_0.json | 42 +-- packages/native/rust@1_83_0.json | 42 +-- packages/native/rust@1_84_1.json | 42 +-- packages/native/rust@1_85_1.json | 42 +-- packages/native/rust@1_86_0.json | 42 +-- packages/native/rust@1_87_0.json | 42 +-- packages/native/rust@1_88_0.json | 42 +-- packages/native/rust@1_89_0.json | 42 +-- packages/native/rust@1_90_0.json | 42 +-- packages/native/sed.json | 10 +- packages/native/texinfo.json | 18 +- packages/native/xar.json | 22 +- packages/native/xmlto.json | 22 +- packages/native/zlib.json | 18 +- packages/ncurses.json | 78 ++--- packages/openssl.json | 50 +-- packages/polyseed.json | 6 +- packages/protobuf.json | 32 +- packages/readline.json | 16 +- packages/selinux.json | 38 +-- packages/sodium.json | 22 +- packages/torch.json | 28 +- packages/unbound.json | 26 +- packages/unwind.json | 10 +- packages/xz.json | 42 +-- packages/zeromq.json | 18 +- packages/zlib.json | 16 +- packages/zstd.json | 14 +- utils/env.go | 2 +- 135 files changed, 1989 insertions(+), 1983 deletions(-) diff --git a/README.md b/README.md index 3f2a81a..93c37eb 100644 --- a/README.md +++ b/README.md @@ -50,24 +50,24 @@ All package definitions live inside of this repo (this is going to change soon * // build all packages recursively but it won't inherit parent dependencies) "*-android*:native/android_ndk", // all is a magic keyword that works just like * - "all:native/make", - "all:native/libtool" + "*:native/make", + "*:native/libtool" ], "build": { "env": [ // same logic as in dependencies applies, most variables are available during this phase (like $PREFIX or $HOST) - "all:CFLAGS=$CFLAGS -fPIC", - "all:config_opts=--prefix=$PREFIX --static", - "all:LIBTOOL=$PREFIX/native/bin/libtool", - "all:CROSS_PREFIX=$HOST-" + "*:CFLAGS=$CFLAGS -fPIC", + "*:config_opts=--prefix=$PREFIX --static", + "*:LIBTOOL=$PREFIX/native/bin/libtool", + "*:CROSS_PREFIX=$HOST-" ], "steps": [ // step-by-step instructions to build the package. - "all:./configure $config_opts", - "all:sed -i.bak s\\|^AR=.*\\|AR=$AR\\|g Makefile", - "all:sed -i.bak s\\|^ARFLAGS=.*\\|ARFLAGS=$ARFLAGS\\|g Makefile", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure $config_opts", + "*:sed -i.bak s\\|^AR=.*\\|AR=$AR\\|g Makefile", + "*:sed -i.bak s\\|^ARFLAGS=.*\\|ARFLAGS=$ARFLAGS\\|g Makefile", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } diff --git a/builder/builder_darwin_arm64.go b/builder/builder_darwin_arm64.go index ce17dac..2e80075 100644 --- a/builder/builder_darwin_arm64.go +++ b/builder/builder_darwin_arm64.go @@ -2,16 +2,16 @@ package builder var HostBuilder = Builder{ GlobalEnv: []string{ - "all:HOST=aarch64-apple-darwin", - "all:TARGET=aarch64-apple-darwin", - "all:OSX_MIN_VERSION=13", - "all:CC=/usr/bin/clang", - "all:CXX=/usr/bin/clang++", - "all:AR=/usr/bin/ar", - "all:RANLIB=/usr/bin/ranlib", - "all:STRIP=/usr/bin/strip", - "all:NM=/usr/bin/nm", - "all:OTOOL=/usr/bin/otool", - "all:INSTALL_NAME_TOOL=/usr/bin/install_name_tool", + "*:HOST=aarch64-apple-darwin", + "*:TARGET=aarch64-apple-darwin", + "*:OSX_MIN_VERSION=13", + "*:CC=/usr/bin/clang", + "*:CXX=/usr/bin/clang++", + "*:AR=/usr/bin/ar", + "*:RANLIB=/usr/bin/ranlib", + "*:STRIP=/usr/bin/strip", + "*:NM=/usr/bin/nm", + "*:OTOOL=/usr/bin/otool", + "*:INSTALL_NAME_TOOL=/usr/bin/install_name_tool", }, } diff --git a/builder/builder_linux_amd64.go b/builder/builder_linux_amd64.go index 0898bfa..69bb570 100644 --- a/builder/builder_linux_amd64.go +++ b/builder/builder_linux_amd64.go @@ -2,16 +2,16 @@ package builder var HostBuilder = Builder{ GlobalEnv: []string{ - "all:HOST=x86_64-linux-gnu", - "all:TARGET=x86_64-linux-gnu", - "all:CC=clang", - "all:CXX=clang++", - "all:AR=ar", - "all:RANLIB=ranlib", - "all:STRIP=strip", - "all:NM=nm", - "all:OTOOL=otool", - "all:AUTOMAKE=automake", - "all:INSTALL_NAME_TOOL=install_name_tool", + "*:HOST=x86_64-linux-gnu", + "*:TARGET=x86_64-linux-gnu", + "*:CC=clang", + "*:CXX=clang++", + "*:AR=ar", + "*:RANLIB=ranlib", + "*:STRIP=strip", + "*:NM=nm", + "*:OTOOL=otool", + "*:AUTOMAKE=automake", + "*:INSTALL_NAME_TOOL=install_name_tool", }, } diff --git a/builder/builder_linux_arm64.go b/builder/builder_linux_arm64.go index 8816f60..28e73c5 100644 --- a/builder/builder_linux_arm64.go +++ b/builder/builder_linux_arm64.go @@ -2,16 +2,16 @@ package builder var HostBuilder = Builder{ GlobalEnv: []string{ - "all:HOST=aarch64-linux-gnu", - "all:TARGET=aarch64-linux-gnu", - "all:CC=clang", - "all:CXX=clang++", - "all:AR=ar", - "all:RANLIB=ranlib", - "all:STRIP=strip", - "all:NM=nm", - "all:OTOOL=otool", - "all:AUTOMAKE=automake", - "all:INSTALL_NAME_TOOL=install_name_tool", + "*:HOST=aarch64-linux-gnu", + "*:TARGET=aarch64-linux-gnu", + "*:CC=clang", + "*:CXX=clang++", + "*:AR=ar", + "*:RANLIB=ranlib", + "*:STRIP=strip", + "*:NM=nm", + "*:OTOOL=otool", + "*:AUTOMAKE=automake", + "*:INSTALL_NAME_TOOL=install_name_tool", }, } diff --git a/cmd/lint/lint.go b/cmd/lint/lint.go index a6164e5..5812cbb 100644 --- a/cmd/lint/lint.go +++ b/cmd/lint/lint.go @@ -9,10 +9,10 @@ import ( "sort" "strings" + "github.com/gobwas/glob" "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/pack" - "github.com/ryanuber/go-glob" ) type OrderedPackage struct { @@ -151,11 +151,12 @@ func ensureValidDependencies(pkg *pack.Package) { usedIn := 0 for _, host := range host.SupportedHosts { - if glob.Glob(prefix, host.Triplet) { + g := glob.MustCompile(prefix) + if g.Match(host.Triplet) { usedIn++ } } - if usedIn == 0 && prefix != "all" && prefix != "none" { + if usedIn == 0 && prefix != "none" { log.Printf("Package %s is not used in any of host.SupportedHosts %s", pkg.Package, prefix) } @@ -185,7 +186,8 @@ func checkCyclesForHost(pkgs []*pack.Package, hostTriplet string) { var actualDep string if strings.Contains(dep, ":") { prefix := strings.Split(dep, ":")[0] - if !glob.Glob(prefix, hostTriplet) && prefix != "all" { + g := glob.MustCompile(prefix) + if !g.Match(hostTriplet) { continue } actualDep = dep[strings.Index(dep, ":")+1:] diff --git a/go.mod b/go.mod index 16127b3..00fa836 100644 --- a/go.mod +++ b/go.mod @@ -3,6 +3,7 @@ module github.com/mrcyjanek/simplybs go 1.24.5 require ( + github.com/gobwas/glob v0.2.3 github.com/ryanuber/go-glob v1.0.0 github.com/ulikunitz/xz v0.5.15 ) diff --git a/go.sum b/go.sum index 94b473a..909ff52 100644 --- a/go.sum +++ b/go.sum @@ -1,3 +1,5 @@ +github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y= +github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= github.com/ryanuber/go-glob v1.0.0 h1:iQh3xXAumdQ+4Ufa5b25cRpC5TYKlno6hsv6Cb3pkBk= github.com/ryanuber/go-glob v1.0.0/go.mod h1:807d1WSdnB0XRJzKNil9Om6lcp/3a0v4qIHxIXzX/Yc= github.com/ulikunitz/xz v0.5.15 h1:9DNdB5s+SgV3bQ2ApL10xRc35ck0DuIX/isZvIk+ubY= diff --git a/host/main.go b/host/main.go index 47c6efc..c483f62 100644 --- a/host/main.go +++ b/host/main.go @@ -51,207 +51,207 @@ var SupportedHosts = map[string]*Host{ "aarch64-apple-darwin": { Triplet: "aarch64-apple-darwin", Env: []string{ - "all:HOST=aarch64-apple-darwin", - "all:TARGET=aarch64-apple-darwin", - "all:OSX_MIN_VERSION=10.15", - "all:LD64_VERSION=609", - "all:CC_target=arm64-apple-darwin", - "all:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mmacosx-version-min=$OSX_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk macosx --show-sdk-path") + " -I" + shellOutput("xcrun --sdk macosx --show-sdk-path") + "/usr/include -I$PREFIX/include", - "all:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mmacosx-version-min=$OSX_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk macosx --show-sdk-path") + " -I" + shellOutput("xcrun --sdk macosx --show-sdk-path") + "/usr/include -I$PREFIX/include", - "all:CFLAGS=", - "all:CXXFLAGS=$CFLAGS -stdlib=libc++", - "all:RANLIB=" + shellOutput("xcrun -f ranlib"), - "all:AR=" + shellOutput("xcrun -f ar"), - "all:LIBTOOL=" + shellOutput("xcrun -f libtool"), - "all:SDK_PATH=" + shellOutput("xcrun --sdk macosx --show-sdk-path"), + "*:HOST=aarch64-apple-darwin", + "*:TARGET=aarch64-apple-darwin", + "*:OSX_MIN_VERSION=10.15", + "*:LD64_VERSION=609", + "*:CC_target=arm64-apple-darwin", + "*:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mmacosx-version-min=$OSX_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk macosx --show-sdk-path") + " -I" + shellOutput("xcrun --sdk macosx --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mmacosx-version-min=$OSX_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk macosx --show-sdk-path") + " -I" + shellOutput("xcrun --sdk macosx --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:CFLAGS=", + "*:CXXFLAGS=$CFLAGS -stdlib=libc++", + "*:RANLIB=" + shellOutput("xcrun -f ranlib"), + "*:AR=" + shellOutput("xcrun -f ar"), + "*:LIBTOOL=" + shellOutput("xcrun -f libtool"), + "*:SDK_PATH=" + shellOutput("xcrun --sdk macosx --show-sdk-path"), }, }, "x86_64-apple-darwin": { Triplet: "x86_64-apple-darwin", Env: []string{ - "all:HOST=x86_64-apple-darwin", - "all:TARGET=x86_64-apple-darwin", - "all:OSX_MIN_VERSION=10.15", - "all:LD64_VERSION=609", - "all:CC_target=x86_64-apple-darwin", - "all:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mmacosx-version-min=$OSX_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk macosx --show-sdk-path") + " -I" + shellOutput("xcrun --sdk macosx --show-sdk-path") + "/usr/include -I$PREFIX/include", - "all:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mmacosx-version-min=$OSX_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk macosx --show-sdk-path") + " -I" + shellOutput("xcrun --sdk macosx --show-sdk-path") + "/usr/include -I$PREFIX/include", - "all:CFLAGS=", - "all:CXXFLAGS=$CFLAGS -stdlib=libc++", - "all:RANLIB=" + shellOutput("xcrun -f ranlib"), - "all:AR=" + shellOutput("xcrun -f ar"), - "all:LIBTOOL=" + shellOutput("xcrun -f libtool"), - "all:SDK_PATH=" + shellOutput("xcrun --sdk macosx --show-sdk-path"), + "*:HOST=x86_64-apple-darwin", + "*:TARGET=x86_64-apple-darwin", + "*:OSX_MIN_VERSION=10.15", + "*:LD64_VERSION=609", + "*:CC_target=x86_64-apple-darwin", + "*:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mmacosx-version-min=$OSX_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk macosx --show-sdk-path") + " -I" + shellOutput("xcrun --sdk macosx --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mmacosx-version-min=$OSX_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk macosx --show-sdk-path") + " -I" + shellOutput("xcrun --sdk macosx --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:CFLAGS=", + "*:CXXFLAGS=$CFLAGS -stdlib=libc++", + "*:RANLIB=" + shellOutput("xcrun -f ranlib"), + "*:AR=" + shellOutput("xcrun -f ar"), + "*:LIBTOOL=" + shellOutput("xcrun -f libtool"), + "*:SDK_PATH=" + shellOutput("xcrun --sdk macosx --show-sdk-path"), }, }, "aarch64-apple-ios": { Triplet: "aarch64-apple-ios", Env: []string{ - "all:HOST=aarch64-apple-ios", - "all:TARGET=aarch64-apple-ios", - "all:IOS_MIN_VERSION=12", - "all:LD64_VERSION=609", - "all:CC_target=aarch64-apple-ios", - "all:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + "/usr/include -I$PREFIX/include", - "all:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + "/usr/include -I$PREFIX/include", - "all:CFLAGS=", - "all:CXXFLAGS=$CFLAGS -stdlib=libc++", - "all:RANLIB=" + shellOutput("xcrun -f ranlib"), - "all:AR=" + shellOutput("xcrun -f ar"), - "all:LIBTOOL=" + shellOutput("xcrun -f libtool"), - "all:SDK_PATH=" + shellOutput("xcrun --sdk iphoneos --show-sdk-path"), + "*:HOST=aarch64-apple-ios", + "*:TARGET=aarch64-apple-ios", + "*:IOS_MIN_VERSION=12", + "*:LD64_VERSION=609", + "*:CC_target=aarch64-apple-ios", + "*:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:CFLAGS=", + "*:CXXFLAGS=$CFLAGS -stdlib=libc++", + "*:RANLIB=" + shellOutput("xcrun -f ranlib"), + "*:AR=" + shellOutput("xcrun -f ar"), + "*:LIBTOOL=" + shellOutput("xcrun -f libtool"), + "*:SDK_PATH=" + shellOutput("xcrun --sdk iphoneos --show-sdk-path"), }, }, "aarch64-apple-ios-simulator": { Triplet: "aarch64-apple-ios-simulator", Env: []string{ - "all:HOST=aarch64-apple-ios-simulator", - "all:TARGET=aarch64-apple-ios-simulator", - "all:IOS_MIN_VERSION=12", - "all:LD64_VERSION=609", - "all:CC_target=aarch64-apple-ios-simulator", - "all:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + "/usr/include -I$PREFIX/include", - "all:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + "/usr/include -I$PREFIX/include", - "all:CFLAGS=", - "all:CXXFLAGS=$CFLAGS -stdlib=libc++", - "all:RANLIB=" + shellOutput("xcrun -f ranlib"), - "all:AR=" + shellOutput("xcrun -f ar"), - "all:LIBTOOL=" + shellOutput("xcrun -f libtool"), - "all:SDK_PATH=" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path"), + "*:HOST=aarch64-apple-ios-simulator", + "*:TARGET=aarch64-apple-ios-simulator", + "*:IOS_MIN_VERSION=12", + "*:LD64_VERSION=609", + "*:CC_target=aarch64-apple-ios-simulator", + "*:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:CFLAGS=", + "*:CXXFLAGS=$CFLAGS -stdlib=libc++", + "*:RANLIB=" + shellOutput("xcrun -f ranlib"), + "*:AR=" + shellOutput("xcrun -f ar"), + "*:LIBTOOL=" + shellOutput("xcrun -f libtool"), + "*:SDK_PATH=" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path"), }, }, // "x86_64-linux-musl": { // Triplet: "x86_64-linux-musl", // Env: []string{ - // "all:HOST=x86_64-linux-musl", - // "all:TARGET=x86_64-linux-musl", - // "all:CC_target=x86_64-linux-musl", - // "all:CC=x86_64-linux-musl-gcc", - // "all:CXX=x86_64-linux-musl-g++", - // "all:CXXFLAGS=$CFLAGS", - // "all:RANLIB=x86_64-linux-musl-ranlib", - // "all:AR=x86_64-linux-musl-ar", - // "all:AS=x86_64-linux-musl-as", - // "all:LIBTOOL=x86_64-linux-musl-libtool", - // "all:OBJCOPY=x86_64-linux-musl-objcopy", - // "all:OBJDUMP=x86_64-linux-musl-objdump", - // "all:STRIP=x86_64-linux-musl-strip", - // "all:READELF=x86_64-linux-musl-readelf", - // "all:LD=x86_64-linux-musl-ld", - // "all:NM=x86_64-linux-musl-nm", + // "*:HOST=x86_64-linux-musl", + // "*:TARGET=x86_64-linux-musl", + // "*:CC_target=x86_64-linux-musl", + // "*:CC=x86_64-linux-musl-gcc", + // "*:CXX=x86_64-linux-musl-g++", + // "*:CXXFLAGS=$CFLAGS", + // "*:RANLIB=x86_64-linux-musl-ranlib", + // "*:AR=x86_64-linux-musl-ar", + // "*:AS=x86_64-linux-musl-as", + // "*:LIBTOOL=x86_64-linux-musl-libtool", + // "*:OBJCOPY=x86_64-linux-musl-objcopy", + // "*:OBJDUMP=x86_64-linux-musl-objdump", + // "*:STRIP=x86_64-linux-musl-strip", + // "*:READELF=x86_64-linux-musl-readelf", + // "*:LD=x86_64-linux-musl-ld", + // "*:NM=x86_64-linux-musl-nm", // }, // }, // "x86_64-w64-mingw32": { // Triplet: "x86_64-w64-mingw32", // Env: []string{ - // "all:HOST=x86_64-w64-mingw32", - // "all:TARGET=x86_64-w64-mingw32", - // "all:CC_target=x86_64-w64-mingw32", - // "all:CC=x86_64-w64-mingw32-gcc", - // "all:CXX=x86_64-w64-mingw32-g++", - // "all:CXXFLAGS=$CFLAGS", - // "all:RANLIB=x86_64-w64-mingw32-ranlib", - // "all:AR=x86_64-w64-mingw32-ar", - // "all:AS=x86_64-w64-mingw32-as", - // "all:LIBTOOL=x86_64-w64-mingw32-libtool", - // "all:OBJCOPY=x86_64-w64-mingw32-objcopy", - // "all:OBJDUMP=x86_64-w64-mingw32-objdump", - // "all:STRIP=x86_64-w64-mingw32-strip", - // "all:READELF=x86_64-w64-mingw32-readelf", - // "all:LD=x86_64-w64-mingw32-ld", - // "all:NM=x86_64-w64-mingw32-nm", + // "*:HOST=x86_64-w64-mingw32", + // "*:TARGET=x86_64-w64-mingw32", + // "*:CC_target=x86_64-w64-mingw32", + // "*:CC=x86_64-w64-mingw32-gcc", + // "*:CXX=x86_64-w64-mingw32-g++", + // "*:CXXFLAGS=$CFLAGS", + // "*:RANLIB=x86_64-w64-mingw32-ranlib", + // "*:AR=x86_64-w64-mingw32-ar", + // "*:AS=x86_64-w64-mingw32-as", + // "*:LIBTOOL=x86_64-w64-mingw32-libtool", + // "*:OBJCOPY=x86_64-w64-mingw32-objcopy", + // "*:OBJDUMP=x86_64-w64-mingw32-objdump", + // "*:STRIP=x86_64-w64-mingw32-strip", + // "*:READELF=x86_64-w64-mingw32-readelf", + // "*:LD=x86_64-w64-mingw32-ld", + // "*:NM=x86_64-w64-mingw32-nm", // }, // }, "x86_64-linux-gnu": { Triplet: "x86_64-linux-gnu", Env: []string{ - "all:HOST=x86_64-linux-gnu", - "all:TARGET=x86_64-linux-gnu", - "all:CC_target=x86_64-linux-gnu", - "all:CC=x86_64-unknown-linux-gnu-gcc", - "all:CXX=x86_64-unknown-linux-gnu-g++", - "all:CXXFLAGS=$CFLAGS", - "all:RANLIB=x86_64-unknown-linux-gnu-ranlib", - "all:AR=x86_64-unknown-linux-gnu-ar", - "all:AS=x86_64-unknown-linux-gnu-as", - "all:LIBTOOL=x86_64-unknown-linux-gnu-libtool", - "all:OBJCOPY=x86_64-unknown-linux-gnu-objcopy", - "all:OBJDUMP=x86_64-unknown-linux-gnu-objdump", - "all:STRIP=x86_64-unknown-linux-gnu-strip", - "all:READELF=x86_64-unknown-linux-gnu-readelf", - "all:LD=x86_64-unknown-linux-gnu-ld", - "all:NM=x86_64-unknown-linux-gnu-nm", + "*:HOST=x86_64-linux-gnu", + "*:TARGET=x86_64-linux-gnu", + "*:CC_target=x86_64-linux-gnu", + "*:CC=x86_64-unknown-linux-gnu-gcc", + "*:CXX=x86_64-unknown-linux-gnu-g++", + "*:CXXFLAGS=$CFLAGS", + "*:RANLIB=x86_64-unknown-linux-gnu-ranlib", + "*:AR=x86_64-unknown-linux-gnu-ar", + "*:AS=x86_64-unknown-linux-gnu-as", + "*:LIBTOOL=x86_64-unknown-linux-gnu-libtool", + "*:OBJCOPY=x86_64-unknown-linux-gnu-objcopy", + "*:OBJDUMP=x86_64-unknown-linux-gnu-objdump", + "*:STRIP=x86_64-unknown-linux-gnu-strip", + "*:READELF=x86_64-unknown-linux-gnu-readelf", + "*:LD=x86_64-unknown-linux-gnu-ld", + "*:NM=x86_64-unknown-linux-gnu-nm", }, }, "aarch64-linux-gnu": { Triplet: "aarch64-linux-gnu", Env: []string{ - "all:HOST=aarch64-linux-gnu", - "all:TARGET=aarch64-linux-gnu", - "all:CC_target=aarch64-linux-gnu", - "all:CC=aarch64-unknown-linux-gnu-gcc", - "all:CXX=aarch64-unknown-linux-gnu-g++", - "all:CXXFLAGS=$CFLAGS", - "all:RANLIB=aarch64-unknown-linux-gnu-ranlib", - "all:AR=aarch64-unknown-linux-gnu-ar", - "all:AS=aarch64-unknown-linux-gnu-as", - "all:LIBTOOL=aarch64-unknown-linux-gnu-libtool", - "all:OBJCOPY=aarch64-unknown-linux-gnu-objcopy", - "all:OBJDUMP=aarch64-unknown-linux-gnu-objdump", - "all:STRIP=aarch64-unknown-linux-gnu-strip", - "all:READELF=aarch64-unknown-linux-gnu-readelf", - "all:LD=aarch64-unknown-linux-gnu-ld", - "all:NM=aarch64-unknown-linux-gnu-nm", + "*:HOST=aarch64-linux-gnu", + "*:TARGET=aarch64-linux-gnu", + "*:CC_target=aarch64-linux-gnu", + "*:CC=aarch64-unknown-linux-gnu-gcc", + "*:CXX=aarch64-unknown-linux-gnu-g++", + "*:CXXFLAGS=$CFLAGS", + "*:RANLIB=aarch64-unknown-linux-gnu-ranlib", + "*:AR=aarch64-unknown-linux-gnu-ar", + "*:AS=aarch64-unknown-linux-gnu-as", + "*:LIBTOOL=aarch64-unknown-linux-gnu-libtool", + "*:OBJCOPY=aarch64-unknown-linux-gnu-objcopy", + "*:OBJDUMP=aarch64-unknown-linux-gnu-objdump", + "*:STRIP=aarch64-unknown-linux-gnu-strip", + "*:READELF=aarch64-unknown-linux-gnu-readelf", + "*:LD=aarch64-unknown-linux-gnu-ld", + "*:NM=aarch64-unknown-linux-gnu-nm", }, }, "aarch64-linux-android": { Triplet: "aarch64-linux-android", Env: []string{ - "all:HOST=aarch64-linux-android", - "all:TARGET=aarch64-linux-android", - "all:CC_target=aarch64-linux-android", - "all:CC=aarch64-linux-android21-clang", - "all:CXX=aarch64-linux-android21-clang++", - "all:CFLAGS=", - "all:CXXFLAGS=$CFLAGS -stdlib=libc++", - "all:RANLIB=llvm-ranlib", - "all:AR=llvm-ar", - "all:AS=llvm-as", - "all:LIBTOOL=libtool", - "all:ANDROID_NDK_HOME=$PREFIX/native/", - "all:LDFLAGS=$PREFIX/usr/lib/libc++_static.a $PREFIX/usr/lib/libc++abi.a -lm -lc -llog", + "*:HOST=aarch64-linux-android", + "*:TARGET=aarch64-linux-android", + "*:CC_target=aarch64-linux-android", + "*:CC=aarch64-linux-android21-clang", + "*:CXX=aarch64-linux-android21-clang++", + "*:CFLAGS=", + "*:CXXFLAGS=$CFLAGS -stdlib=libc++", + "*:RANLIB=llvm-ranlib", + "*:AR=llvm-ar", + "*:AS=llvm-as", + "*:LIBTOOL=libtool", + "*:ANDROID_NDK_HOME=$PREFIX/native/", + "*:LDFLAGS=$PREFIX/usr/lib/libc++_static.a $PREFIX/usr/lib/libc++abi.a -lm -lc -llog", }, }, "x86_64-linux-android": { Triplet: "x86_64-linux-android", Env: []string{ - "all:HOST=x86_64-linux-android", - "all:TARGET=x86_64-linux-android", - "all:CC_target=x86_64-linux-android", - "all:CC=x86_64-linux-android21-clang", - "all:CXX=x86_64-linux-android21-clang++", - "all:CFLAGS=", - "all:CXXFLAGS=$CFLAGS", - "all:RANLIB=llvm-ranlib", - "all:AR=llvm-ar", - "all:LIBTOOL=llvm-libtool", - "all:ANDROID_NDK_HOME=$PREFIX/native/", + "*:HOST=x86_64-linux-android", + "*:TARGET=x86_64-linux-android", + "*:CC_target=x86_64-linux-android", + "*:CC=x86_64-linux-android21-clang", + "*:CXX=x86_64-linux-android21-clang++", + "*:CFLAGS=", + "*:CXXFLAGS=$CFLAGS", + "*:RANLIB=llvm-ranlib", + "*:AR=llvm-ar", + "*:LIBTOOL=llvm-libtool", + "*:ANDROID_NDK_HOME=$PREFIX/native/", }, }, "armv7a-linux-androideabi": { Triplet: "armv7a-linux-androideabi", Env: []string{ - "all:HOST=armv7a-linux-androideabi", - "all:TARGET=armv7a-linux-androideabi", - "all:CC_target=armv7a-linux-androideabi", - "all:CC=armv7a-linux-androideabi21-clang", - "all:CXX=armv7a-linux-androideabi21-clang++", - "all:CFLAGS=", - "all:CXXFLAGS=$CFLAGS", - "all:RANLIB=llvm-ranlib", - "all:AR=llvm-ar", - "all:LIBTOOL=llvm-libtool", - "all:ANDROID_NDK_HOME=$PREFIX/native/", + "*:HOST=armv7a-linux-androideabi", + "*:TARGET=armv7a-linux-androideabi", + "*:CC_target=armv7a-linux-androideabi", + "*:CC=armv7a-linux-androideabi21-clang", + "*:CXX=armv7a-linux-androideabi21-clang++", + "*:CFLAGS=", + "*:CXXFLAGS=$CFLAGS", + "*:RANLIB=llvm-ranlib", + "*:AR=llvm-ar", + "*:LIBTOOL=llvm-libtool", + "*:ANDROID_NDK_HOME=$PREFIX/native/", }, }, } diff --git a/pack/build.go b/pack/build.go index 6cec0da..97bdd8b 100644 --- a/pack/build.go +++ b/pack/build.go @@ -8,9 +8,9 @@ import ( "path/filepath" "strings" + "github.com/gobwas/glob" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/utils" - "github.com/ryanuber/go-glob" ) func (p *Package) EnsureBuilt(h *host.Host, buildDependencies bool) { @@ -101,7 +101,8 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { for _, dep := range p.Dependencies { if strings.Contains(dep, ":") { prefix := strings.Split(dep, ":")[0] - if !glob.Glob(prefix, h.Triplet) && prefix != "all" { + g := glob.MustCompile(prefix) + if !g.Match(h.Triplet) { continue } dep = dep[strings.Index(dep, ":")+1:] @@ -143,7 +144,8 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { for _, step := range p.Build.Steps { if strings.Contains(step, ":") { prefix := strings.Split(step, ":")[0] - if !glob.Glob(prefix, h.Triplet) && prefix != "all" { + g := glob.MustCompile(prefix) + if !g.Match(h.Triplet) { continue } step = step[strings.Index(step, ":")+1:] @@ -202,7 +204,8 @@ func (p *Package) StartShell(h *host.Host) { for _, depName := range p.Dependencies { if strings.Contains(depName, ":") { prefix := strings.Split(depName, ":")[0] - if !glob.Glob(prefix, h.Triplet) && prefix != "all" { + g := glob.MustCompile(prefix) + if !g.Match(h.Triplet) { continue } depName = depName[strings.Index(depName, ":")+1:] @@ -228,7 +231,8 @@ func (p *Package) StartShell(h *host.Host) { for _, step := range p.Build.Steps { if strings.Contains(step, ":") { prefix := strings.Split(step, ":")[0] - if !glob.Glob(prefix, h.Triplet) && prefix != "all" { + g := glob.MustCompile(prefix) + if !g.Match(h.Triplet) { continue } step = step[strings.Index(step, ":")+1:] @@ -240,7 +244,8 @@ func (p *Package) StartShell(h *host.Host) { for _, step := range p.Build.Steps { if strings.Contains(step, ":") { prefix := strings.Split(step, ":")[0] - if !glob.Glob(prefix, h.Triplet) && prefix != "all" { + g := glob.MustCompile(prefix) + if !g.Match(h.Triplet) { log.Printf("[no match] %s", utils.ExpandEnvFromMap(step, env)) continue } diff --git a/pack/info.go b/pack/info.go index 26c5536..774f454 100644 --- a/pack/info.go +++ b/pack/info.go @@ -11,11 +11,11 @@ import ( "strconv" "strings" + "github.com/gobwas/glob" "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/utils" - "github.com/ryanuber/go-glob" ) func (p *Package) FilterForHost(h *host.Host) *Package { @@ -32,7 +32,8 @@ func (p *Package) FilterForHost(h *host.Host) *Package { for _, dep := range p.Dependencies { if strings.Contains(dep, ":") { prefix := strings.Split(dep, ":")[0] - if !glob.Glob(prefix, h.Triplet) && prefix != "all" { + g := glob.MustCompile(prefix) + if !g.Match(h.Triplet) { continue } } @@ -42,7 +43,8 @@ func (p *Package) FilterForHost(h *host.Host) *Package { for _, env := range p.Build.Env { if strings.Contains(env, ":") { prefix := strings.Split(env, ":")[0] - if !glob.Glob(prefix, h.Triplet) && prefix != "all" { + g := glob.MustCompile(prefix) + if !g.Match(h.Triplet) { continue } } @@ -52,7 +54,8 @@ func (p *Package) FilterForHost(h *host.Host) *Package { for _, step := range p.Build.Steps { if strings.Contains(step, ":") { prefix := strings.Split(step, ":")[0] - if !glob.Glob(prefix, h.Triplet) && prefix != "all" { + g := glob.MustCompile(prefix) + if !g.Match(h.Triplet) { continue } } @@ -137,19 +140,25 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { env = utils.AppendEnv(env, builder.HostBuilder.GlobalEnv, h) if p.Type == "native" { env = utils.AppendEnv(env, []string{ - "all:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/native/include", - "all:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/native/lib", - "all:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:" + h.GetEnvPath() + "/native/lib", - "all:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/native/lib/pkgconfig", - "all:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/native/lib", + "*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/native/include", + "*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/native/usr/include", + "*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/native/lib", + "*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/native/usr/lib", + "*:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:" + h.GetEnvPath() + "/native/lib", + "*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/native/lib/pkgconfig", + "*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/native/lib", }, h) } else { env = utils.AppendEnv(env, []string{ - "all:CFLAGS=-I" + h.GetEnvPath() + "/include", - "all:LDFLAGS=-L" + h.GetEnvPath() + "/lib", - "all:LD_LIBRARY_PATH=" + h.GetEnvPath() + "/lib", - "all:PKG_CONFIG_PATH=" + h.GetEnvPath() + "/lib/pkgconfig", - "all:LIBRARY_PATH=" + h.GetEnvPath() + "/lib", + "*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/include", + "*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/usr/include", + "*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/lib", + "*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/usr/lib", + "*:LD_LIBRARY_PATH=" + h.GetEnvPath() + "/native/lib", + "*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/lib/pkgconfig", + "*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/usr/lib/pkgconfig", + "*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/lib", + "*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/usr/lib", }, h) } if p.Type != "native" { diff --git a/pack/main.go b/pack/main.go index e06fa55..a10f3af 100644 --- a/pack/main.go +++ b/pack/main.go @@ -8,10 +8,10 @@ import ( "runtime" "strings" + "github.com/gobwas/glob" "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" - "github.com/ryanuber/go-glob" ) type Download struct { @@ -69,9 +69,9 @@ func FindPackage(name string) (*Package, error) { if !strings.Contains(pkg.Package, "/bootstrap/") { for _, pkgName := range bootstrapPackages { - pkg.Dependencies = append(pkg.Dependencies, "all:"+pkgName) + pkg.Dependencies = append(pkg.Dependencies, "*:"+pkgName) } - pkg.Build.Steps = append(pkg.Build.Steps, "all:$PREFIX/native/bootstrap/bin/strip-nondeterminism-recursive --directory $STAGING_DIR") + pkg.Build.Steps = append(pkg.Build.Steps, "*:$PREFIX/native/bootstrap/bin/strip-nondeterminism-recursive --directory $STAGING_DIR") } return &pkg, nil } @@ -278,7 +278,8 @@ func collectDependenciesByLevel(pkgName string, host string) [][]string { var actualDep string if strings.Contains(dep, ":") { prefix := strings.Split(dep, ":")[0] - if !glob.Glob(prefix, host) && prefix != "all" { + g := glob.MustCompile(prefix) + if !g.Match(host) { continue } actualDep = dep[strings.Index(dep, ":")+1:] diff --git a/packages/boost.json b/packages/boost.json index ce79a13..3e2e0ba 100644 --- a/packages/boost.json +++ b/packages/boost.json @@ -10,23 +10,23 @@ } ], "dependencies": [ - "all:native/_", - "all:native/boost-b2", - "all:native/python@3.11.13", - "all:libiconv" + "*:native/_", + "*:native/boost-b2", + "*:native/python@3.11.13", + "*:libiconv" ], "patches": [ "fix_io_control_hpp.patch" ], "build": { "env": [ - "all:config_opts=variant=release", + "*:config_opts=variant=release", "*-apple-ios*:target_os=iphone", "*-linux-android*:target_os=android", "*-mingw32*:target_os=windows", "*-linux-gnu*:target_os=linux", - "all:config_opts=$config_opts --layout=system --user-config=user-config.jam", - "all:config_opts=$config_opts threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1", + "*:config_opts=$config_opts --layout=system --user-config=user-config.jam", + "*:config_opts=$config_opts threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1", "*-linux-gnu*:config_opts=$config_opts threadapi=pthread runtime-link=static", "*-android*:config_opts=$config_opts threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*64-linux-android*:config_opts=$config_opts address-model=64", @@ -38,15 +38,15 @@ "*x86_64-*-mingw32*:config_opts=$config_opts address-model=64", "*i686-*-mingw32*:config_opts=$config_opts address-model=32", "*i686-linux-gnu*:config_opts=$config_opts address-model=32 architecture=x86", - "all:toolset=gcc", + "*:toolset=gcc", "*-apple-*:archiver=$LIBTOOL", "*-apple-*:toolset=darwin", "*-android*:toolset=gcc", "*mingw32*:toolset=gcc", "*-ios*:toolset2=iphone", "*-ios-simulator*:toolset2=~iphone", - "all:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log", - "all:CXXFLAGS=-fPIC -std=c++17", + "*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log", + "*:CXXFLAGS=-fPIC -std=c++17", "*-darwin*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", "*-ios*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", "*-ios-simulator*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", @@ -54,9 +54,9 @@ "*-linux-*:ARFLAGS=rcs" ], "steps": [ - "all:echo \"using $toolset : $toolset2 : $CXX $CXXFLAGS : \"$CXXFLAGS\" \"$LDFLAGS\" \"$AR\" \"$ARFLAGS\" \"$STRIP\" \"$RANLIB\" \"$WINDRES\" \"$target_os\" : ;\" > user-config.jam", - "all:b2 -d2 -j$NUM_CORES --prefix=$STAGING_DIR$PREFIX $config_opts stage", - "all:b2 -d0 -j1 --prefix=$STAGING_DIR$PREFIX $config_opts install" + "*:echo \"using $toolset : $toolset2 : $CXX $CXXFLAGS : \"$CXXFLAGS\" \"$LDFLAGS\" \"$AR\" \"$ARFLAGS\" \"$STRIP\" \"$RANLIB\" \"$WINDRES\" \"$target_os\" : ;\" > user-config.jam", + "*:b2 -d2 -j$NUM_CORES --prefix=$STAGING_DIR$PREFIX $config_opts stage", + "*:b2 -d0 -j1 --prefix=$STAGING_DIR$PREFIX $config_opts install" ] } } \ No newline at end of file diff --git a/packages/bzip2.json b/packages/bzip2.json index df8af1e..f708105 100644 --- a/packages/bzip2.json +++ b/packages/bzip2.json @@ -10,14 +10,14 @@ } ], "dependencies": [ - "all:native/_", - "all:openssl" + "*:native/_", + "*:openssl" ], "build": { "steps": [ - "all:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", - "all:make -j$NUM_CORES", - "all:make install PREFIX=$STAGING_DIR$PREFIX" + "*:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", + "*:make -j$NUM_CORES", + "*:make install PREFIX=$STAGING_DIR$PREFIX" ] } } \ No newline at end of file diff --git a/packages/eudev.json b/packages/eudev.json index e0468b1..623c2f5 100644 --- a/packages/eudev.json +++ b/packages/eudev.json @@ -15,17 +15,17 @@ ], "build": { "env": [ - "all:config_opts=--host=$HOST --prefix=$PREFIX", - "all:config_opts=$config_opts --disable-gudev --disable-introspection --disable-hwdb --disable-manpages --disable-shared", + "*:config_opts=--host=$HOST --prefix=$PREFIX", + "*:config_opts=$config_opts --disable-gudev --disable-introspection --disable-hwdb --disable-manpages --disable-shared", "*-linux-gnu:ARFLAGS=rcs", - "all:config_opts=$config_opts AR_FLAGS=$ARFLAGS", - "all:SHOULD_BUILD=echo", + "*:config_opts=$config_opts AR_FLAGS=$ARFLAGS", + "*:SHOULD_BUILD=echo", "*-linux-gnu:SHOULD_BUILD=" ], "steps": [ - "all:$SHOULD_BUILD ./configure $config_opts", - "all:$SHOULD_BUILD make -j$NUM_CORES", - "all:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install" + "*:$SHOULD_BUILD ./configure $config_opts", + "*:$SHOULD_BUILD make -j$NUM_CORES", + "*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/expat.json b/packages/expat.json index a973ffa..c8ce009 100644 --- a/packages/expat.json +++ b/packages/expat.json @@ -10,20 +10,20 @@ } ], "dependencies": [ - "all:native/_", - "all:libiconv" + "*:native/_", + "*:libiconv" ], "build": { "env": [ - "all:CFLAGS=$CFLAGS -fPIC", - "all:LDFLAGS=$LDFLAGS -fPIC", - "all:BUILD_HOST=$HOST", + "*:CFLAGS=$CFLAGS -fPIC", + "*:LDFLAGS=$LDFLAGS -fPIC", + "*:BUILD_HOST=$HOST", "aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios" ], "steps": [ - "all:./configure --host=$BUILD_HOST --prefix=$PREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --host=$BUILD_HOST --prefix=$PREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/glib.json b/packages/glib.json index 0eb3fb7..957fa7e 100644 --- a/packages/glib.json +++ b/packages/glib.json @@ -22,21 +22,21 @@ } ], "dependencies": [ - "all:native/_", - "all:native/meson", - "all:native/ninja", - "all:native/python@3.11.13", - "all:libffi", - "all:libiconv", - "all:pcre2", - "all:unwind", - "all:zlib" + "*:native/_", + "*:native/meson", + "*:native/ninja", + "*:native/python@3.11.13", + "*:libffi", + "*:libiconv", + "*:pcre2", + "*:unwind", + "*:zlib" ], "build": { "steps": [ - "all:meson setup --prefix $PREFIX _build", - "all:meson compile -C _build -j$NUM_CORES", - "all:meson install -C _build DESTDIR=$STAGING_DIR" + "*:meson setup --prefix $PREFIX _build", + "*:meson compile -C _build -j$NUM_CORES", + "*:meson install -C _build DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/gtest.json b/packages/gtest.json index bd34292..12f901d 100644 --- a/packages/gtest.json +++ b/packages/gtest.json @@ -10,25 +10,25 @@ } ], "dependencies": [ - "all:native/_" + "*:native/_" ], "build": { "env": [ - "all:CXXFLAGS=$CXXFLAGS -std=c++11", + "*:CXXFLAGS=$CXXFLAGS -std=c++11", "*-linux-gnu:CXXFLAGS=$CXXFLAGS -fPIC", - "all:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", - "all:config_opts=$config_opts -DGOOGLETEST_VERSION=1.17.0", - "all:config_opts=$config_opts -DCMAKE_POLICY_VERSION_MINIMUM=3.5", - "all:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", - "all:config_opts=$config_opts -DCMAKE_CXX_FLAGS_DEBUG=ON" + "*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", + "*:config_opts=$config_opts -DGOOGLETEST_VERSION=1.17.0", + "*:config_opts=$config_opts -DCMAKE_POLICY_VERSION_MINIMUM=3.5", + "*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:config_opts=$config_opts -DCMAKE_CXX_FLAGS_DEBUG=ON" ], "steps": [ - "all:cd googletest && cmake $config_opts", - "all:cd googletest && make -j$NUM_CORES", - "all:mkdir $STAGING_DIR$PREFIX/lib $STAGING_DIR$PREFIX/include", - "all:cp googletest/lib/libgtest.a $STAGING_DIR$PREFIX/lib", - "all:cp googletest/lib/libgtest_main.a $STAGING_DIR$PREFIX/lib", - "all:cp -a googletest/include/* $STAGING_DIR$PREFIX/include/" + "*:cd googletest && cmake $config_opts", + "*:cd googletest && make -j$NUM_CORES", + "*:mkdir $STAGING_DIR$PREFIX/lib $STAGING_DIR$PREFIX/include", + "*:cp googletest/lib/libgtest.a $STAGING_DIR$PREFIX/lib", + "*:cp googletest/lib/libgtest_main.a $STAGING_DIR$PREFIX/lib", + "*:cp -a googletest/include/* $STAGING_DIR$PREFIX/include/" ] } } \ No newline at end of file diff --git a/packages/hidapi.json b/packages/hidapi.json index b4ed48a..2c00d16 100644 --- a/packages/hidapi.json +++ b/packages/hidapi.json @@ -10,30 +10,30 @@ } ], "dependencies": [ - "all:native/_", - "all:eudev", - "all:libusb" + "*:native/_", + "*:eudev", + "*:libusb" ], "patches": [ "missing_win_include.patch" ], "build": { "env": [ - "all:config_opts=--prefix=$PREFIX --host=$HOST --enable-static --disable-shared", + "*:config_opts=--prefix=$PREFIX --host=$HOST --enable-static --disable-shared", "*-linux-gnu:config_opts=$config_opts libudev_CFLAGS=-I$PREFIX/include", "*-linux-gnu:config_opts=$config_opts libusb_CFLAGS=-I$PREFIX/include/libusb-1.0", "*-linux-gnu:config_opts=$config_opts --with-pic", - "all:SHOULD_BUILD=echo", + "*:SHOULD_BUILD=echo", "*-linux-gnu:SHOULD_BUILD=", "*-w64-mingw32:SHOULD_BUILD=", "*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "all:$SHOULD_BUILD patch -p1 < $PATCH_DIR/hidapi/missing_win_include.patch", - "all:$SHOULD_BUILD ./bootstrap", - "all:$SHOULD_BUILD ./configure $config_opts libudev_LIBS=\"-L$PREFIX/lib -ludev\" libusb_LIBS=\"-L$PREFIX/lib -lusb-1.0\"", - "all:$SHOULD_BUILD make -j$NUM_CORES", - "all:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install" + "*:$SHOULD_BUILD patch -p1 < $PATCH_DIR/hidapi/missing_win_include.patch", + "*:$SHOULD_BUILD ./bootstrap", + "*:$SHOULD_BUILD ./configure $config_opts libudev_LIBS=\"-L$PREFIX/lib -ludev\" libusb_LIBS=\"-L$PREFIX/lib -lusb-1.0\"", + "*:$SHOULD_BUILD make -j$NUM_CORES", + "*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/libcap.json b/packages/libcap.json index 75a9ec9..8b01cc2 100644 --- a/packages/libcap.json +++ b/packages/libcap.json @@ -10,12 +10,12 @@ } ], "dependencies": [ - "all:native/_" + "*:native/_" ], "build": { "steps": [ - "all:make prefix=$PREFIX -j$NUM_CORES", - "all:make prefix=$PREFIX DESTDIR=$STAGING_DIR install", + "*:make prefix=$PREFIX -j$NUM_CORES", + "*:make prefix=$PREFIX DESTDIR=$STAGING_DIR install", "x86_64-linux-gnu:mv $STAGING_DIR$PREFIX/lib64 $STAGING_DIR$PREFIX/lib" ] } diff --git a/packages/libevent.json b/packages/libevent.json index 4825f93..a4bb5cf 100644 --- a/packages/libevent.json +++ b/packages/libevent.json @@ -10,30 +10,30 @@ } ], "dependencies": [ - "all:native/_" + "*:native/_" ], "build": { "env": [ - "all:HOSTOVERRIDE=$HOST", + "*:HOSTOVERRIDE=$HOST", "aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "all:config_opts=--host=$HOSTOVERRIDE --prefix=$PREFIX ", - "all:config_opts=$config_opts --disable-shared", - "all:config_opts=$config_opts --disable-openssl", - "all:config_opts=$config_opts --disable-libevent-regress", - "all:config_opts=$config_opts --disable-doxygen-html", - "all:config_opts=$config_opts --disable-debug-mode", - "all:config_opts=$config_opts --enable-static", - "all:config_opts=$config_opts --enable-gcc-hardening", - "all:config_opts=$config_opts --with-pic", - "all:CFLAGS=$CFLAGS -fPIC", - "all:CXXFLAGS=$CXXFLAGS -fPIC" + "*:config_opts=--host=$HOSTOVERRIDE --prefix=$PREFIX ", + "*:config_opts=$config_opts --disable-shared", + "*:config_opts=$config_opts --disable-openssl", + "*:config_opts=$config_opts --disable-libevent-regress", + "*:config_opts=$config_opts --disable-doxygen-html", + "*:config_opts=$config_opts --disable-debug-mode", + "*:config_opts=$config_opts --enable-static", + "*:config_opts=$config_opts --enable-gcc-hardening", + "*:config_opts=$config_opts --with-pic", + "*:CFLAGS=$CFLAGS -fPIC", + "*:CXXFLAGS=$CXXFLAGS -fPIC" ], "steps": [ - "all:./autogen.sh", - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install", - "all:rm $STAGING_DIR$PREFIX/lib/*.la" + "*:./autogen.sh", + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install", + "*:rm $STAGING_DIR$PREFIX/lib/*.la" ] } } \ No newline at end of file diff --git a/packages/libiconv.json b/packages/libiconv.json index 7244edd..27f8e54 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -10,24 +10,24 @@ } ], "dependencies": [ - "all:native/_", - "all:native/config" + "*:native/_", + "*:native/config" ], "build": { "env": [ - "all:CFLAGS=$CFLAGS -fPIC", - "all:BUILD_HOST=$HOST", + "*:CFLAGS=$CFLAGS -fPIC", + "*:BUILD_HOST=$HOST", "aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios", - "all:config_opts=--host=$BUILD_HOST --prefix=$PREFIX --disable-nls --enable-static --disable-shared", - "all:config_opts=$config_opts", + "*:config_opts=--host=$BUILD_HOST --prefix=$PREFIX --disable-nls --enable-static --disable-shared", + "*:config_opts=$config_opts", "*linux:config_opts=$config_opts --with-pic" ], "steps": [ - "all:cp -f $PREFIX/native/usr/share/config/config.guess build-aux/", - "all:cp -f $PREFIX/native/usr/share/config/config.sub build-aux/", - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:cp -f $PREFIX/native/share/config/config.guess build-aux/", + "*:cp -f $PREFIX/native/share/config/config.sub build-aux/", + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/libtor.json b/packages/libtor.json index 981f077..f7e1bcb 100644 --- a/packages/libtor.json +++ b/packages/libtor.json @@ -10,48 +10,48 @@ } ], "dependencies": [ - "all:native/_", - "all:libevent", - "all:openssl", - "all:xz", - "all:zlib", - "all:zstd" + "*:native/_", + "*:libevent", + "*:openssl", + "*:xz", + "*:zlib", + "*:zstd" ], "build": { "env": [ - "all:HOSTOVERRIDE=$HOST", + "*:HOSTOVERRIDE=$HOST", "aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "all:config_opts=--host=$HOSTOVERRIDE --prefix=$PREFIX", - "all:config_opts=$config_opts --disable-asciidoc", - "all:config_opts=$config_opts --disable-system-torrc", - "all:config_opts=$config_opts --disable-manpage", - "all:config_opts=$config_opts --disable-html-manual", - "all:config_opts=$config_opts --disable-tool-name-check", + "*:config_opts=--host=$HOSTOVERRIDE --prefix=$PREFIX", + "*:config_opts=$config_opts --disable-asciidoc", + "*:config_opts=$config_opts --disable-system-torrc", + "*:config_opts=$config_opts --disable-manpage", + "*:config_opts=$config_opts --disable-html-manual", + "*:config_opts=$config_opts --disable-tool-name-check", "*-linux-android*:config_opts=$config_opts --enable-android", "*-linux-android*:config_opts=$config_opts ac_cv_member_struct_tcp_info_tcpi_snd_mss=no", - "all:config_opts=$config_opts --enable-pic", - "all:config_opts=$config_opts --enable-static-openssl", - "all:config_opts=$config_opts --enable-static-libevent", - "all:config_opts=$config_opts --enable-static-zlib", - "all:config_opts=$config_opts --enable-static-tor", - "all:config_opts=$config_opts --disable-lzma", - "all:config_opts=$config_opts --disable-zstd", - "all:config_opts=$config_opts --with-openssl-dir=$PREFIX/lib", - "all:config_opts=$config_opts --with-libevent-dir=$PREFIX/lib", - "all:config_opts=$config_opts --with-zlib-dir=$PREFIX/lib", - "all:config_opts=$config_opts tor_cv_library_libevent_dir=$PREFIX" + "*:config_opts=$config_opts --enable-pic", + "*:config_opts=$config_opts --enable-static-openssl", + "*:config_opts=$config_opts --enable-static-libevent", + "*:config_opts=$config_opts --enable-static-zlib", + "*:config_opts=$config_opts --enable-static-tor", + "*:config_opts=$config_opts --disable-lzma", + "*:config_opts=$config_opts --disable-zstd", + "*:config_opts=$config_opts --with-openssl-dir=$PREFIX/lib", + "*:config_opts=$config_opts --with-libevent-dir=$PREFIX/lib", + "*:config_opts=$config_opts --with-zlib-dir=$PREFIX/lib", + "*:config_opts=$config_opts tor_cv_library_libevent_dir=$PREFIX" ], "steps": [ - "all:./autogen.sh", - "all:./configure $config_opts", - "all:make -j$NUM_CORES libtor.a", - "all:mkdir -p $STAGING_DIR$PREFIX/lib", - "all:cp libtor.a $STAGING_DIR$PREFIX/lib/libtor.a", - "all:mkdir -p $STAGING_DIR$PREFIX/usr/share/tor", - "all:cp src/config/geoip $STAGING_DIR$PREFIX/usr/share/tor", - "all:cp src/config/geoip6 $STAGING_DIR$PREFIX/usr/share/tor", - "all:mkdir -p $STAGING_DIR$PREFIX/include/tor", - "all:cd src && find . -name '*.h' -exec sh -c 'mkdir -p \"$STAGING_DIR$PREFIX/include/tor/$(dirname \"$1\")\" && cp \"$1\" \"$STAGING_DIR$PREFIX/include/tor/$1\"' _ {} \\;" + "*:./autogen.sh", + "*:./configure $config_opts", + "*:make -j$NUM_CORES libtor.a", + "*:mkdir -p $STAGING_DIR$PREFIX/lib", + "*:cp libtor.a $STAGING_DIR$PREFIX/lib/libtor.a", + "*:mkdir -p $STAGING_DIR$PREFIX/share/tor", + "*:cp src/config/geoip $STAGING_DIR$PREFIX/share/tor", + "*:cp src/config/geoip6 $STAGING_DIR$PREFIX/share/tor", + "*:mkdir -p $STAGING_DIR$PREFIX/include/tor", + "*:cd src && find . -name '*.h' -exec sh -c 'mkdir -p \"$STAGING_DIR$PREFIX/include/tor/$(dirname \"$1\")\" && cp \"$1\" \"$STAGING_DIR$PREFIX/include/tor/$1\"' _ {} \\;" ] } } \ No newline at end of file diff --git a/packages/libusb.json b/packages/libusb.json index d4dc2aa..b1a6ed0 100644 --- a/packages/libusb.json +++ b/packages/libusb.json @@ -10,28 +10,28 @@ } ], "dependencies": [ - "all:native/_", - "all:native/config", - "all:native/make" + "*:native/_", + "*:native/config", + "*:native/make" ], "build": { "env": [ - "all:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared", + "*:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared", "*-linux-gnu:config_opts=$config_opts --with-pic --disable-udev", "*-w64-mingw32:config_opts=$config_opts --disable-udev", "*-apple-darwin:config_opts=$config_opts --disable-udev", - "all:SHOULD_BUILD=echo", + "*:SHOULD_BUILD=echo", "*-linux-gnu:SHOULD_BUILD=", "*-w64-mingw32:SHOULD_BUILD=", "*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "all:cp -f $PREFIX/native/usr/share/config/config.guess config.guess", - "all:cp -f $PREFIX/native/usr/share/config/config.sub config.sub", - "all:$SHOULD_BUILD ./configure $config_opts", - "all:$SHOULD_BUILD make -j$NUM_CORES", - "all:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install", - "all:$SHOULD_BUILD cp -f $STAGING_DIR$PREFIX/lib/libusb-1.0.a $STAGING_DIR$PREFIX/lib/libusb.a" + "*:cp -f $PREFIX/native/share/config/config.guess config.guess", + "*:cp -f $PREFIX/native/share/config/config.sub config.sub", + "*:$SHOULD_BUILD ./configure $config_opts", + "*:$SHOULD_BUILD make -j$NUM_CORES", + "*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install", + "*:$SHOULD_BUILD cp -f $STAGING_DIR$PREFIX/lib/libusb-1.0.a $STAGING_DIR$PREFIX/lib/libusb.a" ] } } \ No newline at end of file diff --git a/packages/libxcrypt.json b/packages/libxcrypt.json index c1b66e8..df5a5a6 100644 --- a/packages/libxcrypt.json +++ b/packages/libxcrypt.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "all:native/_" + "*:native/_" ], "build": { "env": [ - "all:config_opts=--host=$HOST --prefix=$PREFIX", - "all:config_opts=$config_opts --enable-static --disable-shared --with-pic" + "*:config_opts=--host=$HOST --prefix=$PREFIX", + "*:config_opts=$config_opts --enable-static --disable-shared --with-pic" ], "steps": [ - "all:./autogen.sh", - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make install DESTDIR=$STAGING_DIR" + "*:./autogen.sh", + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/native/_.json b/packages/native/_.json index eee28af..e418a35 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -8,28 +8,28 @@ "*-linux-gnu:native/ct-tools", "*-linux-musl:native/ct-tools", "*-w64-mingw32:native/ct-tools", - "all:native/autoconf", - "all:native/automake", - "all:native/bash", - "all:native/bison", - "all:native/cmake", - "all:native/cmake-toolchain", - "all:native/config", - "all:native/gawk", - "all:native/gettext", - "all:native/libtool", - "all:native/m4", - "all:native/make", - "all:native/mpc", - "all:native/mpfr", - "all:native/ninja", - "all:native/nproc", - "all:native/patch", - "all:native/perl", - "all:native/pkgconf", - "all:native/rsync", - "all:native/sed", - "all:native/texinfo" + "*:native/autoconf", + "*:native/automake", + "*:native/bash", + "*:native/bison", + "*:native/cmake", + "*:native/cmake-toolchain", + "*:native/config", + "*:native/gawk", + "*:native/gettext", + "*:native/libtool", + "*:native/m4", + "*:native/make", + "*:native/mpc", + "*:native/mpfr", + "*:native/ninja", + "*:native/nproc", + "*:native/patch", + "*:native/perl", + "*:native/pkgconf", + "*:native/rsync", + "*:native/sed", + "*:native/texinfo" ], "build": { "env": [ @@ -37,9 +37,9 @@ "none:B_=All packages included as dependencies (other than bootstrap packages) are copied over to staging dir" ], "steps": [ - "all:mkdir -p $STAGING_DIR$PREFIX ", - "all:rsync -a $PREFIX/* $STAGING_DIR$PREFIX", - "all:rm -rf $STAGING_DIR$PREFIX/native/bootstrap" + "*:mkdir -p $STAGING_DIR$PREFIX ", + "*:rsync -a $PREFIX/* $STAGING_DIR$PREFIX", + "*:rm -rf $STAGING_DIR$PREFIX/native/bootstrap" ] } } \ No newline at end of file diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index 1cf4539..d95d5c0 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -3,7 +3,7 @@ "version": "r28c", "type": "native", "dependencies": [ - "all:native/p7zip" + "*:native/p7zip" ], "build": { "env": [ diff --git a/packages/native/autoconf.json b/packages/native/autoconf.json index 57ae147..2c5e896 100644 --- a/packages/native/autoconf.json +++ b/packages/native/autoconf.json @@ -10,16 +10,16 @@ } ], "dependencies": [ - "all:native/m4", - "all:native/make", - "all:native/perl" + "*:native/m4", + "*:native/make", + "*:native/perl" ], "build": { "env": [], "steps": [ - "all:./configure --host=$HOST --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --host=$HOST --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/automake.json b/packages/native/automake.json index 8728d5f..aeae97c 100644 --- a/packages/native/automake.json +++ b/packages/native/automake.json @@ -10,20 +10,20 @@ } ], "dependencies": [ - "all:native/autoconf", - "all:native/m4", - "all:native/make", - "all:native/perl" + "*:native/autoconf", + "*:native/m4", + "*:native/make", + "*:native/perl" ], "build": { "env": [ - "all:MAKEINFO=true" + "*:MAKEINFO=true" ], "steps": [ - "all:./bootstrap", - "all:./configure --prefix=$PREFIX/native --disable-doc", - "all:make -j$NUM_CORES V=1", - "all:make install DESTDIR=$STAGING_DIR " + "*:./bootstrap", + "*:./configure --prefix=$PREFIX/native --disable-doc", + "*:make -j$NUM_CORES V=1", + "*:make install DESTDIR=$STAGING_DIR " ] } } \ No newline at end of file diff --git a/packages/native/bash.json b/packages/native/bash.json index a1c05c4..5baa980 100644 --- a/packages/native/bash.json +++ b/packages/native/bash.json @@ -10,14 +10,14 @@ } ], "dependencies": [ - "all:native/make" + "*:native/make" ], "build": { "env": [], "steps": [ - "all:./configure --prefix=$PREFIX/native", - "all:make -j$NUM_CORES V=1", - "all:make install DESTDIR=$STAGING_DIR" + "*:./configure --prefix=$PREFIX/native", + "*:make -j$NUM_CORES V=1", + "*:make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/native/binutils@2.42.json b/packages/native/binutils@2.42.json index 427d38e..e9942fc 100644 --- a/packages/native/binutils@2.42.json +++ b/packages/native/binutils@2.42.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/bison", - "all:native/libiconv", - "all:native/make", - "all:native/perl", - "all:native/pkgconf", - "all:native/texinfo", - "all:native/zlib" + "*:native/bison", + "*:native/libiconv", + "*:native/make", + "*:native/perl", + "*:native/pkgconf", + "*:native/texinfo", + "*:native/zlib" ], "build": { "env": [ @@ -24,22 +24,22 @@ "aarch64-linux-gnu:TOOL_TARGET=aarch64-linux-gnu", "x86_64-linux-musl:TOOL_TARGET=x86_64-linux-musl", "x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", - "all:config_opts=--prefix=$PREFIX/native", - "all:config_opts=$config_opts --disable-nls", - "all:config_opts=$config_opts --disable-werror", - "all:config_opts=$config_opts --with-system-zlib", - "all:config_opts=$config_opts --enable-targets=$TOOL_TARGET", - "all:config_opts=$config_opts --target=$TOOL_TARGET", - "all:config_opts=$config_opts --libdir=$PREFIX/native/lib/$TOOL_TARGET", - "all:config_opts=$config_opts --infodir=$PREFIX/native/share/info/$TOOL_TARGET", - "all:CPPFLAGS=-I$PREFIX/native/include", - "all:LDFLAGS=-L$PREFIX/native/lib" + "*:config_opts=--prefix=$PREFIX/native", + "*:config_opts=$config_opts --disable-nls", + "*:config_opts=$config_opts --disable-werror", + "*:config_opts=$config_opts --with-system-zlib", + "*:config_opts=$config_opts --enable-targets=$TOOL_TARGET", + "*:config_opts=$config_opts --target=$TOOL_TARGET", + "*:config_opts=$config_opts --libdir=$PREFIX/native/lib/$TOOL_TARGET", + "*:config_opts=$config_opts --infodir=$PREFIX/native/share/info/$TOOL_TARGET", + "*:CPPFLAGS=-I$PREFIX/native/include", + "*:LDFLAGS=-L$PREFIX/native/lib" ], "steps": [ - "all:mkdir -p build", - "all:cd build && ../configure $config_opts", - "all:cd build && make -j$NUM_CORES", - "all:cd build && make install DESTDIR=$STAGING_DIR" + "*:mkdir -p build", + "*:cd build && ../configure $config_opts", + "*:cd build && make -j$NUM_CORES", + "*:cd build && make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/native/bison.json b/packages/native/bison.json index 96ca982..ad702e3 100644 --- a/packages/native/bison.json +++ b/packages/native/bison.json @@ -10,19 +10,19 @@ } ], "dependencies": [ - "all:native/m4", - "all:native/make", - "all:native/texinfo" + "*:native/m4", + "*:native/make", + "*:native/texinfo" ], "build": { "env": [ - "all:AUTOMAKE=true", - "all:ACLOCAL=true" + "*:AUTOMAKE=true", + "*:ACLOCAL=true" ], "steps": [ - "all:./configure --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/boost-b2.json b/packages/native/boost-b2.json index 970baab..61e3650 100644 --- a/packages/native/boost-b2.json +++ b/packages/native/boost-b2.json @@ -11,9 +11,9 @@ ], "build": { "steps": [ - "all:./bootstrap.sh", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp b2 $STAGING_DIR$PREFIX/native/bin/" + "*:./bootstrap.sh", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp b2 $STAGING_DIR$PREFIX/native/bin/" ] } } \ No newline at end of file diff --git a/packages/native/bootstrap/cpan/archive-cpio.json b/packages/native/bootstrap/cpan/archive-cpio.json index de05da8..53dca89 100644 --- a/packages/native/bootstrap/cpan/archive-cpio.json +++ b/packages/native/bootstrap/cpan/archive-cpio.json @@ -10,17 +10,17 @@ } ], "dependencies": [ - "all:native/bootstrap/make", - "all:native/bootstrap/perl" + "*:native/bootstrap/make", + "*:native/bootstrap/perl" ], "build": { "env": [ - "all:PATH=$PREFIX/native/bootstrap/bin:$PATH" + "*:PATH=$PREFIX/native/bootstrap/bin:$PATH" ], "steps": [ - "all:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/bootstrap/cpan/archive-zip.json b/packages/native/bootstrap/cpan/archive-zip.json index da980b7..3167500 100644 --- a/packages/native/bootstrap/cpan/archive-zip.json +++ b/packages/native/bootstrap/cpan/archive-zip.json @@ -10,17 +10,17 @@ } ], "dependencies": [ - "all:native/bootstrap/make", - "all:native/bootstrap/perl" + "*:native/bootstrap/make", + "*:native/bootstrap/perl" ], "build": { "env": [ - "all:PATH=$PREFIX/native/bootstrap/bin:$PATH" + "*:PATH=$PREFIX/native/bootstrap/bin:$PATH" ], "steps": [ - "all:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/bootstrap/cpan/sub-override.json b/packages/native/bootstrap/cpan/sub-override.json index c016a1d..ff75c1c 100644 --- a/packages/native/bootstrap/cpan/sub-override.json +++ b/packages/native/bootstrap/cpan/sub-override.json @@ -10,17 +10,17 @@ } ], "dependencies": [ - "all:native/bootstrap/make", - "all:native/bootstrap/perl" + "*:native/bootstrap/make", + "*:native/bootstrap/perl" ], "build": { "env": [ - "all:PATH=$PREFIX/native/bootstrap/bin:$PATH" + "*:PATH=$PREFIX/native/bootstrap/bin:$PATH" ], "steps": [ - "all:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/bootstrap/make.json b/packages/native/bootstrap/make.json index ab81108..bba16cb 100644 --- a/packages/native/bootstrap/make.json +++ b/packages/native/bootstrap/make.json @@ -11,10 +11,10 @@ ], "build": { "steps": [ - "all:./configure --disable-dependency-tracking", - "all:./build.sh", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bootstrap/bin", - "all:cp make $STAGING_DIR/$PREFIX/native/bootstrap/bin/make" + "*:./configure --disable-dependency-tracking", + "*:./build.sh", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bootstrap/bin", + "*:cp make $STAGING_DIR/$PREFIX/native/bootstrap/bin/make" ] } } \ No newline at end of file diff --git a/packages/native/bootstrap/perl.json b/packages/native/bootstrap/perl.json index 9504ccf..784046d 100644 --- a/packages/native/bootstrap/perl.json +++ b/packages/native/bootstrap/perl.json @@ -10,17 +10,17 @@ } ], "dependencies": [ - "all:native/bootstrap/make" + "*:native/bootstrap/make" ], "build": { "env": [ - "all:PATH=$PREFIX/native/bootstrap/bin:$PATH" + "*:PATH=$PREFIX/native/bootstrap/bin:$PATH" ], "steps": [ - "all:sed -i.bak '/^#ifndef PERL_BUILD_DATE$/,/^#endif$/{/^#ifndef PERL_BUILD_DATE$/!d; s/.*/\\#define PERL_BUILD_DATE \"Jan 1 1970 00:00:01\"/;}' perl.c", - "all:./Configure -des -Dprefix=$PREFIX/native/bootstrap -Duseithreads -Dall_static", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:sed -i.bak '/^#ifndef PERL_BUILD_DATE$/,/^#endif$/{/^#ifndef PERL_BUILD_DATE$/!d; s/.*/\\#define PERL_BUILD_DATE \"Jan 1 1970 00:00:01\"/;}' perl.c", + "*:./Configure -des -Dprefix=$PREFIX/native/bootstrap -Duseithreads -Dall_static", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/bootstrap/strip-nondeterminism.json b/packages/native/bootstrap/strip-nondeterminism.json index 180ae76..c50bcb1 100644 --- a/packages/native/bootstrap/strip-nondeterminism.json +++ b/packages/native/bootstrap/strip-nondeterminism.json @@ -10,22 +10,22 @@ } ], "dependencies": [ - "all:native/bootstrap/cpan/archive-cpio", - "all:native/bootstrap/cpan/archive-zip", - "all:native/bootstrap/cpan/sub-override", - "all:native/bootstrap/make", - "all:native/bootstrap/perl" + "*:native/bootstrap/cpan/archive-cpio", + "*:native/bootstrap/cpan/archive-zip", + "*:native/bootstrap/cpan/sub-override", + "*:native/bootstrap/make", + "*:native/bootstrap/perl" ], "build": { "env": [ - "all:PATH=$PREFIX/native/bootstrap/bin:$PATH" + "*:PATH=$PREFIX/native/bootstrap/bin:$PATH" ], "steps": [ - "all:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", - "all:make", - "all:make DESTDIR=$STAGING_DIR install", - "all:mkdir -p $STAGING_DIR/$PREFIX/native/bootstrap/bin/", - "all:cp $PATCH_DIR/strip-nondeterminism-recursive $STAGING_DIR/$PREFIX/native/bootstrap/bin" + "*:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", + "*:make", + "*:make DESTDIR=$STAGING_DIR install", + "*:mkdir -p $STAGING_DIR/$PREFIX/native/bootstrap/bin/", + "*:cp $PATCH_DIR/strip-nondeterminism-recursive $STAGING_DIR/$PREFIX/native/bootstrap/bin" ] } } \ No newline at end of file diff --git a/packages/native/bzip2.json b/packages/native/bzip2.json index f59b85c..1edab13 100644 --- a/packages/native/bzip2.json +++ b/packages/native/bzip2.json @@ -10,14 +10,14 @@ } ], "dependencies": [ - "all:native/make", - "all:native/openssl" + "*:native/make", + "*:native/openssl" ], "build": { "steps": [ - "all:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", - "all:make -j$NUM_CORES", - "all:make install PREFIX=$STAGING_DIR$PREFIX/native" + "*:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", + "*:make -j$NUM_CORES", + "*:make install PREFIX=$STAGING_DIR$PREFIX/native" ] } } \ No newline at end of file diff --git a/packages/native/cmake-toolchain.json b/packages/native/cmake-toolchain.json index 4dcde1d..53fce56 100644 --- a/packages/native/cmake-toolchain.json +++ b/packages/native/cmake-toolchain.json @@ -12,8 +12,8 @@ "build": { "env": [], "steps": [ - "all:mkdir -p $STAGING_DIR$PREFIX/native/", - "all:cp toolchain.cmake $STAGING_DIR$PREFIX/native/toolchain.cmake" + "*:mkdir -p $STAGING_DIR$PREFIX/native/", + "*:cp toolchain.cmake $STAGING_DIR$PREFIX/native/toolchain.cmake" ] } } \ No newline at end of file diff --git a/packages/native/cmake.json b/packages/native/cmake.json index 3a96639..0e79665 100644 --- a/packages/native/cmake.json +++ b/packages/native/cmake.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "all:native/make", - "all:native/openssl" + "*:native/make", + "*:native/openssl" ], "build": { "env": [ - "all:OPENSSL_ROOT_DIR=$PREFIX/native" + "*:OPENSSL_ROOT_DIR=$PREFIX/native" ], "steps": [ - "all:./bootstrap --parallel=$NUM_CORES", - "all:./configure --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./bootstrap --parallel=$NUM_CORES", + "*:./configure --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/config.json b/packages/native/config.json index 7d78403..4e7f8f6 100644 --- a/packages/native/config.json +++ b/packages/native/config.json @@ -12,9 +12,9 @@ "build": { "env": [], "steps": [ - "all:mkdir -p $STAGING_DIR$PREFIX/native/usr/share/config", - "all:cp config.guess $STAGING_DIR$PREFIX/native/usr/share/config/config.guess", - "all:cp config.sub $STAGING_DIR$PREFIX/native/usr/share/config/config.sub" + "*:mkdir -p $STAGING_DIR$PREFIX/native/share/config", + "*:cp config.guess $STAGING_DIR$PREFIX/native/share/config/config.guess", + "*:cp config.sub $STAGING_DIR$PREFIX/native/share/config/config.sub" ] } } \ No newline at end of file diff --git a/packages/native/cpio.json b/packages/native/cpio.json index f30d047..71f7a67 100644 --- a/packages/native/cpio.json +++ b/packages/native/cpio.json @@ -10,14 +10,14 @@ } ], "dependencies": [ - "all:native/make" + "*:native/make" ], "build": { "env": [], "steps": [ - "all:./configure --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index f79d122..320644f 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -10,24 +10,24 @@ } ], "dependencies": [ - "all:native/autoconf", - "all:native/automake", - "all:native/bash", - "all:native/binutils@2.42", - "all:native/bison", - "all:native/flex", - "all:native/gawk", - "all:native/gettext", - "all:native/help2man", - "all:native/libtool", - "all:native/m4", - "all:native/make", - "all:native/perl", - "all:native/python@3.11.13", - "all:native/sed", - "all:native/texinfo", - "all:native/xz", - "all:native/zlib" + "*:native/autoconf", + "*:native/automake", + "*:native/bash", + "*:native/binutils@2.42", + "*:native/bison", + "*:native/flex", + "*:native/gawk", + "*:native/gettext", + "*:native/help2man", + "*:native/libtool", + "*:native/m4", + "*:native/make", + "*:native/perl", + "*:native/python@3.11.13", + "*:native/sed", + "*:native/texinfo", + "*:native/xz", + "*:native/zlib" ], "build": { "env": [ @@ -37,12 +37,12 @@ "x86_64-linux-musl:TOOL_TARGET=x86_64-linux-musl" ], "steps": [ - "all:./bootstrap", - "all:ln -s $TOOL_TARGET-objcopy $PREFIX/native/bin/objcopy", - "all:ln -s $TOOL_TARGET-readelf $PREFIX/native/bin/readelf", - "all:./configure --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make install DESTDIR=$STAGING_DIR" + "*:./bootstrap", + "*:ln -s $TOOL_TARGET-objcopy $PREFIX/native/bin/objcopy", + "*:ln -s $TOOL_TARGET-readelf $PREFIX/native/bin/readelf", + "*:./configure --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 5bcaedb..a8bf829 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -113,25 +113,25 @@ } ], "dependencies": [ - "all:native/autoconf", - "all:native/automake", - "all:native/bash", - "all:native/binutils@2.42", - "all:native/bison", - "all:native/crosstool-ng", - "all:native/flex", - "all:native/gawk", - "all:native/gettext", - "all:native/help2man", - "all:native/libtool", - "all:native/m4", - "all:native/make", - "all:native/perl", - "all:native/python@3.11.13", - "all:native/sed", - "all:native/texinfo", - "all:native/xz", - "all:native/zlib" + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/autoconf", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/automake", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bash", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/binutils@2.42", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bison", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/crosstool-ng", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/flex", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gawk", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gettext", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/help2man", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/libtool", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/m4", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/make", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/perl", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/python@3.11.13", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/sed", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/texinfo", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/xz", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/zlib" ], "build": { "env": [ @@ -145,88 +145,74 @@ "x86_64-w64-mingw32:TOOL_TARGET_ALT=x86_64-w64-mingw32" ], "steps": [ - "all:ct-ng $TOOL_TARGET", - "all:echo 'CT_EXPERIMENTAL=y' >> .config", - "all:echo 'CT_FORBID_DOWNLOAD=y' >> .config", - "all:echo 'CT_CC_LANG_CXX=y' >> .config", - "all:echo 'CT_CC_LANG_FORTRAN=y' >> .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ct-ng $TOOL_TARGET", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_EXPERIMENTAL=y' >> .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_FORBID_DOWNLOAD=y' >> .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_LANG_CXX=y' >> .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_LANG_FORTRAN=y' >> .config", "none:echo 'CT_CC_LANG_D=y' >> .config", "none:echo 'CT_CC_LANG_OBJC=y' >> .config", "none:echo 'CT_CC_LANG_OBJCXX=y' >> .config", - "all:echo 'CT_CC_LANG_GOLANG=y' >> .config", - "all:echo 'CT_BINUTILS_EXTRA_CONFIG_ARRAY=\"--with-system-zlib\"' >> .config", - "all:echo 'CT_CC_GCC_SYSTEM_ZLIB=y' >> .config", - "all:echo 'CT_DEBUG_CT_SAVE_STEPS=y' >> .config", - "all:sed -i.bak 's/CT_GDB_CROSS=y/CT_GDB_CROSS=n/g' .config", - "all:sed -i.bak 's/CT_GLIBC_VERSION=\"2.42\"/CT_GLIBC_VERSION=\"2.38\"/g' .config", - "all:sed -i.bak 's/CT_GDB_GDBSERVER=y/CT_GDB_GDBSERVER=n/g' .config", - "all:echo 'CT_GDB=n' >> .config", - "all:echo 'CT_GDB_NATIVE=n' >> .config", - "all:echo 'CT_PREFIX_DIR_RO=n' >> .config", - "all:ln -s $TOOL_TARGET_ALT-objcopy $PREFIX/native/bin/objcopy", - "all:ln -s $TOOL_TARGET_ALT-readelf $PREFIX/native/bin/readelf", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_LANG_GOLANG=y' >> .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_BINUTILS_EXTRA_CONFIG_ARRAY=\"--with-system-zlib\"' >> .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_GCC_SYSTEM_ZLIB=y' >> .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_DEBUG_CT_SAVE_STEPS=y' >> .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GDB_CROSS=y/CT_GDB_CROSS=n/g' .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GLIBC_VERSION=\"2.42\"/CT_GLIBC_VERSION=\"2.38\"/g' .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GDB_GDBSERVER=y/CT_GDB_GDBSERVER=n/g' .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_GDB=n' >> .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_GDB_NATIVE=n' >> .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_PREFIX_DIR_RO=n' >> .config", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET_ALT-objcopy $PREFIX/native/bin/objcopy", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET_ALT-readelf $PREFIX/native/bin/readelf", "x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ar $PREFIX/native/bin/ar", "x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ranlib $PREFIX/native/bin/ranlib", - "all:unset LD_LIBRARY_PATH LIBRARY_PATH CC CXX CFLAGS; ct-ng build", - "all:mkdir -p $STAGING_DIR$PREFIX/native", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/bin $STAGING_DIR$PREFIX/native", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/include $STAGING_DIR$PREFIX/native", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/lib $STAGING_DIR$PREFIX/native", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/libexec $STAGING_DIR$PREFIX/native", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/share $STAGING_DIR$PREFIX/native", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/etc $STAGING_DIR$PREFIX/", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib $STAGING_DIR$PREFIX/", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib64 $STAGING_DIR$PREFIX/", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/sbin $STAGING_DIR$PREFIX/", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/bin $STAGING_DIR$PREFIX/", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/include $STAGING_DIR$PREFIX/", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/lib $STAGING_DIR$PREFIX/", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/lib64 $STAGING_DIR$PREFIX/", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/libexec $STAGING_DIR$PREFIX/", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/sbin $STAGING_DIR$PREFIX/", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr/share $STAGING_DIR$PREFIX/", - "all:mkdir -p $STAGING_DIR$PREFIX/usr", - "all:ln -s ../bin $STAGING_DIR$PREFIX/usr/bin", - "all:ln -s ../include $STAGING_DIR$PREFIX/usr/include", - "all:ln -s ../lib $STAGING_DIR$PREFIX/usr/lib", - "all:ln -s ../lib64 $STAGING_DIR$PREFIX/usr/lib64", - "all:ln -s ../libexec $STAGING_DIR$PREFIX/usr/libexec", - "all:ln -s ../sbin $STAGING_DIR$PREFIX/usr/sbin", - "all:ln -s ../share $STAGING_DIR$PREFIX/usr/share", - "all:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/var $STAGING_DIR$PREFIX/", - "all:ln -s $TOOL_TARGET-addr2line $STAGING_DIR$PREFIX/native/bin/addr2line", - "all:ln -s $TOOL_TARGET-ar $STAGING_DIR$PREFIX/native/bin/ar", - "all:ln -s $TOOL_TARGET-as $STAGING_DIR$PREFIX/native/bin/as", - "all:ln -s $TOOL_TARGET-c++ $STAGING_DIR$PREFIX/native/bin/c++", - "all:ln -s $TOOL_TARGET-c++filt $STAGING_DIR$PREFIX/native/bin/c++filt", - "all:ln -s $TOOL_TARGET-cc $STAGING_DIR$PREFIX/native/bin/cc", - "all:ln -s $TOOL_TARGET-cpp $STAGING_DIR$PREFIX/native/bin/cpp", - "all:ln -s $TOOL_TARGET-elfedit $STAGING_DIR$PREFIX/native/bin/elfedit", - "all:ln -s $TOOL_TARGET-g++ $STAGING_DIR$PREFIX/native/bin/g++", - "all:ln -s $TOOL_TARGET-gcc $STAGING_DIR$PREFIX/native/bin/gcc", - "all:ln -s $TOOL_TARGET-gcc-15.2.0 $STAGING_DIR$PREFIX/native/bin/gcc-15.2.0", - "all:ln -s $TOOL_TARGET-gcc-ar $STAGING_DIR$PREFIX/native/bin/gcc-ar", - "all:ln -s $TOOL_TARGET-gcc-nm $STAGING_DIR$PREFIX/native/bin/gcc-nm", - "all:ln -s $TOOL_TARGET-gcc-ranlib $STAGING_DIR$PREFIX/native/bin/gcc-ranlib", - "all:ln -s $TOOL_TARGET-gccgo $STAGING_DIR$PREFIX/native/bin/gccgo", - "all:ln -s $TOOL_TARGET-gcov $STAGING_DIR$PREFIX/native/bin/gcov", - "all:ln -s $TOOL_TARGET-gcov-dump $STAGING_DIR$PREFIX/native/bin/gcov-dump", - "all:ln -s $TOOL_TARGET-gcov-tool $STAGING_DIR$PREFIX/native/bin/gcov-tool", - "all:ln -s $TOOL_TARGET-gfortran $STAGING_DIR$PREFIX/native/bin/gfortran", - "all:ln -s $TOOL_TARGET-gprof $STAGING_DIR$PREFIX/native/bin/gprof", - "all:ln -s $TOOL_TARGET-ld $STAGING_DIR$PREFIX/native/bin/ld", - "all:ln -s $TOOL_TARGET-ld.bfd $STAGING_DIR$PREFIX/native/bin/ld.bfd", - "all:ln -s $TOOL_TARGET-ldd $STAGING_DIR$PREFIX/native/bin/ldd", - "all:ln -s $TOOL_TARGET-lto-dump $STAGING_DIR$PREFIX/native/bin/lto-dump", - "all:ln -s $TOOL_TARGET-nm $STAGING_DIR$PREFIX/native/bin/nm", - "all:ln -s $TOOL_TARGET-objcopy $STAGING_DIR$PREFIX/native/bin/objcopy", - "all:ln -s $TOOL_TARGET-objdump $STAGING_DIR$PREFIX/native/bin/objdump", - "all:ln -s $TOOL_TARGET-populate $STAGING_DIR$PREFIX/native/bin/populate", - "all:ln -s $TOOL_TARGET-ranlib $STAGING_DIR$PREFIX/native/bin/ranlib", - "all:ln -s $TOOL_TARGET-readelf $STAGING_DIR$PREFIX/native/bin/readelf", - "all:ln -s $TOOL_TARGET-size $STAGING_DIR$PREFIX/native/bin/size", - "all:ln -s $TOOL_TARGET-strings $STAGING_DIR$PREFIX/native/bin/strings", - "all:ln -s $TOOL_TARGET-strip $STAGING_DIR$PREFIX/native/bin/strip" + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:unset LD_LIBRARY_PATH LIBRARY_PATH CC CXX CFLAGS; ct-ng build", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:mkdir -p $STAGING_DIR$PREFIX/native", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/bin $STAGING_DIR$PREFIX/native", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/include $STAGING_DIR$PREFIX/native", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/lib $STAGING_DIR$PREFIX/native", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/libexec $STAGING_DIR$PREFIX/native", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/share $STAGING_DIR$PREFIX/native", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/etc $STAGING_DIR$PREFIX/", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib $STAGING_DIR$PREFIX/", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib64 $STAGING_DIR$PREFIX/", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/sbin $STAGING_DIR$PREFIX/", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr $STAGING_DIR$PREFIX/", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/var $STAGING_DIR$PREFIX/", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-addr2line $STAGING_DIR$PREFIX/native/bin/addr2line", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ar $STAGING_DIR$PREFIX/native/bin/ar", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-as $STAGING_DIR$PREFIX/native/bin/as", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-c++ $STAGING_DIR$PREFIX/native/bin/c++", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-c++filt $STAGING_DIR$PREFIX/native/bin/c++filt", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-cc $STAGING_DIR$PREFIX/native/bin/cc", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-cpp $STAGING_DIR$PREFIX/native/bin/cpp", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-elfedit $STAGING_DIR$PREFIX/native/bin/elfedit", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-g++ $STAGING_DIR$PREFIX/native/bin/g++", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc $STAGING_DIR$PREFIX/native/bin/gcc", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-15.2.0 $STAGING_DIR$PREFIX/native/bin/gcc-15.2.0", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-ar $STAGING_DIR$PREFIX/native/bin/gcc-ar", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-nm $STAGING_DIR$PREFIX/native/bin/gcc-nm", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-ranlib $STAGING_DIR$PREFIX/native/bin/gcc-ranlib", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gccgo $STAGING_DIR$PREFIX/native/bin/gccgo", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcov $STAGING_DIR$PREFIX/native/bin/gcov", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcov-dump $STAGING_DIR$PREFIX/native/bin/gcov-dump", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcov-tool $STAGING_DIR$PREFIX/native/bin/gcov-tool", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gfortran $STAGING_DIR$PREFIX/native/bin/gfortran", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gprof $STAGING_DIR$PREFIX/native/bin/gprof", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ld $STAGING_DIR$PREFIX/native/bin/ld", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ld.bfd $STAGING_DIR$PREFIX/native/bin/ld.bfd", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ldd $STAGING_DIR$PREFIX/native/bin/ldd", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-lto-dump $STAGING_DIR$PREFIX/native/bin/lto-dump", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-nm $STAGING_DIR$PREFIX/native/bin/nm", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-objcopy $STAGING_DIR$PREFIX/native/bin/objcopy", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-objdump $STAGING_DIR$PREFIX/native/bin/objdump", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-populate $STAGING_DIR$PREFIX/native/bin/populate", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ranlib $STAGING_DIR$PREFIX/native/bin/ranlib", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-readelf $STAGING_DIR$PREFIX/native/bin/readelf", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-size $STAGING_DIR$PREFIX/native/bin/size", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-strings $STAGING_DIR$PREFIX/native/bin/strings", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-strip $STAGING_DIR$PREFIX/native/bin/strip" ] } } \ No newline at end of file diff --git a/packages/native/curl.json b/packages/native/curl.json index 4a83108..ac3094f 100644 --- a/packages/native/curl.json +++ b/packages/native/curl.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "all:native/libpsl", - "all:native/make", - "all:native/openssl" + "*:native/libpsl", + "*:native/make", + "*:native/openssl" ], "build": { "env": [ - "all:config_opts=--with-openssl" + "*:config_opts=--with-openssl" ], "steps": [ - "all:./configure $config_opts --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure $config_opts --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/dart.json b/packages/native/dart.json index fd03db4..9328bc0 100644 --- a/packages/native/dart.json +++ b/packages/native/dart.json @@ -250,30 +250,30 @@ } ], "dependencies": [ - "all:native/gn", - "all:native/make", - "all:native/ninja", - "all:native/python@3.11.13", - "all:native/zlib" + "*:native/gn", + "*:native/make", + "*:native/ninja", + "*:native/python@3.11.13", + "*:native/zlib" ], "build": { "env": [], "steps": [ - "all:mkdir -p buildtools/mac-x64/clang/.versions", - "all:mkdir -p buildtools/mac-arm64/clang/.versions", - "all:mkdir -p buildtools/linux-x64/clang/.versions", - "all:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "all:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "all:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", - "all:echo build_devtools_from_sources = false > build/config/gclient_args.gni", - "all:ln -s $(which gn) buildtools/gn", - "all:mkdir -p buildtools/ninja", - "all:ln -s $(which ninja) buildtools/ninja/ninja", - "all:mkdir -p buildtools/mac-arm64/clang/bin", - "all:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "all:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "all:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "all:python3 ./tools/build.py" + "*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:ln -s $(which gn) buildtools/gn", + "*:mkdir -p buildtools/ninja", + "*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:python3 ./tools/build.py" ] } } \ No newline at end of file diff --git a/packages/native/expat.json b/packages/native/expat.json index c1d0214..07899ea 100644 --- a/packages/native/expat.json +++ b/packages/native/expat.json @@ -10,20 +10,20 @@ } ], "dependencies": [ - "all:native/autoconf", - "all:native/libiconv", - "all:native/make", - "all:native/perl" + "*:native/autoconf", + "*:native/libiconv", + "*:native/make", + "*:native/perl" ], "build": { "env": [ - "all:CFLAGS=$CFLAGS -fPIC", - "all:LDFLAGS=$LDFLAGS -fPIC" + "*:CFLAGS=$CFLAGS -fPIC", + "*:LDFLAGS=$LDFLAGS -fPIC" ], "steps": [ - "all:./configure --prefix=$PREFIX/native --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --prefix=$PREFIX/native --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/flex.json b/packages/native/flex.json index 4628343..1ad483a 100644 --- a/packages/native/flex.json +++ b/packages/native/flex.json @@ -10,17 +10,17 @@ } ], "dependencies": [ - "all:native/make" + "*:native/make" ], "build": { "env": [ - "all:CFLAGS=$CFLAGS -fPIC", - "all:LDFLAGS=$LDFLAGS -fPIC" + "*:CFLAGS=$CFLAGS -fPIC", + "*:LDFLAGS=$LDFLAGS -fPIC" ], "steps": [ - "all:./configure --prefix=$PREFIX/native --with-pic", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --prefix=$PREFIX/native --with-pic", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/gawk.json b/packages/native/gawk.json index 2501d08..d440339 100644 --- a/packages/native/gawk.json +++ b/packages/native/gawk.json @@ -10,24 +10,24 @@ } ], "dependencies": [ - "all:native/autoconf", - "all:native/automake", - "all:native/gettext", - "all:native/libtool", - "all:native/make", - "all:native/perl", - "all:native/pkgconf" + "*:native/autoconf", + "*:native/automake", + "*:native/gettext", + "*:native/libtool", + "*:native/make", + "*:native/perl", + "*:native/pkgconf" ], "build": { "env": [ - "all:AUTOMAKE=true", - "all:ACLOCAL=true", - "all:MAKEINFO=true" + "*:AUTOMAKE=true", + "*:ACLOCAL=true", + "*:MAKEINFO=true" ], "steps": [ - "all:./configure --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/gawk@5.2.2.json b/packages/native/gawk@5.2.2.json index f3a40d8..d2ef89c 100644 --- a/packages/native/gawk@5.2.2.json +++ b/packages/native/gawk@5.2.2.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "all:native/make" + "*:native/make" ], "build": { "env": [ - "all:AUTOMAKE=true", - "all:ACLOCAL=true", - "all:MAKEINFO=true" + "*:AUTOMAKE=true", + "*:ACLOCAL=true", + "*:MAKEINFO=true" ], "steps": [ - "all:./configure --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/gettext.json b/packages/native/gettext.json index eadcd33..56ae2dc 100644 --- a/packages/native/gettext.json +++ b/packages/native/gettext.json @@ -10,19 +10,19 @@ } ], "dependencies": [ - "all:native/libiconv", - "all:native/make", - "all:native/sed" + "*:native/libiconv", + "*:native/make", + "*:native/sed" ], "build": { "env": [ - "all:config_opts=--prefix=$PREFIX/native", - "all:config_opts=$config_opts --with-libiconv-prefix=$PREFIX/native" + "*:config_opts=--prefix=$PREFIX/native", + "*:config_opts=$config_opts --with-libiconv-prefix=$PREFIX/native" ], "steps": [ - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/git.json b/packages/native/git.json index a01b2de..f47bf70 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -10,17 +10,17 @@ } ], "dependencies": [ - "all:native/curl", - "all:native/expat", - "all:native/gettext", - "all:native/make", - "all:native/openssl" + "*:native/curl", + "*:native/expat", + "*:native/gettext", + "*:native/make", + "*:native/openssl" ], "build": { "env": [], "steps": [ - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR$PREFIX/native install" + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR$PREFIX/native install" ] } } \ No newline at end of file diff --git a/packages/native/gmp.json b/packages/native/gmp.json index 6de6e64..038bbb0 100644 --- a/packages/native/gmp.json +++ b/packages/native/gmp.json @@ -10,21 +10,21 @@ } ], "dependencies": [ - "all:native/m4", - "all:native/make", - "all:native/perl" + "*:native/m4", + "*:native/make", + "*:native/perl" ], "build": { "env": [ - "all:config_opts=--prefix=$PREFIX/native", - "all:config_opts=$config_opts --disable-shared", - "all:config_opts=$config_opts --enable-static" + "*:config_opts=--prefix=$PREFIX/native", + "*:config_opts=$config_opts --disable-shared", + "*:config_opts=$config_opts --enable-static" ], "steps": [ - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make check", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make check", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/gn.json b/packages/native/gn.json index 38c5507..8a967f2 100644 --- a/packages/native/gn.json +++ b/packages/native/gn.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "all:native/git", - "all:native/ninja", - "all:native/python@3.11.13" + "*:native/git", + "*:native/ninja", + "*:native/python@3.11.13" ], "build": { "env": [], "steps": [ - "all:git tag -a initial-commit -m '0.0.0' 95374957437b818e9addc26c83340b27a1b38202", - "all:python3 build/gen.py", - "all:ninja -C out", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp out/gn $STAGING_DIR$PREFIX/native/bin/gn" + "*:git tag -a initial-commit -m '0.0.0' 95374957437b818e9addc26c83340b27a1b38202", + "*:python3 build/gen.py", + "*:ninja -C out", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp out/gn $STAGING_DIR$PREFIX/native/bin/gn" ] } } \ No newline at end of file diff --git a/packages/native/gperf.json b/packages/native/gperf.json index 572d01e..ed15b8c 100644 --- a/packages/native/gperf.json +++ b/packages/native/gperf.json @@ -10,16 +10,16 @@ } ], "dependencies": [ - "all:native/make" + "*:native/make" ], "build": { "env": [ - "all:config_opts=--prefix=$PREFIX/native" + "*:config_opts=--prefix=$PREFIX/native" ], "steps": [ - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/help2man.json b/packages/native/help2man.json index d3933c9..17aa8ab 100644 --- a/packages/native/help2man.json +++ b/packages/native/help2man.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "all:native/make" + "*:native/make" ], "build": { "env": [ - "all:config_opts=--prefix=$PREFIX/native", - "all:config_opts=$config_opts --disable-shared", - "all:config_opts=$config_opts --enable-static" + "*:config_opts=--prefix=$PREFIX/native", + "*:config_opts=$config_opts --disable-shared", + "*:config_opts=$config_opts --enable-static" ], "steps": [ - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/libiconv.json b/packages/native/libiconv.json index 87dc74f..dd958d1 100644 --- a/packages/native/libiconv.json +++ b/packages/native/libiconv.json @@ -10,22 +10,22 @@ } ], "dependencies": [ - "all:native/config", - "all:native/make" + "*:native/config", + "*:native/make" ], "build": { "env": [ - "all:CFLAGS=$CFLAGS -fPIC", - "all:config_opts=--prefix=$PREFIX/native --disable-nls --enable-static --disable-shared", - "all:config_opts=$config_opts", + "*:CFLAGS=$CFLAGS -fPIC", + "*:config_opts=--prefix=$PREFIX/native --disable-nls --enable-static --disable-shared", + "*:config_opts=$config_opts", "*linux:config_opts=$config_opts --with-pic" ], "steps": [ - "all:cp -f $PREFIX/native/usr/share/config/config.guess build-aux/", - "all:cp -f $PREFIX/native/usr/share/config/config.sub build-aux/", - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:cp -f $PREFIX/native/share/config/config.guess build-aux/", + "*:cp -f $PREFIX/native/share/config/config.sub build-aux/", + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/libpsl.json b/packages/native/libpsl.json index fb41ad0..755aad2 100644 --- a/packages/native/libpsl.json +++ b/packages/native/libpsl.json @@ -10,14 +10,14 @@ } ], "dependencies": [ - "all:native/make" + "*:native/make" ], "build": { "env": [], "steps": [ - "all:./configure --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/libtool.json b/packages/native/libtool.json index b5adbe0..40032ca 100644 --- a/packages/native/libtool.json +++ b/packages/native/libtool.json @@ -10,15 +10,15 @@ } ], "dependencies": [ - "all:native/m4", - "all:native/make" + "*:native/m4", + "*:native/make" ], "build": { "env": [], "steps": [ - "all:./configure --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/libxml2.json b/packages/native/libxml2.json index 436e3fd..f68c3f5 100644 --- a/packages/native/libxml2.json +++ b/packages/native/libxml2.json @@ -10,16 +10,16 @@ } ], "dependencies": [ - "all:native/make", - "all:native/pkgconf", - "all:native/python@3.11.13" + "*:native/make", + "*:native/pkgconf", + "*:native/python@3.11.13" ], "build": { "env": [], "steps": [ - "all:./configure --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/m4.json b/packages/native/m4.json index 4a7c370..d54314e 100644 --- a/packages/native/m4.json +++ b/packages/native/m4.json @@ -10,15 +10,15 @@ } ], "dependencies": [ - "all:native/make" + "*:native/make" ], "build": { "env": [], "steps": [ - "all:./configure --prefix=$PREFIX/native --disable-nls", - "all:sed -i.bak 's/^run.*automake.*/exit 0/' build-aux/missing", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --prefix=$PREFIX/native --disable-nls", + "*:sed -i.bak 's/^run.*automake.*/exit 0/' build-aux/missing", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/make.json b/packages/native/make.json index 75a93b1..604f8b5 100644 --- a/packages/native/make.json +++ b/packages/native/make.json @@ -12,12 +12,12 @@ "build": { "env": [], "steps": [ - "all:./configure --disable-dependency-tracking", - "all:./build.sh", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp make $STAGING_DIR/$PREFIX/native/bin/make", - "all:ln -s make $STAGING_DIR$PREFIX/native/bin/gmake", - "all:ln -s make $STAGING_DIR$PREFIX/native/bin/gnumake" + "*:./configure --disable-dependency-tracking", + "*:./build.sh", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp make $STAGING_DIR/$PREFIX/native/bin/make", + "*:ln -s make $STAGING_DIR$PREFIX/native/bin/gmake", + "*:ln -s make $STAGING_DIR$PREFIX/native/bin/gnumake" ] } } \ No newline at end of file diff --git a/packages/native/meson.json b/packages/native/meson.json index 2dffd08..6275f82 100644 --- a/packages/native/meson.json +++ b/packages/native/meson.json @@ -10,14 +10,14 @@ } ], "dependencies": [ - "all:native/python@3.11.13" + "*:native/python@3.11.13" ], "build": { "env": [], "steps": [ - "all:python3 ./packaging/create_zipapp.py --outfile meson.pyz --interpreter \"$(which python3)\" .", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin/", - "all:mv meson.pyz $STAGING_DIR$PREFIX/native/bin/meson" + "*:python3 ./packaging/create_zipapp.py --outfile meson.pyz --interpreter \"$(which python3)\" .", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", + "*:mv meson.pyz $STAGING_DIR$PREFIX/native/bin/meson" ] } } \ No newline at end of file diff --git a/packages/native/mpc.json b/packages/native/mpc.json index 3fd273e..5ff8d7f 100644 --- a/packages/native/mpc.json +++ b/packages/native/mpc.json @@ -10,20 +10,20 @@ } ], "dependencies": [ - "all:native/gmp", - "all:native/make", - "all:native/mpfr" + "*:native/gmp", + "*:native/make", + "*:native/mpfr" ], "build": { "env": [ - "all:config_opts=--prefix=$PREFIX/native", - "all:config_opts=$config_opts --disable-shared", - "all:config_opts=$config_opts --enable-static" + "*:config_opts=--prefix=$PREFIX/native", + "*:config_opts=$config_opts --disable-shared", + "*:config_opts=$config_opts --enable-static" ], "steps": [ - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/mpfr.json b/packages/native/mpfr.json index f9b0ee9..ff1f0f1 100644 --- a/packages/native/mpfr.json +++ b/packages/native/mpfr.json @@ -10,19 +10,19 @@ } ], "dependencies": [ - "all:native/gmp", - "all:native/make" + "*:native/gmp", + "*:native/make" ], "build": { "env": [ - "all:config_opts=--prefix=$PREFIX/native", - "all:config_opts=$config_opts --disable-shared", - "all:config_opts=$config_opts --enable-static" + "*:config_opts=--prefix=$PREFIX/native", + "*:config_opts=$config_opts --disable-shared", + "*:config_opts=$config_opts --enable-static" ], "steps": [ - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/ndk.json b/packages/native/ndk.json index f506de6..b11f659 100644 --- a/packages/native/ndk.json +++ b/packages/native/ndk.json @@ -119,10 +119,10 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/ninja", - "all:native/python@3.11.13" + "*-android*:native/cmake", + "*-android*:native/make", + "*-android*:native/ninja", + "*-android*:native/python@3.11.13" ], "build": { "steps": [ diff --git a/packages/native/ninja.json b/packages/native/ninja.json index 3a75e70..28aaeda 100644 --- a/packages/native/ninja.json +++ b/packages/native/ninja.json @@ -10,15 +10,15 @@ } ], "dependencies": [ - "all:native/python@3.11.13" + "*:native/python@3.11.13" ], "build": { "env": [], "steps": [ - "all:python3 ./configure.py --bootstrap", - "all:./ninja all", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp ninja $STAGING_DIR$PREFIX/native/bin" + "*:python3 ./configure.py --bootstrap", + "*:./ninja all", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp ninja $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/nproc.json b/packages/native/nproc.json index e07a7d3..f06a19e 100644 --- a/packages/native/nproc.json +++ b/packages/native/nproc.json @@ -12,9 +12,9 @@ "build": { "env": [], "steps": [ - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp nproc.sh $STAGING_DIR$PREFIX/native/bin/nproc", - "all:chmod +x $STAGING_DIR$PREFIX/native/bin/nproc" + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp nproc.sh $STAGING_DIR$PREFIX/native/bin/nproc", + "*:chmod +x $STAGING_DIR$PREFIX/native/bin/nproc" ] } } \ No newline at end of file diff --git a/packages/native/openssl.json b/packages/native/openssl.json index 5d2a664..2de6eaa 100644 --- a/packages/native/openssl.json +++ b/packages/native/openssl.json @@ -10,24 +10,24 @@ } ], "dependencies": [ - "all:native/make", - "all:native/perl", - "all:native/xz" + "*:native/make", + "*:native/perl", + "*:native/xz" ], "build": { "env": [ - "all:config_opts=--prefix=$PREFIX/native --openssldir=$PREFIX/native/etc/openssl --libdir=$PREFIX/native/lib", - "all:config_opts=$config_opts no-ec_nistp_64_gcc_128", - "all:config_opts=$config_opts no-shared", - "all:config_opts=$config_opts no-tests", - "all:config_opts=$config_opts no-unit-test" + "*:config_opts=--prefix=$PREFIX/native --openssldir=$PREFIX/native/etc/openssl --libdir=$PREFIX/native/lib", + "*:config_opts=$config_opts no-ec_nistp_64_gcc_128", + "*:config_opts=$config_opts no-shared", + "*:config_opts=$config_opts no-tests", + "*:config_opts=$config_opts no-unit-test" ], "steps": [ - "all:sed -i.bak 's/#define DATE \"built on: \\$date\"/#define DATE \"built on: Jan 1 1970 00:00:01\"/' util/mkbuildinf.pl", - "all:sed -i.bak 's|crypto ssl apps util tools fuzz providers doc|crypto ssl util tools providers|' build.info", - "all:./Configure $config_opts", - "all:make -j$NUM_CORES build_libs", - "all:make -j$NUM_CORES DESTDIR=$STAGING_DIR install_sw" + "*:sed -i.bak 's/#define DATE \"built on: \\$date\"/#define DATE \"built on: Jan 1 1970 00:00:01\"/' util/mkbuildinf.pl", + "*:sed -i.bak 's|crypto ssl apps util tools fuzz providers doc|crypto ssl util tools providers|' build.info", + "*:./Configure $config_opts", + "*:make -j$NUM_CORES build_libs", + "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install_sw" ] } } \ No newline at end of file diff --git a/packages/native/p7zip.json b/packages/native/p7zip.json index 846c3ec..9068a3d 100644 --- a/packages/native/p7zip.json +++ b/packages/native/p7zip.json @@ -10,17 +10,17 @@ } ], "dependencies": [ - "all:native/make" + "*:native/make" ], "build": { "env": [], "steps": [ - "all:if [ $(uname) = 'Darwin' ]; then cp makefile.macosx_llvm_64bits makefile.machine; else true; fi", - "all:if [ $(uname) = 'Linux' ]; then cp makefile.linux_any_cpu makefile.machine; else true; fi", - "all:sed -i.bak 's/switch(errorCode)/switch(static_cast(errorCode))/' ./CPP/Windows/ErrorMsg.cpp", - "all:make -j$NUM_CORES 7za", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp bin/7za $STAGING_DIR$PREFIX/native/bin/7z" + "*:if [ $(uname) = 'Darwin' ]; then cp makefile.macosx_llvm_64bits makefile.machine; else true; fi", + "*:if [ $(uname) = 'Linux' ]; then cp makefile.linux_any_cpu makefile.machine; else true; fi", + "*:sed -i.bak 's/switch(errorCode)/switch(static_cast(errorCode))/' ./CPP/Windows/ErrorMsg.cpp", + "*:make -j$NUM_CORES 7za", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp bin/7za $STAGING_DIR$PREFIX/native/bin/7z" ] } } \ No newline at end of file diff --git a/packages/native/patch.json b/packages/native/patch.json index 17fd298..33aceae 100644 --- a/packages/native/patch.json +++ b/packages/native/patch.json @@ -10,16 +10,16 @@ } ], "dependencies": [ - "all:native/make" + "*:native/make" ], "build": { "env": [ - "all:config_opts=--prefix=$PREFIX/native" + "*:config_opts=--prefix=$PREFIX/native" ], "steps": [ - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/pbzx.json b/packages/native/pbzx.json index 573c92d..cb67f05 100644 --- a/packages/native/pbzx.json +++ b/packages/native/pbzx.json @@ -10,15 +10,15 @@ } ], "dependencies": [ - "all:native/make", - "all:native/xar", - "all:native/xz" + "*:native/make", + "*:native/xar", + "*:native/xz" ], "build": { "env": [], "steps": [ - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:$CC -O2 -Wall -I $PREFIX/native/include -L $PREFIX/native/lib pbzx.c -o $STAGING_DIR$PREFIX/native/bin/pbzx -llzma -lxar -Wl,-rpath,$PREFIX/native/lib" + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:$CC -O2 -Wall -I $PREFIX/native/include -L $PREFIX/native/lib pbzx.c -o $STAGING_DIR$PREFIX/native/bin/pbzx -llzma -lxar -Wl,-rpath,$PREFIX/native/lib" ] } } \ No newline at end of file diff --git a/packages/native/perl.json b/packages/native/perl.json index 4e06d4d..cf5cdc2 100644 --- a/packages/native/perl.json +++ b/packages/native/perl.json @@ -10,15 +10,15 @@ } ], "dependencies": [ - "all:native/make" + "*:native/make" ], "build": { "env": [], "steps": [ - "all:sed -i.bak '/^#ifndef PERL_BUILD_DATE$/,/^#endif$/{/^#ifndef PERL_BUILD_DATE$/!d; s/.*/\\#define PERL_BUILD_DATE \"Jan 1 1970 00:00:01\"/;}' perl.c", - "all:./Configure -des -Dprefix=$PREFIX/native -Duseithreads -Dall_static", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:sed -i.bak '/^#ifndef PERL_BUILD_DATE$/,/^#endif$/{/^#ifndef PERL_BUILD_DATE$/!d; s/.*/\\#define PERL_BUILD_DATE \"Jan 1 1970 00:00:01\"/;}' perl.c", + "*:./Configure -des -Dprefix=$PREFIX/native -Duseithreads -Dall_static", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/pkgconf.json b/packages/native/pkgconf.json index f431beb..cf98cc9 100644 --- a/packages/native/pkgconf.json +++ b/packages/native/pkgconf.json @@ -10,23 +10,23 @@ } ], "dependencies": [ - "all:native/autoconf", - "all:native/automake", - "all:native/libtool", - "all:native/m4", - "all:native/make", - "all:native/perl" + "*:native/autoconf", + "*:native/automake", + "*:native/libtool", + "*:native/m4", + "*:native/make", + "*:native/perl" ], "build": { "env": [ - "all:PKGCONFIG_DIR=$PREFIX/native/lib/pkgconfig:$PREFIX/lib/pkgconfig" + "*:PKGCONFIG_DIR=$PREFIX/native/lib/pkgconfig:$PREFIX/lib/pkgconfig" ], "steps": [ - "all:sh ./autogen.sh", - "all:./configure --prefix=$PREFIX/native --with-pkg-config-dir=$PKGCONFIG_DIR", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install", - "all:ln -s pkgconf $STAGING_DIR$PREFIX/native/bin/pkg-config" + "*:sh ./autogen.sh", + "*:./configure --prefix=$PREFIX/native --with-pkg-config-dir=$PKGCONFIG_DIR", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install", + "*:ln -s pkgconf $STAGING_DIR$PREFIX/native/bin/pkg-config" ] } } \ No newline at end of file diff --git a/packages/native/protobuf.json b/packages/native/protobuf.json index 618a8a4..5dd5a1b 100644 --- a/packages/native/protobuf.json +++ b/packages/native/protobuf.json @@ -10,35 +10,35 @@ } ], "dependencies": [ - "all:native/autoconf", - "all:native/automake", - "all:native/config", - "all:native/m4", - "all:native/make", - "all:native/perl" + "*:native/autoconf", + "*:native/automake", + "*:native/config", + "*:native/m4", + "*:native/make", + "*:native/perl" ], "build": { "env": [ - "all:config_opts=--host=$HOST --prefix=$PREFIX/native", - "all:config_opts=$config_opts --disable-shared", + "*:config_opts=--host=$HOST --prefix=$PREFIX/native", + "*:config_opts=$config_opts --disable-shared", "*-linux-gnu:config_opts=$config_opts --with-pic", "*-linux-gnu:SHOULD_BUILD=", "*-w64-mingw32:SHOULD_BUILD=", "*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "all:$SHOULD_BUILD cp -f $PREFIX/native/usr/share/config/config.guess config.guess", - "all:$SHOULD_BUILD cp -f $PREFIX/native/usr/share/config/config.sub config.sub", - "all:$SHOULD_BUILD cp -f $PREFIX/native/usr/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", - "all:$SHOULD_BUILD cp -f $PREFIX/native/usr/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", - "all:$SHOULD_BUILD cp -f $PREFIX/native/usr/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", - "all:$SHOULD_BUILD cp -f $PREFIX/native/usr/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", - "all:$SHOULD_BUILD aclocal", - "all:$SHOULD_BUILD automake --add-missing", - "all:$SHOULD_BUILD ./configure $config_opts", - "all:$SHOULD_BUILD make -j$NUM_CORES", - "all:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install", - "all:$SHOULD_BUILD rm $STAGING_DIR$PREFIX/native/lib/libprotoc.a || true" + "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess config.guess", + "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub config.sub", + "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", + "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", + "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", + "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", + "*:$SHOULD_BUILD aclocal", + "*:$SHOULD_BUILD automake --add-missing", + "*:$SHOULD_BUILD ./configure $config_opts", + "*:$SHOULD_BUILD make -j$NUM_CORES", + "*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install", + "*:$SHOULD_BUILD rm $STAGING_DIR$PREFIX/native/lib/libprotoc.a || true" ] } } \ No newline at end of file diff --git a/packages/native/python@3.11.13.json b/packages/native/python@3.11.13.json index aec9731..f30ebd2 100644 --- a/packages/native/python@3.11.13.json +++ b/packages/native/python@3.11.13.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "all:native/make", - "all:native/patch", - "all:native/zlib" + "*:native/make", + "*:native/patch", + "*:native/zlib" ], "build": { "env": [], "steps": [ - "all:sed -i.bak '/^#ifndef DATE/i\\\n\\/* Deterministic date and time. *\\/\\\n#define DATE \"Jan 1 1970\"\\\n#define TIME \"00:00:01\"\\\n' Modules/getbuildinfo.c", - "all:sed -i.bak 's/^#\\(zlib[[:space:]]\\+zlibmodule\\.c[[:space:]]\\+-lz\\)/\\1/' Modules/Setup", - "all:./configure --disable-test-modules --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install", + "*:sed -i.bak '/^#ifndef DATE/i\\\n\\/* Deterministic date and time. *\\/\\\n#define DATE \"Jan 1 1970\"\\\n#define TIME \"00:00:01\"\\\n' Modules/getbuildinfo.c", + "*:sed -i.bak 's/^#\\(zlib[[:space:]]\\+zlibmodule\\.c[[:space:]]\\+-lz\\)/\\1/' Modules/Setup", + "*:./configure --disable-test-modules --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install", "none:mkdir -p $STAGING_DIR$PREFIX/native/python3.11.13", "none:cp -r pybuild/* $STAGING_DIR$PREFIX/native/python3.11.13" ] diff --git a/packages/native/rsync.json b/packages/native/rsync.json index aa01354..a24d3bd 100644 --- a/packages/native/rsync.json +++ b/packages/native/rsync.json @@ -10,21 +10,21 @@ } ], "dependencies": [ - "all:native/make", - "all:native/python@3.11.13" + "*:native/make", + "*:native/python@3.11.13" ], "build": { "env": [ - "all:config_opts=--prefix=$PREFIX/native", - "all:config_opts=$config_opts --disable-xxhash", - "all:config_opts=$config_opts --disable-openssl", - "all:config_opts=$config_opts --disable-zstd", - "all:config_opts=$config_opts --disable-lz4" + "*:config_opts=--prefix=$PREFIX/native", + "*:config_opts=$config_opts --disable-xxhash", + "*:config_opts=$config_opts --disable-openssl", + "*:config_opts=$config_opts --disable-zstd", + "*:config_opts=$config_opts --disable-lz4" ], "steps": [ - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_54_0.json b/packages/native/rust@1_54_0.json index f49dfd7..1c703b8 100644 --- a/packages/native/rust@1_54_0.json +++ b/packages/native/rust@1_54_0.json @@ -16,37 +16,37 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/patch", - "all:native/perl", - "all:native/zlib" + "*:native/cmake", + "*:native/make", + "*:native/patch", + "*:native/perl", + "*:native/zlib" ], "patches": [ "codegen_c.cpp.patch" ], "build": { "env": [ - "all:PARLEVEL=$NUM_CORES" + "*:PARLEVEL=$NUM_CORES" ], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/codegen_c.cpp.patch", - "all:if [ $(uname) = 'Darwin' ] && [ $(uname -m) = 'arm64' ]; then sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=aarch64/' script-overrides/stable-1.54.0-macos/build_std.txt; else echo not patching for macos; fi", - "all:if [ $(uname) = 'Linux' ] && [ $(uname -m) = 'aarch64' ]; then sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=arm64/' script-overrides/stable-1.54.0-linux/build_std.txt; else echo not patching for linux; fi", - "all:sed -i.bak 's/^make$/make $@/' build-1.54.0.sh", - "all:if [ $(uname) = 'Darwin' ]; then sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-apple-darwin/RUSTC_TARGET ?= aarch64-apple-darwin/' run_rustc/Makefile; else true; fi", - "all:echo >> build-1.54.0.sh", - "all:echo make -C run_rustc >> build-1.54.0.sh", - "all:env -i CXXFLAGS_EXTRA=\"$CFLAGS\" LINKFLAGS_EXTRA=\"$LDFLAGS\" PATH=$PATH PARLEVEL=$NUM_CORES ./build-1.54.0.sh -j$NUM_CORES", + "*:patch -p1 < $PATCH_DIR/rust/codegen_c.cpp.patch", + "*:if [ $(uname) = 'Darwin' ] && [ $(uname -m) = 'arm64' ]; then sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=aarch64/' script-overrides/stable-1.54.0-macos/build_std.txt; else echo not patching for macos; fi", + "*:if [ $(uname) = 'Linux' ] && [ $(uname -m) = 'aarch64' ]; then sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=arm64/' script-overrides/stable-1.54.0-linux/build_std.txt; else echo not patching for linux; fi", + "*:sed -i.bak 's/^make$/make $@/' build-1.54.0.sh", + "*:if [ $(uname) = 'Darwin' ]; then sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-apple-darwin/RUSTC_TARGET ?= aarch64-apple-darwin/' run_rustc/Makefile; else true; fi", + "*:echo >> build-1.54.0.sh", + "*:echo make -C run_rustc >> build-1.54.0.sh", + "*:env -i CXXFLAGS_EXTRA=\"$CFLAGS\" LINKFLAGS_EXTRA=\"$LDFLAGS\" PATH=$PATH PARLEVEL=$NUM_CORES ./build-1.54.0.sh -j$NUM_CORES", "none:# FIXME bad dylib paths embedded in the rustc binary, forcing install_name_tool dark magic", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:mkdir -p $STAGING_DIR$PREFIX/native/lib", - "all:cp -a run_rustc/output-1.54.0/prefix/bin/* $STAGING_DIR$PREFIX/native/bin", - "all:if [ $(uname) = 'Linux' ]; then cp -a run_rustc/output-1.54.0/prefix/lib/rustlib/*/lib/*.so $STAGING_DIR$PREFIX/native/lib; else true; fi", - "all:cp -a run_rustc/output-1.54.0/prefix/lib/* $STAGING_DIR$PREFIX/native/lib", - "all:if [ $(uname) = 'Darwin' ]; then install_name_tool -change $PWD/run_rustc/output-1.54.0/build-rustc/aarch64-apple-darwin/release/deps/librustc_driver.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib $STAGING_DIR$PREFIX/native/bin/rustc_binary; else true; fi", - "all:if [ $(uname) = 'Darwin' ]; then install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/libstd.dylib $STAGING_DIR$PREFIX/native/bin/rustc_binary; else true; fi", - "all:if [ $(uname) = 'Darwin' ]; then install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/libstd.dylib $STAGING_DIR$PREFIX/native/lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib; else true; fi" + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:mkdir -p $STAGING_DIR$PREFIX/native/lib", + "*:cp -a run_rustc/output-1.54.0/prefix/bin/* $STAGING_DIR$PREFIX/native/bin", + "*:if [ $(uname) = 'Linux' ]; then cp -a run_rustc/output-1.54.0/prefix/lib/rustlib/*/lib/*.so $STAGING_DIR$PREFIX/native/lib; else true; fi", + "*:cp -a run_rustc/output-1.54.0/prefix/lib/* $STAGING_DIR$PREFIX/native/lib", + "*:if [ $(uname) = 'Darwin' ]; then install_name_tool -change $PWD/run_rustc/output-1.54.0/build-rustc/aarch64-apple-darwin/release/deps/librustc_driver.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib $STAGING_DIR$PREFIX/native/bin/rustc_binary; else true; fi", + "*:if [ $(uname) = 'Darwin' ]; then install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/libstd.dylib $STAGING_DIR$PREFIX/native/bin/rustc_binary; else true; fi", + "*:if [ $(uname) = 'Darwin' ]; then install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/libstd.dylib $STAGING_DIR$PREFIX/native/lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib; else true; fi" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_55_0.json b/packages/native/rust@1_55_0.json index cb1a5a9..3771b1e 100644 --- a/packages/native/rust@1_55_0.json +++ b/packages/native/rust@1_55_0.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_54_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_54_0" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_55_0/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:patch -p1 < $PATCH_DIR/rust/1_55_0/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_56_1.json b/packages/native/rust@1_56_1.json index 0b17533..2186579 100644 --- a/packages/native/rust@1_56_1.json +++ b/packages/native/rust@1_56_1.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_55_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_55_0" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_57_0.json b/packages/native/rust@1_57_0.json index 5c6226b..d78413c 100644 --- a/packages/native/rust@1_57_0.json +++ b/packages/native/rust@1_57_0.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_56_1" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_56_1" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_58_1.json b/packages/native/rust@1_58_1.json index 0b3f653..e739b0e 100644 --- a/packages/native/rust@1_58_1.json +++ b/packages/native/rust@1_58_1.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_57_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_57_0" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_59_0.json b/packages/native/rust@1_59_0.json index 0f7a043..98a474c 100644 --- a/packages/native/rust@1_59_0.json +++ b/packages/native/rust@1_59_0.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_58_1" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_58_1" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_60_0.json b/packages/native/rust@1_60_0.json index 1ce02b6..7d36e2a 100644 --- a/packages/native/rust@1_60_0.json +++ b/packages/native/rust@1_60_0.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_59_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_59_0" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_61_0.json b/packages/native/rust@1_61_0.json index ad4f5b0..d334a58 100644 --- a/packages/native/rust@1_61_0.json +++ b/packages/native/rust@1_61_0.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_60_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_60_0" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_62_1.json b/packages/native/rust@1_62_1.json index 28cc5e1..5311af6 100644 --- a/packages/native/rust@1_62_1.json +++ b/packages/native/rust@1_62_1.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_61_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_61_0" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_63_0.json b/packages/native/rust@1_63_0.json index 7ba4bce..12a8caa 100644 --- a/packages/native/rust@1_63_0.json +++ b/packages/native/rust@1_63_0.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_62_1" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_62_1" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_64_0.json b/packages/native/rust@1_64_0.json index fd582a4..5935f88 100644 --- a/packages/native/rust@1_64_0.json +++ b/packages/native/rust@1_64_0.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_63_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_63_0" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_65_0.json b/packages/native/rust@1_65_0.json index 7329a49..e63baa7 100644 --- a/packages/native/rust@1_65_0.json +++ b/packages/native/rust@1_65_0.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_64_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_64_0" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_66_1.json b/packages/native/rust@1_66_1.json index f709741..aa32192 100644 --- a/packages/native/rust@1_66_1.json +++ b/packages/native/rust@1_66_1.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_65_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_65_0" ], "patches": [ "assembly.h.patch", @@ -25,26 +25,26 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'assertions = true' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:echo '[rust]' >> config.toml", - "all:echo 'debug = true' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'assertions = true' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:echo '[rust]' >> config.toml", + "*:echo 'debug = true' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_67_1.json b/packages/native/rust@1_67_1.json index 97e6f21..6e12759 100644 --- a/packages/native/rust@1_67_1.json +++ b/packages/native/rust@1_67_1.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_66_1" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_66_1" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -i PATH=$PATH python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -i PATH=$PATH python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_68_2.json b/packages/native/rust@1_68_2.json index 0da4f8c..bef1e04 100644 --- a/packages/native/rust@1_68_2.json +++ b/packages/native/rust@1_68_2.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_67_1" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_67_1" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_69_0.json b/packages/native/rust@1_69_0.json index c134c46..da573cc 100644 --- a/packages/native/rust@1_69_0.json +++ b/packages/native/rust@1_69_0.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_68_2" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_68_2" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_70_0.json b/packages/native/rust@1_70_0.json index e307dc8..4542495 100644 --- a/packages/native/rust@1_70_0.json +++ b/packages/native/rust@1_70_0.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_69_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_69_0" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_71_1.json b/packages/native/rust@1_71_1.json index e77be3f..1a97834 100644 --- a/packages/native/rust@1_71_1.json +++ b/packages/native/rust@1_71_1.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_70_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_70_0" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j$NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j$NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_72_1.json b/packages/native/rust@1_72_1.json index 05e276b..5a89b98 100644 --- a/packages/native/rust@1_72_1.json +++ b/packages/native/rust@1_72_1.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_71_1" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_71_1" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_73_0.json b/packages/native/rust@1_73_0.json index ea13c7e..99ee5be 100644 --- a/packages/native/rust@1_73_0.json +++ b/packages/native/rust@1_73_0.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_72_1" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_72_1" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_74_1.json b/packages/native/rust@1_74_1.json index 8ed128a..cff7039 100644 --- a/packages/native/rust@1_74_1.json +++ b/packages/native/rust@1_74_1.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_73_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_73_0" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_75_0.json b/packages/native/rust@1_75_0.json index 70cb31d..8074c2a 100644 --- a/packages/native/rust@1_75_0.json +++ b/packages/native/rust@1_75_0.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_74_1" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_74_1" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "all:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "all:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_76_0.json b/packages/native/rust@1_76_0.json index 071d8f9..8029e4e 100644 --- a/packages/native/rust@1_76_0.json +++ b/packages/native/rust@1_76_0.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_75_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_75_0" ], "patches": [ "assembly.h.patch" @@ -24,21 +24,21 @@ "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_77_1.json b/packages/native/rust@1_77_1.json index 58255e6..224ea70 100644 --- a/packages/native/rust@1_77_1.json +++ b/packages/native/rust@1_77_1.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/patch", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_76_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/patch", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_76_0" ], "patches": [ "assembly.h.patch" @@ -24,21 +24,21 @@ "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_78_0.json b/packages/native/rust@1_78_0.json index 526dc57..28d6970 100644 --- a/packages/native/rust@1_78_0.json +++ b/packages/native/rust@1_78_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_77_1" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_77_1" ], "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_79_0.json b/packages/native/rust@1_79_0.json index 9070841..beb2c0a 100644 --- a/packages/native/rust@1_79_0.json +++ b/packages/native/rust@1_79_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_78_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_78_0" ], "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_80_1.json b/packages/native/rust@1_80_1.json index 6dcf0da..4cb9f13 100644 --- a/packages/native/rust@1_80_1.json +++ b/packages/native/rust@1_80_1.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_79_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_79_0" ], "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_81_0.json b/packages/native/rust@1_81_0.json index 764d827..1823cad 100644 --- a/packages/native/rust@1_81_0.json +++ b/packages/native/rust@1_81_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_80_1" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_80_1" ], "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_82_0.json b/packages/native/rust@1_82_0.json index ba2414e..19bd49f 100644 --- a/packages/native/rust@1_82_0.json +++ b/packages/native/rust@1_82_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_81_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_81_0" ], "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_83_0.json b/packages/native/rust@1_83_0.json index 76e9538..6fb8b28 100644 --- a/packages/native/rust@1_83_0.json +++ b/packages/native/rust@1_83_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_82_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_82_0" ], "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_84_1.json b/packages/native/rust@1_84_1.json index cebde38..8480141 100644 --- a/packages/native/rust@1_84_1.json +++ b/packages/native/rust@1_84_1.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_83_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_83_0" ], "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_85_1.json b/packages/native/rust@1_85_1.json index 6937a38..be320d8 100644 --- a/packages/native/rust@1_85_1.json +++ b/packages/native/rust@1_85_1.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_84_1" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_84_1" ], "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_86_0.json b/packages/native/rust@1_86_0.json index 59740fa..e4bf651 100644 --- a/packages/native/rust@1_86_0.json +++ b/packages/native/rust@1_86_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_85_1" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_85_1" ], "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_87_0.json b/packages/native/rust@1_87_0.json index 4bac9eb..b0cccd2 100644 --- a/packages/native/rust@1_87_0.json +++ b/packages/native/rust@1_87_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_86_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_86_0" ], "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage0-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage0-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_88_0.json b/packages/native/rust@1_88_0.json index 2fde79f..8b5fa4b 100644 --- a/packages/native/rust@1_88_0.json +++ b/packages/native/rust@1_88_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_87_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_87_0" ], "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_89_0.json b/packages/native/rust@1_89_0.json index a16e45e..7d27dee 100644 --- a/packages/native/rust@1_89_0.json +++ b/packages/native/rust@1_89_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_88_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_88_0" ], "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo '[build]' > config.toml", + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_90_0.json b/packages/native/rust@1_90_0.json index e5bff6d..d07276b 100644 --- a/packages/native/rust@1_90_0.json +++ b/packages/native/rust@1_90_0.json @@ -10,17 +10,17 @@ } ], "dependencies": [ - "all:native/cmake", - "all:native/make", - "all:native/openssl", - "all:native/pkgconf", - "all:native/python@3.11.13", - "all:native/rust@1_89_0" + "*:native/cmake", + "*:native/make", + "*:native/openssl", + "*:native/pkgconf", + "*:native/python@3.11.13", + "*:native/rust@1_89_0" ], "build": { "env": [], "steps": [ - "all:echo '[build]' > config.toml", + "*:echo '[build]' > config.toml", "aarch64-apple-darwin:echo 'target = [\"aarch64-apple-darwin\"]' >> config.toml", "x86_64-apple-darwin:echo 'target = [\"x86_64-apple-darwin\"]' >> config.toml", "aarch64-apple-ios:echo 'target = [\"aarch64-apple-ios\"]' >> config.toml", @@ -30,20 +30,20 @@ "aarch64-linux-android:echo 'target = [\"aarch64-linux-android\"]' >> config.toml", "x86_64-linux-android:echo 'target = [\"x86_64-linux-android\"]' >> config.toml", "armv7a-linux-androideabi:echo 'target = [\"armv7-linux-androideabi\"]' >> config.toml", - "all:echo 'full-bootstrap = true' >> config.toml", - "all:echo 'vendor = true' >> config.toml", - "all:echo 'extended = true' >> config.toml", - "all:echo 'tools = [\"cargo\"]' >> config.toml", - "all:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "all:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "all:echo '[llvm]' >> config.toml", - "all:echo 'ninja = false' >> config.toml", - "all:echo 'download-ci-llvm = false' >> config.toml", - "all:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "all:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "all:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:echo 'full-bootstrap = true' >> config.toml", + "*:echo 'vendor = true' >> config.toml", + "*:echo 'extended = true' >> config.toml", + "*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:echo '[llvm]' >> config.toml", + "*:echo 'ninja = false' >> config.toml", + "*:echo 'download-ci-llvm = false' >> config.toml", + "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/sed.json b/packages/native/sed.json index 05b8b56..b3667f7 100644 --- a/packages/native/sed.json +++ b/packages/native/sed.json @@ -10,15 +10,15 @@ } ], "dependencies": [ - "all:native/make", - "all:native/perl" + "*:native/make", + "*:native/perl" ], "build": { "env": [], "steps": [ - "all:./configure --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/texinfo.json b/packages/native/texinfo.json index f42ef71..95a7a31 100644 --- a/packages/native/texinfo.json +++ b/packages/native/texinfo.json @@ -10,20 +10,20 @@ } ], "dependencies": [ - "all:native/automake", - "all:native/gawk", - "all:native/gettext", - "all:native/make", - "all:native/perl" + "*:native/automake", + "*:native/gawk", + "*:native/gettext", + "*:native/make", + "*:native/perl" ], "build": { "env": [ - "all:HELP2MAN=true" + "*:HELP2MAN=true" ], "steps": [ - "all:./configure --prefix=$PREFIX/native", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/xar.json b/packages/native/xar.json index e731e19..1539385 100644 --- a/packages/native/xar.json +++ b/packages/native/xar.json @@ -10,22 +10,22 @@ } ], "dependencies": [ - "all:native/bzip2", - "all:native/make", - "all:native/openssl", - "all:native/xz" + "*:native/bzip2", + "*:native/make", + "*:native/openssl", + "*:native/xz" ], "build": { "env": [ - "all:CFLAGS=$CFLAGS -w", - "all:config_opts=--with-bzip2", - "all:config_opts=$config_opts --with-lzma=$PREFIX/native" + "*:CFLAGS=$CFLAGS -w", + "*:config_opts=--with-bzip2", + "*:config_opts=$config_opts --with-lzma=$PREFIX/native" ], "steps": [ - "all:cd xar && ./configure --prefix=$PREFIX/native", - "all:cd xar && make -j$NUM_CORES", - "all:cd xar && make DESTDIR=$STAGING_DIR install", - "all:mkdir -p $STAGING_DIR$PREFIX/native/include" + "*:cd xar && ./configure --prefix=$PREFIX/native", + "*:cd xar && make -j$NUM_CORES", + "*:cd xar && make DESTDIR=$STAGING_DIR install", + "*:mkdir -p $STAGING_DIR$PREFIX/native/include" ] } } \ No newline at end of file diff --git a/packages/native/xmlto.json b/packages/native/xmlto.json index 55ff8cd..0b5d58b 100644 --- a/packages/native/xmlto.json +++ b/packages/native/xmlto.json @@ -10,21 +10,21 @@ } ], "dependencies": [ - "all:native/automake", - "all:native/flex", - "all:native/gawk", - "all:native/gettext", - "all:native/libxml2", - "all:native/make", - "all:native/perl" + "*:native/automake", + "*:native/flex", + "*:native/gawk", + "*:native/gettext", + "*:native/libxml2", + "*:native/make", + "*:native/perl" ], "build": { "env": [], "steps": [ - "all:autoreconf -f -i", - "all:./configure --prefix=$PREFIX/native", - "all:make xmlto -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install-exec" + "*:autoreconf -f -i", + "*:./configure --prefix=$PREFIX/native", + "*:make xmlto -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install-exec" ] } } \ No newline at end of file diff --git a/packages/native/zlib.json b/packages/native/zlib.json index 00259cd..ae2e3e4 100644 --- a/packages/native/zlib.json +++ b/packages/native/zlib.json @@ -10,20 +10,20 @@ } ], "dependencies": [ - "all:native/libtool", - "all:native/make" + "*:native/libtool", + "*:native/make" ], "build": { "env": [ - "all:CFLAGS=$CFLAGS -fPIC", - "all:config_opts=--prefix=$PREFIX/native --static", - "all:LIBTOOL=$PREFIX/native/bin/libtool", - "all:CROSS_PREFIX=$HOST-" + "*:CFLAGS=$CFLAGS -fPIC", + "*:config_opts=--prefix=$PREFIX/native --static", + "*:LIBTOOL=$PREFIX/native/bin/libtool", + "*:CROSS_PREFIX=$HOST-" ], "steps": [ - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/ncurses.json b/packages/ncurses.json index 8d85e0c..e426772 100644 --- a/packages/ncurses.json +++ b/packages/ncurses.json @@ -10,57 +10,57 @@ } ], "dependencies": [ - "all:native/_" + "*:native/_" ], "patches": [ "fallback.c" ], "build": { "env": [ - "all:config_opts=--host=$HOST --prefix=$PREFIX", + "*:config_opts=--host=$HOST --prefix=$PREFIX", "*-linux-gnu:cf_cv_ar_flags=", - "all:config_opts=$config_opts --disable-shared", - "all:config_opts=$config_opts --with-build-cc=gcc", - "all:config_opts=$config_opts --without-debug", - "all:config_opts=$config_opts --without-ada", - "all:config_opts=$config_opts --without-cxx-binding", - "all:config_opts=$config_opts --without-cxx", - "all:config_opts=$config_opts --without-ticlib", - "all:config_opts=$config_opts --without-tic", - "all:config_opts=$config_opts --without-progs", - "all:config_opts=$config_opts --without-tests", - "all:config_opts=$config_opts --without-tack", - "all:config_opts=$config_opts --without-manpages", - "all:config_opts=$config_opts --with-termlib", - "all:config_opts=$config_opts --disable-tic-depends", - "all:config_opts=$config_opts --disable-big-strings", - "all:config_opts=$config_opts --disable-ext-colors", - "all:config_opts=$config_opts --enable-pc-files", - "all:config_opts=$config_opts --without-shared", - "all:config_opts=$config_opts --without-pthread", - "all:config_opts=$config_opts --disable-rpath", - "all:config_opts=$config_opts --disable-colorfgbg", - "all:config_opts=$config_opts --disable-ext-mouse", - "all:config_opts=$config_opts --disable-symlinks", - "all:config_opts=$config_opts --enable-warnings", - "all:config_opts=$config_opts --enable-assertions", - "all:config_opts=$config_opts --with-default-terminfo-dir=/etc/_terminfo_", - "all:config_opts=$config_opts --with-terminfo-dirs=/etc/_terminfo_", - "all:config_opts=$config_opts --enable-database", - "all:config_opts=$config_opts --enable-sp-funcs", - "all:config_opts=$config_opts --disable-term-driver", - "all:config_opts=$config_opts --enable-interop", - "all:config_opts=$config_opts --enable-widec", - "all:SHOULD_BUILD=echo", + "*:config_opts=$config_opts --disable-shared", + "*:config_opts=$config_opts --with-build-cc=gcc", + "*:config_opts=$config_opts --without-debug", + "*:config_opts=$config_opts --without-ada", + "*:config_opts=$config_opts --without-cxx-binding", + "*:config_opts=$config_opts --without-cxx", + "*:config_opts=$config_opts --without-ticlib", + "*:config_opts=$config_opts --without-tic", + "*:config_opts=$config_opts --without-progs", + "*:config_opts=$config_opts --without-tests", + "*:config_opts=$config_opts --without-tack", + "*:config_opts=$config_opts --without-manpages", + "*:config_opts=$config_opts --with-termlib", + "*:config_opts=$config_opts --disable-tic-depends", + "*:config_opts=$config_opts --disable-big-strings", + "*:config_opts=$config_opts --disable-ext-colors", + "*:config_opts=$config_opts --enable-pc-files", + "*:config_opts=$config_opts --without-shared", + "*:config_opts=$config_opts --without-pthread", + "*:config_opts=$config_opts --disable-rpath", + "*:config_opts=$config_opts --disable-colorfgbg", + "*:config_opts=$config_opts --disable-ext-mouse", + "*:config_opts=$config_opts --disable-symlinks", + "*:config_opts=$config_opts --enable-warnings", + "*:config_opts=$config_opts --enable-assertions", + "*:config_opts=$config_opts --with-default-terminfo-dir=/etc/_terminfo_", + "*:config_opts=$config_opts --with-terminfo-dirs=/etc/_terminfo_", + "*:config_opts=$config_opts --enable-database", + "*:config_opts=$config_opts --enable-sp-funcs", + "*:config_opts=$config_opts --disable-term-driver", + "*:config_opts=$config_opts --enable-interop", + "*:config_opts=$config_opts --enable-widec", + "*:SHOULD_BUILD=echo", "*-linux-*:SHOULD_BUILD=", "*-w64-mingw32:SHOULD_BUILD=", "*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "all:$SHOULD_BUILD cp $PATCH_DIR/ncurses/fallback.c ncurses", - "all:$SHOULD_BUILD ./configure $config_opts", - "all:$SHOULD_BUILD make -j$NUM_CORES $build_opts", - "all:$SHOULD_BUILD make install.libs DESTDIR=$STAGING_DIR" + "*:$SHOULD_BUILD cp $PATCH_DIR/ncurses/fallback.c ncurses", + "*:$SHOULD_BUILD ./configure $config_opts", + "*:$SHOULD_BUILD make -j$NUM_CORES $build_opts", + "*:$SHOULD_BUILD make install.libs DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/openssl.json b/packages/openssl.json index 5495aba..e7428ae 100644 --- a/packages/openssl.json +++ b/packages/openssl.json @@ -10,7 +10,7 @@ } ], "dependencies": [ - "all:native/_" + "*:native/_" ], "build": { "env": [ @@ -18,25 +18,25 @@ "*-android*:CC=clang", "*-android*:AR=ar", "*-android*:RANLIB=ranlib", - "all:config_opts=--prefix=$PREFIX --openssldir=$PREFIX/etc/openssl --libdir=$PREFIX/lib", - "all:config_opts=$config_opts no-capieng", - "all:config_opts=$config_opts no-dso", - "all:config_opts=$config_opts no-dtls1", - "all:config_opts=$config_opts no-ec_nistp_64_gcc_128", - "all:config_opts=$config_opts no-gost", - "all:config_opts=$config_opts no-md2", - "all:config_opts=$config_opts no-rc5", - "all:config_opts=$config_opts no-rdrand", - "all:config_opts=$config_opts no-rfc3779", - "all:config_opts=$config_opts no-sctp", - "all:config_opts=$config_opts no-shared", - "all:config_opts=$config_opts no-ssl-trace", - "all:config_opts=$config_opts no-ssl3", - "all:config_opts=$config_opts no-tests", - "all:config_opts=$config_opts no-unit-test", - "all:config_opts=$config_opts no-weak-ssl-ciphers", - "all:config_opts=$config_opts no-zlib", - "all:config_opts=$config_opts no-zlib-dynamic", + "*:config_opts=--prefix=$PREFIX --openssldir=$PREFIX/etc/openssl --libdir=$PREFIX/lib", + "*:config_opts=$config_opts no-capieng", + "*:config_opts=$config_opts no-dso", + "*:config_opts=$config_opts no-dtls1", + "*:config_opts=$config_opts no-ec_nistp_64_gcc_128", + "*:config_opts=$config_opts no-gost", + "*:config_opts=$config_opts no-md2", + "*:config_opts=$config_opts no-rc5", + "*:config_opts=$config_opts no-rdrand", + "*:config_opts=$config_opts no-rfc3779", + "*:config_opts=$config_opts no-sctp", + "*:config_opts=$config_opts no-shared", + "*:config_opts=$config_opts no-ssl-trace", + "*:config_opts=$config_opts no-ssl3", + "*:config_opts=$config_opts no-tests", + "*:config_opts=$config_opts no-unit-test", + "*:config_opts=$config_opts no-weak-ssl-ciphers", + "*:config_opts=$config_opts no-zlib", + "*:config_opts=$config_opts no-zlib-dynamic", "*linux*:config_opts=$config_opts -fPIC -Wa,--noexecstack", "x86_64-linux*:config_opts=$config_opts linux-x86_64", "i686-linux*:config_opts=$config_opts linux-generic32", @@ -51,12 +51,12 @@ "i686-w64-mingw32:config_opts=$config_opts mingw" ], "steps": [ - "all:sed -i.bak 's/#define DATE \"built on: \\$date\"/#define DATE \"built on: Jan 1 1970 00:00:01\"/' util/mkbuildinf.pl", - "all:sed -i.bak 's|crypto ssl apps util tools fuzz providers doc|crypto ssl util tools providers|' build.info", + "*:sed -i.bak 's/#define DATE \"built on: \\$date\"/#define DATE \"built on: Jan 1 1970 00:00:01\"/' util/mkbuildinf.pl", + "*:sed -i.bak 's|crypto ssl apps util tools fuzz providers doc|crypto ssl util tools providers|' build.info", "armv7a-linux-androideabi:sed -i.bak s/arm-linux-androideabi/armv7a-linux-androideabi/g ./Configurations/15-android.conf", - "all:./Configure $config_opts", - "all:make -j$NUM_CORES build_libs", - "all:make -j$NUM_CORES DESTDIR=$STAGING_DIR install_sw" + "*:./Configure $config_opts", + "*:make -j$NUM_CORES build_libs", + "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install_sw" ] } } \ No newline at end of file diff --git a/packages/polyseed.json b/packages/polyseed.json index cedfcfc..cc45bf6 100644 --- a/packages/polyseed.json +++ b/packages/polyseed.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "all:native/_" + "*:native/_" ], "build": { "env": [], "steps": [ - "all:cmake -DCMAKE_INSTALL_PREFIX=$PREFIX -DSTATIC=ON .", - "all:make -j$NUM_CORES DESTDIR=$STAGING_DIR install" + "*:cmake -DCMAKE_INSTALL_PREFIX=$PREFIX -DSTATIC=ON .", + "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/protobuf.json b/packages/protobuf.json index 63e93ca..49be613 100644 --- a/packages/protobuf.json +++ b/packages/protobuf.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "all:native/_" + "*:native/_" ], "patches": [ "visibility.patch" ], "build": { "env": [ - "all:CXXFLAGS=$CXXFLAGS -std=c++11", - "all:config_opts=--host=$HOST --prefix=$PREFIX", - "all:config_opts=$config_opts --disable-shared --with-protoc=$PREFIX/native/bin/protoc", + "*:CXXFLAGS=$CXXFLAGS -std=c++11", + "*:config_opts=--host=$HOST --prefix=$PREFIX", + "*:config_opts=$config_opts --disable-shared --with-protoc=$PREFIX/native/bin/protoc", "*-linux-gnu:$config_opts --with-pic", - "all:SHOULD_BUILD=echo", + "*:SHOULD_BUILD=echo", "*-linux-gnu:SHOULD_BUILD=", "*-w64-mingw32:SHOULD_BUILD=", "*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "all:$SHOULD_BUILD cp -f $PREFIX/native/usr/share/config/config.guess config.guess", - "all:$SHOULD_BUILD cp -f $PREFIX/native/usr/share/config/config.sub config.sub", - "all:$SHOULD_BUILD cp -f $PREFIX/native/usr/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", - "all:$SHOULD_BUILD cp -f $PREFIX/native/usr/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", - "all:$SHOULD_BUILD cp -f $PREFIX/native/usr/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", - "all:$SHOULD_BUILD cp -f $PREFIX/native/usr/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", - "all:$SHOULD_BUILD patch -p0 < $PATCH_DIR/protobuf/visibility.patch", - "all:$SHOULD_BUILD ./configure $config_opts", - "all:$SHOULD_BUILD make -j$NUM_CORES -C src libprotobuf.la", - "all:$SHOULD_BUILD make -j$NUM_CORES -C src DESTDIR=$STAGING_DIR install-libLTLIBRARIES install-nobase_includeHEADERS", - "all:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install-pkgconfigDATA" + "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess config.guess", + "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub config.sub", + "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", + "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", + "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", + "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", + "*:$SHOULD_BUILD patch -p0 < $PATCH_DIR/protobuf/visibility.patch", + "*:$SHOULD_BUILD ./configure $config_opts", + "*:$SHOULD_BUILD make -j$NUM_CORES -C src libprotobuf.la", + "*:$SHOULD_BUILD make -j$NUM_CORES -C src DESTDIR=$STAGING_DIR install-libLTLIBRARIES install-nobase_includeHEADERS", + "*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install-pkgconfigDATA" ] } } \ No newline at end of file diff --git a/packages/readline.json b/packages/readline.json index 068068c..c3bce05 100644 --- a/packages/readline.json +++ b/packages/readline.json @@ -10,21 +10,21 @@ } ], "dependencies": [ - "all:native/_", - "all:ncurses" + "*:native/_", + "*:ncurses" ], "build": { "env": [ - "all:config_opts=--host=$HOST --prefix=$PREFIX --exec-prefix=$PREFIX", - "all:config_opts=$config_opts --disable-shared --with-curses --disable-debug-mode", - "all:SHOULD_BUILD=echo", + "*:config_opts=--host=$HOST --prefix=$PREFIX --exec-prefix=$PREFIX", + "*:config_opts=$config_opts --disable-shared --with-curses --disable-debug-mode", + "*:SHOULD_BUILD=echo", "*-linux-*:SHOULD_BUILD=", "*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "all:$SHOULD_BUILD ./configure $config_opts", - "all:$SHOULD_BUILD make -j$NUM_CORES $build_opts", - "all:$SHOULD_BUILD make -j$NUM_CORES install DESTDIR=$STAGING_DIR prefix=$PREFIX exec-prefix=$PREFIX" + "*:$SHOULD_BUILD ./configure $config_opts", + "*:$SHOULD_BUILD make -j$NUM_CORES $build_opts", + "*:$SHOULD_BUILD make -j$NUM_CORES install DESTDIR=$STAGING_DIR prefix=$PREFIX exec-prefix=$PREFIX" ] } } \ No newline at end of file diff --git a/packages/selinux.json b/packages/selinux.json index 7848c4a..f426fce 100644 --- a/packages/selinux.json +++ b/packages/selinux.json @@ -10,30 +10,30 @@ } ], "dependencies": [ - "all:native/_", - "all:native/flex", - "all:native/python@3.11.13", - "all:audit-userspace", - "all:bzip2", - "all:glib", - "all:libcap", - "all:libxcrypt", - "all:pcre2" + "*:native/_", + "*:native/flex", + "*:native/python@3.11.13", + "*:audit-userspace", + "*:bzip2", + "*:glib", + "*:libcap", + "*:libxcrypt", + "*:pcre2" ], "build": { "env": [ - "all:PANDOC=true" + "*:PANDOC=true" ], "steps": [ - "all:cd libsepol && make PREFIX=$PREFIX -j$NUM_CORES", - "all:cd libsepol && make PREFIX=$PREFIX install && make install PREFIX=$PREFIX DESTDIR=$STAGING_DIR", - "all:cd checkpolicy && make y.tab.c", - "all:sed -i.bak 's/void yyerror/int yyerror/g' ./checkpolicy/y.tab.*", - "all:sed -i.bak 's/XMLTO = xmlto/XMLTO = true/g' ./secilc/Makefile", - "all:sed -i.bak 's/$(LIBSELINUX_LDLIBS)/$(LIBSELINUX_LDLIBS) -lsemanage/g' policycoreutils/semodule/Makefile", - "all:sed -i.bak 's/$(LIBSELINUX_LDLIBS)/$(LIBSELINUX_LDLIBS) -lsemanage -lsepol/g' policycoreutils/setsebool/Makefile", - "all:make PREFIX=$PREFIX -j$NUM_CORES", - "all:make PREFIX=$PREFIX install DESTDIR=$STAGING_DIR" + "*:cd libsepol && make PREFIX=$PREFIX -j$NUM_CORES", + "*:cd libsepol && make PREFIX=$PREFIX install && make install PREFIX=$PREFIX DESTDIR=$STAGING_DIR", + "*:cd checkpolicy && make y.tab.c", + "*:sed -i.bak 's/void yyerror/int yyerror/g' ./checkpolicy/y.tab.*", + "*:sed -i.bak 's/XMLTO = xmlto/XMLTO = true/g' ./secilc/Makefile", + "*:sed -i.bak 's/$(LIBSELINUX_LDLIBS)/$(LIBSELINUX_LDLIBS) -lsemanage/g' policycoreutils/semodule/Makefile", + "*:sed -i.bak 's/$(LIBSELINUX_LDLIBS)/$(LIBSELINUX_LDLIBS) -lsemanage -lsepol/g' policycoreutils/setsebool/Makefile", + "*:make PREFIX=$PREFIX -j$NUM_CORES", + "*:make PREFIX=$PREFIX install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/sodium.json b/packages/sodium.json index b53625f..02f7776 100644 --- a/packages/sodium.json +++ b/packages/sodium.json @@ -10,8 +10,8 @@ } ], "dependencies": [ - "all:native/_", - "all:native/config" + "*:native/_", + "*:native/config" ], "patches": [ "disable-glibc-getrandom-getentropy.patch", @@ -23,17 +23,17 @@ "*-android*:CC=clang", "*-android*:AR=ar", "*-android*:RANLIB=ranlib", - "all:config_opts=--host=$HOST --prefix=$PREFIX", - "all:config_opts=$config_opts --enable-static --disable-shared --with-pic" + "*:config_opts=--host=$HOST --prefix=$PREFIX", + "*:config_opts=$config_opts --enable-static --disable-shared --with-pic" ], "steps": [ - "all:cp -f $PREFIX/native/usr/share/config/config.guess build-aux/", - "all:cp -f $PREFIX/native/usr/share/config/config.sub build-aux/", - "all:patch -p1 < $PATCH_DIR/sodium/disable-glibc-getrandom-getentropy.patch", - "all:patch -p1 < $PATCH_DIR/sodium/fix-whitespace.patch", - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:cp -f $PREFIX/native/share/config/config.guess build-aux/", + "*:cp -f $PREFIX/native/share/config/config.sub build-aux/", + "*:patch -p1 < $PATCH_DIR/sodium/disable-glibc-getrandom-getentropy.patch", + "*:patch -p1 < $PATCH_DIR/sodium/fix-whitespace.patch", + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/torch.json b/packages/torch.json index ffc8b27..77a764e 100644 --- a/packages/torch.json +++ b/packages/torch.json @@ -10,25 +10,25 @@ } ], "dependencies": [ - "all:native/_", - "all:libevent", - "all:libtor", - "all:openssl", - "all:xz", - "all:zlib", - "all:zstd" + "*:native/_", + "*:libevent", + "*:libtor", + "*:openssl", + "*:xz", + "*:zlib", + "*:zstd" ], "build": { "env": [ - "all:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", - "all:config_opts=$config_opts -DTOR_BUILD_DIR=$PREFIX", - "all:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" + "*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", + "*:config_opts=$config_opts -DTOR_BUILD_DIR=$PREFIX", + "*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" ], "steps": [ - "all:mkdir build", - "all:cd build && cmake .. $config_opts", - "all:cd build && make -j$NUM_CORES", - "all:cd build && make install DESTDIR=$STAGING_DIR" + "*:mkdir build", + "*:cd build && cmake .. $config_opts", + "*:cd build && make -j$NUM_CORES", + "*:cd build && make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/unbound.json b/packages/unbound.json index 094a1e4..7de1884 100644 --- a/packages/unbound.json +++ b/packages/unbound.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "all:native/_", - "all:expat", - "all:openssl" + "*:native/_", + "*:expat", + "*:openssl" ], "patches": [ "disable-glibc-reallocarray.patch" ], "build": { "env": [ - "all:BUILD_HOST=$HOST", + "*:BUILD_HOST=$HOST", "aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios", - "all:config_opts=--disable-shared --enable-static --without-pyunbound --prefix=$PREFIX --host=$BUILD_HOST", - "all:config_opts=$config_opts --with-libexpat=$PREFIX --with-ssl=$PREFIX --with-libevent=no", - "all:config_opts=$config_opts --without-pythonmodule --disable-flto --with-pthreads --with-libunbound-only", + "*:config_opts=--disable-shared --enable-static --without-pyunbound --prefix=$PREFIX --host=$BUILD_HOST", + "*:config_opts=$config_opts --with-libexpat=$PREFIX --with-ssl=$PREFIX --with-libevent=no", + "*:config_opts=$config_opts --without-pythonmodule --disable-flto --with-pthreads --with-libunbound-only", "*-linux-*:config_opts=$config_opts --with-pic", "*-w64-*:config_opts=$config_opts --enable-static-exe --sysconfdir=/etc --prefix=$PREFIX --target=$PREFIX", "x86_64-apple-darwin:config_opts=$config_opts ac_cv_func_SHA384_Init=yes", "*-linux-android*:config_opts=$config_opts ac_cv_type_pthread_spinlock_t=no", "*-w64-mingw32:build_opts=$build_opts LDFLAGS=\"$LDFLAGS -lpthread\"", "*-w64-mingw32:CFLAGS=$CFLAGS -D_WIN32_WINNT=0x600", - "all:config_opts=$config_opts ac_cv_func_getentropy=no" + "*:config_opts=$config_opts ac_cv_func_getentropy=no" ], "steps": [ - "all:patch -p1 < $PATCH_DIR/unbound/disable-glibc-reallocarray.patch", - "all:autoconf", - "all:./configure $config_opts", - "all:make -j$NUM_CORES $build_opts", - "all:make -j$NUM_CORES DESTDIR=$STAGING_DIR install" + "*:patch -p1 < $PATCH_DIR/unbound/disable-glibc-reallocarray.patch", + "*:autoconf", + "*:./configure $config_opts", + "*:make -j$NUM_CORES $build_opts", + "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/unwind.json b/packages/unwind.json index 8f62fd1..eefc6a6 100644 --- a/packages/unwind.json +++ b/packages/unwind.json @@ -10,9 +10,9 @@ } ], "dependencies": [ - "all:native/_", - "all:native/config", - "all:native/gettext" + "*:native/_", + "*:native/config", + "*:native/gettext" ], "patches": [ "fix_obj_order.patch" @@ -23,8 +23,8 @@ "*-linux-gnu:config_opts=$config_opts --disable-shared --enable-static --disable-tests --disable-documentation" ], "steps": [ - "all:cp -f $PREFIX/native/usr/share/config/config.guess config/config.guess", - "all:cp -f $PREFIX/native/usr/share/config/config.sub config/config.sub", + "*:cp -f $PREFIX/native/share/config/config.guess config/config.guess", + "*:cp -f $PREFIX/native/share/config/config.sub config/config.sub", "*-linux-gnu:patch -p0 < $PATCH_DIR/unwind/fix_obj_order.patch", "*-linux-gnu:./configure $config_opts", "*-linux-gnu:make -j$NUM_CORES", diff --git a/packages/xz.json b/packages/xz.json index 8cc6e81..46ba7a6 100644 --- a/packages/xz.json +++ b/packages/xz.json @@ -10,36 +10,36 @@ } ], "dependencies": [ - "all:native/_", - "all:native/m4", - "all:native/make", - "all:native/perl" + "*:native/_", + "*:native/m4", + "*:native/make", + "*:native/perl" ], "patches": [ "fix_declaration.patch" ], "build": { "env": [ - "all:HOSTOVERRIDE=$HOST", + "*:HOSTOVERRIDE=$HOST", "aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "all:config_opts=--prefix=$PREFIX --host=$HOSTOVERRIDE", - "all:config_opts=$config_opts --disable-shared", - "all:config_opts=$config_opts --enable-static", - "all:config_opts=$config_opts --disable-doc", - "all:config_opts=$config_opts --disable-scripts", - "all:config_opts=$config_opts --disable-xz", - "all:config_opts=$config_opts --disable-xzdec", - "all:config_opts=$config_opts --disable-lzmadec", - "all:config_opts=$config_opts --disable-lzmainfo", - "all:config_opts=$config_opts --disable-lzma-links" + "*:config_opts=--prefix=$PREFIX --host=$HOSTOVERRIDE", + "*:config_opts=$config_opts --disable-shared", + "*:config_opts=$config_opts --enable-static", + "*:config_opts=$config_opts --disable-doc", + "*:config_opts=$config_opts --disable-scripts", + "*:config_opts=$config_opts --disable-xz", + "*:config_opts=$config_opts --disable-xzdec", + "*:config_opts=$config_opts --disable-lzmadec", + "*:config_opts=$config_opts --disable-lzmainfo", + "*:config_opts=$config_opts --disable-lzma-links" ], "steps": [ - "all:pwd", - "all:./autogen.sh --no-po4a", - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install", - "all:rm $STAGING_DIR$PREFIX/lib/*.la" + "*:pwd", + "*:./autogen.sh --no-po4a", + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install", + "*:rm $STAGING_DIR$PREFIX/lib/*.la" ] } } \ No newline at end of file diff --git a/packages/zeromq.json b/packages/zeromq.json index 0ffbdca..3277460 100644 --- a/packages/zeromq.json +++ b/packages/zeromq.json @@ -10,7 +10,7 @@ } ], "dependencies": [ - "all:native/_" + "*:native/_" ], "patches": [ "fix_declaration.patch" @@ -18,17 +18,17 @@ "build": { "env": [ "aarch64-apple-ios*:HOST=aarch64-apple-darwin", - "all:config_opts=--prefix=$PREFIX --host=$HOST --without-documentation --disable-shared --without-libsodium --disable-curve", + "*:config_opts=--prefix=$PREFIX --host=$HOST --without-documentation --disable-shared --without-libsodium --disable-curve", "*-linux-gnu:config_opts=$config_opts --with-pic", - "all:cxxflags=-std=c++11" + "*:cxxflags=-std=c++11" ], "steps": [ - "all:patch -p1 < $PATCH_DIR/zeromq/fix_declaration.patch", - "all:./configure $config_opts", - "all:make -j$NUM_CORES src/libzmq.la", - "all:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-pkgconfigDATA VERBOSE=1", - "all:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-libLTLIBRARIES VERBOSE=1", - "all:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-includeHEADERS VERBOSE=1" + "*:patch -p1 < $PATCH_DIR/zeromq/fix_declaration.patch", + "*:./configure $config_opts", + "*:make -j$NUM_CORES src/libzmq.la", + "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-pkgconfigDATA VERBOSE=1", + "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-libLTLIBRARIES VERBOSE=1", + "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-includeHEADERS VERBOSE=1" ] } } \ No newline at end of file diff --git a/packages/zlib.json b/packages/zlib.json index 9613750..da681ed 100644 --- a/packages/zlib.json +++ b/packages/zlib.json @@ -10,23 +10,23 @@ } ], "dependencies": [ - "all:native/_", - "all:native/libtool" + "*:native/_", + "*:native/libtool" ], "build": { "env": [ - "all:CFLAGS=$CFLAGS -fPIC", - "all:config_opts=--prefix=$PREFIX --static", - "all:CROSS_PREFIX=$HOST-" + "*:CFLAGS=$CFLAGS -fPIC", + "*:config_opts=--prefix=$PREFIX --static", + "*:CROSS_PREFIX=$HOST-" ], "steps": [ - "all:./configure $config_opts", + "*:./configure $config_opts", "*-android*:sed -i.bak s/^AR=.\\*$/AR=\"llvm-ar\"/ Makefile", "*-android*:sed -i.bak s/^ARFLAGS=.\\*$/ARFLAGS=\"rcs\"/ Makefile", "*-linux-gnu:sed -i.bak s/^AR=.\\*$/AR=\"$AR\"/ Makefile", "*-linux-gnu:sed -i.bak s/^ARFLAGS=.\\*$/ARFLAGS=\"rcs\"/ Makefile", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install" + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/zstd.json b/packages/zstd.json index 493cc25..cba0337 100644 --- a/packages/zstd.json +++ b/packages/zstd.json @@ -10,23 +10,23 @@ } ], "dependencies": [ - "all:native/_" + "*:native/_" ], "build": { "env": [ - "all:LIBTOOL=$PREFIX/native/bin/libtool", + "*:LIBTOOL=$PREFIX/native/bin/libtool", "armv7a-linux-androideabi:CFLAGS=$CFLAGS -DLIBC_NO_FSEEKO", "armv7a-linux-androideabi:CXXFLAGS=$CXXFLAGS -DLIBC_NO_FSEEKO", "*-linux-*:TARGET_SYSTEM=Linux", "*-apple-*:TARGET_SYSTEM=Darwin", "*-mingw32:TARGET_SYSTEM=Windows", - "all:UNAME_TARGET_SYSTEM=$TARGET_SYSTEM", - "all:OS=$TARGET_SYSTEM" + "*:UNAME_TARGET_SYSTEM=$TARGET_SYSTEM", + "*:OS=$TARGET_SYSTEM" ], "steps": [ - "all:make -j$NUM_CORES", - "all:mkdir -p $STAGING_DIR$PREFIX/lib", - "all:cp ./lib/libzstd.a $STAGING_DIR$PREFIX/lib/libzstd.a" + "*:make -j$NUM_CORES", + "*:mkdir -p $STAGING_DIR$PREFIX/lib", + "*:cp ./lib/libzstd.a $STAGING_DIR$PREFIX/lib/libzstd.a" ] } } \ No newline at end of file diff --git a/utils/env.go b/utils/env.go index bb5198a..4d487a9 100644 --- a/utils/env.go +++ b/utils/env.go @@ -24,7 +24,7 @@ func AppendEnv(env map[string]string, newEnv []string, host *host.Host) map[stri colonIndex := strings.Index(exp, ":") equalIndex := strings.Index(exp, "=") if colonIndex == -1 || equalIndex == -1 { - log.Fatalf("Invalid env var: %s. Vars needs to be in the form of all:KEY=VALUE", exp) + log.Fatalf("Invalid env var: %s. Vars needs to be in the form of *:KEY=VALUE", exp) } prefix := exp[0:colonIndex] if !glob.Glob(prefix, host.Triplet) && prefix != "all" { From c3321bcde483693b826bfccf5bbd966fcb9cd326 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 17 Oct 2025 02:18:03 +0200 Subject: [PATCH 014/200] chore: don't use `/usr/share` use /share instead --- pack/build.go | 2 +- packages/native/android_ndk.json | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/pack/build.go b/pack/build.go index 97bdd8b..4ab5b06 100644 --- a/pack/build.go +++ b/pack/build.go @@ -134,7 +134,7 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { p.ExtractSource(h, buildPath) - infoPath := filepath.Join(stagingPath, h.GetEnvPath(), "usr", "share", "buildlib", p.ShortName(h)+".txt") + infoPath := filepath.Join(stagingPath, h.GetEnvPath(), "share", "buildlib", p.ShortName(h)+".txt") os.MkdirAll(filepath.Dir(infoPath), 0755) err := os.WriteFile(infoPath, []byte(p.GeneratePackageInfo(h)), 0644) if err != nil { diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index d95d5c0..d12f128 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -31,10 +31,12 @@ "*-android*:cp $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST$API_LEVEL-clang++ $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-clang++", "*-android*:cp $STAGING_DIR$PREFIX/native/bin/llvm-ranlib $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-ranlib", "*-android*:cp $STAGING_DIR$PREFIX/native/bin/llvm-ar $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-ar", + "*-android*:mkdir -p $STAGING_DIR$PREFIX/lib", + "aarch64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/aarch64-linux-android/*.a $STAGING_DIR$PREFIX/lib", + "x86_64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/x86_64-linux-android/*.a $STAGING_DIR$PREFIX/lib", + "armv7a-linux-androideabi:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/arm-linux-androideabi/*.a $STAGING_DIR$PREFIX/lib", "*-android*:mkdir -p $STAGING_DIR$PREFIX/usr/lib", - "aarch64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/aarch64-linux-android/*.a $STAGING_DIR$PREFIX/usr/lib", - "x86_64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/x86_64-linux-android/*.a $STAGING_DIR$PREFIX/usr/lib", - "armv7a-linux-androideabi:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/arm-linux-androideabi/*.a $STAGING_DIR$PREFIX/usr/lib" + "*-android*:ln -s ../lib $STAGING_DIR$PREFIX/usr/lib" ] } } \ No newline at end of file From a948923d96986da47919c199e358a87874e5266c Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 20 Oct 2025 00:21:39 +0200 Subject: [PATCH 015/200] osx fixes --- README.md | 4 +- builder/builder_linux_arm64.go | 4 +- builder/default.go | 22 +++++++++++ host/main.go | 37 +++++++++--------- pack/info.go | 4 ++ pack/main.go | 3 +- packages/native/_.json | 4 +- packages/native/bootstrap/cpan/autodie.json | 26 +++++++++++++ .../bootstrap/strip-nondeterminism.json | 1 + packages/native/cctools-port.json | 38 +++++++++++++++++++ packages/native/crosstool-ng.json | 3 ++ packages/native/ct-tools.json | 25 ++++++++---- packages/native/dart-bin@3.9.0.json | 17 +++++++++ .../native/{dart.json => dart@3.9.4.json} | 7 +++- packages/native/file.json | 22 +++++++++++ packages/native/flex.json | 1 + packages/native/git.json | 3 +- packages/native/libtapi.json | 27 +++++++++++++ packages/native/osx-cross.json | 34 ++++++++--------- packages/native/texinfo.json | 2 +- packages/native/xar.json | 3 +- packages/native/xz.json | 38 +++++++++---------- packages/{libtor.json => tor.json} | 2 +- packages/torch.json | 2 +- patches/strip-nondeterminism-recursive | 2 +- 25 files changed, 255 insertions(+), 76 deletions(-) create mode 100644 packages/native/bootstrap/cpan/autodie.json create mode 100644 packages/native/cctools-port.json create mode 100644 packages/native/dart-bin@3.9.0.json rename packages/native/{dart.json => dart@3.9.4.json} (96%) create mode 100644 packages/native/file.json create mode 100644 packages/native/libtapi.json rename packages/{libtor.json => tor.json} (99%) diff --git a/README.md b/README.md index 93c37eb..0f4ac67 100644 --- a/README.md +++ b/README.md @@ -75,8 +75,8 @@ All package definitions live inside of this repo (this is going to change soon * ## Usage -In order to build, let's say, `libtor` for armv7a-linux-androideabi you would run the following command (on either a Mac or Linux x64 device). +In order to build, let's say, `tor` for armv7a-linux-androideabi you would run the following command (on either a Mac or Linux x64 device). ``` -$ go run . -host armv7a-linux-androideabi -package libtor -build +$ go run . -host armv7a-linux-androideabi -package tor -build ``` \ No newline at end of file diff --git a/builder/builder_linux_arm64.go b/builder/builder_linux_arm64.go index 28e73c5..55dd9b8 100644 --- a/builder/builder_linux_arm64.go +++ b/builder/builder_linux_arm64.go @@ -4,8 +4,8 @@ var HostBuilder = Builder{ GlobalEnv: []string{ "*:HOST=aarch64-linux-gnu", "*:TARGET=aarch64-linux-gnu", - "*:CC=clang", - "*:CXX=clang++", + "*:CC=aarch64-linux-gnu-gcc", + "*:CXX=aarch64-linux-gnu-g++", "*:AR=ar", "*:RANLIB=ranlib", "*:STRIP=strip", diff --git a/builder/default.go b/builder/default.go index 632cccd..347b03d 100644 --- a/builder/default.go +++ b/builder/default.go @@ -18,3 +18,25 @@ func shellOutput(cmd string) string { } return strings.TrimSpace(string(output)) } + +func (b *Builder) GetCC() string { + for _, env := range b.GlobalEnv { + splitIndex := strings.Index(env, ":") + envVar := env[splitIndex+1:] + if strings.HasPrefix(envVar, "CC=") { + return envVar[3:] + } + } + return "" +} + +func (b *Builder) GetCXX() string { + for _, env := range b.GlobalEnv { + splitIndex := strings.Index(env, ":") + envVar := env[splitIndex+1:] + if strings.HasPrefix(envVar, "CXX=") { + return envVar[4:] + } + } + return "" +} diff --git a/host/main.go b/host/main.go index c483f62..cf8d452 100644 --- a/host/main.go +++ b/host/main.go @@ -51,19 +51,20 @@ var SupportedHosts = map[string]*Host{ "aarch64-apple-darwin": { Triplet: "aarch64-apple-darwin", Env: []string{ - "*:HOST=aarch64-apple-darwin", - "*:TARGET=aarch64-apple-darwin", - "*:OSX_MIN_VERSION=10.15", + "*:HOST=aarch64-apple-darwin25", + "*:TARGET=aarch64-apple-darwin25", + "*:OSX_MIN_VERSION=10.16", "*:LD64_VERSION=609", "*:CC_target=arm64-apple-darwin", - "*:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mmacosx-version-min=$OSX_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk macosx --show-sdk-path") + " -I" + shellOutput("xcrun --sdk macosx --show-sdk-path") + "/usr/include -I$PREFIX/include", - "*:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mmacosx-version-min=$OSX_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk macosx --show-sdk-path") + " -I" + shellOutput("xcrun --sdk macosx --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:CC=aarch64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION --sysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:CXX=aarch64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION --sysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", "*:CFLAGS=", "*:CXXFLAGS=$CFLAGS -stdlib=libc++", "*:RANLIB=" + shellOutput("xcrun -f ranlib"), "*:AR=" + shellOutput("xcrun -f ar"), "*:LIBTOOL=" + shellOutput("xcrun -f libtool"), - "*:SDK_PATH=" + shellOutput("xcrun --sdk macosx --show-sdk-path"), + "*:SDK_PATH=$PREFIX/native/SDK/MacOSX26.0.sdk", + "*:LDFLAGS=-lc++ -lc++abi", }, }, "x86_64-apple-darwin": { @@ -168,19 +169,19 @@ var SupportedHosts = map[string]*Host{ "*:HOST=x86_64-linux-gnu", "*:TARGET=x86_64-linux-gnu", "*:CC_target=x86_64-linux-gnu", - "*:CC=x86_64-unknown-linux-gnu-gcc", - "*:CXX=x86_64-unknown-linux-gnu-g++", + "*:CC=x86_64-multilib-linux-gnu-gcc --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", + "*:CXX=x86_64-multilib-linux-gnu-g++ --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", "*:CXXFLAGS=$CFLAGS", - "*:RANLIB=x86_64-unknown-linux-gnu-ranlib", - "*:AR=x86_64-unknown-linux-gnu-ar", - "*:AS=x86_64-unknown-linux-gnu-as", - "*:LIBTOOL=x86_64-unknown-linux-gnu-libtool", - "*:OBJCOPY=x86_64-unknown-linux-gnu-objcopy", - "*:OBJDUMP=x86_64-unknown-linux-gnu-objdump", - "*:STRIP=x86_64-unknown-linux-gnu-strip", - "*:READELF=x86_64-unknown-linux-gnu-readelf", - "*:LD=x86_64-unknown-linux-gnu-ld", - "*:NM=x86_64-unknown-linux-gnu-nm", + "*:RANLIB=x86_64-multilib-linux-gnu-ranlib", + "*:AR=x86_64-multilib-linux-gnu-ar", + "*:AS=x86_64-multilib-linux-gnu-as", + "*:LIBTOOL=x86_64-multilib-linux-gnu-libtool", + "*:OBJCOPY=x86_64-multilib-linux-gnu-objcopy", + "*:OBJDUMP=x86_64-multilib-linux-gnu-objdump", + "*:STRIP=x86_64-multilib-linux-gnu-strip", + "*:READELF=x86_64-multilib-linux-gnu-readelf", + "*:LD=x86_64-multilib-linux-gnu-ld", + "*:NM=x86_64-multilib-linux-gnu-nm", }, }, "aarch64-linux-gnu": { diff --git a/pack/info.go b/pack/info.go index 774f454..450eeb4 100644 --- a/pack/info.go +++ b/pack/info.go @@ -127,6 +127,7 @@ func getNumCores() int { func (p *Package) GetEnv(h *host.Host) map[string]string { getwd, err := os.Getwd() crash.Handle(err) + stagingPath := p.GenerateBuildPath(h, "staging") env := map[string]string{ "PATH": h.GetEnvPath() + "/native/bin:" + utils.GetHostPath(), "HOST": h.Triplet, @@ -135,6 +136,7 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { "HOST_PREFIX": h.GetEnvPath(), "NUM_CORES": strconv.Itoa(getNumCores()), "PATCH_DIR": filepath.Join(getwd, "patches"), + "STAGING_DIR": stagingPath, } env = utils.AppendEnv(env, builder.HostBuilder.GlobalEnv, h) @@ -150,6 +152,8 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { }, h) } else { env = utils.AppendEnv(env, []string{ + "*:CC_FOR_BUILD=" + builder.HostBuilder.GetCC(), + "*:CXX_FOR_BUILD=" + builder.HostBuilder.GetCXX(), "*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/include", "*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/usr/include", "*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/lib", diff --git a/pack/main.go b/pack/main.go index a10f3af..ae885fb 100644 --- a/pack/main.go +++ b/pack/main.go @@ -49,6 +49,7 @@ type PackageWithBuilds struct { var bootstrapPackages = []string{ "native/bootstrap/perl", + "native/bootstrap/cpan/autodie", "native/bootstrap/cpan/archive-cpio", "native/bootstrap/cpan/archive-zip", "native/bootstrap/cpan/sub-override", @@ -71,7 +72,7 @@ func FindPackage(name string) (*Package, error) { for _, pkgName := range bootstrapPackages { pkg.Dependencies = append(pkg.Dependencies, "*:"+pkgName) } - pkg.Build.Steps = append(pkg.Build.Steps, "*:$PREFIX/native/bootstrap/bin/strip-nondeterminism-recursive --directory $STAGING_DIR") + pkg.Build.Steps = append(pkg.Build.Steps, "*:$PREFIX/native/bootstrap/bin/perl $PREFIX/native/bootstrap/bin/strip-nondeterminism-recursive --directory $STAGING_DIR") } return &pkg, nil } diff --git a/packages/native/_.json b/packages/native/_.json index e418a35..cb8bd41 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -18,6 +18,7 @@ "*:native/gawk", "*:native/gettext", "*:native/libtool", + "*:native/libxml2", "*:native/m4", "*:native/make", "*:native/mpc", @@ -29,7 +30,8 @@ "*:native/pkgconf", "*:native/rsync", "*:native/sed", - "*:native/texinfo" + "*:native/texinfo", + "*:native/xar" ], "build": { "env": [ diff --git a/packages/native/bootstrap/cpan/autodie.json b/packages/native/bootstrap/cpan/autodie.json new file mode 100644 index 0000000..c15a1c5 --- /dev/null +++ b/packages/native/bootstrap/cpan/autodie.json @@ -0,0 +1,26 @@ +{ + "package": "native/bootstrap/cpan/autodie", + "version": "2.37", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "4921d211b0cea63c2ca06dfc0c948a7203a3d48ad80a06f43b46104354f2c1c3", + "url": "https://cpan.metacpan.org/authors/id/T/TO/TODDR/autodie-2.37.tar.gz" + } + ], + "dependencies": [ + "*:native/bootstrap/make", + "*:native/bootstrap/perl" + ], + "build": { + "env": [ + "*:PATH=$PREFIX/native/bootstrap/bin:$PATH" + ], + "steps": [ + "*:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/bootstrap/strip-nondeterminism.json b/packages/native/bootstrap/strip-nondeterminism.json index c50bcb1..b94f758 100644 --- a/packages/native/bootstrap/strip-nondeterminism.json +++ b/packages/native/bootstrap/strip-nondeterminism.json @@ -12,6 +12,7 @@ "dependencies": [ "*:native/bootstrap/cpan/archive-cpio", "*:native/bootstrap/cpan/archive-zip", + "*:native/bootstrap/cpan/autodie", "*:native/bootstrap/cpan/sub-override", "*:native/bootstrap/make", "*:native/bootstrap/perl" diff --git a/packages/native/cctools-port.json b/packages/native/cctools-port.json new file mode 100644 index 0000000..783c053 --- /dev/null +++ b/packages/native/cctools-port.json @@ -0,0 +1,38 @@ +{ + "package": "native/cctools-port", + "version": "986-ld64-711", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "6e31355ca5babc708681bd906eaaef86c3ac93be", + "url": "https://github.com/tpoechtrager/cctools-port.git" + } + ], + "dependencies": [ + "*-apple-darwin:native/bzip2", + "*-apple-darwin:native/libtapi", + "*-apple-darwin:native/make", + "*-apple-darwin:native/openssl", + "*-apple-darwin:native/xar", + "*-apple-darwin:native/xz", + "*-apple-darwin:native/zlib" + ], + "build": { + "env": [ + "*-apple-darwin:config_opts=--prefix=$PREFIX/native", + "aarch64-apple-darwin:config_opts=$config_opts --target=arm64-apple-darwin25", + "x86_64-apple-darwin:config_opts=$config_opts --target=x86_64-apple-darwin25", + "*-apple-darwin:config_opts=$config_opts --with-libtapi=$PREFIX/native", + "*-apple-darwin:config_opts=$config_opts --with-libxar=$PREFIX/native", + "*-apple-darwin:CC=clang", + "*-apple-darwin:CXX=clang++" + ], + "steps": [ + "*-apple-darwin:sed -i.bak '3182d' cctools/configure", + "*-apple-darwin:cd cctools && ./configure $config_opts", + "*-apple-darwin:cd cctools && make -j$NUM_CORES", + "*-apple-darwin:cd cctools && DESTDIR=$STAGING_DIR make -j$NUM_CORES install" + ] + } +} \ No newline at end of file diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index 320644f..7d0f514 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -15,6 +15,8 @@ "*:native/bash", "*:native/binutils@2.42", "*:native/bison", + "*:native/bzip2", + "*:native/file", "*:native/flex", "*:native/gawk", "*:native/gettext", @@ -24,6 +26,7 @@ "*:native/make", "*:native/perl", "*:native/python@3.11.13", + "*:native/rsync", "*:native/sed", "*:native/texinfo", "*:native/xz", diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index a8bf829..5233101 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -42,9 +42,15 @@ { "kind": "blob", "path": ".build/tarballs/glibc-2.38.tar.xz", - "sha256": "fb82998998b2b29965467bc1b69d152e9c307d2cf301c9eafb4555b770ef3fd2", + "sha256": "d1775e32e4628e64ef930f435b67bb63af7599acb6be2b335b9f19f16509f17f", "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.38.tar.xz" }, + { + "kind": "blob", + "path": ".build/tarballs/glibc-2.42.tar.xz", + "sha256": "fb82998998b2b29965467bc1b69d152e9c307d2cf301c9eafb4555b770ef3fd2", + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.42.tar.xz" + }, { "kind": "blob", "path": ".build/tarballs/gmp-6.3.0.tar.xz", @@ -90,13 +96,13 @@ { "kind": "blob", "path": ".build/tarballs/mpfr-4.2.2.tar.xz", - "sha256": "277807353a6726978996945af13e52829e3abd7a9a5b7fb2793894e18f1fcbb2", + "sha256": "b67ba0383ef7e8a8563734e2e889ef5ec3c3b898a01d00fa0a6869ad81c6ce01", "url": "http://ftpmirror.gnu.org/gnu/mpfr/mpfr-4.2.2.tar.xz" }, { "kind": "blob", "path": ".build/tarballs/ncurses-6.5.tar.gz", - "sha256": "6931283d9ac87c5073f30b6290c4c75f21632bb4fc3603ac8100812bed248159", + "sha256": "136d91bc269a9a5785e5f9e980bc76ab57428f604ce3e5a5a90cebc767971cc6", "url": "http://ftpmirror.gnu.org/gnu/ncurses/ncurses-6.5.tar.gz" }, { @@ -118,7 +124,9 @@ "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bash", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/binutils@2.42", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bison", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bzip2", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/crosstool-ng", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/file", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/flex", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gawk", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gettext", @@ -128,6 +136,7 @@ "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/make", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/perl", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/python@3.11.13", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/rsync", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/sed", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/texinfo", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/xz", @@ -135,7 +144,7 @@ ], "build": { "env": [ - "x86_64-linux-gnu:TOOL_TARGET=x86_64-unknown-linux-gnu", + "x86_64-linux-gnu:TOOL_TARGET=x86_64-multilib-linux-gnu", "x86_64-linux-gnu:TOOL_TARGET_ALT=x86_64-linux-gnu", "aarch64-linux-gnu:TOOL_TARGET=aarch64-unknown-linux-gnu", "aarch64-linux-gnu:TOOL_TARGET_ALT=aarch64-linux-gnu", @@ -149,11 +158,11 @@ "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_EXPERIMENTAL=y' >> .config", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_FORBID_DOWNLOAD=y' >> .config", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_LANG_CXX=y' >> .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_LANG_FORTRAN=y' >> .config", + "none:echo 'CT_CC_LANG_FORTRAN=y' >> .config", "none:echo 'CT_CC_LANG_D=y' >> .config", "none:echo 'CT_CC_LANG_OBJC=y' >> .config", "none:echo 'CT_CC_LANG_OBJCXX=y' >> .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_LANG_GOLANG=y' >> .config", + "none:echo 'CT_CC_LANG_GOLANG=y' >> .config", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_BINUTILS_EXTRA_CONFIG_ARRAY=\"--with-system-zlib\"' >> .config", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_GCC_SYSTEM_ZLIB=y' >> .config", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_DEBUG_CT_SAVE_STEPS=y' >> .config", @@ -179,7 +188,9 @@ "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib64 $STAGING_DIR$PREFIX/", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/sbin $STAGING_DIR$PREFIX/", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr $STAGING_DIR$PREFIX/", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/var $STAGING_DIR$PREFIX/", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:mkdir -p $STAGING_DIR$PREFIX/include", + "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/$TOOL_TARGET/include/c++/15.2.0/* $STAGING_DIR$PREFIX/include", + "x86_64-linux-gnu:cp -a $STAGING_DIR$PREFIX/include/x86_64-multilib-linux-gnu/. $STAGING_DIR$PREFIX/include", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-addr2line $STAGING_DIR$PREFIX/native/bin/addr2line", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ar $STAGING_DIR$PREFIX/native/bin/ar", "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-as $STAGING_DIR$PREFIX/native/bin/as", diff --git a/packages/native/dart-bin@3.9.0.json b/packages/native/dart-bin@3.9.0.json new file mode 100644 index 0000000..153f60c --- /dev/null +++ b/packages/native/dart-bin@3.9.0.json @@ -0,0 +1,17 @@ +{ + "package": "native/dart", + "version": "3.9.4", + "type": "native", + "download": [ + {} + ], + "build": { + "env": [ + "*:config_opts=--prefix=$PREFIX/native" + ], + "steps": [ + "make -j$NUM_CORES", + "make -j$NUM_CORES install DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/native/dart.json b/packages/native/dart@3.9.4.json similarity index 96% rename from packages/native/dart.json rename to packages/native/dart@3.9.4.json index 9328bc0..3752926 100644 --- a/packages/native/dart.json +++ b/packages/native/dart@3.9.4.json @@ -1,5 +1,5 @@ { - "package": "native/dart", + "package": "native/dart@3.9.4", "version": "3.9.4", "type": "native", "download": [ @@ -273,7 +273,10 @@ "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "*:python3 ./tools/build.py" + "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:python3 ./tools/generate_sdk_version_file.py # HOOK Generate sdk/version.", + "*:python3 ./tools/generate_large_tests.py # HOOK Generate large tests.", + "*:python3 ./tools/build.py --mode=release" ] } } \ No newline at end of file diff --git a/packages/native/file.json b/packages/native/file.json new file mode 100644 index 0000000..43d6fb8 --- /dev/null +++ b/packages/native/file.json @@ -0,0 +1,22 @@ +{ + "package": "native/file", + "version": "5.44", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "c9cc77c7c560c543135edc555af609d5619dbef011997e988ce40a3d75d86088", + "url": "https://astron.com/pub/file/file-5.46.tar.gz" + } + ], + "dependencies": [ + "*:native/make" + ], + "build": { + "steps": [ + "*:./configure --prefix=$PREFIX/native", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/flex.json b/packages/native/flex.json index 1ad483a..cf951bd 100644 --- a/packages/native/flex.json +++ b/packages/native/flex.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:native/m4", "*:native/make" ], "build": { diff --git a/packages/native/git.json b/packages/native/git.json index f47bf70..916fa0e 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -14,7 +14,8 @@ "*:native/expat", "*:native/gettext", "*:native/make", - "*:native/openssl" + "*:native/openssl", + "*:native/zlib" ], "build": { "env": [], diff --git a/packages/native/libtapi.json b/packages/native/libtapi.json new file mode 100644 index 0000000..94b83f2 --- /dev/null +++ b/packages/native/libtapi.json @@ -0,0 +1,27 @@ +{ + "package": "native/libtapi", + "version": "1300.6.5", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "640b4623929c923c0468143ff2a363a48665fa54", + "url": "https://github.com/tpoechtrager/apple-libtapi.git" + } + ], + "dependencies": [ + "*:native/cmake", + "*:native/make", + "*:native/ninja" + ], + "build": { + "env": [ + "*:config_opts=--prefix=$PREFIX/native --disable-shared", + "*:INSTALLPREFIX=$PREFIX/native" + ], + "steps": [ + "*:./build.sh", + "*:DESTDIR=$STAGING_DIR ./install.sh" + ] + } +} \ No newline at end of file diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 258233e..7b8ed8e 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -25,27 +25,18 @@ "path": "tarballs/20250402.zip", "sha256": "b8e87f026e19259e6eac347746661e11592e0ff8bcdb657e177800223d7438ce", "url": "https://github.com/apple/llvm-project/archive/refs/heads/stable/20250402.zip" - }, - { - "kind": "tar.gz", - "path": "build/apple-libtapi", - "sha256": "a00b170901cc484c7041bbae1288e88ff3169728b572febd37418c52c2036935", - "url": "https://github.com/tpoechtrager/apple-libtapi/archive/refs/heads/1300.6.5.tar.gz" - }, - { - "kind": "tar.gz", - "path": "build/cctools-port", - "sha256": "1b69237d99047afa8e840975d97b1733dcaba1d9135e1116d07f2f81cc0b8b64", - "url": "https://github.com/tpoechtrager/cctools-port/archive/refs/heads/986-ld64-711.tar.gz" } ], "dependencies": [ "*-apple-darwin:native/bzip2", + "*-apple-darwin:native/cctools-port", "*-apple-darwin:native/cmake", "*-apple-darwin:native/cpio", "*-apple-darwin:native/gettext", "*-apple-darwin:native/git", + "*-apple-darwin:native/libtapi", "*-apple-darwin:native/libxml2", + "*-apple-darwin:native/make", "*-apple-darwin:native/openssl", "*-apple-darwin:native/patch", "*-apple-darwin:native/pbzx", @@ -59,29 +50,36 @@ "env": [ "*-apple-darwin:JOBS=$NUM_CORES", "*-apple-darwin:PORTABLE=1", - "*-apple-darwin:TARGET_DIR=$STAGING_DIR$PREFIX/native/", + "*-apple-darwin:TARGET_DIR=$PREFIX/native/", "aarch64-apple-darwin:ENABLE_ARCHS=arm64", "x86_64-apple-darwin:ENABLE_ARCHS=x86_64", "*-apple-darwin:UNATTENDED=1", - "*-apple-darwin:SDK_VERSION=26.0" + "*-apple-darwin:SDK_VERSION=26.0", + "*-apple-darwin:COMPRESSLEVEL=0" ], "steps": [ + "*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", + "*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", "*-apple-darwin:sed -i.bak 's/build_xar/echo build_xar/g' tools/gen_sdk_package_pbzx.sh", "*-apple-darwin:sed -i.bak 's/build_xar/echo build_xar/g' build.sh", + "*-apple-darwin:sed -i.bak 's/git clone/echo git clone/g' build.sh", + "*-apple-darwin:sed -i.bak 's/--with-libtapi=$TARGET_DIR/--with-libtapi=$PREFIX\\/native/g' build.sh", + "*-apple-darwin:sed -i.bak 's/--with-libxar=$TARGET_DIR/--with-libxar=$PREFIX\\/native/g' build.sh", "*-apple-darwin:sed -i.bak 's/build_pbxz/echo build_pbxz/g' tools/gen_sdk_package_pbzx.sh", "*-apple-darwin:sed -i.bak 's/git /echo git /g' tools/tools.sh", - "*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", - "*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", "*-apple-darwin:sed -i.bak 's/download $CLANG_LLVM_PKG/echo download $CLANG_LLVM_PKG/g' build_clang.sh", "*-apple-darwin:sed -i.bak 's/rm -f $(basename $CLANG_LLVM_PKG)/echo rm -f $(basename $CLANG_LLVM_PKG)/g' build_clang.sh", + "*-apple-darwin:sed -i.bak 's/get_sources/echo get_sources/g' build.sh", "*-apple-darwin:sed -i.bak '8,11d' tools/gen_sdk_package_pbzx.sh", + "*-apple-darwin:sed -i.bak '135,145d' build.sh", + "*-apple-darwin:sed -i.bak '145,160d' build.sh", "*-apple-darwin:./tools/gen_sdk_package_pbzx.sh ./Xcode_26.0.1.xip", "*-apple-darwin:mv MacOSX26.* tarballs", - "*-apple-darwin:yes | INSTALLPREFIX=$PREFIX/native ./build_clang.sh", + "none:yes | INSTALLPREFIX=$PREFIX/native ./build_clang.sh", "none:cd build/clang-20.1.8/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", "*-apple-darwin:yes | INSTALLPREFIX=$PREFIX/native ./build_apple_clang.sh", "*-apple-darwin:cd build/clang-21/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", - "*-apple-darwin:./build.sh" + "*-apple-darwin:TARGET_DIR=$STAGING_DIR$PREFIX/native ./build.sh" ] } } \ No newline at end of file diff --git a/packages/native/texinfo.json b/packages/native/texinfo.json index 95a7a31..2ee89b4 100644 --- a/packages/native/texinfo.json +++ b/packages/native/texinfo.json @@ -5,7 +5,7 @@ "download": [ { "kind": "tar.gz", - "sha256": "e86de7dfef6b352aa1bf647de3a621w3d1567c70129eccbf8977706d9c91919c8", + "sha256": "e86de7dfef6b352aa1bf647de3a6213d1567c70129eccbf8977706d9c91919c8", "url": "http://ftpmirror.gnu.org/gnu/texinfo/texinfo-7.2.tar.gz" } ], diff --git a/packages/native/xar.json b/packages/native/xar.json index 1539385..d152e7c 100644 --- a/packages/native/xar.json +++ b/packages/native/xar.json @@ -13,7 +13,8 @@ "*:native/bzip2", "*:native/make", "*:native/openssl", - "*:native/xz" + "*:native/xz", + "*:native/zlib" ], "build": { "env": [ diff --git a/packages/native/xz.json b/packages/native/xz.json index 3d8c7ab..1535d4d 100644 --- a/packages/native/xz.json +++ b/packages/native/xz.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "all:native/autoconf", - "all:native/automake", - "all:native/gettext", - "all:native/libtool", - "all:native/m4", - "all:native/make", - "all:native/perl" + "*:native/autoconf", + "*:native/automake", + "*:native/gettext", + "*:native/libtool", + "*:native/m4", + "*:native/make", + "*:native/perl" ], "patches": [ "fix_declaration.patch" ], "build": { "env": [ - "all:HOSTOVERRIDE=$HOST", + "*:HOSTOVERRIDE=$HOST", "aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "all:config_opts=--prefix=$PREFIX/native --host=$HOSTOVERRIDE", - "all:config_opts=$config_opts --disable-shared", - "all:config_opts=$config_opts --enable-static", - "all:config_opts=$config_opts --disable-doc", - "all:config_opts=$config_opts --disable-scripts" + "*:config_opts=--prefix=$PREFIX/native --host=$HOSTOVERRIDE", + "*:config_opts=$config_opts --disable-shared", + "*:config_opts=$config_opts --enable-static", + "*:config_opts=$config_opts --disable-doc", + "*:config_opts=$config_opts --disable-scripts" ], "steps": [ - "all:pwd", - "all:./autogen.sh --no-po4a", - "all:./configure $config_opts", - "all:make -j$NUM_CORES", - "all:make DESTDIR=$STAGING_DIR install", - "all:rm $STAGING_DIR$PREFIX/native/lib/*.la" + "*:pwd", + "*:./autogen.sh --no-po4a", + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install", + "*:rm $STAGING_DIR$PREFIX/native/lib/*.la" ] } } \ No newline at end of file diff --git a/packages/libtor.json b/packages/tor.json similarity index 99% rename from packages/libtor.json rename to packages/tor.json index f7e1bcb..c6af8b0 100644 --- a/packages/libtor.json +++ b/packages/tor.json @@ -1,5 +1,5 @@ { - "package": "libtor", + "package": "tor", "version": "tor-0.4.8.17", "type": "host", "download": [ diff --git a/packages/torch.json b/packages/torch.json index 77a764e..af57f88 100644 --- a/packages/torch.json +++ b/packages/torch.json @@ -12,8 +12,8 @@ "dependencies": [ "*:native/_", "*:libevent", - "*:libtor", "*:openssl", + "*:tor", "*:xz", "*:zlib", "*:zstd" diff --git a/patches/strip-nondeterminism-recursive b/patches/strip-nondeterminism-recursive index 93728c3..2e68bfe 100755 --- a/patches/strip-nondeterminism-recursive +++ b/patches/strip-nondeterminism-recursive @@ -1,4 +1,4 @@ -#!/usr/bin/env perl +#!$PREFIX/native/bootstrap/bin/perl use strict; use warnings; use autodie; From 25770ba2fc5f28a171da9bd2c0523c2b4c29db61 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 23 Oct 2025 16:03:52 +0200 Subject: [PATCH 016/200] sip --- builder/builder_darwin_arm64.go | 4 + builder/builder_linux_amd64.go | 4 + builder/builder_linux_arm64.go | 4 + cmd/buildweb/archive.go | 79 ++ cmd/buildweb/buildweb.go | 480 ++------ cmd/buildweb/buildweb_test.go | 436 +++++++ cmd/buildweb/data.go | 250 ++++ cmd/buildweb/file_details.tpl | 3 +- cmd/buildweb/html.go | 231 ++++ cmd/buildweb/json.go | 194 ++++ cmd/buildweb/metadata.go | 80 ++ cmd/buildweb/package.tpl | 8 + cmd/buildweb/source_details.tpl | 240 ++++ cmd/buildweb/utils.go | 121 ++ cmd/lint/lint.go | 89 +- host/main.go | 31 +- pack/build.go | 4 +- pack/info.go | 14 +- pack/main.go | 51 +- packages/native/_.json | 2 + packages/native/ct-tools.json | 8 +- .../native/dart-bin@3.9.0-100.2.beta.json | 39 + packages/native/dart-bin@3.9.0.json | 17 - packages/native/dart@3.9.4.json | 31 +- packages/native/libc++.json | 34 + packages/native/libxml2.json | 2 +- packages/native/llvm-ar.json | 27 + packages/native/llvm-nm.json | 26 + packages/native/llvm-strip.json | 27 + packages/native/llvm@google@r563880.json | 3 +- packages/native/osx-cross.json | 2 +- sources.json | 1003 +++++++++++++++++ utils/download.go | 41 +- utils/git.go | 274 +++-- 34 files changed, 3317 insertions(+), 542 deletions(-) create mode 100644 cmd/buildweb/archive.go create mode 100644 cmd/buildweb/buildweb_test.go create mode 100644 cmd/buildweb/data.go create mode 100644 cmd/buildweb/html.go create mode 100644 cmd/buildweb/json.go create mode 100644 cmd/buildweb/metadata.go create mode 100644 cmd/buildweb/source_details.tpl create mode 100644 cmd/buildweb/utils.go create mode 100644 packages/native/dart-bin@3.9.0-100.2.beta.json delete mode 100644 packages/native/dart-bin@3.9.0.json create mode 100644 packages/native/libc++.json create mode 100644 packages/native/llvm-ar.json create mode 100644 packages/native/llvm-nm.json create mode 100644 packages/native/llvm-strip.json create mode 100644 sources.json diff --git a/builder/builder_darwin_arm64.go b/builder/builder_darwin_arm64.go index 2e80075..4b4c038 100644 --- a/builder/builder_darwin_arm64.go +++ b/builder/builder_darwin_arm64.go @@ -1,5 +1,7 @@ package builder +import "runtime" + var HostBuilder = Builder{ GlobalEnv: []string{ "*:HOST=aarch64-apple-darwin", @@ -13,5 +15,7 @@ var HostBuilder = Builder{ "*:NM=/usr/bin/nm", "*:OTOOL=/usr/bin/otool", "*:INSTALL_NAME_TOOL=/usr/bin/install_name_tool", + "*:BUILDER_GOOS=" + runtime.GOOS, + "*:BUILDER_GOARCH=" + runtime.GOARCH, }, } diff --git a/builder/builder_linux_amd64.go b/builder/builder_linux_amd64.go index 69bb570..1135d92 100644 --- a/builder/builder_linux_amd64.go +++ b/builder/builder_linux_amd64.go @@ -1,5 +1,7 @@ package builder +import "runtime" + var HostBuilder = Builder{ GlobalEnv: []string{ "*:HOST=x86_64-linux-gnu", @@ -13,5 +15,7 @@ var HostBuilder = Builder{ "*:OTOOL=otool", "*:AUTOMAKE=automake", "*:INSTALL_NAME_TOOL=install_name_tool", + "*:BUILDER_GOOS=" + runtime.GOOS, + "*:BUILDER_GOARCH=" + runtime.GOARCH, }, } diff --git a/builder/builder_linux_arm64.go b/builder/builder_linux_arm64.go index 55dd9b8..1a7464c 100644 --- a/builder/builder_linux_arm64.go +++ b/builder/builder_linux_arm64.go @@ -1,5 +1,7 @@ package builder +import "runtime" + var HostBuilder = Builder{ GlobalEnv: []string{ "*:HOST=aarch64-linux-gnu", @@ -13,5 +15,7 @@ var HostBuilder = Builder{ "*:OTOOL=otool", "*:AUTOMAKE=automake", "*:INSTALL_NAME_TOOL=install_name_tool", + "*:BUILDER_GOOS=" + runtime.GOOS, + "*:BUILDER_GOARCH=" + runtime.GOARCH, }, } diff --git a/cmd/buildweb/archive.go b/cmd/buildweb/archive.go new file mode 100644 index 0000000..5f88e1c --- /dev/null +++ b/cmd/buildweb/archive.go @@ -0,0 +1,79 @@ +package buildweb + +import ( + "fmt" + "os" + "path/filepath" + + "github.com/mrcyjanek/simplybs/host" + "github.com/mrcyjanek/simplybs/pack" +) + +func ListArchiveContents(pkg *pack.Package, download *pack.Download) ([]ArchiveFileInfo, error) { + sourcePath := pkg.GenerateSourceBuildPath(download) + + info, err := os.Stat(sourcePath) + if err != nil { + return nil, fmt.Errorf("failed to stat archive: %w", err) + } + if info.Size() == 0 { + return nil, fmt.Errorf("archive is 0 bytes (incomplete download)") + } + + if download.Kind == "blob" || download.Kind == "none" { + return nil, fmt.Errorf("cannot list contents of %s type", download.Kind) + } + + tempDir, err := os.MkdirTemp("", "buildweb-archive-*") + if err != nil { + return nil, fmt.Errorf("failed to create temp directory: %w", err) + } + defer os.RemoveAll(tempDir) + + tempPkg := &pack.Package{ + Package: pkg.Package, + Version: pkg.Version, + Download: []*pack.Download{download}, + } + + tempPkg.ExtractSource(&host.Host{}, tempDir) + + var files []ArchiveFileInfo + err = filepath.Walk(tempDir, func(path string, info os.FileInfo, err error) error { + if err != nil { + return err + } + if !info.IsDir() { + relPath, _ := filepath.Rel(tempDir, path) + files = append(files, ArchiveFileInfo{ + Name: relPath, + Size: info.Size(), + }) + } + return nil + }) + + if err != nil { + return nil, fmt.Errorf("failed to walk extracted files: %w", err) + } + + return files, nil +} + +func GetArchiveInfo(pkg *pack.Package, download *pack.Download) ArchiveInfo { + files, err := ListArchiveContents(pkg, download) + if err != nil { + return ArchiveInfo{Files: []ArchiveFileInfo{}, TotalSize: 0, FileCount: 0} + } + + var totalSize int64 + for _, file := range files { + totalSize += file.Size + } + + return ArchiveInfo{ + Files: files, + TotalSize: totalSize, + FileCount: len(files), + } +} diff --git a/cmd/buildweb/buildweb.go b/cmd/buildweb/buildweb.go index d34d38a..84971f0 100644 --- a/cmd/buildweb/buildweb.go +++ b/cmd/buildweb/buildweb.go @@ -1,204 +1,52 @@ package buildweb import ( - "archive/tar" - "compress/gzip" - "fmt" - "html/template" - "io" "log" "os" "path/filepath" "runtime" - "sort" - "strings" "sync" - _ "embed" - "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/pack" ) -func getGlobPattern(entry string) string { - if strings.Contains(entry, ":") { - parts := strings.SplitN(entry, ":", 2) - return parts[0] - } - return "" -} - -func getGlobContent(entry string) string { - if strings.Contains(entry, ":") { - parts := strings.SplitN(entry, ":", 2) - return parts[1] - } - return entry -} - -func dependencyExists(dep string, packages []*pack.Package) bool { - for _, pkg := range packages { - if pkg.Package == dep { - return true - } - } - return false -} - -func formatFileSize(bytes int64) string { - const unit = 1024 - if bytes < unit { - return fmt.Sprintf("%d B", bytes) - } - div, exp := int64(unit), 0 - for n := bytes / unit; n >= unit; n /= unit { - div *= unit - exp++ - } - return fmt.Sprintf("%.1f %cB", float64(bytes)/float64(div), "KMGTPE"[exp]) -} - -type ArchiveFileInfo struct { - Name string - Size int64 -} - -func listArchiveContents(archivePath string) ([]ArchiveFileInfo, error) { - file, err := os.Open(archivePath) - if err != nil { - return nil, err - } - defer file.Close() - - gzReader, err := gzip.NewReader(file) - if err != nil { - return nil, err - } - defer gzReader.Close() - - tarReader := tar.NewReader(gzReader) - var files []ArchiveFileInfo - - for { - header, err := tarReader.Next() - if err == io.EOF { - break - } - if err != nil { - return nil, err - } - - if header.Typeflag == tar.TypeReg { - files = append(files, ArchiveFileInfo{ - Name: header.Name, - Size: header.Size, - }) - } - } - - return files, nil -} - -func scanBuiltFilesAllPlatforms(packageName string, packageVersion string) []pack.BuiltFile { - var builtFiles []pack.BuiltFile - baseBuildDir := host.DataDirRoot() +func BuildWeb() { + log.Println("Starting BuildWeb generation...") - targets := make([]string, 0, len(host.SupportedHosts)) - for k := range host.SupportedHosts { - targets = append(targets, k) + webDir := filepath.Join(host.DataDirRoot(), "web") + if err := setupWebDirectory(webDir); err != nil { + crash.Handle(err) } - for _, builderName := range builder.Builders { - builderDir := filepath.Join(baseBuildDir, builderName) - if _, err := os.Stat(builderDir); os.IsNotExist(err) { - continue - } - - for _, target := range targets { - buildOutputDir := filepath.Join(builderDir, "built", target, packageName) - buildOutputDir = filepath.Dir(buildOutputDir) - - if _, err := os.Stat(buildOutputDir); os.IsNotExist(err) { - continue - } + log.Println("Collecting package and build data...") + packagesWithBuilds := GetAllPackagesWithBuilds() - files, err := os.ReadDir(buildOutputDir) - if err != nil { - continue - } + packagesWithBuilds = deduplicateBuilds(packagesWithBuilds) - for _, file := range files { - fileName := file.Name() - fsFilepath := filepath.Join(buildOutputDir, fileName) - if !strings.Contains(fsFilepath, packageName) { - continue - } - if !strings.HasSuffix(fileName, ".tar.gz") { - continue - } + log.Println("Generating builder metadata...") + buildersMetadata := GetBuildersMetadata(packagesWithBuilds) - nameWithoutExt := strings.TrimSuffix(fileName, ".tar.gz") - parts := strings.Split(nameWithoutExt, "-") - if len(parts) < 3 { - continue - } + log.Println("Generating JSON files...") + generateAllJSON(packagesWithBuilds, buildersMetadata, webDir) - archPathRelative := filepath.Join(builderName, "built", target, filepath.Dir(packageName), fileName) - infoPathRelative := filepath.Join(builderName, "built", target, filepath.Dir(packageName), strings.TrimSuffix(fileName, ".tar.gz")+".info.txt") + log.Println("Generating HTML pages...") + GenerateAllHTML(packagesWithBuilds, webDir) - fullArchPath := filepath.Join(baseBuildDir, archPathRelative) - info, err := os.Stat(fullArchPath) - var fileSize int64 - if err == nil { - fileSize = info.Size() - } - id := strings.Split(parts[len(parts)-1], ".")[0] + printSummary(packagesWithBuilds) - builtFiles = append(builtFiles, pack.BuiltFile{ - Builder: builderName, - Target: target, - ID: id, - InfoPath: infoPathRelative, - ArchPath: archPathRelative, - FileSize: fileSize, - }) - } - } - } - - return builtFiles + log.Printf("Website generated successfully in %s\n", webDir) } -func getAllPackagesWithBuildsAllPlatforms() []*pack.PackageWithBuilds { - packages := pack.GetAllPackages() - packagesWithBuilds := make([]*pack.PackageWithBuilds, len(packages)) - - for i, pkg := range packages { - builtFiles := scanBuiltFilesAllPlatforms(pkg.Package, pkg.Version) - packagesWithBuilds[i] = &pack.PackageWithBuilds{ - Package: pkg, - BuiltFiles: builtFiles, - } - } - - return packagesWithBuilds +func setupWebDirectory(webDir string) error { + // Don't clean the directory - just ensure it exists + // This allows us to reuse cached JSON and HTML files + return os.MkdirAll(webDir, 0755) } -func BuildWeb() { - - webDir := filepath.Join(host.DataDirRoot(), "web") - - if _, err := os.Stat(webDir); !os.IsNotExist(err) { - err := os.RemoveAll(webDir) - crash.Handle(err) - } - err := os.MkdirAll(webDir, 0755) - crash.Handle(err) - - packagesWithBuilds := getAllPackagesWithBuildsAllPlatforms() - +func deduplicateBuilds(packagesWithBuilds []*pack.PackageWithBuilds) []*pack.PackageWithBuilds { for i, pkg := range packagesWithBuilds { builderTargetMap := make(map[string]pack.BuiltFile) for _, builtFile := range pkg.BuiltFiles { @@ -215,262 +63,80 @@ func BuildWeb() { packagesWithBuilds[i].BuiltFiles = filteredBuilds } - packages := make([]*pack.Package, len(packagesWithBuilds)) - for i, pwb := range packagesWithBuilds { - packages[i] = pwb.Package - } - - funcMap := template.FuncMap{ - "getGlobPattern": getGlobPattern, - "getGlobContent": getGlobContent, - "depExists": func(dep string) bool { - return dependencyExists(dep, packages) - }, - "getRelativePath": func(fromPackage, toPackage string) string { - fromDepth := strings.Count(fromPackage, "/") - upPath := strings.Repeat("../", fromDepth) - if toPackage == "index" { - return upPath + "index.html" - } - return upPath + toPackage + ".html" - }, - "formatFileSize": formatFileSize, - "getMirrorPath": func(pkg *pack.PackageWithBuilds, download *pack.Download) string { - packageDepth := strings.Count(pkg.Package.Package, "/") - upPath := strings.Repeat("../", packageDepth+1) // +1 to get out of web directory - - if download.Kind == "git" { - bundleName := filepath.Base(download.URL) + "-" + download.Sha256[0:8] + ".bundle" - return fmt.Sprintf("%ssource/%s", upPath, bundleName) - } - return fmt.Sprintf("%ssource/%s", upPath, filepath.Base(download.URL)) - }, - "getBuiltFilePath": func(packageName, filePath string) string { - packageDepth := strings.Count(packageName, "/") - upPath := strings.Repeat("../", packageDepth+1) // +1 to get out of web directory - return upPath + filePath - }, - "getFileDetailsPath": func(packageName, builder, target, packageVersion, buildID string) string { - packageDepth := strings.Count(packageName, "/") - upPath := strings.Repeat("../", packageDepth) - fileName := fmt.Sprintf("%s-%s-%s.html", packageName, packageVersion, buildID) - return fmt.Sprintf("%sfiles/%s/%s/%s", upPath, builder, target, fileName) - }, - "getBuildMatrix": func(pkg *pack.PackageWithBuilds) map[string]map[string]*pack.BuiltFile { - builders := make([]string, len(builder.Builders)) - copy(builders, builder.Builders) - sort.Strings(builders) - - targets := make([]string, 0, len(host.SupportedHosts)) - for k := range host.SupportedHosts { - targets = append(targets, k) - } - sort.Strings(targets) - - matrix := make(map[string]map[string]*pack.BuiltFile) - for _, builder := range builders { - matrix[builder] = make(map[string]*pack.BuiltFile) - for _, target := range targets { - matrix[builder][target] = nil - } - } - - for i := range pkg.BuiltFiles { - bf := &pkg.BuiltFiles[i] - if matrix[bf.Builder] != nil { - matrix[bf.Builder][bf.Target] = bf - } - } + return packagesWithBuilds +} - return matrix - }, - "getBuilders": func() []string { - builders := make([]string, len(builder.Builders)) - copy(builders, builder.Builders) - sort.Strings(builders) - return builders - }, - "getTargets": func() []string { - targets := make([]string, 0, len(host.SupportedHosts)) - for k := range host.SupportedHosts { - targets = append(targets, k) - } - sort.Strings(targets) - return targets - }, - "getBuildProgress": func(pkg *pack.PackageWithBuilds) int { - totalCombinations := len(builder.Builders) * len(host.SupportedHosts) - if totalCombinations == 0 { - return 0 - } +func generateAllJSON(packagesWithBuilds []*pack.PackageWithBuilds, buildersMetadata map[string]*BuildMetadata, webDir string) { + log.Println(" - Generating index.json...") + GenerateIndexJSON(packagesWithBuilds, webDir) - actualBuilds := len(pkg.BuiltFiles) - return (actualBuilds * 100) / totalCombinations - }, + log.Printf(" - Generating %d package JSON files...", len(packagesWithBuilds)) + for _, pkg := range packagesWithBuilds { + GeneratePackageJSON(pkg, webDir) } - log.Printf("Generating index page...") - generateIndexPage(packagesWithBuilds, webDir, funcMap) - - log.Printf("Generating %d package pages...", len(packagesWithBuilds)) - for i, pkgWithBuilds := range packagesWithBuilds { - log.Printf("\tProgress: %d/%d packages\n", i+1, len(packagesWithBuilds)) - generatePackagePage(pkgWithBuilds, webDir, funcMap) + log.Printf(" - Generating %d builder JSON files...", len(builder.Builders)) + for builderName, metadata := range buildersMetadata { + GenerateBuilderJSON(builderName, metadata, webDir) } - log.Printf("Generating %d builder matrix pages...\n", len(builder.Builders)) - for i, builderName := range builder.Builders { - log.Printf("\tGenerating matrix for %s (%d/%d)\n", builderName, i+1, len(builder.Builders)) - generateBuilderMatrixPage(builderName, packagesWithBuilds, webDir, funcMap) - } + log.Println(" - Generating builder metadata in built/ directories...") + GenerateBuilderMetadataFiles(buildersMetadata) + log.Println(" - Generating file details and source details JSON...") totalFiles := 0 - for _, pkgWithBuilds := range packagesWithBuilds { - totalFiles += len(pkgWithBuilds.BuiltFiles) + totalSources := 0 + for _, pkg := range packagesWithBuilds { + totalFiles += len(pkg.BuiltFiles) + totalSources += len(pkg.Package.Download) } - log.Printf("Generating %d file detail pages...\n", totalFiles) - fileCount := 0 - wg := sync.WaitGroup{} + var wg sync.WaitGroup semaphore := make(chan struct{}, runtime.NumCPU()) - for _, pkgWithBuilds := range packagesWithBuilds { - for _, builtFile := range pkgWithBuilds.BuiltFiles { - fileCount++ - log.Printf("\tProgress: %d/%d file pages\n", fileCount, totalFiles) + + for _, pkg := range packagesWithBuilds { + // Generate built file details JSON + for _, builtFile := range pkg.BuiltFiles { wg.Add(1) semaphore <- struct{}{} - go func(pkgWithBuilds *pack.PackageWithBuilds, builtFile pack.BuiltFile) { - defer wg.Done() - generateFilePage(pkgWithBuilds, &builtFile, webDir, funcMap) - <-semaphore - }(pkgWithBuilds, builtFile) - } - } - - wg.Wait() - - log.Printf("Generated static website with %d packages, %d builder matrices, and %d file details in %s\n", len(packages), len(builder.Builders), totalFiles, webDir) -} - -//go:embed index.tpl -var indexTemplate string - -func generateIndexPage(packagesWithBuilds []*pack.PackageWithBuilds, webDir string, funcMap template.FuncMap) { - - tmpl, err := template.New("index").Funcs(funcMap).Parse(indexTemplate) - crash.Handle(err) - - file, err := os.Create(filepath.Join(webDir, "index.html")) - crash.Handle(err) - defer file.Close() - - err = tmpl.Execute(file, packagesWithBuilds) - crash.Handle(err) -} - -//go:embed package.tpl -var packageTemplate string -func generatePackagePage(pkgWithBuilds *pack.PackageWithBuilds, webDir string, funcMap template.FuncMap) { - funcMap["add"] = func(a, b int) int { - return a + b - } - - tmpl, err := template.New("package").Funcs(funcMap).Parse(packageTemplate) - crash.Handle(err) - - path := filepath.Join(webDir, pkgWithBuilds.Package.Package+".html") - err = os.MkdirAll(filepath.Dir(path), 0755) - crash.Handle(err) - - file, err := os.Create(path) - crash.Handle(err) - defer file.Close() - - err = tmpl.Execute(file, pkgWithBuilds) - crash.Handle(err) -} - -//go:embed builder_matrix.tpl -var builderMatrixTemplate string - -func generateBuilderMatrixPage(builderName string, packagesWithBuilds []*pack.PackageWithBuilds, webDir string, funcMap template.FuncMap) { - tmpl, err := template.New("builder_matrix").Funcs(funcMap).Parse(builderMatrixTemplate) - crash.Handle(err) - - path := filepath.Join(webDir, "builder_"+builderName+".html") - err = os.MkdirAll(filepath.Dir(path), 0755) - crash.Handle(err) - - file, err := os.Create(path) - crash.Handle(err) - defer file.Close() - - data := struct { - Builder string - Packages []*pack.PackageWithBuilds - }{ - Builder: builderName, - Packages: packagesWithBuilds, - } - - err = tmpl.Execute(file, data) - crash.Handle(err) -} - -//go:embed file_details.tpl -var fileDetailsTemplate string - -type ArchiveInfo struct { - Files []ArchiveFileInfo - TotalSize int64 -} + go func(p *pack.PackageWithBuilds, bf pack.BuiltFile) { + defer wg.Done() + defer func() { <-semaphore }() -var filePageMutex sync.Mutex + GenerateFileDetailsJSON(p, &bf, webDir) + }(pkg, builtFile) + } -var funcMapMutex sync.Mutex + // Generate source file details JSON + for i, download := range pkg.Package.Download { + wg.Add(1) + semaphore <- struct{}{} -func generateFilePage(pkg *pack.PackageWithBuilds, builtFile *pack.BuiltFile, webDir string, funcMap template.FuncMap) { - funcMapMutex.Lock() - funcMap["getArchiveInfo"] = func(archPath string) ArchiveInfo { - baseBuildDir := host.DataDirRoot() - fullPath := filepath.Join(baseBuildDir, archPath) - files, err := listArchiveContents(fullPath) - if err != nil { - return ArchiveInfo{Files: []ArchiveFileInfo{}, TotalSize: 0} - } + go func(p *pack.PackageWithBuilds, dl *pack.Download, idx int) { + defer wg.Done() + defer func() { <-semaphore }() - var totalSize int64 - for _, file := range files { - totalSize += file.Size + GenerateSourceDetailsJSON(p, dl, idx, webDir) + }(pkg, download, i) } - - return ArchiveInfo{Files: files, TotalSize: totalSize} } - funcMapMutex.Unlock() - - filePageMutex.Lock() - tmpl, err := template.New("file_details").Funcs(funcMap).Parse(fileDetailsTemplate) - crash.Handle(err) - filePageMutex.Unlock() - - fileName := fmt.Sprintf("%s-%s-%s.html", pkg.Package.Package, pkg.Package.Version, builtFile.ID) - path := filepath.Join(webDir, "files", builtFile.Builder, builtFile.Target, fileName) - err = os.MkdirAll(filepath.Dir(path), 0755) - crash.Handle(err) - file, err := os.Create(path) - crash.Handle(err) - defer file.Close() + wg.Wait() + log.Printf(" - Generated %d file detail JSON files and %d source detail JSON files", totalFiles, totalSources) +} - data := struct { - Package *pack.PackageWithBuilds - BuiltFile *pack.BuiltFile - }{ - Package: pkg, - BuiltFile: builtFile, +func printSummary(packagesWithBuilds []*pack.PackageWithBuilds) { + totalFiles := 0 + for _, pkg := range packagesWithBuilds { + totalFiles += len(pkg.BuiltFiles) } - err = tmpl.Execute(file, data) - crash.Handle(err) + log.Println("\n=== Generation Summary ===") + log.Printf("Total packages: %d", len(packagesWithBuilds)) + log.Printf("Total builders: %d", len(builder.Builders)) + log.Printf("Total targets: %d", len(host.SupportedHosts)) + log.Printf("Total built files: %d", totalFiles) + log.Printf("HTML pages: %d", len(packagesWithBuilds)+len(builder.Builders)+totalFiles+1) + log.Printf("JSON files: %d", len(packagesWithBuilds)+len(builder.Builders)+totalFiles+1+len(builder.Builders)) } diff --git a/cmd/buildweb/buildweb_test.go b/cmd/buildweb/buildweb_test.go new file mode 100644 index 0000000..54bde89 --- /dev/null +++ b/cmd/buildweb/buildweb_test.go @@ -0,0 +1,436 @@ +package buildweb + +import ( + "os" + "path/filepath" + "testing" + + "github.com/mrcyjanek/simplybs/pack" +) + +func TestFormatFileSize(t *testing.T) { + tests := []struct { + bytes int64 + expected string + }{ + {0, "0 B"}, + {1023, "1023 B"}, + {1024, "1.0 KB"}, + {1536, "1.5 KB"}, + {1048576, "1.0 MB"}, + {1073741824, "1.0 GB"}, + {1099511627776, "1.0 TB"}, + } + + for _, tt := range tests { + result := FormatFileSize(tt.bytes) + if result != tt.expected { + t.Errorf("FormatFileSize(%d) = %s; want %s", tt.bytes, result, tt.expected) + } + } +} + +func TestGetGlobPattern(t *testing.T) { + tests := []struct { + entry string + expected string + }{ + {"*:content", "*"}, + {"pattern:value", "pattern"}, + {"nopattern", ""}, + {"x86*:CC=gcc", "x86*"}, + } + + for _, tt := range tests { + result := GetGlobPattern(tt.entry) + if result != tt.expected { + t.Errorf("GetGlobPattern(%q) = %q; want %q", tt.entry, result, tt.expected) + } + } +} + +func TestGetGlobContent(t *testing.T) { + tests := []struct { + entry string + expected string + }{ + {"*:content", "content"}, + {"pattern:value", "value"}, + {"nopattern", "nopattern"}, + {"x86*:CC=gcc", "CC=gcc"}, + } + + for _, tt := range tests { + result := GetGlobContent(tt.entry) + if result != tt.expected { + t.Errorf("GetGlobContent(%q) = %q; want %q", tt.entry, result, tt.expected) + } + } +} + +func TestGetRelativePath(t *testing.T) { + tests := []struct { + from string + to string + expected string + }{ + {"boost", "index", "index.html"}, // web/boost.html -> web/index.html + {"native/cmake", "index", "../index.html"}, // web/native/cmake.html -> web/index.html + {"boost", "zlib", "zlib.html"}, // web/boost.html -> web/zlib.html + {"native/cmake", "native/perl", "../native/perl.html"}, // web/native/cmake.html -> web/native/perl.html + } + + for _, tt := range tests { + result := GetRelativePath(tt.from, tt.to) + if result != tt.expected { + t.Errorf("GetRelativePath(%q, %q) = %q; want %q", tt.from, tt.to, result, tt.expected) + } + } +} + +func TestGetBuildProgress(t *testing.T) { + tests := []struct { + name string + builtFiles []pack.BuiltFile + totalBuilders int + totalTargets int + expected int + }{ + { + name: "no builds", + builtFiles: []pack.BuiltFile{}, + totalBuilders: 3, + totalTargets: 10, + expected: 0, + }, + { + name: "50% complete", + builtFiles: []pack.BuiltFile{ + {Builder: "darwin_arm64", Target: "aarch64-apple-ios"}, + {Builder: "darwin_arm64", Target: "aarch64-apple-darwin"}, + {Builder: "linux_amd64", Target: "aarch64-apple-ios"}, + {Builder: "linux_amd64", Target: "aarch64-apple-darwin"}, + {Builder: "linux_arm64", Target: "aarch64-apple-ios"}, + {Builder: "linux_arm64", Target: "aarch64-apple-darwin"}, + }, + totalBuilders: 3, + totalTargets: 4, + expected: 50, + }, + { + name: "100% complete", + builtFiles: []pack.BuiltFile{ + {Builder: "darwin_arm64", Target: "aarch64-apple-ios"}, + {Builder: "darwin_arm64", Target: "aarch64-apple-darwin"}, + {Builder: "linux_amd64", Target: "aarch64-apple-ios"}, + {Builder: "linux_amd64", Target: "aarch64-apple-darwin"}, + }, + totalBuilders: 2, + totalTargets: 2, + expected: 100, + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + pkg := &pack.PackageWithBuilds{ + Package: &pack.Package{}, + BuiltFiles: tt.builtFiles, + } + result := GetBuildProgress(pkg, tt.totalBuilders, tt.totalTargets) + if result != tt.expected { + t.Errorf("GetBuildProgress() = %d; want %d", result, tt.expected) + } + }) + } +} + +func TestDependencyExists(t *testing.T) { + packages := []*pack.Package{ + {Package: "boost"}, + {Package: "zlib"}, + {Package: "native/cmake"}, + } + + tests := []struct { + dep string + expected bool + }{ + {"boost", true}, + {"zlib", true}, + {"native/cmake", true}, + {"nonexistent", false}, + {"native/perl", false}, + } + + for _, tt := range tests { + result := DependencyExists(tt.dep, packages) + if result != tt.expected { + t.Errorf("DependencyExists(%q) = %v; want %v", tt.dep, result, tt.expected) + } + } +} + +func TestGetBuiltFilePath(t *testing.T) { + tests := []struct { + packageName string + filePath string + expected string + }{ + // From web/boost.html, go up to root: ../ + {"boost", "darwin_arm64/built/target/boost-1.0-abc.tar.gz", "../darwin_arm64/built/target/boost-1.0-abc.tar.gz"}, + // From web/native/cmake.html, go up to root: ../../ + {"native/cmake", "linux_amd64/built/target/file.tar.gz", "../../linux_amd64/built/target/file.tar.gz"}, + } + + for _, tt := range tests { + result := GetBuiltFilePath(tt.packageName, tt.filePath) + if result != tt.expected { + t.Errorf("GetBuiltFilePath(%q, %q) = %q; want %q", tt.packageName, tt.filePath, result, tt.expected) + } + } +} + +func TestConvertToPackageMetadata(t *testing.T) { + pkg := &pack.PackageWithBuilds{ + Package: &pack.Package{ + Package: "boost", + Version: "1.0.0", + Type: "host", + Download: []*pack.Download{ + {Kind: "http", URL: "https://example.com/boost.tar.gz", Sha256: "abc123"}, + }, + Dependencies: []string{"zlib"}, + }, + BuiltFiles: []pack.BuiltFile{ + { + Builder: "darwin_arm64", + Target: "aarch64-apple-ios", + ID: "abc12345", + InfoPath: "darwin_arm64/built/aarch64-apple-ios/boost-1.0.0-abc12345.info.txt", + ArchPath: "darwin_arm64/built/aarch64-apple-ios/boost-1.0.0-abc12345.tar.gz", + FileSize: 1024, + }, + }, + } + + metadata := ConvertToPackageMetadata(pkg) + + if metadata.Package != "boost" { + t.Errorf("Package name = %q; want %q", metadata.Package, "boost") + } + + if metadata.Version != "1.0.0" { + t.Errorf("Version = %q; want %q", metadata.Version, "1.0.0") + } + + if len(metadata.Builds) != 1 { + t.Errorf("Number of builders = %d; want 1", len(metadata.Builds)) + } + + if _, exists := metadata.Builds["darwin_arm64"]; !exists { + t.Error("darwin_arm64 builder not found in builds") + } + + if len(metadata.Builds["darwin_arm64"]) != 1 { + t.Errorf("Number of targets for darwin_arm64 = %d; want 1", len(metadata.Builds["darwin_arm64"])) + } +} + +func TestGetBuildMatrix(t *testing.T) { + pkg := &pack.PackageWithBuilds{ + Package: &pack.Package{Package: "boost"}, + BuiltFiles: []pack.BuiltFile{ + {Builder: "darwin_arm64", Target: "aarch64-apple-ios", ID: "abc"}, + {Builder: "linux_amd64", Target: "x86_64-linux-gnu", ID: "def"}, + }, + } + + matrix := GetBuildMatrix(pkg) + + if len(matrix) == 0 { + t.Error("Matrix should not be empty") + } + + if matrix["darwin_arm64"]["aarch64-apple-ios"] == nil { + t.Error("Expected darwin_arm64/aarch64-apple-ios to be in matrix") + } + + if matrix["linux_amd64"]["x86_64-linux-gnu"] == nil { + t.Error("Expected linux_amd64/x86_64-linux-gnu to be in matrix") + } +} + +func TestGetWebsiteIndex(t *testing.T) { + packagesWithBuilds := []*pack.PackageWithBuilds{ + { + Package: &pack.Package{ + Package: "boost", + Version: "1.0.0", + Type: "host", + }, + BuiltFiles: []pack.BuiltFile{ + {Builder: "darwin_arm64", Target: "aarch64-apple-ios"}, + }, + }, + { + Package: &pack.Package{ + Package: "zlib", + Version: "1.2.11", + Type: "host", + }, + BuiltFiles: []pack.BuiltFile{}, + }, + } + + index := GetWebsiteIndex(packagesWithBuilds) + + if index.TotalPackages != 2 { + t.Errorf("TotalPackages = %d; want 2", index.TotalPackages) + } + + if len(index.Packages) != 2 { + t.Errorf("Number of packages = %d; want 2", len(index.Packages)) + } + + if len(index.Builders) == 0 { + t.Error("Builders list should not be empty") + } + + if len(index.Targets) == 0 { + t.Error("Targets list should not be empty") + } +} + +func TestGetArchiveInfo(t *testing.T) { + testPkg := &pack.Package{Package: "test", Version: "1.0"} + testDownload := &pack.Download{Kind: "tar.gz", URL: "file:///nonexistent/file.tar.gz"} + info := GetArchiveInfo(testPkg, testDownload) + + if info.FileCount != 0 { + t.Errorf("FileCount for nonexistent file = %d; want 0", info.FileCount) + } + + if info.TotalSize != 0 { + t.Errorf("TotalSize for nonexistent file = %d; want 0", info.TotalSize) + } + + if len(info.Files) != 0 { + t.Errorf("Files length for nonexistent file = %d; want 0", len(info.Files)) + } +} + +func TestDeduplicateBuilds(t *testing.T) { + packagesWithBuilds := []*pack.PackageWithBuilds{ + { + Package: &pack.Package{Package: "boost"}, + BuiltFiles: []pack.BuiltFile{ + {Builder: "darwin_arm64", Target: "aarch64-apple-ios", ID: "abc"}, + {Builder: "darwin_arm64", Target: "aarch64-apple-ios", ID: "def"}, // Duplicate + {Builder: "linux_amd64", Target: "x86_64-linux-gnu", ID: "ghi"}, + }, + }, + } + + result := deduplicateBuilds(packagesWithBuilds) + + if len(result[0].BuiltFiles) != 2 { + t.Errorf("After deduplication, expected 2 builds, got %d", len(result[0].BuiltFiles)) + } +} + +func TestGetBuildersMetadata(t *testing.T) { + packagesWithBuilds := []*pack.PackageWithBuilds{ + { + Package: &pack.Package{ + Package: "boost", + Version: "1.0.0", + Type: "host", + }, + BuiltFiles: []pack.BuiltFile{ + {Builder: "darwin_arm64", Target: "aarch64-apple-ios", FileSize: 1024}, + }, + }, + } + + metadata := GetBuildersMetadata(packagesWithBuilds) + + if len(metadata) == 0 { + t.Error("Metadata should not be empty") + } + + for _, builderName := range []string{"darwin_arm64", "linux_amd64", "linux_arm64"} { + if meta, exists := metadata[builderName]; !exists { + t.Errorf("Metadata for builder %s not found", builderName) + } else { + if meta.Builder != builderName { + t.Errorf("Builder name in metadata = %q; want %q", meta.Builder, builderName) + } + if len(meta.Packages) != 1 { + t.Errorf("Number of packages in metadata = %d; want 1", len(meta.Packages)) + } + } + } +} + +func TestSetupWebDirectory(t *testing.T) { + tmpDir := filepath.Join(os.TempDir(), "buildweb_test") + defer os.RemoveAll(tmpDir) + + err := setupWebDirectory(tmpDir) + if err != nil { + t.Fatalf("setupWebDirectory failed: %v", err) + } + + if _, err := os.Stat(tmpDir); os.IsNotExist(err) { + t.Error("Web directory was not created") + } + + testFile := filepath.Join(tmpDir, "test.txt") + if err := os.WriteFile(testFile, []byte("test"), 0644); err != nil { + t.Fatalf("Failed to create test file: %v", err) + } + + err = setupWebDirectory(tmpDir) + if err != nil { + t.Fatalf("setupWebDirectory failed on second call: %v", err) + } + + if _, err := os.Stat(testFile); os.IsNotExist(err) { + t.Error("Existing files should be preserved for caching") + } + + if _, err := os.Stat(tmpDir); os.IsNotExist(err) { + t.Error("Web directory does not exist after second call") + } +} + +func TestGetSortedBuilders(t *testing.T) { + builders := getSortedBuilders() + + if len(builders) == 0 { + t.Error("Builders list should not be empty") + } + + for i := 1; i < len(builders); i++ { + if builders[i-1] > builders[i] { + t.Errorf("Builders list is not sorted: %v", builders) + break + } + } +} + +func TestGetSortedTargets(t *testing.T) { + targets := getSortedTargets() + + if len(targets) == 0 { + t.Error("Targets list should not be empty") + } + + for i := 1; i < len(targets); i++ { + if targets[i-1] > targets[i] { + t.Errorf("Targets list is not sorted: %v", targets) + break + } + } +} diff --git a/cmd/buildweb/data.go b/cmd/buildweb/data.go new file mode 100644 index 0000000..f0207b9 --- /dev/null +++ b/cmd/buildweb/data.go @@ -0,0 +1,250 @@ +package buildweb + +import ( + "os" + "path/filepath" + "sort" + "strings" + + "github.com/mrcyjanek/simplybs/builder" + "github.com/mrcyjanek/simplybs/host" + "github.com/mrcyjanek/simplybs/pack" +) + +func GetAllPackagesWithBuilds() []*pack.PackageWithBuilds { + packages := pack.GetAllPackages() + packagesWithBuilds := make([]*pack.PackageWithBuilds, len(packages)) + + for i, pkg := range packages { + builtFiles := scanBuiltFilesForPackage(pkg.Package, pkg.Version) + packagesWithBuilds[i] = &pack.PackageWithBuilds{ + Package: pkg, + BuiltFiles: builtFiles, + } + } + + return packagesWithBuilds +} + +func scanBuiltFilesForPackage(packageName string, packageVersion string) []pack.BuiltFile { + var builtFiles []pack.BuiltFile + baseBuildDir := host.DataDirRoot() + + targets := getSortedTargets() + + for _, builderName := range builder.Builders { + builderDir := filepath.Join(baseBuildDir, builderName) + if _, err := os.Stat(builderDir); os.IsNotExist(err) { + continue + } + + for _, target := range targets { + buildOutputDir := filepath.Join(builderDir, "built", target, packageName) + buildOutputDir = filepath.Dir(buildOutputDir) + + if _, err := os.Stat(buildOutputDir); os.IsNotExist(err) { + continue + } + + files, err := os.ReadDir(buildOutputDir) + if err != nil { + continue + } + + for _, file := range files { + fileName := file.Name() + fsFilepath := filepath.Join(buildOutputDir, fileName) + if !strings.Contains(fsFilepath, packageName) { + continue + } + if !strings.HasSuffix(fileName, ".tar.gz") { + continue + } + + nameWithoutExt := strings.TrimSuffix(fileName, ".tar.gz") + parts := strings.Split(nameWithoutExt, "-") + if len(parts) < 3 { + continue + } + + archPathRelative := filepath.Join(builderName, "built", target, filepath.Dir(packageName), fileName) + infoPathRelative := filepath.Join(builderName, "built", target, filepath.Dir(packageName), strings.TrimSuffix(fileName, ".tar.gz")+".info.txt") + + fullArchPath := filepath.Join(baseBuildDir, archPathRelative) + info, err := os.Stat(fullArchPath) + var fileSize int64 + if err == nil { + fileSize = info.Size() + } + id := strings.Split(parts[len(parts)-1], ".")[0] + + builtFiles = append(builtFiles, pack.BuiltFile{ + Builder: builderName, + Target: target, + ID: id, + InfoPath: infoPathRelative, + ArchPath: archPathRelative, + FileSize: fileSize, + }) + } + } + } + + return builtFiles +} + +func GetBuildersMetadata(packagesWithBuilds []*pack.PackageWithBuilds) map[string]*BuildMetadata { + metadata := make(map[string]*BuildMetadata) + targets := getSortedTargets() + + for _, builderName := range builder.Builders { + meta := &BuildMetadata{ + Builder: builderName, + Targets: targets, + Packages: []PackageBuildStatus{}, + Stats: BuilderStats{ + TotalPackages: len(packagesWithBuilds), + TotalTargets: len(targets), + }, + } + + for _, pkg := range packagesWithBuilds { + status := PackageBuildStatus{ + Package: pkg.Package.Package, + Version: pkg.Package.Version, + Type: pkg.Package.Type, + Targets: make(map[string]*TargetBuildInfo), + } + + for _, target := range targets { + status.Targets[target] = &TargetBuildInfo{Built: false} + } + + for _, builtFile := range pkg.BuiltFiles { + if builtFile.Builder == builderName { + status.Targets[builtFile.Target] = &TargetBuildInfo{ + Built: true, + BuildID: builtFile.ID, + FileSize: builtFile.FileSize, + ArchPath: builtFile.ArchPath, + InfoPath: builtFile.InfoPath, + } + meta.Stats.TotalBuilds++ + } + } + + meta.Packages = append(meta.Packages, status) + } + + totalPossible := meta.Stats.TotalPackages * meta.Stats.TotalTargets + if totalPossible > 0 { + meta.Stats.CompletionRate = float64(meta.Stats.TotalBuilds) / float64(totalPossible) * 100 + } + + metadata[builderName] = meta + } + + return metadata +} + +func ConvertToPackageMetadata(pkg *pack.PackageWithBuilds) *PackageMetadata { + meta := &PackageMetadata{ + Package: pkg.Package.Package, + Version: pkg.Package.Version, + Type: pkg.Package.Type, + Downloads: pkg.Package.Download, + Dependencies: pkg.Package.Dependencies, + BuildEnv: pkg.Package.Build.Env, + BuildSteps: pkg.Package.Build.Steps, + Builds: make(map[string]map[string]*BuildInfo), + } + + for _, builtFile := range pkg.BuiltFiles { + if meta.Builds[builtFile.Builder] == nil { + meta.Builds[builtFile.Builder] = make(map[string]*BuildInfo) + } + + basePath := "../" + depth := strings.Count(pkg.Package.Package, "/") + for i := 0; i < depth; i++ { + basePath += "../" + } + + meta.Builds[builtFile.Builder][builtFile.Target] = &BuildInfo{ + Builder: builtFile.Builder, + Target: builtFile.Target, + BuildID: builtFile.ID, + FileSize: builtFile.FileSize, + ArchivePath: builtFile.ArchPath, + InfoPath: builtFile.InfoPath, + DownloadURL: basePath + builtFile.ArchPath, + } + } + + return meta +} + +func GetWebsiteIndex(packagesWithBuilds []*pack.PackageWithBuilds) *WebsiteIndex { + index := &WebsiteIndex{ + TotalPackages: len(packagesWithBuilds), + Builders: getSortedBuilders(), + Targets: getSortedTargets(), + Packages: []PackageIndexEntry{}, + } + + totalCombinations := len(builder.Builders) * len(host.SupportedHosts) + + for _, pkg := range packagesWithBuilds { + builderTargetMap := make(map[string]pack.BuiltFile) + for _, builtFile := range pkg.BuiltFiles { + key := builtFile.Builder + "/" + builtFile.Target + if _, exists := builderTargetMap[key]; !exists { + builderTargetMap[key] = builtFile + } + } + + actualBuilds := len(builderTargetMap) + progress := 0 + if totalCombinations > 0 { + progress = (actualBuilds * 100) / totalCombinations + } + + entry := PackageIndexEntry{ + Package: pkg.Package.Package, + Version: pkg.Package.Version, + Type: pkg.Package.Type, + BuildProgress: progress, + TotalBuilds: actualBuilds, + PossibleBuilds: totalCombinations, + } + + index.Packages = append(index.Packages, entry) + } + + return index +} + +func getSortedBuilders() []string { + builders := make([]string, len(builder.Builders)) + copy(builders, builder.Builders) + sort.Strings(builders) + return builders +} + +func getSortedTargets() []string { + targets := make([]string, 0, len(host.SupportedHosts)) + for k := range host.SupportedHosts { + targets = append(targets, k) + } + sort.Strings(targets) + return targets +} + +func DependencyExists(dep string, packages []*pack.Package) bool { + for _, pkg := range packages { + if pkg.Package == dep { + return true + } + } + return false +} diff --git a/cmd/buildweb/file_details.tpl b/cmd/buildweb/file_details.tpl index 2534998..31e052d 100644 --- a/cmd/buildweb/file_details.tpl +++ b/cmd/buildweb/file_details.tpl @@ -212,7 +212,8 @@

Archive Contents

- {{$archiveInfo := getArchiveInfo .BuiltFile.ArchPath}} + {{$tempDownload := index (list (dict "Kind" "tar.gz")) 0}} + {{$archiveInfo := getArchiveInfo .Package.Package $tempDownload}} {{if $archiveInfo.Files}}
{{len $archiveInfo.Files}} files in archive
diff --git a/cmd/buildweb/html.go b/cmd/buildweb/html.go new file mode 100644 index 0000000..07bd925 --- /dev/null +++ b/cmd/buildweb/html.go @@ -0,0 +1,231 @@ +package buildweb + +import ( + "fmt" + "html/template" + "os" + "path/filepath" + "sync" + + _ "embed" + + "github.com/mrcyjanek/simplybs/builder" + "github.com/mrcyjanek/simplybs/crash" + "github.com/mrcyjanek/simplybs/host" + "github.com/mrcyjanek/simplybs/pack" +) + +//go:embed index.tpl +var indexTemplate string + +//go:embed package.tpl +var packageTemplate string + +//go:embed builder_matrix.tpl +var builderMatrixTemplate string + +//go:embed file_details.tpl +var fileDetailsTemplate string + +//go:embed source_details.tpl +var sourceDetailsTemplate string + +func GenerateIndexHTML(packagesWithBuilds []*pack.PackageWithBuilds, webDir string, funcMap template.FuncMap) { + path := filepath.Join(webDir, "index.html") + + tmpl, err := template.New("index").Funcs(funcMap).Parse(indexTemplate) + crash.Handle(err) + + file, err := os.Create(path) + crash.Handle(err) + defer file.Close() + + err = tmpl.Execute(file, packagesWithBuilds) + crash.Handle(err) +} + +func GeneratePackageHTML(pkgWithBuilds *pack.PackageWithBuilds, webDir string, funcMap template.FuncMap) { + path := filepath.Join(webDir, pkgWithBuilds.Package.Package+".html") + + funcMap["add"] = func(a, b int) int { + return a + b + } + + tmpl, err := template.New("package").Funcs(funcMap).Parse(packageTemplate) + crash.Handle(err) + + err = os.MkdirAll(filepath.Dir(path), 0755) + crash.Handle(err) + + file, err := os.Create(path) + crash.Handle(err) + defer file.Close() + + err = tmpl.Execute(file, pkgWithBuilds) + crash.Handle(err) +} + +func GenerateBuilderMatrixHTML(builderName string, packagesWithBuilds []*pack.PackageWithBuilds, webDir string, funcMap template.FuncMap) { + path := filepath.Join(webDir, "builder_"+builderName+".html") + + tmpl, err := template.New("builder_matrix").Funcs(funcMap).Parse(builderMatrixTemplate) + crash.Handle(err) + + err = os.MkdirAll(filepath.Dir(path), 0755) + crash.Handle(err) + + file, err := os.Create(path) + crash.Handle(err) + defer file.Close() + + data := struct { + Builder string + Packages []*pack.PackageWithBuilds + }{ + Builder: builderName, + Packages: packagesWithBuilds, + } + + err = tmpl.Execute(file, data) + crash.Handle(err) +} + +func GenerateFileDetailsHTML(pkg *pack.PackageWithBuilds, builtFile *pack.BuiltFile, webDir string, funcMap template.FuncMap) { + fileName := fmt.Sprintf("%s-%s-%s.html", pkg.Package.Package, pkg.Package.Version, builtFile.ID) + path := filepath.Join(webDir, "files", builtFile.Builder, builtFile.Target, fileName) + + tmpl, err := template.New("file_details").Funcs(funcMap).Parse(fileDetailsTemplate) + crash.Handle(err) + + err = os.MkdirAll(filepath.Dir(path), 0755) + crash.Handle(err) + + file, err := os.Create(path) + crash.Handle(err) + defer file.Close() + + data := struct { + Package *pack.PackageWithBuilds + BuiltFile *pack.BuiltFile + }{ + Package: pkg, + BuiltFile: builtFile, + } + + err = tmpl.Execute(file, data) + crash.Handle(err) +} + +func CreateTemplateFuncMap(packages []*pack.Package) template.FuncMap { + return template.FuncMap{ + "getGlobPattern": GetGlobPattern, + "getGlobContent": GetGlobContent, + "depExists": func(dep string) bool { + return DependencyExists(dep, packages) + }, + "getRelativePath": GetRelativePath, + "formatFileSize": FormatFileSize, + "getMirrorPath": GetMirrorPath, + "getBuiltFilePath": GetBuiltFilePath, + "getFileDetailsPath": GetFileDetailsPath, + "getSourceFilePath": GetSourceFilePath, + "getSourceDetailsPath": GetSourceDetailsPath, + "getBuildMatrix": GetBuildMatrix, + "getBuilders": getSortedBuilders, + "getTargets": getSortedTargets, + "getBuildProgress": func(pkg *pack.PackageWithBuilds) int { + return GetBuildProgress(pkg, len(builder.Builders), len(host.SupportedHosts)) + }, + "getArchiveInfo": func(pkg *pack.Package, download *pack.Download) ArchiveInfo { + return GetArchiveInfo(pkg, download) + }, + } +} + +func GenerateSourceDetailsHTML(pkg *pack.PackageWithBuilds, download *pack.Download, downloadIndex int, webDir string, funcMap template.FuncMap) { + fileName := fmt.Sprintf("%s-download-%d.html", pkg.Package.Package, downloadIndex) + path := filepath.Join(webDir, "source", fileName) + + tmpl, err := template.New("source_details").Funcs(funcMap).Parse(sourceDetailsTemplate) + crash.Handle(err) + + err = os.MkdirAll(filepath.Dir(path), 0755) + crash.Handle(err) + + file, err := os.Create(path) + crash.Handle(err) + defer file.Close() + + sourcePath := pkg.Package.GenerateSourceBuildPath(download) + relSourcePath, _ := filepath.Rel(host.DataDirRoot(), sourcePath) + + var fileSize int64 + if info, err := os.Stat(sourcePath); err == nil { + fileSize = info.Size() + } + + data := struct { + Package *pack.Package + Download *pack.Download + SourcePath string + FileSize int64 + }{ + Package: pkg.Package, + Download: download, + SourcePath: relSourcePath, + FileSize: fileSize, + } + + err = tmpl.Execute(file, data) + crash.Handle(err) +} + +func GenerateAllHTML(packagesWithBuilds []*pack.PackageWithBuilds, webDir string) { + packages := make([]*pack.Package, len(packagesWithBuilds)) + for i, pwb := range packagesWithBuilds { + packages[i] = pwb.Package + } + + funcMap := CreateTemplateFuncMap(packages) + + GenerateIndexHTML(packagesWithBuilds, webDir, funcMap) + + for _, pkgWithBuilds := range packagesWithBuilds { + GeneratePackageHTML(pkgWithBuilds, webDir, funcMap) + } + + for _, builderName := range builder.Builders { + GenerateBuilderMatrixHTML(builderName, packagesWithBuilds, webDir, funcMap) + } + + var wg sync.WaitGroup + semaphore := make(chan struct{}, 10) + + for _, pkgWithBuilds := range packagesWithBuilds { + for _, builtFile := range pkgWithBuilds.BuiltFiles { + wg.Add(1) + semaphore <- struct{}{} + + go func(pkg *pack.PackageWithBuilds, bf pack.BuiltFile) { + defer wg.Done() + defer func() { <-semaphore }() + + GenerateFileDetailsHTML(pkg, &bf, webDir, funcMap) + }(pkgWithBuilds, builtFile) + } + + for i, download := range pkgWithBuilds.Package.Download { + wg.Add(1) + semaphore <- struct{}{} + + go func(pkg *pack.PackageWithBuilds, dl *pack.Download, idx int) { + defer wg.Done() + defer func() { <-semaphore }() + + GenerateSourceDetailsHTML(pkg, dl, idx, webDir, funcMap) + }(pkgWithBuilds, download, i) + } + } + + wg.Wait() +} diff --git a/cmd/buildweb/json.go b/cmd/buildweb/json.go new file mode 100644 index 0000000..34cddc2 --- /dev/null +++ b/cmd/buildweb/json.go @@ -0,0 +1,194 @@ +package buildweb + +import ( + "encoding/json" + "fmt" + "os" + "path/filepath" + + "github.com/mrcyjanek/simplybs/crash" + "github.com/mrcyjanek/simplybs/host" + "github.com/mrcyjanek/simplybs/pack" +) + +func GenerateIndexJSON(packagesWithBuilds []*pack.PackageWithBuilds, webDir string) { + path := filepath.Join(webDir, "index.json") + + if _, err := os.Stat(path); err == nil { + return + } + + index := GetWebsiteIndex(packagesWithBuilds) + + data, err := json.MarshalIndent(index, "", " ") + crash.Handle(err) + + err = os.WriteFile(path, data, 0644) + crash.Handle(err) +} + +func GeneratePackageJSON(pkg *pack.PackageWithBuilds, webDir string) { + path := filepath.Join(webDir, pkg.Package.Package+".json") + + if _, err := os.Stat(path); err == nil { + return + } + + metadata := ConvertToPackageMetadata(pkg) + + data, err := json.MarshalIndent(metadata, "", " ") + crash.Handle(err) + + err = os.MkdirAll(filepath.Dir(path), 0755) + crash.Handle(err) + + err = os.WriteFile(path, data, 0644) + crash.Handle(err) +} + +func GenerateBuilderJSON(builderName string, metadata *BuildMetadata, webDir string) { + path := filepath.Join(webDir, "builder_"+builderName+".json") + + if _, err := os.Stat(path); err == nil { + return + } + + data, err := json.MarshalIndent(metadata, "", " ") + crash.Handle(err) + + err = os.WriteFile(path, data, 0644) + crash.Handle(err) +} + +func GenerateBuilderMetadataFiles(metadata map[string]*BuildMetadata) { + baseBuildDir := host.DataDirRoot() + + for builderName, meta := range metadata { + builderDir := filepath.Join(baseBuildDir, builderName, "built") + err := os.MkdirAll(builderDir, 0755) + crash.Handle(err) + + metadataPath := filepath.Join(builderDir, "metadata.json") + + if _, err := os.Stat(metadataPath); err == nil { + continue + } + + data, err := json.MarshalIndent(meta, "", " ") + crash.Handle(err) + + err = os.WriteFile(metadataPath, data, 0644) + crash.Handle(err) + } +} + +func GenerateFileDetailsJSON(pkg *pack.PackageWithBuilds, builtFile *pack.BuiltFile, webDir string) { + fileName := pkg.Package.Package + "-" + pkg.Package.Version + "-" + builtFile.ID + ".json" + path := filepath.Join(webDir, "files", builtFile.Builder, builtFile.Target, fileName) + + if _, err := os.Stat(path); err == nil { + return + } + + baseBuildDir := host.DataDirRoot() + fullArchPath := filepath.Join(baseBuildDir, builtFile.ArchPath) + + info, err := os.Stat(fullArchPath) + if os.IsNotExist(err) { + return + } + + if info.Size() == 0 { + crash.Handle(fmt.Errorf("built archive is 0 bytes: %s", fullArchPath)) + } + + tempDownload := &pack.Download{Kind: "tar.gz"} + tempPkg := &pack.Package{ + Package: pkg.Package.Package, + Version: pkg.Package.Version, + } + archiveInfo := GetArchiveInfo(tempPkg, tempDownload) + + data := struct { + Package string `json:"package"` + Version string `json:"version"` + Builder string `json:"builder"` + Target string `json:"target"` + BuildID string `json:"build_id"` + FileSize int64 `json:"file_size"` + ArchivePath string `json:"archive_path"` + InfoPath string `json:"info_path"` + Archive ArchiveInfo `json:"archive"` + }{ + Package: pkg.Package.Package, + Version: pkg.Package.Version, + Builder: builtFile.Builder, + Target: builtFile.Target, + BuildID: builtFile.ID, + FileSize: builtFile.FileSize, + ArchivePath: builtFile.ArchPath, + InfoPath: builtFile.InfoPath, + Archive: archiveInfo, + } + + jsonData, err := json.MarshalIndent(data, "", " ") + crash.Handle(err) + + err = os.MkdirAll(filepath.Dir(path), 0755) + crash.Handle(err) + + err = os.WriteFile(path, jsonData, 0644) + crash.Handle(err) +} + +func GenerateSourceDetailsJSON(pkg *pack.PackageWithBuilds, download *pack.Download, downloadIndex int, webDir string) { + fileName := pkg.Package.Package + "-download-" + fmt.Sprintf("%d", downloadIndex) + ".json" + path := filepath.Join(webDir, "source", fileName) + + if _, err := os.Stat(path); err == nil { + return + } + + sourcePath := pkg.Package.GenerateSourceBuildPath(download) + relSourcePath, _ := filepath.Rel(host.DataDirRoot(), sourcePath) + + var fileSize int64 + var archiveInfo ArchiveInfo + if info, err := os.Stat(sourcePath); err == nil { + fileSize = info.Size() + if download.Kind != "blob" && download.Kind != "none" { + archiveInfo = GetArchiveInfo(pkg.Package, download) + } + } + + data := struct { + Package string `json:"package"` + Version string `json:"version"` + Kind string `json:"kind"` + URL string `json:"url"` + SHA256 string `json:"sha256"` + Path string `json:"path,omitempty"` + FileSize int64 `json:"file_size"` + SourcePath string `json:"source_path"` + Archive ArchiveInfo `json:"archive,omitempty"` + }{ + Package: pkg.Package.Package, + Version: pkg.Package.Version, + Kind: download.Kind, + URL: download.URL, + SHA256: download.Sha256, + Path: download.Path, + FileSize: fileSize, + SourcePath: relSourcePath, + Archive: archiveInfo, + } + + jsonData, err := json.MarshalIndent(data, "", " ") + crash.Handle(err) + + err = os.MkdirAll(filepath.Dir(path), 0755) + crash.Handle(err) + + err = os.WriteFile(path, jsonData, 0644) + crash.Handle(err) +} diff --git a/cmd/buildweb/metadata.go b/cmd/buildweb/metadata.go new file mode 100644 index 0000000..4ac597f --- /dev/null +++ b/cmd/buildweb/metadata.go @@ -0,0 +1,80 @@ +package buildweb + +import "github.com/mrcyjanek/simplybs/pack" + +type BuildMetadata struct { + Builder string `json:"builder"` + Targets []string `json:"targets"` + Packages []PackageBuildStatus `json:"packages"` + Stats BuilderStats `json:"stats"` +} + +type BuilderStats struct { + TotalPackages int `json:"total_packages"` + TotalTargets int `json:"total_targets"` + TotalBuilds int `json:"total_builds"` + CompletionRate float64 `json:"completion_rate"` +} + +type PackageBuildStatus struct { + Package string `json:"package"` + Version string `json:"version"` + Type string `json:"type"` + Targets map[string]*TargetBuildInfo `json:"targets"` +} + +type TargetBuildInfo struct { + Built bool `json:"built"` + BuildID string `json:"build_id,omitempty"` + FileSize int64 `json:"file_size,omitempty"` + ArchPath string `json:"arch_path,omitempty"` + InfoPath string `json:"info_path,omitempty"` +} + +type PackageMetadata struct { + Package string `json:"package"` + Version string `json:"version"` + Type string `json:"type"` + Downloads []*pack.Download `json:"downloads"` + Dependencies []string `json:"dependencies"` + BuildEnv []string `json:"build_env"` + BuildSteps []string `json:"build_steps"` + Builds map[string]map[string]*BuildInfo `json:"builds"` // builder -> target -> BuildInfo +} + +type BuildInfo struct { + Builder string `json:"builder"` + Target string `json:"target"` + BuildID string `json:"build_id"` + FileSize int64 `json:"file_size"` + ArchivePath string `json:"archive_path"` + InfoPath string `json:"info_path"` + DownloadURL string `json:"download_url"` +} + +type ArchiveFileInfo struct { + Name string `json:"name"` + Size int64 `json:"size"` +} + +type ArchiveInfo struct { + Files []ArchiveFileInfo `json:"files"` + TotalSize int64 `json:"total_size"` + FileCount int `json:"file_count"` +} + +type WebsiteIndex struct { + TotalPackages int `json:"total_packages"` + Builders []string `json:"builders"` + Targets []string `json:"targets"` + Packages []PackageIndexEntry `json:"packages"` +} + +type PackageIndexEntry struct { + Package string `json:"package"` + Version string `json:"version"` + Type string `json:"type"` + BuildProgress int `json:"build_progress"` + TotalBuilds int `json:"total_builds"` + PossibleBuilds int `json:"possible_builds"` +} diff --git a/cmd/buildweb/package.tpl b/cmd/buildweb/package.tpl index edcdfe8..22a8fc5 100644 --- a/cmd/buildweb/package.tpl +++ b/cmd/buildweb/package.tpl @@ -372,6 +372,14 @@
{{end}}
+
{{end}} diff --git a/cmd/buildweb/source_details.tpl b/cmd/buildweb/source_details.tpl new file mode 100644 index 0000000..59b61f0 --- /dev/null +++ b/cmd/buildweb/source_details.tpl @@ -0,0 +1,240 @@ + + + + {{.Package.Package}} - Source Archive Contents + + + +
+ ← Back to Package + +

{{.Package.Package}}

+
+ {{.Download.Kind}} source +
+ + + +
+

Source Information

+ + + + + + + {{if .Download.Path}} + + {{end}} + +
Package{{.Package.Package}}
Version{{.Package.Version}}
Download Kind{{.Download.Kind}}
URL{{.Download.URL}}
SHA256{{.Download.Sha256}}
Extract Path{{.Download.Path}}
File Size{{formatFileSize .FileSize}}
+
+ + {{if eq .Download.Kind "blob"}} +
+

File Information

+
+
This is a single file (blob)
+
+
+ {{else if eq .Download.Kind "none"}} +
+

No Download

+
+
This package has no downloadable source
+
+
+ {{else}} +
+

Archive Contents

+ {{$archiveInfo := getArchiveInfo .Package .Download}} + {{if $archiveInfo.Files}} +
+
{{len $archiveInfo.Files}} files in archive
+
+ Total uncompressed size: {{formatFileSize $archiveInfo.TotalSize}} +
+
+
+
+
File Path
+
Size
+
+ {{range $archiveInfo.Files}} +
+
{{.Name}}
+
{{formatFileSize .Size}}
+
+ {{end}} +
+ {{else}} +
+
Unable to read archive contents
+
Archive may be corrupted or use an unsupported format
+
+ {{end}} +
+ {{end}} +
+ + + diff --git a/cmd/buildweb/utils.go b/cmd/buildweb/utils.go new file mode 100644 index 0000000..b9c6e09 --- /dev/null +++ b/cmd/buildweb/utils.go @@ -0,0 +1,121 @@ +package buildweb + +import ( + "fmt" + "path/filepath" + "strings" + + "github.com/mrcyjanek/simplybs/pack" +) + +func FormatFileSize(bytes int64) string { + const unit = 1024 + if bytes < unit { + return fmt.Sprintf("%d B", bytes) + } + div, exp := int64(unit), 0 + for n := bytes / unit; n >= unit; n /= unit { + div *= unit + exp++ + } + return fmt.Sprintf("%.1f %cB", float64(bytes)/float64(div), "KMGTPE"[exp]) +} + +func GetGlobPattern(entry string) string { + if strings.Contains(entry, ":") { + parts := strings.SplitN(entry, ":", 2) + return parts[0] + } + return "" +} + +func GetGlobContent(entry string) string { + if strings.Contains(entry, ":") { + parts := strings.SplitN(entry, ":", 2) + return parts[1] + } + return entry +} + +func GetRelativePath(fromPackage, toPackage string) string { + fromDepth := strings.Count(fromPackage, "/") + upPath := strings.Repeat("../", fromDepth) + if toPackage == "index" { + return upPath + "index.html" + } + return upPath + toPackage + ".html" +} + +func GetMirrorPath(pkg *pack.PackageWithBuilds, download *pack.Download) string { + packageDepth := strings.Count(pkg.Package.Package, "/") + upPath := strings.Repeat("../", packageDepth+1) + + if download.Kind == "git" { + bundleName := filepath.Base(download.URL) + "-" + download.Sha256[0:8] + ".bundle" + return fmt.Sprintf("%ssource/%s", upPath, bundleName) + } + return fmt.Sprintf("%ssource/%s", upPath, filepath.Base(download.URL)) +} + +func GetBuiltFilePath(packageName, filePath string) string { + packageDepth := strings.Count(packageName, "/") + upPath := strings.Repeat("../", packageDepth+1) + return upPath + filePath +} + +func GetFileDetailsPath(packageName, builder, target, packageVersion, buildID string) string { + packageDepth := strings.Count(packageName, "/") + upPath := strings.Repeat("../", packageDepth) + fileName := fmt.Sprintf("%s-%s-%s.html", packageName, packageVersion, buildID) + return fmt.Sprintf("%sfiles/%s/%s/%s", upPath, builder, target, fileName) +} + +func GetBuildMatrix(pkg *pack.PackageWithBuilds) map[string]map[string]*pack.BuiltFile { + builders := getSortedBuilders() + targets := getSortedTargets() + + matrix := make(map[string]map[string]*pack.BuiltFile) + for _, builder := range builders { + matrix[builder] = make(map[string]*pack.BuiltFile) + for _, target := range targets { + matrix[builder][target] = nil + } + } + + for i := range pkg.BuiltFiles { + bf := &pkg.BuiltFiles[i] + if matrix[bf.Builder] != nil { + matrix[bf.Builder][bf.Target] = bf + } + } + + return matrix +} + +func GetBuildProgress(pkg *pack.PackageWithBuilds, totalBuilders, totalTargets int) int { + totalCombinations := totalBuilders * totalTargets + if totalCombinations == 0 { + return 0 + } + + builderTargetMap := make(map[string]bool) + for _, builtFile := range pkg.BuiltFiles { + key := builtFile.Builder + "/" + builtFile.Target + builderTargetMap[key] = true + } + + actualBuilds := len(builderTargetMap) + return (actualBuilds * 100) / totalCombinations +} + +func GetSourceFilePath(packageName, sourcePath string) string { + packageDepth := strings.Count(packageName, "/") + upPath := strings.Repeat("../", packageDepth+1) + return upPath + sourcePath +} + +func GetSourceDetailsPath(packageName string, downloadIndex int) string { + packageDepth := strings.Count(packageName, "/") + upPath := strings.Repeat("../", packageDepth) + return fmt.Sprintf("%ssource/%s-download-%d.html", upPath, packageName, downloadIndex) +} diff --git a/cmd/lint/lint.go b/cmd/lint/lint.go index 5812cbb..3fcb735 100644 --- a/cmd/lint/lint.go +++ b/cmd/lint/lint.go @@ -15,6 +15,14 @@ import ( "github.com/mrcyjanek/simplybs/pack" ) +type RepositoryInfo struct { + Refs []string `json:"refs"` +} + +type SourcesFile struct { + Repositories map[string]RepositoryInfo `json:"repositories"` +} + type OrderedPackage struct { Package string `json:"package"` Version string `json:"version"` @@ -28,7 +36,7 @@ type OrderedPackage struct { func Lint() { fixFormatting() ensureSaneDependencies() - + createSourcesFile() } func fixFormatting() { @@ -242,3 +250,82 @@ func dfsCycleDetection(packageName string, graph map[string][]string, color map[ color[packageName] = 2 return false } + +func createSourcesFile() { + log.Println("Creating sources.json file...") + sources := SourcesFile{ + Repositories: make(map[string]RepositoryInfo), + } + + pkgs := pack.GetAllPackages() + for _, pkg := range pkgs { + content, err := os.ReadFile(filepath.Join(host.GetPackagesDir(), pkg.Package+".json")) + if err != nil { + log.Printf("Failed to read package %s: %v", pkg.Package, err) + continue + } + + var packageData map[string]interface{} + if err := json.Unmarshal(content, &packageData); err != nil { + log.Printf("Failed to parse package %s: %v", pkg.Package, err) + continue + } + + downloads, ok := packageData["download"].([]interface{}) + if !ok { + continue + } + + for _, downloadInterface := range downloads { + download, ok := downloadInterface.(map[string]interface{}) + if !ok { + continue + } + + kind, ok := download["kind"].(string) + if !ok || kind != "git" { + continue + } + + url, ok := download["url"].(string) + if !ok { + continue + } + + sha256, ok := download["sha256"].(string) + if !ok || sha256 == "" { + continue + } + + if repoInfo, exists := sources.Repositories[url]; exists { + refExists := false + for _, ref := range repoInfo.Refs { + if ref == sha256 { + refExists = true + break + } + } + if !refExists { + repoInfo.Refs = append(repoInfo.Refs, sha256) + } + + sources.Repositories[url] = repoInfo + } else { + sources.Repositories[url] = RepositoryInfo{ + Refs: []string{sha256}, + } + } + } + } + + sourcesJSON, err := json.MarshalIndent(sources, "", " ") + if err != nil { + log.Fatalf("Failed to marshal sources.json: %v", err) + } + + if err := os.WriteFile("sources.json", sourcesJSON, 0644); err != nil { + log.Fatalf("Failed to write sources.json: %v", err) + } + + log.Printf("Created sources.json with %d repositories", len(sources.Repositories)) +} diff --git a/host/main.go b/host/main.go index cf8d452..42d62ec 100644 --- a/host/main.go +++ b/host/main.go @@ -56,13 +56,13 @@ var SupportedHosts = map[string]*Host{ "*:OSX_MIN_VERSION=10.16", "*:LD64_VERSION=609", "*:CC_target=arm64-apple-darwin", - "*:CC=aarch64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION --sysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", - "*:CXX=aarch64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION --sysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:CC=aarch64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:CXX=aarch64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", "*:CFLAGS=", "*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:RANLIB=" + shellOutput("xcrun -f ranlib"), - "*:AR=" + shellOutput("xcrun -f ar"), - "*:LIBTOOL=" + shellOutput("xcrun -f libtool"), + "*:RANLIB=llvm-ranlib", + "*:AR=llvm-ar", + "*:LIBTOOL=llvm-libtool-darwin", "*:SDK_PATH=$PREFIX/native/SDK/MacOSX26.0.sdk", "*:LDFLAGS=-lc++ -lc++abi", }, @@ -72,17 +72,18 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:HOST=x86_64-apple-darwin", "*:TARGET=x86_64-apple-darwin", - "*:OSX_MIN_VERSION=10.15", + "*:OSX_MIN_VERSION=10.16", "*:LD64_VERSION=609", "*:CC_target=x86_64-apple-darwin", - "*:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mmacosx-version-min=$OSX_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk macosx --show-sdk-path") + " -I" + shellOutput("xcrun --sdk macosx --show-sdk-path") + "/usr/include -I$PREFIX/include", - "*:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mmacosx-version-min=$OSX_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk macosx --show-sdk-path") + " -I" + shellOutput("xcrun --sdk macosx --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:CC=x86_64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:CXX=x86_64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", "*:CFLAGS=", "*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:RANLIB=" + shellOutput("xcrun -f ranlib"), - "*:AR=" + shellOutput("xcrun -f ar"), - "*:LIBTOOL=" + shellOutput("xcrun -f libtool"), - "*:SDK_PATH=" + shellOutput("xcrun --sdk macosx --show-sdk-path"), + "*:RANLIB=llvm-ranlib", + "*:AR=llvm-ar", + "*:LIBTOOL=llvm-libtool-darwin", + "*:SDK_PATH=$PREFIX/native/SDK/MacOSX26.0.sdk", + "*:LDFLAGS=-lc++ -lc++abi", }, }, "aarch64-apple-ios": { @@ -189,9 +190,9 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:HOST=aarch64-linux-gnu", "*:TARGET=aarch64-linux-gnu", - "*:CC_target=aarch64-linux-gnu", - "*:CC=aarch64-unknown-linux-gnu-gcc", - "*:CXX=aarch64-unknown-linux-gnu-g++", + "*:CC_target=x86_64-linux-gnu", + "*:CC=aarch64-unknown-linux-gnu-gcc --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", + "*:CXX=aarch64-unknown-linux-gnu-g++ --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", "*:CXXFLAGS=$CFLAGS", "*:RANLIB=aarch64-unknown-linux-gnu-ranlib", "*:AR=aarch64-unknown-linux-gnu-ar", diff --git a/pack/build.go b/pack/build.go index 4ab5b06..d8eb31b 100644 --- a/pack/build.go +++ b/pack/build.go @@ -46,7 +46,7 @@ func (p *Package) DownloadSource(download *Download) { if _, err := os.Stat(sourcePath); os.IsNotExist(err) { var err error if download.Kind == "git" { - err = utils.DownloadGit(p.Package, sourcePath, download.URL, download.Sha256) + err = utils.DownloadGit(p.Package, sourcePath, download.URL) } else { err = utils.DownloadFile(p.Package, sourcePath, download.URL, download.Sha256, false) } @@ -75,7 +75,7 @@ func (p *Package) ExtractSource(host *host.Host, buildPath string) { case "tar.xz": err = utils.ExtractTarXz(sourcePath, actualBuildPath) case "git": - err = utils.ExtractGitCloneBundle(sourcePath, actualBuildPath) + err = utils.ExtractGitCloneBundle(sourcePath, actualBuildPath, download.Sha256) case "blob": os.MkdirAll(filepath.Dir(actualBuildPath), 0755) err = utils.Copy(sourcePath, actualBuildPath) diff --git a/pack/info.go b/pack/info.go index 450eeb4..809c75e 100644 --- a/pack/info.go +++ b/pack/info.go @@ -103,10 +103,18 @@ func (p *Package) ShortName(h *host.Host) string { func (p *Package) GenerateSourceBuildPath(download *Download) string { if download.Kind == "git" { - name := filepath.Base(download.URL) + "-" + download.Sha256[0:8] + ".bundle" - return filepath.Join(host.DataDir(), "source", name) + urlPath, err := utils.URLToPath(download.URL) + crash.Handle(err) + urlPath = strings.TrimSuffix(urlPath, ".git") + name := urlPath + ".bundle" + return filepath.Join(host.DataDirRoot(), "source", name) } - return filepath.Join(host.DataDir(), "source", filepath.Base(download.URL)) + + urlPath, err := utils.URLToPath(download.URL) + if err != nil { + return filepath.Join(host.DataDirRoot(), "source", filepath.Base(download.URL)) + } + return filepath.Join(host.DataDirRoot(), "source", urlPath) } func (p *Package) GenerateBuildPath(h *host.Host, kind string) string { diff --git a/pack/main.go b/pack/main.go index ae885fb..aca947f 100644 --- a/pack/main.go +++ b/pack/main.go @@ -183,6 +183,7 @@ func Cleanup() { packages := GetAllPackages() keepFiles := make(map[string]bool) + keepSources := make(map[string]bool) builders := []string{runtime.GOOS + "_" + runtime.GOARCH} targets := make([]string, 0, len(host.SupportedHosts)) @@ -203,9 +204,17 @@ func Cleanup() { keepFiles[infoPath] = true } } + + for _, download := range pkg.Download { + sourcePath := pkg.GenerateSourceBuildPath(download) + relPath, err := filepath.Rel(buildlibDir, sourcePath) + if err == nil { + keepSources[relPath] = true + } + } } - fmt.Printf("Cleanup: Will keep %d current build files\n", len(keepFiles)) + fmt.Printf("Cleanup: Will keep %d current build files and %d source files\n", len(keepFiles), len(keepSources)) for _, builder := range builders { builderDir := filepath.Join(buildlibDir, builder) @@ -255,6 +264,46 @@ func Cleanup() { } } + sourceDir := filepath.Join(buildlibDir, "source") + if _, err := os.Stat(sourceDir); !os.IsNotExist(err) { + err := filepath.WalkDir(sourceDir, func(path string, d os.DirEntry, err error) error { + if err != nil { + return err + } + + if d.IsDir() { + return nil + } + + relPath, err := filepath.Rel(buildlibDir, path) + if err != nil { + return nil + } + + relPath = filepath.ToSlash(relPath) + + if !keepSources[relPath] { + fmt.Printf("Removing stale source file: %s\n", relPath) + os.Remove(path) + } + + return nil + }) + if err != nil { + fmt.Printf("Error walking source directory %s: %v\n", sourceDir, err) + } + + filepath.WalkDir(sourceDir, func(path string, d os.DirEntry, err error) error { + if err != nil { + return err + } + if d.IsDir() && path != sourceDir { + os.Remove(path) + } + return nil + }) + } + fmt.Println("Cleanup completed!") } diff --git a/packages/native/_.json b/packages/native/_.json index cb8bd41..c0ecab1 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -4,6 +4,7 @@ "type": "native", "dependencies": [ "*-android*:native/android_ndk", + "*-apple-*:native/cctools-port", "*-apple-*:native/osx-cross", "*-linux-gnu:native/ct-tools", "*-linux-musl:native/ct-tools", @@ -17,6 +18,7 @@ "*:native/config", "*:native/gawk", "*:native/gettext", + "*:native/libtapi", "*:native/libtool", "*:native/libxml2", "*:native/m4", diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 5233101..66fdf02 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -42,14 +42,8 @@ { "kind": "blob", "path": ".build/tarballs/glibc-2.38.tar.xz", - "sha256": "d1775e32e4628e64ef930f435b67bb63af7599acb6be2b335b9f19f16509f17f", - "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.38.tar.xz" - }, - { - "kind": "blob", - "path": ".build/tarballs/glibc-2.42.tar.xz", "sha256": "fb82998998b2b29965467bc1b69d152e9c307d2cf301c9eafb4555b770ef3fd2", - "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.42.tar.xz" + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.38.tar.xz" }, { "kind": "blob", diff --git a/packages/native/dart-bin@3.9.0-100.2.beta.json b/packages/native/dart-bin@3.9.0-100.2.beta.json new file mode 100644 index 0000000..40cf4f2 --- /dev/null +++ b/packages/native/dart-bin@3.9.0-100.2.beta.json @@ -0,0 +1,39 @@ +{ + "package": "native/dart-bin@3.9.0-100.2.beta", + "version": "3.9.0-100.2.beta", + "type": "native", + "download": [ + { + "kind": "blob", + "path": "./dartsdk-darwin_arm64.zip", + "sha256": "73063836c198c6ebcf09d9d38737badfc86bfa8dd8316fe7bd85d144d8c9dec9", + "url": "https://storage.googleapis.com/dart-archive/channels/beta/release/3.9.0-100.2.beta/sdk/dartsdk-macos-arm64-release.zip" + }, + { + "kind": "blob", + "path": "./dartsdk-linux_amd64.zip", + "sha256": "9b503e642c862f404b46490cb6ba652c71d276fb7eb415283abe172a8574806f", + "url": "https://storage.googleapis.com/dart-archive/channels/beta/release/3.9.0-100.2.beta/sdk/dartsdk-linux-x64-release.zip" + }, + { + "kind": "blob", + "path": "./dartsdk-linux_arm64.zip", + "sha256": "fd0871a012ccc9c49ee8e9b2e6ba0ea36336c7cc38af05646ca513c4ccb0b616", + "url": "https://storage.googleapis.com/dart-archive/channels/beta/release/3.9.0-100.2.beta/sdk/dartsdk-linux-arm64-release.zip" + } + ], + "dependencies": [ + "*:native/p7zip" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir build", + "*:cd build && 7z x ../dartsdk-${BUILDER_GOOS}_${BUILDER_GOARCH}.zip", + "*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:mv build/dart-sdk/lib $STAGING_DIR$PREFIX/native", + "*:mv build/dart-sdk/include $STAGING_DIR$PREFIX/native", + "*:mv build/dart-sdk/bin $STAGING_DIR$PREFIX/native" + ] + } +} \ No newline at end of file diff --git a/packages/native/dart-bin@3.9.0.json b/packages/native/dart-bin@3.9.0.json deleted file mode 100644 index 153f60c..0000000 --- a/packages/native/dart-bin@3.9.0.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "package": "native/dart", - "version": "3.9.4", - "type": "native", - "download": [ - {} - ], - "build": { - "env": [ - "*:config_opts=--prefix=$PREFIX/native" - ], - "steps": [ - "make -j$NUM_CORES", - "make -j$NUM_CORES install DESTDIR=$STAGING_DIR" - ] - } -} \ No newline at end of file diff --git a/packages/native/dart@3.9.4.json b/packages/native/dart@3.9.4.json index 3752926..9ce7d07 100644 --- a/packages/native/dart@3.9.4.json +++ b/packages/native/dart@3.9.4.json @@ -247,10 +247,21 @@ "path": "third_party/zlib", "sha256": "470d3a2ee4ef721688ce6961bc865a99fcb64070", "url": "https://chromium.googlesource.com/chromium/src/third_party/zlib.git" + }, + { + "kind": "tar.gz", + "path": "third_party/devtools/devtools_shared", + "sha256": "275e48a8a145fa09c7ae433a96fd433c01cc079d39b40acf5ba883236ae2c887", + "url": "https://pub.dev/api/archives/devtools_shared-12.0.0.tar.gz" } ], "dependencies": [ + "*:native/dart-bin@3.9.0-100.2.beta", "*:native/gn", + "*:native/libc++", + "*:native/llvm-ar", + "*:native/llvm-nm", + "*:native/llvm-strip", "*:native/make", "*:native/ninja", "*:native/python@3.11.13", @@ -270,13 +281,27 @@ "*:mkdir -p buildtools/ninja", "*:ln -s $(which ninja) buildtools/ninja/ninja", "*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:mkdir -p tools/sdks/dart-sdk/bin", + "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", - "*:python3 ./tools/generate_sdk_version_file.py # HOOK Generate sdk/version.", - "*:python3 ./tools/generate_large_tests.py # HOOK Generate large tests.", - "*:python3 ./tools/build.py --mode=release" + "*:echo 3.9.4 > sdk/version", + "*:mkdir -p third_party/devtools/web", + "*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:python3 ./tools/build.py --mode=product", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin $STAGING_DIR$PREFIX/native/lib $STAGING_DIR$PREFIX/native/include/", + "*:cp ./xcodebuild/ProductARM64/dart $STAGING_DIR$PREFIX/native/bin/ || true", + "*:cp -r runtime/ $STAGING_DIR$PREFIX/native/lib/", + "*:cp -r runtime/include/* $STAGING_DIR$PREFIX/native/include/", + "*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/libc++.json b/packages/native/libc++.json new file mode 100644 index 0000000..5a31d02 --- /dev/null +++ b/packages/native/libc++.json @@ -0,0 +1,34 @@ +{ + "package": "native/libc++", + "version": "21.1.3", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "450f52eec88f728c89a9efd667dbeaf2dad93826", + "url": "https://github.com/llvm/llvm-project" + } + ], + "dependencies": [ + "*:native/cmake", + "*:native/ninja" + ], + "build": { + "env": [ + "*:config_opts=-DLLVM_ENABLE_RUNTIMES='libunwind;libcxx;libcxxabi'", + "*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", + "*:config_opts=$config_opts -DLIBCXX_ENABLE_SHARED=OFF", + "*:config_opts=$config_opts -DLIBCXX_ENABLE_STATIC=ON", + "*:config_opts=$config_opts -DLIBCXX_INCLUDE_TESTS=OFF", + "*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX/native" + ], + "steps": [ + "*:mkdir build && cd build", + "*:cd build && cmake -G Ninja ../runtimes $config_opts", + "*:cd build && ninja unwind cxx cxxabi", + "*:cd build && DESTDIR=$STAGING_DIR ninja install-unwind", + "*:cd build && DESTDIR=$STAGING_DIR ninja install-cxx", + "*:cd build && DESTDIR=$STAGING_DIR ninja install-cxxabi" + ] + } +} \ No newline at end of file diff --git a/packages/native/libxml2.json b/packages/native/libxml2.json index f68c3f5..ee280b4 100644 --- a/packages/native/libxml2.json +++ b/packages/native/libxml2.json @@ -1,6 +1,6 @@ { "package": "native/libxml2", - "version": "2.14.5s", + "version": "2.14.5", "type": "native", "download": [ { diff --git a/packages/native/llvm-ar.json b/packages/native/llvm-ar.json new file mode 100644 index 0000000..fd7f2e9 --- /dev/null +++ b/packages/native/llvm-ar.json @@ -0,0 +1,27 @@ +{ + "package": "native/llvm-ar", + "version": "21.1.3", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "450f52eec88f728c89a9efd667dbeaf2dad93826", + "url": "https://github.com/llvm/llvm-project" + } + ], + "dependencies": [ + "*:native/cmake", + "*:native/make", + "*:native/ninja" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir build && cd build", + "*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", + "*:cd build && ninja llvm-ar", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", + "*:cp build/bin/llvm-ar $STAGING_DIR$PREFIX/native/bin/llvm-ar" + ] + } +} \ No newline at end of file diff --git a/packages/native/llvm-nm.json b/packages/native/llvm-nm.json new file mode 100644 index 0000000..01ff403 --- /dev/null +++ b/packages/native/llvm-nm.json @@ -0,0 +1,26 @@ +{ + "package": "native/llvm-nm", + "version": "21.1.3", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "450f52eec88f728c89a9efd667dbeaf2dad93826", + "url": "https://github.com/llvm/llvm-project" + } + ], + "dependencies": [ + "*:native/cmake", + "*:native/make", + "*:native/ninja" + ], + "build": { + "steps": [ + "*:mkdir build && cd build", + "*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", + "*:cd build && ninja llvm-nm", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", + "*:cp build/bin/llvm-nm $STAGING_DIR$PREFIX/native/bin/llvm-nm" + ] + } +} \ No newline at end of file diff --git a/packages/native/llvm-strip.json b/packages/native/llvm-strip.json new file mode 100644 index 0000000..cf69b63 --- /dev/null +++ b/packages/native/llvm-strip.json @@ -0,0 +1,27 @@ +{ + "package": "native/llvm-strip", + "version": "21.1.3", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "450f52eec88f728c89a9efd667dbeaf2dad93826", + "url": "https://github.com/llvm/llvm-project" + } + ], + "dependencies": [ + "*:native/cmake", + "*:native/make", + "*:native/ninja" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir build && cd build", + "*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", + "*:cd build && ninja llvm-strip", + "*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", + "*:cp build/bin/llvm-strip $STAGING_DIR$PREFIX/native/bin/llvm-strip" + ] + } +} \ No newline at end of file diff --git a/packages/native/llvm@google@r563880.json b/packages/native/llvm@google@r563880.json index 6c950dd..06cd1e7 100644 --- a/packages/native/llvm@google@r563880.json +++ b/packages/native/llvm@google@r563880.json @@ -30,7 +30,8 @@ "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_XRAY=OFF", "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_LIBFUZZER=OFF", "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_PROFILE=OFF", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_BUILTINS=ON" + "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_BUILTINS=ON", + "*-android*:config_opts=$config_opts -DCLANG_ENABLE_BOOTSTRAP=ON" ], "steps": [ "*-android*:cmake -S llvm -B build -G Ninja $config_opts", diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 7b8ed8e..70d47d5 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -12,7 +12,7 @@ "kind": "blob", "path": "Xcode_26.0.1.xip", "sha256": "9881c457068c86ac91e94cca2d7116dfd01cb7179c22b0863b63c7f3bb7e7695", - "url": "https://developer.apple.com/services-account/download?path=/Developer_Tools/Xcode_26.0.1/Xcode_26.0.1_Universal.xip" + "url": "https://download.developer.apple.com/Developer_Tools/Xcode_26.0.1/Xcode_26.0.1_Universal.xip" }, { "kind": "blob", diff --git a/sources.json b/sources.json new file mode 100644 index 0000000..bead492 --- /dev/null +++ b/sources.json @@ -0,0 +1,1003 @@ +{ + "repositories": { + "http://github.com/pkgconf/pkgconf.git": { + "refs": [ + "4fc570f91d9d8d843ab32d2198a5c064538d8ffd" + ] + }, + "http://gitlab.torproject.org/tpo/core/tor.git": { + "refs": [ + "e41649c9a34f39f1d543e064fd2b97de26d3e097" + ] + }, + "https://android.googlesource.com/platform/bionic": { + "refs": [ + "a63b21091ada240d92f8ceadb1cabbdedaaab81b" + ] + }, + "https://android.googlesource.com/platform/development": { + "refs": [ + "d84a5b9d746f241c3c77b16e8c6964b0f86f86e2" + ] + }, + "https://android.googlesource.com/platform/external/effcee": { + "refs": [ + "291037172dcb79318a7d0214a194e985c9ad0d7b" + ] + }, + "https://android.googlesource.com/platform/external/googletest": { + "refs": [ + "dc81c03b5db576f5ab8a468b6eebf584b016fa5b" + ] + }, + "https://android.googlesource.com/platform/external/perfetto": { + "refs": [ + "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b" + ] + }, + "https://android.googlesource.com/platform/external/python/astroid": { + "refs": [ + "062ae590ebac6acf05a5c7583be35870f0b563ba" + ] + }, + "https://android.googlesource.com/platform/external/python/pylint": { + "refs": [ + "6169a46fd0a78ed1f3c9fd2c41c1636eb0ed35c5" + ] + }, + "https://android.googlesource.com/platform/external/regex-re2": { + "refs": [ + "2e598de2ffcec7903d52742d4ecb80f11e7e1b92" + ] + }, + "https://android.googlesource.com/platform/external/shaderc/glslang": { + "refs": [ + "2222fa5818324771ceb99fd8802e54a50a2fb1a4" + ] + }, + "https://android.googlesource.com/platform/external/shaderc/shaderc": { + "refs": [ + "8045a61b8c6b79c9fdaa86f36653a824880bab4d" + ] + }, + "https://android.googlesource.com/platform/external/shaderc/spirv-headers": { + "refs": [ + "907059dfed550925a45217e1ed9a7bc42ff8d770" + ] + }, + "https://android.googlesource.com/platform/external/shaderc/spirv-tools": { + "refs": [ + "12f5c853ee9e06ba6565006d8d36ee261a140d91" + ] + }, + "https://android.googlesource.com/platform/external/vulkan-headers": { + "refs": [ + "062f62b42a62e18a8eaccbce323d4f58548677be" + ] + }, + "https://android.googlesource.com/platform/manifest": { + "refs": [ + "82eb8adcaafe02dce4e462db2379fad3ea0b54d8" + ] + }, + "https://android.googlesource.com/platform/ndk": { + "refs": [ + "196e0661200bad5361340700fea67be12e1f1684" + ] + }, + "https://android.googlesource.com/platform/prebuilts/ndk": { + "refs": [ + "c0815fea3a8081be6215440de330c63246e6551f" + ] + }, + "https://android.googlesource.com/platform/prebuilts/simpleperf": { + "refs": [ + "c04e1425e49ad7a106bdb5911e7ebbc5ff4afa20" + ] + }, + "https://android.googlesource.com/toolchain/llvm-project": { + "refs": [ + "c58bc24fcf678c55b0bf522be89eff070507a005", + "5e96669f06077099aa41290cdb4c5e6fa0f59349" + ] + }, + "https://android.googlesource.com/toolchain/make": { + "refs": [ + "44fc4fe66a484b91844c302f03eaa8438e065d17" + ] + }, + "https://android.googlesource.com/toolchain/yasm": { + "refs": [ + "7a28367b72cb1e1667b081d6404afbd063898e70" + ] + }, + "https://boringssl.googlesource.com/boringssl.git": { + "refs": [ + "d24a38200fef19150eef00cad35b138936c08767", + "567289e4bb1958153f428bba52d953f3c080b4d7", + "822902749a5956bba09c7e9e451104e8a74f02c5", + "2db0eb3f96a5756298dcd7f9319e56a98585bd10", + "5e73d0302c50cc38324686f937a75233d13ae4f0", + "02f0d8776ecd83a1c663db2eaba6283aa72cc5b8", + "ef839bf397fb4ecdb66ef2679a08ac7b3563c50b", + "d5440dd2c2c500ac2d3bba4afec47a054b4d99ae", + "be5be0a4f5ebf00da151a06860deb11a0ffb609f" + ] + }, + "https://chromium.googlesource.com/chromium/deps/icu.git": { + "refs": [ + "81d656878ec611cb0b42d52c82e9dae93920d9ba", + "43953f57b037778a1b8005564afabe214834f7bd" + ] + }, + "https://chromium.googlesource.com/chromium/llvm-project/cfe/tools/clang-format.git": { + "refs": [ + "bb994c6f067340c1135eb43eed84f4b33cfa7397" + ] + }, + "https://chromium.googlesource.com/chromium/src/third_party/jinja2.git": { + "refs": [ + "2222b31554f03e62600cd7e383376a7c187967a1" + ] + }, + "https://chromium.googlesource.com/chromium/src/third_party/markupsafe.git": { + "refs": [ + "8f45f5cfa0009d2a70589bcda0349b8cb2b72783" + ] + }, + "https://chromium.googlesource.com/chromium/src/third_party/ply.git": { + "refs": [ + "604b32590ffad5cbb82e4afef1d305512d06ae93" + ] + }, + "https://chromium.googlesource.com/chromium/src/third_party/zlib.git": { + "refs": [ + "14dd4c4455602c9b71a1a89b5cafd1f4030d2e3f", + "108fa50cda23ed4a712a098d058dccbbfd248206", + "470d3a2ee4ef721688ce6961bc865a99fcb64070" + ] + }, + "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git": { + "refs": [ + "9784f012848a7eb321c2037bdb363dfe0eab8bc9", + "d844d2e77b402d562ade8cf8fd96759b587bf09d", + "654ee6e2504f11fb0e982a2cf276bafa750f694b", + "93883fde36ac158fd415dcd6dbd387dcfd928d3c", + "87f9dac127b387715d8d96ac7ec8fd469d8c2dab", + "3f6831c0bd147ae1ae0ab1d9187d37bce7cca38b", + "b4bdcc33115b31758c56b83bb9de4642c411a042", + "8470f1b1f157201d1bc62f3202e474e7043df0ba" + ] + }, + "https://chromium.googlesource.com/external/github.com/google/cpu_features.git": { + "refs": [ + "936b9ab5515dead115606559502e3864958f7f6e" + ] + }, + "https://chromium.googlesource.com/external/github.com/mdn/browser-compat-data": { + "refs": [ + "ac8cae697014da1ff7124fba33b0b4245cc6cd1b" + ] + }, + "https://dart.googlesource.com/ai.git": { + "refs": [ + "64dfa7f138aa4d9bcc06e807858136b7d4d296d3" + ] + }, + "https://dart.googlesource.com/args.git": { + "refs": [ + "7dc7fe0430709229ccc87c3eaae729aeffe10c56", + "6a5a2e6b1f0020b873c7ffbdd36a784c4f9ee300", + "09c0fca1785c9df39288a48f767994eed80bed40" + ] + }, + "https://dart.googlesource.com/async.git": { + "refs": [ + "1556660ca5159d84bf28239825a25dca58f1fde3", + "a00437017231ebb6c3e3e8ecdfc9dd03522ab828", + "d7c0cd5a458308ab5e5a0d0deebdce32c4391ec6", + "c0d81f8699682d01d657a9bf827107d11904a247", + "5f70a996f673d625e3502597084653686c3e754c" + ] + }, + "https://dart.googlesource.com/bazel_worker.git": { + "refs": [ + "8619b92baa9959e55b9fc49d2afcd6dda2ec1c10", + "c76d7c86381a6ed594641ba03b55c65b84ee11a6", + "aa3cc9e826350b960e0c5a67e6065bcedba8b0ac" + ] + }, + "https://dart.googlesource.com/benchmark_harness.git": { + "refs": [ + "c8a0c8b1883dc16c7558a43cee1c3f4f9a163418", + "f6ef33dc88d7cbc9e4a8a087f1e652eb0d6cc254", + "44f125ae1d045aa3de09fe88a8dd70cb7352d563" + ] + }, + "https://dart.googlesource.com/boolean_selector.git": { + "refs": [ + "be88351e521648d381b96350bfe62c34abacee6d", + "62f82f6a333b419b457e62cadc17b7a9c0545873", + "c5468f44fd9ca0ea3435e1a0a84ff9b6fac38261", + "d6c7c36ae1111f11cc24306d71d3ab2deea8fa68" + ] + }, + "https://dart.googlesource.com/boringssl_gen.git": { + "refs": [ + "9c7294fd58261a79794f5afaa26598cf1442ad20", + "7322fc15cc065d8d2957fccce6b62a509dc4d641", + "fef055e8d2749b82c79c8f043be1cbe5e8e4b40c" + ] + }, + "https://dart.googlesource.com/browser_launcher.git": { + "refs": [ + "79562306c86e5c087359a31a60309c8d65a699d3", + "7348ceae6508e5350771979c2951a54313303416", + "60126904a26b761d29b4f2d76292ff3c089160de", + "e5fc5d488eb5038bfec2a6690c72ab8dd353e101" + ] + }, + "https://dart.googlesource.com/cli_util.git": { + "refs": [ + "ffeb5d2869b44b28d1b9035b540d164af44f3f1c", + "c37d5e14f50e72a268c1ad86149cecfa4b58c494", + "64192706344d0598784bebe1abc4a9bfc2608de0", + "c36b3941e38092d6d6f87ac27d9e88f153d3ac38" + ] + }, + "https://dart.googlesource.com/clock.git": { + "refs": [ + "daf0fadabc5b3dc8e6e71bf3fb27ef9c3b79df5c", + "7cbf08e36a92f14f22132d255846610c1b065324", + "ad428ea8b75fa0d7ba629791552d40478745c54a", + "7956d60042f4ea979c4554d43eeb57d087627869" + ] + }, + "https://dart.googlesource.com/co19": { + "refs": [ + "6f34e53fa54396f17bcffcd307528f714a099e03", + "831b22d5e496fe63a813ca1c1b64f533c2f9fa0c", + "3a1b6f75c771d62e7150f2dd69595a98fd6930f4", + "7b457e8d8c10361424beb7b432347f668c974439", + "d50a305d1b4455b4e72ba45a2cf2ab1c37004bc6", + "2424cfed7eedf53a122f8bfdbb6319692f726ec8", + "dd66678fea1d11bc6295a688ed5f8e726034f762", + "d285ef839784162ca988a9d149522249d0c00c5c", + "7e4321a5cb2d8fcf9c3c818e62ef6d6f4fd87626", + "4ebc13c27af77129889a11fd1f95cff04dccd8f9", + "2c7f9a6a379cfc49b3e9019d1f616d7ec9edd766", + "a5d7b62b78dd9278c30a44cb2d22b8870b360a0e" + ] + }, + "https://dart.googlesource.com/collection.git": { + "refs": [ + "fc616ff8fd7b732c07b2b19e31b6601e59900ccf", + "9354f386de3c57f5486b01ab4dfa1a2f033307d9", + "887b826b50f48d6a9cd2c0684aa353e8e3a0fad0" + ] + }, + "https://dart.googlesource.com/convert.git": { + "refs": [ + "d4d6368cffb8f4f25522875ef8e1d5f7d158bbad", + "0c9eab7d4656be97329c4970659afd53a78910e6", + "9035cafefc1da4315f26058734d0c2a19d5ab56a", + "d361833e117cb2438d2a2a6d0b0acb28ff0910fb" + ] + }, + "https://dart.googlesource.com/core.git": { + "refs": [ + "abcf992cf9fe1e896ed9dcff15523c0a6c00621d", + "7a71ad6b9170e09d5cbe39f3fccdee648659f1e7", + "15c7fe9958b95998ba2f5a4ad1beab66b9d815fb", + "61e677100b06d56a1b3731ab1178ebf9102ecb1f", + "635dfa32c261ba078438b74de397f2207904ca78", + "b59ecf4ceebe6153e1c0166b7c9a7fdd9458a89d" + ] + }, + "https://dart.googlesource.com/crypto.git": { + "refs": [ + "f059196bae4718187c9f421565f9cd1f8fb43898", + "813e35e913d12e16de67ac57523cd0ff4b07c012", + "1216790ba704a0ab194f9cd0da2d65e1767f3342", + "3d26ef4cf22d4b218ba30e616544ad3cf52f64a1" + ] + }, + "https://dart.googlesource.com/csslib.git": { + "refs": [ + "62ae85e84590f61169fddbca650e91a57544834b", + "23c314bb6b247a71348cfb0987ba0eb29574abb6", + "b70fef222c8a98abca39c3f729ec34632089697e", + "192d720f121792ab05ca157ea280edc7e0410e9c", + "a3700b05bbcc42782e8a7024790dbf019d89c249" + ] + }, + "https://dart.googlesource.com/dart_style.git": { + "refs": [ + "a6ad7693555a9add6f98ad6fd94de80d35c89415", + "1de89eb3bd340315f9ff5f2afc319cc1d6131b8d", + "21de99ec0ff8ace4d946a746fb427fffd6afa535", + "5d35f4d829ffb8532d345d95d3e9504ae6cd839e", + "100db45075abdd66fd8788b205243e90ff0595df", + "44e8cfe7ba5a873ef81b6b39c07d50171eccf021" + ] + }, + "https://dart.googlesource.com/dartdoc.git": { + "refs": [ + "b001a15069bfd7cfec5edf5b441a2f0a9b4223eb", + "14d33d3a120ad3ce621bbcf0a545dc3adeccd7e7", + "88df88c9278ec4ec31df818f3ae33d4f91c8cd64", + "7e5da6090e6a48cebaee8789ca0fc396b34fd8a4", + "c7f11603effa88ddacabfd555993f322fca8b3fe", + "80c6f18f34b387d4b9ce89ddd2e3049093335f9d", + "34561d6ebf5fa89ca1f93b981de96a75ff573562", + "d40067626b8c419e451897447e4dae74d25bcc37", + "62aefbb788baf5b73b2d704d66d9735a7ca56a69", + "882aea9351262d618c955322f4c9aafe9540b848" + ] + }, + "https://dart.googlesource.com/ecosystem.git": { + "refs": [ + "5a900ca68466efe8680d3500bc0a6172d07ef5a7", + "8ada2ee303383cf62cace9b2a97e8a3cc983e5c1", + "31148cd81bdb3c248fc30cd345ef49a978ed454c", + "54ca01abe4b7b62419ee88814d3dc98df36ff8ff", + "248b1801131ddc2e738c8181fc32d488e1312052", + "efe4ee4af6ac2e4c90aa525fae213b65c97295a9", + "2d58550f9e3fd8ecbc3b2e4444095fcb204a66c6", + "06bbbffc1dae26164ee0a9603d0a30af620b84d0", + "23172636e60c52384b40e6bd1240d12c8e860122", + "815d4ba2e7d11f8695a26f6cbe1262e3b8ff8d0d", + "7f6f1c1d53173307bde1aa4f4ee851d260cc7e69", + "d5233c6dd0767cffa5742e32c4bc7c230c9c4b12" + ] + }, + "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git": { + "refs": [ + "e41b8c68a248da5f18ebd03bd0420953945d52ff" + ] + }, + "https://dart.googlesource.com/external/github.com/google/file.dart": { + "refs": [ + "3aa06490bf34bddf04c7ea964a50c177a4ca0de7", + "07cacaed6679a173e29176747e6ce0325742749f", + "6842feaef1c4e06239bd30f8d3ef722838b1c97e" + ] + }, + "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git": { + "refs": [ + "7e705f734e94917e9a5347578e6e496f8db38ac6", + "e7b11a234638bd5d76a05bae99d20b937637dfe8", + "2cfbe2c115a57b368ccbc3c89ebd38a06764d3d1", + "433fb6c829b18719fd0db4a703b607a26b7d81f4", + "bd4b574b2a457a3955d223694f1a979a0c0f38c9", + "533c513771d35312dcd0f69e662d729979882df1", + "f08d7d2652e9ecf7d8f8605d9983335174511c95", + "dc9d379674f50bb5559e99ee3a9f64729df9d3c8", + "13f185f7e97d559e003f5ac79201da12f9a01049" + ] + }, + "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git": { + "refs": [ + "73a7ac8c0dcb0f84eae47e2133805295176aa972", + "f85779edd7c9f66198d4391ed3631db1d97a5b11", + "718e4c37d004fceb9856de980782c46bf9576df5", + "d83d6a3cbaab152ff9b99b29382d1f48b5d5ba23", + "accfed557c005c87df56ffb626458f87da9f2125", + "b4fd8592fb9b1405fea3979cab88bcd857f2addb", + "f52afbf72895ae980bd4129d877305c2182d6cbc", + "cfab787b30fbfb5509f9fc45cfce51157fb9f369" + ] + }, + "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git": { + "refs": [ + "153fea4fe5ac45bebf0c2e76bb3d76b0f1fcdaae", + "5740cc91eaeb13a02007b77b128fccf4b056db6e", + "32fffa53df3f54005c742ddf4f859fb585a6b254", + "effa75205516757795683d527c3dea9546eb0c32", + "b459c427b74bf5e0919a083a97a167fb74d8bff1" + ] + }, + "https://dart.googlesource.com/external/github.com/simolus3/tar.git": { + "refs": [ + "6150a0c88d9bd17e3e961593a9a7a9564866e8b4", + "552a49d7595e444184d4f91e9afd533aa253a31d", + "5a1ea943e70cdf3fa5e1102cdbb9418bd9b4b81a" + ] + }, + "https://dart.googlesource.com/fixnum.git": { + "refs": [ + "570b28adcfbfdd5b8a7230ea1d6ec0f9587493f1", + "a8157d87f17d5184e210403f2ed63d354b854132", + "6c19e60366ce3d5edfaed51a7c12c98e7977977e", + "83293b8ed86ccd574a94fcf4a2da43f31c1b43e0" + ] + }, + "https://dart.googlesource.com/glob.git": { + "refs": [ + "379d60c7cc5c0e9fe7d0d45549ad0b1ca51396c8", + "eaec6a448576048b748475d80bfac2795ad5a267", + "6d3ba5ec02817e62d17ace040590bb81a3e1242f", + "994191a107b99a1911a3ef52ca238cd9305c8d37", + "eee18d1a577d5f965f6afbbd251798e065dced43", + "00a9c82d31c01ae88ec9ae4021d842e9b832aa52" + ] + }, + "https://dart.googlesource.com/html.git": { + "refs": [ + "327e37a6a4dd46599737ee982f280d73a8f646f7", + "3bc803d7e655491b243418f19300ef0c6112bcea", + "0da420ca1e196cda54ede476d0d8d3ecf55375ef", + "6d3bc86cf2ab530ef3fa5f84b5980dc318a02af4" + ] + }, + "https://dart.googlesource.com/http.git": { + "refs": [ + "5dfea721993fd22363a5800ab7a2f3aeecee25f5", + "8c325b9ca33d878a86d69c5048a8e6e18379663c", + "4d8e7ef73d6135a8cc9b5e53db1beb43977d44b0", + "8d893851904d8cd292a66e39812b59aca2cc4d96", + "79470d014b467f01b0e7c5b63ab6c86b22dec8db", + "6ecd13a88b82c2fdc8a555f218bafb0ad0370f51", + "f59cd79e1322c6272481e4f2ccfa9afcb37a6525", + "900da9fe7d576caa4882053cf26d3a70bd3106e0", + "1b6e28d7e1c61f7b0f8561be7aee9c35b03de193", + "e4ddd3e3d3a3d0ba7c9e48506e9d2e8620af30a8", + "7d2d87ebfba86035a9ca6b79160ccc2ac1253c0c" + ] + }, + "https://dart.googlesource.com/http_multi_server.git": { + "refs": [ + "ba9d07f3596b24718ddf45c9e071d40879cca565", + "25941e260658efb324de857e6022f418faf9bdd1", + "f6a748819139b8cbf513d5fc36b10676b0cb066f", + "e7515b5896b83d522189802a1e14e103e19426c0" + ] + }, + "https://dart.googlesource.com/http_parser.git": { + "refs": [ + "84db8b029d9b51859a0bb4966859af009f9442e3", + "71b4c2c448b333397d5ff3235825d8cea773291c", + "9bf7bd981a39137da1e5d7fe64f4652b078c7aa9", + "23d775898ee90be9daf3297e298a8869bc755d84" + ] + }, + "https://dart.googlesource.com/i18n.git": { + "refs": [ + "06a664f7beaab1f8eaf82a60b722982c03c8657c", + "d9cce0b6348b51872fb269e43ff8a43120fe191d", + "de1943629469719bf34269bf90fcdbe9334a73f3", + "c45e050426bdeaaa120e5ce856abb486863d0476" + ] + }, + "https://dart.googlesource.com/intl.git": { + "refs": [ + "5d65e3808ce40e6282e40881492607df4e35669f" + ] + }, + "https://dart.googlesource.com/json_rpc_2.git": { + "refs": [ + "639857be892050159f5164c749d7947694976a4a", + "5b1cbd679756700d5f319bf10a217da53e98ea52", + "616937f6d3837e38a2a287653ddaf722de260702", + "c9b616bded8cdb5bfdc836ba7648afa6aba40062" + ] + }, + "https://dart.googlesource.com/leak_tracker.git": { + "refs": [ + "f5620600a5ce1c44f65ddaa02001e200b096e14c" + ] + }, + "https://dart.googlesource.com/lints.git": { + "refs": [ + "ead770872e272e25a64315c120950ea8ad5b2509", + "baaaa5616370243c3c8c6a9f67fb83d26bdac552", + "f6b5d36485f6f067ac0f5a7193006ebe82ee6113", + "e1d4794412aacd3bbb370956d44b9a10c3f892f3", + "5016d63c889936b2100520f999591d0492d9afe3" + ] + }, + "https://dart.googlesource.com/logging.git": { + "refs": [ + "7a7bd5e31ddfe23e34d37ded82d6d0cd5706862c", + "dbd682919708316e9a6d1e2fa472c9ad9225c2b4", + "240ec33e23720091e0e5a029d569a3770ddccf1c", + "6c3fb37fecb2e30415072f327b834a3e95517fa9", + "6fa056098ceca03d399bff64592822b2ae5dee6e" + ] + }, + "https://dart.googlesource.com/markdown.git": { + "refs": [ + "9c6b1afc3721571af37eaaefe043a6ae7637bd09", + "3d8d7a8f14b74bb646bb6e4ae35e0bf2beb74154", + "62424376d0b5fe35a2957b3caed4b75db010ba82", + "4d5dbc659955973902f2585c54e94d453532db70", + "19aaded4300d24bedcbf52ade792b203ddf030b0", + "d53feae0760a4f0aae5ffdfb12d8e6acccf14b40" + ] + }, + "https://dart.googlesource.com/matcher.git": { + "refs": [ + "d954c8d979579b4b46427b0ea1d9c721117c191e", + "0abd4054c47a923486a6c0c04b5c974ba13ad2da", + "d6d573d0f8d65b36550ce62aad3ce6b5e987b642", + "31f13583630e093731c8cf2b843c14196d748c5c" + ] + }, + "https://dart.googlesource.com/mime.git": { + "refs": [ + "9a168712d6db610c3822617c132daea72d4fd2b5", + "4ca2f5edaafe21f462922d34db99486a44bb08b8", + "11fec7d6df509a4efd554051cc27e3bf82df9c96" + ] + }, + "https://dart.googlesource.com/mockito.git": { + "refs": [ + "3ef744f8749864f2a036eba60c4203cc8f638949", + "2302814df66e651b6710311366501523dbee2e11", + "a7fdf7101fbd31132a59188a6057d21004345927", + "57d484f9b8e7f6a504966a901174358a42fa932a" + ] + }, + "https://dart.googlesource.com/native.git": { + "refs": [ + "4fc6a333badace5d569bde4496462cc237dc3363", + "fef40aebc3cf34654919e8a5785b6c50b3ea445c", + "fcc783c1d2777555616dfc850f131878ea5d88a9", + "028f89d4a59448f9ecda5bd3d4519e2d7c742072", + "14368a80bae9e3f381a2e59c91405338d82451ee", + "659511886501bcce638c3966590df04984909ef0", + "f08677646f9e5e9a8a233fed1ec324a003609260", + "f1fa5be4b0d7449fa8fe4077113ac0413d2b16bf", + "49a8912734162e5dc6ad009fc080fe54e9985470", + "4e71c281e4e3c262b28b7ab5b3306e4029b78b1c", + "723cd56a5edc89699db32bca1b5bf91aa0bcf0cf" + ] + }, + "https://dart.googlesource.com/package_config.git": { + "refs": [ + "3d90e6955ef19b7ce4f1b742a06a20ed4260700a", + "903a0e528f91aef90821c8f5eaafbc1ae27198ab", + "76f2f6c245451da1fa24d7bbb00251b909e729a5", + "07097d7ae60d40b34ce8daabdce318ecc168b7d1", + "bafff8e90be25e1985f7e3ee40ea1d22571a93e6" + ] + }, + "https://dart.googlesource.com/path.git": { + "refs": [ + "a7b696071bd83d3ee0a0f1b57ac94d6b1f05cac4", + "04807b61c25f98f328b322ec511451f9f86f98bb", + "e969f42ed112dd702a9453beb9df6c12ae2d3805" + ] + }, + "https://dart.googlesource.com/pool.git": { + "refs": [ + "c118f69d8a6441a8453bf7d455fd7c79d3ee1497", + "88e463600c636a0d8cdb5dc306524ebf04b06baf", + "832c5ab5eaee444354a8c796f7998bf744f169af", + "924fb04353cec915d927f9f1aed88e2eda92b98a", + "f85209d83cb0aa3c5612ed80de32df51ba580abd", + "bf27900420ba382b6e5c0484ab3c79daad703dcd", + "7bfc71b39742753a88688e56e55a828a2f5dc0bf" + ] + }, + "https://dart.googlesource.com/protobuf.git": { + "refs": [ + "b7613581d847e1e36e76f0e36db3a412d8fea5b1", + "ccf104dbc36929c0f8708285d5f3a8fae206343e", + "da7279c56734cffed4deb1e3a6f93bdcefccf6b8", + "b7dd58cdbd879beee4c3fbf8ee80fce8e97bad26", + "610943a3bed70c1c2079af5fca02462df10d223f", + "0bab78d9538e49d50023bab36159b15ff3c369eb", + "1aaa332af75c61ff32739821f7ec52186ff18d4c", + "bce362dec347ae3cca085bd28db2aa2649f754e5" + ] + }, + "https://dart.googlesource.com/pub.git": { + "refs": [ + "79952b99861109c526f8fc6c513d1ac297c690d9", + "ddc1c2fd2e2a7cd94a0b92ea033961a25f4ad517", + "ea4a1c854690d3abceb92c8cc2c6454470f9d5a7", + "30bfc439fedba1ee3daadcf542f1483479bc4909", + "58de642dc1d07601f6eb2b4ecd94555c0210106b", + "1efd3f5e274e153637d99698b0ee454f6f2550ab", + "639536aa78f7382b4a948669bfdc283f830b2ae9", + "b2c03b448a47fdd52800609b9222cd737be3a934", + "52f512315bc886de487061091ef82056abf9dab8" + ] + }, + "https://dart.googlesource.com/pub_semver.git": { + "refs": [ + "3175ba0a58a96fb23f8d68b5f5c44d1a5b30cc16", + "a9025f3cc23ebb0f86c0af8759d95306b9133ce0", + "dfcad38866fb1e94e8ca91bff3dddd5189fb0794", + "d9e5ee68a350fbf4319bd4dfcb895fc016337d3a", + "8e9fcb9d3f89f06022387f906da4d380688f935c", + "960f91309e325ae037e5f1434acb77b83a12d91e", + "8cce9d00431b6653026cdfcf6cf8548078c56f02" + ] + }, + "https://dart.googlesource.com/sdk.git": { + "refs": [ + "7c64e31f4c3eaa0bcfd29ce40459b74cf20a806d", + "cf0d430bc6a507b3d54d4b5bfc91b308f0325178", + "7d7fbb30e0ca19c76800b1ad388fa55d09037e66", + "7e6469bd51d404916395a47b011d907d2c905121", + "c7e47c6c5df6ffa16d92704d5291b3387f974648", + "a8bfb132c5f7b9555d13ea79eaf0eaa77825824d", + "7fce3544047c41018b8c00b4453c0262f463dd74", + "2d5dfe32cf2e6b3c3d6b396885502a5402b4fc72", + "4a4ff9fba9ca67e9406743a24a3c47ad64d9e9c2", + "4bb26ad346b166d759773e01ffc8247893b9681e", + "5a8921e0042c662ea2adbac35ea051dec20a5341", + "2f5a888a5e6a7316074416822a9584d54e3f5ab5" + ] + }, + "https://dart.googlesource.com/shelf.git": { + "refs": [ + "1acbc673326e5b31280184744f2864a8f92c5b46", + "4c54af6b6baa9404826d234385c1bf69575dfd47", + "2536c15a562cb183dabbc628824a215663830325", + "9f2dffecbe8f219146a077e401758602752d486a", + "2b5b683e78f5cc84e479a43297fd7b5489d7db02", + "f5600534e3e49ebed02e1e14ec82553958d86f36", + "b39e61196ce555dc1d3a0c3da695228fa6bdebb8", + "2af8529640d10a247ebfa4e17e629a2ff5273656", + "082d3ac2d13a98700d8148e8fad8f3e12a6fd0e1" + ] + }, + "https://dart.googlesource.com/source_map_stack_trace.git": { + "refs": [ + "c75649651d01826236e3ab7093d277a70756905a", + "96a8213dacf7cd42aefb1311491a4169826f98d2", + "741b6ceb4b6cdb8ff620664337d7ecc63ca52cc1" + ] + }, + "https://dart.googlesource.com/source_maps.git": { + "refs": [ + "55e92a4b0a8560d5b2b3bb7255249afdb8186ea6", + "caa79c2011015759c6cf3299f299f5cccdf8bb61", + "198d32bbde2f5736c04dfbab306a17096fd1648b", + "e5e9d343302acf7df2145316ae4e56026c550989", + "17695e81d9ad129d20effd3d5c4f1cfa03f5add8" + ] + }, + "https://dart.googlesource.com/source_span.git": { + "refs": [ + "21a403a75b6887fbd811fb53b74b08c2cef67ab6", + "59a3903521dbf4c38c77df73669e73174a170327", + "89520f3009e332ce2b6675f71dca166521c36cc4", + "22a243eb50d926935a8a1300a49af6d2988c3ae6", + "e6a34591b7f7880c7ca0fcb95b858ccf7f8be304", + "ec100b7f12e9d36d2cdb3c369fefde736de4a550" + ] + }, + "https://dart.googlesource.com/sse.git": { + "refs": [ + "b53ba14de4fe9823432ebfbb4ec04f23a620ec50", + "7dcde164d5bfe707441f206379ef33e7509e2aac", + "52d042ff9ab2d0e5bc26805d74a03077a67861e1", + "b97dc3ad9a58a454dc5ffe5b3ec814dadc389e32", + "b573a1e9a61f5f3e2198becfa3f4f2e8decd1e90", + "af2c5c572a8da6d2f7551b80d75121f2a38a4c79" + ] + }, + "https://dart.googlesource.com/stack_trace.git": { + "refs": [ + "155f12c51226d6372f6722f5e55c38ef39625006", + "ab09060b82c936c38c04eb49c1154b83f6648349", + "4fd3e2a2dc6611febf4cfb9197ebf9e60fc6a34d", + "b660cfa444d46bcceb3a0eacbd6a2a7829da11de", + "5fe4cfea7f0d8e67b7d5738d2e1c64a18b5ba450", + "115bcd9591d251dab7a5ad518655c2124a1cc525" + ] + }, + "https://dart.googlesource.com/stream_channel.git": { + "refs": [ + "e02a5ddef804f0d546a405ab3917fb27788acaef", + "b41ff7a25395ace8b23e454e3d1a3459a71306ca", + "28a65331aa2d66a5e953205aa462bcdb1e240a5b", + "71fe6dd315e7f451466da80f7af2661cd28aaaea", + "31a3aba8a78a78b266fbf7474f19cd4ba9ca562e", + "f4407168b275fcde9187baefd7dbce76d0992825" + ] + }, + "https://dart.googlesource.com/string_scanner.git": { + "refs": [ + "a2bcdb575f6bb30b944b4f632ea95d8dc4f914bd", + "7b37c1b3d1ca6b581792e6ba385f651573af4a45", + "e1cab8f0538b50f6d7180598752cf5a7e07e74db", + "0de03b5279a04aa05052ce306f90fca473c6fd1a", + "77de235c061a09264cae920e52939787325c8cae", + "69212690d491603a511904a7a84cd502f34bf7a9", + "084b201c54b168aced178fff41fce71e3869ae42" + ] + }, + "https://dart.googlesource.com/sync_http.git": { + "refs": [ + "b849559fedc7c5d19a68950f255b6edde6eec6ef", + "7622bdd07501f3f279212e355325b7c84a2b0a08", + "47e6b264a209d0d806cfe9cdad8b6c69ce231986", + "91c0dd5ef9a008f0277aadcfd83036f82e572d09", + "dc54465f07d9652875deeade643256dafa2fbc6c", + "c07f96f89a7eec7e3daac641fa6c587224fcfbaa" + ] + }, + "https://dart.googlesource.com/term_glyph.git": { + "refs": [ + "85a4aa6bf25cd6ecaa5c56a1b259b2d95264a439", + "c86e8171ee7e9f6fc8e775e0be755a603dd0b72d", + "38a158f55006cf30942c928171ea601ee5e0308f", + "9ed8ed96fdd84cb7b72ee1be3e86010969fa95d4", + "52677db71a2c6b6d0018ebbe5ed7552dbae1248f", + "19d8c08a4e81122639129c62049896021910c932" + ] + }, + "https://dart.googlesource.com/test.git": { + "refs": [ + "6a4e75a6283b1366ea21067f9ced0b6c87745d4a", + "329c6dff4dfcb178ba6c7009cf1c1b9215b317aa", + "3256c23cc753a184bb3bf27610a7c8410735e3ac", + "20967732ea9dd30240a6429621ab2f82874bd9f0", + "f364fc8291d668d85c702a5b9f9a4f2e5c1ade0e", + "8e8a83607d90a7a6813fa378b2d1962a2fc0d44b", + "a833663e56b6182f8372180f5c95d1c01b531150", + "9e349d0e9f6c477584ea320f7ba2f49f761d84ac", + "84eba115521b74e848f096572a2d3e4d3607e8fa", + "8643fbf375330cd1099cdc7434306532b4bcaaf1", + "2be5ca067bdf09e999be2ad760ab8efab854e789" + ] + }, + "https://dart.googlesource.com/test_descriptor.git": { + "refs": [ + "35f97afacb2b7fe627f6ed0bede722fd48980848", + "b23d7ccb0f9882e161fb4dea75b2237bf428432b", + "2f19400259e6ec6801a79dcbf038b235545ab400", + "90743bc16bc00526a1b9a64f813614be9b2479d9", + "408526a84e74d7af0f9c8c3fbb49ce9178927ee0", + "92fa0c551267b38e4b27c9f74976ae4cd96d8b1e", + "a3db1efe3dc725dcae9ee61647d3bfc19b3231ac" + ] + }, + "https://dart.googlesource.com/test_process.git": { + "refs": [ + "7fe39afbb6c444f256c1ec0eef008edebcd44644", + "862eaf3b825f5e97b278d84a2afbe81b3e8a1683", + "a7ca20b73f28d220e6478254082ea2b52f46dc97", + "6223572ca16d7585d5f08d9281de6a5734e45150", + "5b0349ca18fe48cd527f74ac883db2964cbdba40", + "52ee3f5ab70ed965bb7122c1d499081fbccd0bde" + ] + }, + "https://dart.googlesource.com/test_reflective_loader.git": { + "refs": [ + "9862703a3d14848376c8efde271c88022fba91eb", + "816942eaeeac30cc59d8699f1e94ad779cc53c06", + "6e648863b39aab8d0204e769d25805eea9db0ac4", + "faade6299d1823f0d062eb5e98f3b440ddcea7c6", + "9e35c9e00b8b6299e9295c0f29617af39276717d", + "598af2f503955020af0eaa82558d574a03934078" + ] + }, + "https://dart.googlesource.com/tools.git": { + "refs": [ + "f611290b530123ee2f0a3fda7c440d85dd080a30", + "4321aecf2cb618dceab5d90adf0cb2ef7207169c", + "e660a68dce659311fb47735ab00365e26fca2fe3", + "43a8582a85d2220b5f1ca8383d97587792085b36", + "1c5b8b949128d62182e162ef65a2e6f3feb19acf", + "b412ba4550bb634caf3c1064b7ebb671cd5e9247", + "f882de9ba86712003728d4663e1b73a620d352b1", + "b51f39d01f5a4af33428a0189cd62595c01e23de", + "62bc13bc086a66ce9a6a3e64865c82d17a1379b3", + "4a284152c263a5d3429d5ab6acfdb70eca2ebcfb", + "d74f9e13dc02736f12ae57d5984c57024113cf5a", + "fd7cc89aaac774fb34502502803a3bcf62cb83cd" + ] + }, + "https://dart.googlesource.com/typed_data.git": { + "refs": [ + "375efaa02a13dad0785cfbd9bdcb9f09aa8ef529", + "d14f9654f7a5d6baa7dcc27691bd0fa56769fb67", + "85299290551297a28202b6e7a177bb787f790ffd", + "365468a74251c930a463daf5b8f13227e269111a", + "6abfafdcf661cd8a814619d7e2a3e99edb3a3862" + ] + }, + "https://dart.googlesource.com/usage.git": { + "refs": [ + "67ecd7d1328347ec15cbf8d8a46918df75a66af8" + ] + }, + "https://dart.googlesource.com/watcher.git": { + "refs": [ + "21858a41da1482922e03ee65cdf2169d01d59a67", + "c00fc2a6cd869cdebbc52e00af3d912d25745729", + "0484625589d8512b36a7ad898a6cc6351d24c556", + "bc44e6f6b85972e516c44b9ae6c042b4cbd7c72b", + "7f3b3a3ea49ba7e21fff240ce8ee616d62d32956", + "3b850778ad0b62db3aa2cfe48832870c2461db30" + ] + }, + "https://dart.googlesource.com/web.git": { + "refs": [ + "2f13cd55f938f71bcd16c831110e3a196967337f", + "2fe754fb396cb9b87010f0318cfbfc5408346c48", + "6b8a46561b82de9b20d77d9ac491844d303ca08f", + "e4c4d8126466e28dc137890b8f999da59bdedddd", + "bdf112ec64d28285cc29c6c78274ff3a827bb79b", + "af5de5e8548060c0795713ee7129ba6d5ff9f1b2", + "8478cd27d574249eca3d41f9135458dfda2762c8", + "c2d5f63e9ea4c1409d6e159fc7b92dbcf4dc0d4d", + "5a39fdc396ae40344308975140343c23b6863261", + "354e22995859757223cea3fccbff0ad86c540d60" + ] + }, + "https://dart.googlesource.com/web_socket_channel.git": { + "refs": [ + "3db86bc0a09e1038a0fa418262c8a92211c5de69", + "bf69990738f173c07e67cf6945551194bc8c2d92", + "8e95ea75302180af075295f7dd7ffe922e26f789", + "7a2039fd7c4c656ab27850926f89103b5f188dab", + "a937243563e8ee75d11fb23610297d4f6e5cb2b9", + "40aa29f1d2167467f5934d755891a8beb62a1239" + ] + }, + "https://dart.googlesource.com/webcore.git": { + "refs": [ + "bcb10901266c884e7b3740abc597ab95373ab55c" + ] + }, + "https://dart.googlesource.com/webdev.git": { + "refs": [ + "51b5484348b4a8ede351e8dff0428b083495ba78", + "eccc7d87982b23f666d5e3e09953dca59ca094e4", + "c56611255f3f02642da10750448a8c90a9fa7b47", + "75417c09181c97786d9539a662834bed9d2f1e77", + "5f30c560dc4e3df341356c43ec1a766ee6b74a7c", + "e72f365a4408dce73bc023e624adc6a9a72dd7a2", + "f4856867de3e7b6ea6778dbc47cff44b12f9eed2", + "302b6db6125901fd183390e339aff7490cdde3d0", + "5bf833d0c277a384ab8bbfc10e7d3d71b8022560", + "c8b1cfa9d12c680b612eb1ed7a6b9f99fcce3ac3", + "7f376d242709e933fff70610503d0c5c09b2e17e" + ] + }, + "https://dart.googlesource.com/yaml.git": { + "refs": [ + "e5984433a2803d5c67ed0abac5891a55040381ee", + "7873b3fb9f16ec83bc7778fed58615fa91f1f042", + "4cf24ca3bbcb2cd8cbea32fdd355ee5d0a597247", + "30fd9e0cd49b2e04f74769f9b24a0300e400403e", + "2a3727288a9336b6f9b7c5236657414ce1ee5d8a", + "0406507fb719b0c8787896475734747fa35f2b78", + "e773005ab84e1b4d24132b0a687be7f9a3bfda15" + ] + }, + "https://dart.googlesource.com/yaml_edit.git": { + "refs": [ + "54884db790720ac0f7ca491cb9e6d7a0395ad4cb", + "08a146ef8f2c7aba908d2017c9ec840b882c9e51", + "57a28daea82a3f00f57a90d5ea6df6a458b2f781", + "fbdc70acc164af187772e013a2e1364cd05b88dc", + "35f4248c7bbba289b3899fa55486e2f31ef1a8c5" + ] + }, + "https://fuchsia.googlesource.com/protobuf-gn": { + "refs": [ + "ca669f79945418f6229e4fef89b666b2a88cbb10" + ] + }, + "https://fuchsia.googlesource.com/third_party/protobuf": { + "refs": [ + "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb" + ] + }, + "https://gerrit.googlesource.com/git-repo": { + "refs": [ + "38d2fe11b9df521727fcca23c9dac086ce8378d3" + ] + }, + "https://git.kernel.org/pub/scm/libs/libcap/libcap.git": { + "refs": [ + "413789501269f0f258a6716c6fa3edae178ba4a3" + ] + }, + "https://github.com/MrCyjaneK/cmake-toolchain.git": { + "refs": [ + "c4e7b0e5f437121d1b9c05bc5c43dac75371d799" + ] + }, + "https://github.com/MrCyjaneK/torch.git": { + "refs": [ + "b7a785a538a31ab0cf5baf62d936e3e41182e0b7" + ] + }, + "https://github.com/SELinuxProject/selinux": { + "refs": [ + "919e9e64cc4b20f5a1e4df1e38cce1bfe15aff09" + ] + }, + "https://github.com/besser82/libxcrypt": { + "refs": [ + "55ea777e8d567e5e86ffac917c28815ac54cc341" + ] + }, + "https://github.com/libffi/libffi.git": { + "refs": [ + "e2eda0cf72a0598b44278cc91860ea402273fa29" + ] + }, + "https://github.com/linux-audit/audit-userspace": { + "refs": [ + "4db9c700b0c8b24a8113bc00d98101228e7d0212" + ] + }, + "https://github.com/llvm/llvm-project": { + "refs": [ + "450f52eec88f728c89a9efd667dbeaf2dad93826" + ] + }, + "https://github.com/mesonbuild/meson.git": { + "refs": [ + "751b09390996163348612f0b106114256305ee40" + ] + }, + "https://github.com/tpoechtrager/apple-libtapi.git": { + "refs": [ + "640b4623929c923c0468143ff2a363a48665fa54" + ] + }, + "https://github.com/tpoechtrager/cctools-port.git": { + "refs": [ + "6e31355ca5babc708681bd906eaaef86c3ac93be" + ] + }, + "https://gitlab.gnome.org/GNOME/glib.git": { + "refs": [ + "e33be08bda99f453e497064e9e021d6306bbeb7d" + ] + }, + "https://gitlab.gnome.org/GNOME/gvdb": { + "refs": [ + "2b42fc75f09dbe1cd1057580b5782b08f2dcb400" + ] + }, + "https://gitlab.gnome.org/GNOME/sysprof": { + "refs": [ + "02e50efa49885a5a20a84a8cd7feda10ae7e7e98" + ] + }, + "https://gn.googlesource.com/gn.git": { + "refs": [ + "07d3c6f4dc290fae5ca6152ebcb37d6815c411ab" + ] + }, + "https://https.git.savannah.gnu.org/git/config.git": { + "refs": [ + "a2287c3041a3f2a204eb942e09c015eab00dc7dd" + ] + }, + "https://llvm.googlesource.com/llvm-project/libc": { + "refs": [ + "5af39a19a1ad51ce93972cdab206dcd3ff9b6afa" + ] + }, + "https://llvm.googlesource.com/llvm-project/libcxx": { + "refs": [ + "44079a4cc04cdeffb9cfe8067bfb3c276fb2bab0", + "bd557f6f764d1e40b62528a13b124ce740624f8f" + ] + }, + "https://llvm.googlesource.com/llvm-project/libcxxabi": { + "refs": [ + "2ce528fb5e0f92e57c97ec3ff53b75359d33af12", + "a4dda1589d37a7e4b4f7a81ebad01b1083f2e726" + ] + }, + "https://pagure.io/xmlto.git": { + "refs": [ + "13a831d76467c88f9e79f9804e2471137ec05331" + ] + } + } +} \ No newline at end of file diff --git a/utils/download.go b/utils/download.go index d4c228d..06885a4 100644 --- a/utils/download.go +++ b/utils/download.go @@ -7,6 +7,7 @@ import ( "io" "log" "net/http" + "net/url" "os" "path/filepath" "strconv" @@ -73,19 +74,51 @@ func formatBytes(bytes int64) string { return fmt.Sprintf("%.1f %cB", float64(bytes)/float64(div), "KMGTPE"[exp%len("KMGTPE")]) } +func GetMirrors() []string { + mirrors := []string{ + "http://static.mrcyjanek.net/lfs/simplybs/source/", + } + if customMirror := os.Getenv("SIMPLYBS_MIRROR"); customMirror != "" { + mirrors = append([]string{customMirror}, mirrors...) + } + return mirrors +} + +func URLToPath(urlStr string) (string, error) { + parsedURL, err := url.Parse(urlStr) + if err != nil { + return "", fmt.Errorf("failed to parse URL: %v", err) + } + + path := strings.TrimPrefix(parsedURL.Path, "/") + return filepath.Join(parsedURL.Host, path), nil +} + func DownloadFile(packageName, path, url, expectedSha256 string, isMirror bool) error { log.Printf("Downloading %s to %s", url, path) if !isMirror { - err := DownloadFile(packageName, path, "http://static.mrcyjanek.net/lfs/simplybs/source/"+filepath.Base(path), expectedSha256, true) + urlPath, err := URLToPath(url) if err != nil { - log.Printf("Failed to download file from mirror: %v, trying original URL", err) + log.Printf("Failed to convert URL to path: %v", err) } else { - log.Printf("Downloaded file from mirror: %s", path) - return nil + mirrors := GetMirrors() + for _, mirror := range mirrors { + mirrorURL := mirror + urlPath + err := DownloadFile(packageName, path, mirrorURL, expectedSha256, true) + if err != nil { + log.Printf("Failed to download file from mirror %s: %v", mirror, err) + continue + } + log.Printf("Downloaded file from mirror: %s", path) + return nil + } + log.Printf("All mirrors failed, trying original URL") } } + os.MkdirAll(filepath.Dir(path), 0755) + resp, err := http.Get(url) if err != nil { return fmt.Errorf("failed to download file from %s: %v", url, err) diff --git a/utils/git.go b/utils/git.go index c2d1d27..c469e31 100644 --- a/utils/git.go +++ b/utils/git.go @@ -1,6 +1,7 @@ package utils import ( + "encoding/json" "fmt" "log" "net/http" @@ -10,8 +11,7 @@ import ( "strings" ) -func verifyBundleHasRef(bundlePath, ref string) bool { - // Try to verify the bundle contains our ref by attempting to fetch it +func verifyBundleHasRef(bundlePath string, refs []string) bool { tempVerifyDir := bundlePath + ".verify.tmp" defer os.RemoveAll(tempVerifyDir) @@ -24,61 +24,81 @@ func verifyBundleHasRef(bundlePath, ref string) bool { return false } - // Try to fetch the specific ref from the bundle - fetchCmd := exec.Command("git", "fetch", bundlePath, ref) - fetchCmd.Dir = tempVerifyDir - if err := fetchCmd.Run(); err != nil { - log.Printf("Bundle does not contain ref %s", ref) - return false + for _, ref := range refs { + fetchCmd := exec.Command("git", "fetch", bundlePath, ref) + fetchCmd.Dir = tempVerifyDir + if err := fetchCmd.Run(); err != nil { + log.Printf("Bundle does not contain ref %s", ref) + return false + } + log.Printf("Bundle contains ref %s", ref) } - log.Printf("Bundle contains ref %s", ref) return true } -func downloadBundleFromMirror(bundlePath, ref string) error { - mirrorURL := "http://static.mrcyjanek.net/lfs/simplybs/source/" + filepath.Base(bundlePath) - log.Printf("Trying to download bundle from mirror: %s", mirrorURL) - - resp, err := http.Get(mirrorURL) +func downloadBundleFromMirrors(bundlePath, originalURL string, refs []string) error { + urlPath, err := URLToPath(originalURL) if err != nil { - return fmt.Errorf("failed to download from mirror: %w", err) + return fmt.Errorf("failed to convert URL to path: %w", err) } - defer resp.Body.Close() - if resp.StatusCode != http.StatusOK { - return fmt.Errorf("mirror returned HTTP %d", resp.StatusCode) - } + bundleFilename := filepath.Base(bundlePath) + mirrorPath := filepath.Join(filepath.Dir(urlPath), bundleFilename) - tempFile := bundlePath + ".download.tmp" - defer os.Remove(tempFile) + mirrors := GetMirrors() + for _, mirror := range mirrors { + mirrorURL := mirror + mirrorPath + log.Printf("Trying to download bundle from mirror: %s", mirrorURL) - out, err := os.Create(tempFile) - if err != nil { - return fmt.Errorf("failed to create temp file: %w", err) - } + resp, err := http.Get(mirrorURL) + if err != nil { + log.Printf("Failed to download from mirror %s: %v", mirror, err) + continue + } + defer resp.Body.Close() - _, err = out.ReadFrom(resp.Body) - out.Close() - if err != nil { - return fmt.Errorf("failed to download bundle: %w", err) - } + if resp.StatusCode != http.StatusOK { + log.Printf("Mirror %s returned HTTP %d", mirror, resp.StatusCode) + continue + } - if !verifyBundleHasRef(tempFile, ref) { - return fmt.Errorf("mirror bundle does not contain ref %s", ref) - } + tempFile := bundlePath + ".download.tmp" + defer os.Remove(tempFile) - os.MkdirAll(filepath.Dir(bundlePath), 0755) - if err := os.Rename(tempFile, bundlePath); err != nil { - return fmt.Errorf("failed to move bundle to final location: %w", err) + out, err := os.Create(tempFile) + if err != nil { + log.Printf("Failed to create temp file: %v", err) + continue + } + + _, err = out.ReadFrom(resp.Body) + out.Close() + if err != nil { + log.Printf("Failed to download bundle: %v", err) + continue + } + + if !verifyBundleHasRef(tempFile, refs) { + log.Printf("Mirror bundle does not contain all refs %v", refs) + continue + } + + os.MkdirAll(filepath.Dir(bundlePath), 0755) + if err := os.Rename(tempFile, bundlePath); err != nil { + log.Printf("Failed to move bundle to final location: %v", err) + continue + } + + log.Printf("Successfully downloaded bundle from mirror %s", mirror) + return nil } - log.Printf("Successfully downloaded bundle from mirror") - return nil + return fmt.Errorf("all mirrors failed") } -func createBundleFromRepo(bundlePath, url, ref string) error { - log.Printf("Creating bundle from repository %s", url) +func createBundleFromRepo(bundlePath, url string, refs []string) error { + log.Printf("Creating bundle from repository %s with %d refs", url, len(refs)) tempDir := bundlePath + ".clone.tmp" defer os.RemoveAll(tempDir) @@ -91,75 +111,173 @@ func createBundleFromRepo(bundlePath, url, ref string) error { return fmt.Errorf("failed to clone repository: %w", err) } - log.Printf("Checking out reference %s and creating bundle...", ref) + log.Printf("Creating branches for refs: %v", refs) os.MkdirAll(filepath.Dir(bundlePath), 0755) - cmds := [][]string{ - {"git", "checkout", ref}, - {"git", "gc", "--aggressive", "--prune=now"}, - {"git", "repack", "-Ad", "-l"}, - {"git", "prune", "--expire", "now"}, - {"git", "bundle", "create", bundlePath, "HEAD"}, - } + branchNames := []string{} + for i, ref := range refs { + branchName := fmt.Sprintf("bundle-ref-%d", i) + branchNames = append(branchNames, branchName) - for _, cmdArgs := range cmds { - cmd := exec.Command(cmdArgs[0], cmdArgs[1:]...) - cmd.Dir = tempDir - cmd.Stdout = os.Stdout - cmd.Stderr = os.Stderr - if err := cmd.Run(); err != nil { - return fmt.Errorf("failed to run %v: %w", cmdArgs, err) + branchCmd := exec.Command("git", "branch", branchName, ref) + branchCmd.Dir = tempDir + branchCmd.Stdout = os.Stdout + branchCmd.Stderr = os.Stderr + if err := branchCmd.Run(); err != nil { + log.Printf("Warning: failed to create branch %s for ref %s: %v", branchName, ref, err) + branchNames[len(branchNames)-1] = ref } } - revParseCmd := exec.Command("git", "rev-parse", "HEAD") - revParseCmd.Dir = tempDir - commitHash, err := revParseCmd.Output() - if err != nil { - return fmt.Errorf("failed to get commit hash: %w", err) + bundleArgs := append([]string{"bundle", "create", bundlePath}, branchNames...) + bundleCmd := exec.Command("git", bundleArgs...) + bundleCmd.Dir = tempDir + bundleCmd.Stdout = os.Stdout + bundleCmd.Stderr = os.Stderr + if err := bundleCmd.Run(); err != nil { + return fmt.Errorf("failed to create bundle: %w", err) } - log.Printf("Checked out commit: %s", strings.TrimSpace(string(commitHash))) - log.Printf("Successfully created bundle at %s", bundlePath) + log.Printf("Successfully created bundle at %s with %d refs", bundlePath, len(refs)) return nil } -func DownloadGit(packageName, bundlePath, url, ref string) error { +func DownloadGit(packageName, bundlePath, url string) error { log.Printf("Downloading %s to bundle %s", url, bundlePath) + sources, err := loadSourcesFile() + if err != nil { + log.Fatalf("Failed to load sources.json: %v, falling back to single ref mode", err) + } + + refs, exists := sources.Repositories[url] + if !exists { + log.Fatalf("Repository %s not found in sources.json", url) + } + if _, err := os.Stat(bundlePath); err == nil { - log.Printf("Bundle already exists, verifying it contains ref %s", ref) - if verifyBundleHasRef(bundlePath, ref) { - log.Printf("Bundle is valid and contains the required ref") + log.Printf("Bundle already exists, verifying it contains all refs %v", refs.Refs) + if verifyBundleHasRef(bundlePath, refs.Refs) { + log.Printf("Bundle is valid and contains all required refs") return nil } - log.Printf("Bundle does not contain ref %s, removing and re-downloading", ref) + log.Printf("Bundle does not contain all refs %v, removing and re-downloading", refs.Refs) os.Remove(bundlePath) } - err := downloadBundleFromMirror(bundlePath, ref) + err = downloadBundleFromMirrors(bundlePath, url, refs.Refs) if err != nil { - log.Printf("Failed to download from mirror: %v, creating bundle from original URL", err) - return createBundleFromRepo(bundlePath, url, ref) + log.Printf("Failed to download from mirrors: %v, creating bundle from original URL", err) + return createBundleFromRepo(bundlePath, url, refs.Refs) } return nil } -func ExtractGitCloneBundle(bundlePath, destPath string) error { +type SourcesFile struct { + Repositories map[string]RepositoryInfo `json:"repositories"` +} + +type RepositoryInfo struct { + Refs []string `json:"refs"` + Packages []string `json:"packages"` +} + +func loadSourcesFile() (*SourcesFile, error) { + content, err := os.ReadFile("sources.json") + if err != nil { + return nil, err + } + + var sources SourcesFile + if err := json.Unmarshal(content, &sources); err != nil { + return nil, err + } + + return &sources, nil +} + +func ExtractGitCloneBundle(bundlePath, destPath, ref string) error { log.Printf("Extracting git bundle from %s to %s", bundlePath, destPath) - // Ensure destination directory exists os.MkdirAll(destPath, 0755) - // Clone from bundle - cloneCmd := exec.Command("git", "clone", bundlePath, destPath) - cloneCmd.Stdout = os.Stdout - cloneCmd.Stderr = os.Stderr - if err := cloneCmd.Run(); err != nil { - return fmt.Errorf("failed to clone from bundle: %w", err) + steps := [][]string{ + {"git", "init"}, + {"git", "fetch", bundlePath, ref}, + {"git", "checkout", "--force", ref}, } + for i, step := range steps { + cmd := exec.Command(step[0], step[1:]...) + cmd.Dir = destPath + cmd.Stdout = os.Stdout + cmd.Stderr = os.Stderr + if err := cmd.Run(); err != nil { + // If fetch failed, the bundle doesn't have this ref + // Try to get the repo URL from the bundle path and re-create it + if i == 1 { // fetch step failed + log.Printf("Bundle does not contain ref %s, attempting to re-create bundle with updated refs", ref) + os.RemoveAll(destPath) // Clean up failed extraction + + // Get the repository URL from sources.json by finding which repo this bundle belongs to + url, err := getRepoURLFromBundlePath(bundlePath) + if err != nil { + return fmt.Errorf("failed to find repository URL for bundle: %w", err) + } + + // Remove old bundle and re-create with all current refs + log.Printf("Removing old bundle: %s", bundlePath) + os.Remove(bundlePath) + + // Load sources and re-create bundle + sources, err := loadSourcesFile() + if err != nil { + return fmt.Errorf("failed to load sources.json: %w", err) + } + + repoInfo, exists := sources.Repositories[url] + if !exists { + return fmt.Errorf("repository %s not found in sources.json", url) + } + + log.Printf("Re-creating bundle with %d refs from sources.json", len(repoInfo.Refs)) + if err := createBundleFromRepo(bundlePath, url, repoInfo.Refs); err != nil { + return fmt.Errorf("failed to re-create bundle: %w", err) + } + + // Now retry the extraction + return ExtractGitCloneBundle(bundlePath, destPath, ref) + } + return fmt.Errorf("failed to run command: %w", err) + } + } log.Printf("Successfully extracted bundle to %s", destPath) return nil } + +func getRepoURLFromBundlePath(bundlePath string) (string, error) { + sources, err := loadSourcesFile() + if err != nil { + return "", err + } + + // Extract the URL pattern from the bundle path + // Bundle path format: .buildlib/source/.bundle + bundleName := filepath.Base(bundlePath) + bundleName = strings.TrimSuffix(bundleName, ".bundle") + + // Try to match against known repositories + for url := range sources.Repositories { + urlPath, err := URLToPath(url) + if err != nil { + continue + } + urlPath = strings.TrimSuffix(urlPath, ".git") + if strings.HasSuffix(urlPath, bundleName) || strings.Contains(bundlePath, urlPath) { + return url, nil + } + } + + return "", fmt.Errorf("could not find repository URL for bundle path: %s", bundlePath) +} From ee7d34075299bd00f406495f4a79f0ef27dc6ddb Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 25 Oct 2025 18:01:32 +0200 Subject: [PATCH 017/200] feat: dart bootstrap --- ...eta.json => dart-bin@3.4.0-247.0.dev.json} | 16 +- packages/native/dart@3.5.0-278.0.dev.json | 560 +++++++++++++++++ packages/native/dart@3.5.0-307.0.dev.json | 566 ++++++++++++++++++ packages/native/dart@3.6.0-2.0.dev.json | 560 +++++++++++++++++ packages/native/dart@3.7.0-224.0.dev.json | 429 +++++++++++++ packages/native/dart@3.7.0-232.0.dev.json | 405 +++++++++++++ packages/native/dart@3.7.0-27.0.dev.json | 549 +++++++++++++++++ packages/native/dart@3.7.0.json | 405 +++++++++++++ packages/native/dart@3.8.0-171.0.dev.json | 297 +++++++++ packages/native/dart@3.8.0-237.0.dev.json | 297 +++++++++ packages/native/dart@3.9.0-27.0.dev.json | 303 ++++++++++ packages/native/dart@3.9.0-3.0.dev.json | 303 ++++++++++ packages/native/dart@3.9.4.json | 18 +- packages/native/llvm@google@18.0.0git.json | 41 ++ sources.json | 70 --- 15 files changed, 4729 insertions(+), 90 deletions(-) rename packages/native/{dart-bin@3.9.0-100.2.beta.json => dart-bin@3.4.0-247.0.dev.json} (64%) create mode 100644 packages/native/dart@3.5.0-278.0.dev.json create mode 100644 packages/native/dart@3.5.0-307.0.dev.json create mode 100644 packages/native/dart@3.6.0-2.0.dev.json create mode 100644 packages/native/dart@3.7.0-224.0.dev.json create mode 100644 packages/native/dart@3.7.0-232.0.dev.json create mode 100644 packages/native/dart@3.7.0-27.0.dev.json create mode 100644 packages/native/dart@3.7.0.json create mode 100644 packages/native/dart@3.8.0-171.0.dev.json create mode 100644 packages/native/dart@3.8.0-237.0.dev.json create mode 100644 packages/native/dart@3.9.0-27.0.dev.json create mode 100644 packages/native/dart@3.9.0-3.0.dev.json create mode 100644 packages/native/llvm@google@18.0.0git.json diff --git a/packages/native/dart-bin@3.9.0-100.2.beta.json b/packages/native/dart-bin@3.4.0-247.0.dev.json similarity index 64% rename from packages/native/dart-bin@3.9.0-100.2.beta.json rename to packages/native/dart-bin@3.4.0-247.0.dev.json index 40cf4f2..993bbea 100644 --- a/packages/native/dart-bin@3.9.0-100.2.beta.json +++ b/packages/native/dart-bin@3.4.0-247.0.dev.json @@ -1,25 +1,25 @@ { - "package": "native/dart-bin@3.9.0-100.2.beta", - "version": "3.9.0-100.2.beta", + "package": "native/dart-bin@3.4.0-247.0.dev", + "version": "3.4.0-247.0.dev", "type": "native", "download": [ { "kind": "blob", "path": "./dartsdk-darwin_arm64.zip", - "sha256": "73063836c198c6ebcf09d9d38737badfc86bfa8dd8316fe7bd85d144d8c9dec9", - "url": "https://storage.googleapis.com/dart-archive/channels/beta/release/3.9.0-100.2.beta/sdk/dartsdk-macos-arm64-release.zip" + "sha256": "95eec1e3dfa7c891d928c0ae3be9550675eefa95b240ea5dd414f9b4c2a90369", + "url": "https://storage.googleapis.com/dart-archive/channels/dev/release/3.4.0-247.0.dev/sdk/dartsdk-macos-arm64-release.zip" }, { "kind": "blob", "path": "./dartsdk-linux_amd64.zip", - "sha256": "9b503e642c862f404b46490cb6ba652c71d276fb7eb415283abe172a8574806f", - "url": "https://storage.googleapis.com/dart-archive/channels/beta/release/3.9.0-100.2.beta/sdk/dartsdk-linux-x64-release.zip" + "sha256": "3cff0b896fb2f665c8ab2cbf746882fcf42d2def7c3c64db7e2208ee092932da", + "url": "https://storage.googleapis.com/dart-archive/channels/dev/release/3.4.0-247.0.dev/sdk/dartsdk-linux-x64-release.zip" }, { "kind": "blob", "path": "./dartsdk-linux_arm64.zip", - "sha256": "fd0871a012ccc9c49ee8e9b2e6ba0ea36336c7cc38af05646ca513c4ccb0b616", - "url": "https://storage.googleapis.com/dart-archive/channels/beta/release/3.9.0-100.2.beta/sdk/dartsdk-linux-arm64-release.zip" + "sha256": "98c0c8bd016ba6e1156d4630409f47ef42e16226efe331751e706711496208fc", + "url": "https://storage.googleapis.com/dart-archive/channels/dev/release/3.4.0-247.0.dev/sdk/dartsdk-linux-arm64-release.zip" } ], "dependencies": [ diff --git a/packages/native/dart@3.5.0-278.0.dev.json b/packages/native/dart@3.5.0-278.0.dev.json new file mode 100644 index 0000000..5fa0d3b --- /dev/null +++ b/packages/native/dart@3.5.0-278.0.dev.json @@ -0,0 +1,560 @@ +{ + "package": "native/dart@3.5.0-278.0.dev", + "version": "3.5.0-278.0.dev", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "cf0d430bc6a507b3d54d4b5bfc91b308f0325178", + "url": "https://dart.googlesource.com/sdk.git" + }, + { + "kind": "git", + "path": "build/secondary/third_party/protobuf", + "sha256": "ca669f79945418f6229e4fef89b666b2a88cbb10", + "url": "https://fuchsia.googlesource.com/protobuf-gn" + }, + { + "kind": "git", + "path": "tests/co19/src", + "sha256": "831b22d5e496fe63a813ca1c1b64f533c2f9fa0c", + "url": "https://dart.googlesource.com/co19" + }, + { + "kind": "git", + "path": "third_party/WebCore", + "sha256": "bcb10901266c884e7b3740abc597ab95373ab55c", + "url": "https://dart.googlesource.com/webcore.git" + }, + { + "kind": "git", + "path": "third_party/binaryen/src", + "sha256": "d844d2e77b402d562ade8cf8fd96759b587bf09d", + "url": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl", + "sha256": "9c7294fd58261a79794f5afaa26598cf1442ad20", + "url": "https://dart.googlesource.com/boringssl_gen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl/src", + "sha256": "d24a38200fef19150eef00cad35b138936c08767", + "url": "https://boringssl.googlesource.com/boringssl.git" + }, + { + "kind": "git", + "path": "third_party/cpu_features/src", + "sha256": "936b9ab5515dead115606559502e3864958f7f6e", + "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" + }, + { + "kind": "git", + "path": "third_party/emsdk", + "sha256": "e41b8c68a248da5f18ebd03bd0420953945d52ff", + "url": "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git" + }, + { + "kind": "git", + "path": "third_party/icu", + "sha256": "81d656878ec611cb0b42d52c82e9dae93920d9ba", + "url": "https://chromium.googlesource.com/chromium/deps/icu.git" + }, + { + "kind": "git", + "path": "third_party/jinja2", + "sha256": "2222b31554f03e62600cd7e383376a7c187967a1", + "url": "https://chromium.googlesource.com/chromium/src/third_party/jinja2.git" + }, + { + "kind": "git", + "path": "third_party/libcxx", + "sha256": "44079a4cc04cdeffb9cfe8067bfb3c276fb2bab0", + "url": "https://llvm.googlesource.com/llvm-project/libcxx" + }, + { + "kind": "git", + "path": "third_party/libcxxabi", + "sha256": "2ce528fb5e0f92e57c97ec3ff53b75359d33af12", + "url": "https://llvm.googlesource.com/llvm-project/libcxxabi" + }, + { + "kind": "git", + "path": "third_party/markupsafe", + "sha256": "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", + "url": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe.git" + }, + { + "kind": "git", + "path": "third_party/mdn/browser-compat-data/src", + "sha256": "ac8cae697014da1ff7124fba33b0b4245cc6cd1b", + "url": "https://chromium.googlesource.com/external/github.com/mdn/browser-compat-data" + }, + { + "kind": "git", + "path": "third_party/perfetto", + "sha256": "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b", + "url": "https://android.googlesource.com/platform/external/perfetto" + }, + { + "kind": "git", + "path": "third_party/pkg/args", + "sha256": "6a5a2e6b1f0020b873c7ffbdd36a784c4f9ee300", + "url": "https://dart.googlesource.com/args.git" + }, + { + "kind": "git", + "path": "third_party/pkg/async", + "sha256": "a00437017231ebb6c3e3e8ecdfc9dd03522ab828", + "url": "https://dart.googlesource.com/async.git" + }, + { + "kind": "git", + "path": "third_party/pkg/bazel_worker", + "sha256": "c76d7c86381a6ed594641ba03b55c65b84ee11a6", + "url": "https://dart.googlesource.com/bazel_worker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/benchmark_harness", + "sha256": "f6ef33dc88d7cbc9e4a8a087f1e652eb0d6cc254", + "url": "https://dart.googlesource.com/benchmark_harness.git" + }, + { + "kind": "git", + "path": "third_party/pkg/boolean_selector", + "sha256": "62f82f6a333b419b457e62cadc17b7a9c0545873", + "url": "https://dart.googlesource.com/boolean_selector.git" + }, + { + "kind": "git", + "path": "third_party/pkg/browser_launcher", + "sha256": "7348ceae6508e5350771979c2951a54313303416", + "url": "https://dart.googlesource.com/browser_launcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/cli_util", + "sha256": "c37d5e14f50e72a268c1ad86149cecfa4b58c494", + "url": "https://dart.googlesource.com/cli_util.git" + }, + { + "kind": "git", + "path": "third_party/pkg/clock", + "sha256": "7cbf08e36a92f14f22132d255846610c1b065324", + "url": "https://dart.googlesource.com/clock.git" + }, + { + "kind": "git", + "path": "third_party/pkg/collection", + "sha256": "9354f386de3c57f5486b01ab4dfa1a2f033307d9", + "url": "https://dart.googlesource.com/collection.git" + }, + { + "kind": "git", + "path": "third_party/pkg/convert", + "sha256": "0c9eab7d4656be97329c4970659afd53a78910e6", + "url": "https://dart.googlesource.com/convert.git" + }, + { + "kind": "git", + "path": "third_party/pkg/crypto", + "sha256": "813e35e913d12e16de67ac57523cd0ff4b07c012", + "url": "https://dart.googlesource.com/crypto.git" + }, + { + "kind": "git", + "path": "third_party/pkg/csslib", + "sha256": "23c314bb6b247a71348cfb0987ba0eb29574abb6", + "url": "https://dart.googlesource.com/csslib.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dart_style", + "sha256": "a6ad7693555a9add6f98ad6fd94de80d35c89415", + "url": "https://dart.googlesource.com/dart_style.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dartdoc", + "sha256": "14d33d3a120ad3ce621bbcf0a545dc3adeccd7e7", + "url": "https://dart.googlesource.com/dartdoc.git" + }, + { + "kind": "git", + "path": "third_party/pkg/ecosystem", + "sha256": "8ada2ee303383cf62cace9b2a97e8a3cc983e5c1", + "url": "https://dart.googlesource.com/ecosystem.git" + }, + { + "kind": "git", + "path": "third_party/pkg/file", + "sha256": "07cacaed6679a173e29176747e6ce0325742749f", + "url": "https://dart.googlesource.com/external/github.com/google/file.dart" + }, + { + "kind": "git", + "path": "third_party/pkg/fixnum", + "sha256": "a8157d87f17d5184e210403f2ed63d354b854132", + "url": "https://dart.googlesource.com/fixnum.git" + }, + { + "kind": "git", + "path": "third_party/pkg/glob", + "sha256": "eaec6a448576048b748475d80bfac2795ad5a267", + "url": "https://dart.googlesource.com/glob.git" + }, + { + "kind": "git", + "path": "third_party/pkg/html", + "sha256": "3bc803d7e655491b243418f19300ef0c6112bcea", + "url": "https://dart.googlesource.com/html.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http", + "sha256": "8c325b9ca33d878a86d69c5048a8e6e18379663c", + "url": "https://dart.googlesource.com/http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http_multi_server", + "sha256": "25941e260658efb324de857e6022f418faf9bdd1", + "url": "https://dart.googlesource.com/http_multi_server.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http_parser", + "sha256": "71b4c2c448b333397d5ff3235825d8cea773291c", + "url": "https://dart.googlesource.com/http_parser.git" + }, + { + "kind": "git", + "path": "third_party/pkg/intl", + "sha256": "5d65e3808ce40e6282e40881492607df4e35669f", + "url": "https://dart.googlesource.com/intl.git" + }, + { + "kind": "git", + "path": "third_party/pkg/json_rpc_2", + "sha256": "5b1cbd679756700d5f319bf10a217da53e98ea52", + "url": "https://dart.googlesource.com/json_rpc_2.git" + }, + { + "kind": "git", + "path": "third_party/pkg/leak_tracker", + "sha256": "f5620600a5ce1c44f65ddaa02001e200b096e14c", + "url": "https://dart.googlesource.com/leak_tracker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/lints", + "sha256": "baaaa5616370243c3c8c6a9f67fb83d26bdac552", + "url": "https://dart.googlesource.com/lints.git" + }, + { + "kind": "git", + "path": "third_party/pkg/logging", + "sha256": "dbd682919708316e9a6d1e2fa472c9ad9225c2b4", + "url": "https://dart.googlesource.com/logging.git" + }, + { + "kind": "git", + "path": "third_party/pkg/markdown", + "sha256": "3d8d7a8f14b74bb646bb6e4ae35e0bf2beb74154", + "url": "https://dart.googlesource.com/markdown.git" + }, + { + "kind": "git", + "path": "third_party/pkg/matcher", + "sha256": "0abd4054c47a923486a6c0c04b5c974ba13ad2da", + "url": "https://dart.googlesource.com/matcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/mime", + "sha256": "4ca2f5edaafe21f462922d34db99486a44bb08b8", + "url": "https://dart.googlesource.com/mime.git" + }, + { + "kind": "git", + "path": "third_party/pkg/mockito", + "sha256": "2302814df66e651b6710311366501523dbee2e11", + "url": "https://dart.googlesource.com/mockito.git" + }, + { + "kind": "git", + "path": "third_party/pkg/native", + "sha256": "fef40aebc3cf34654919e8a5785b6c50b3ea445c", + "url": "https://dart.googlesource.com/native.git" + }, + { + "kind": "git", + "path": "third_party/pkg/package_config", + "sha256": "903a0e528f91aef90821c8f5eaafbc1ae27198ab", + "url": "https://dart.googlesource.com/package_config.git" + }, + { + "kind": "git", + "path": "third_party/pkg/path", + "sha256": "04807b61c25f98f328b322ec511451f9f86f98bb", + "url": "https://dart.googlesource.com/path.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pool", + "sha256": "88e463600c636a0d8cdb5dc306524ebf04b06baf", + "url": "https://dart.googlesource.com/pool.git" + }, + { + "kind": "git", + "path": "third_party/pkg/protobuf", + "sha256": "ccf104dbc36929c0f8708285d5f3a8fae206343e", + "url": "https://dart.googlesource.com/protobuf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub", + "sha256": "ddc1c2fd2e2a7cd94a0b92ea033961a25f4ad517", + "url": "https://dart.googlesource.com/pub.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub_semver", + "sha256": "a9025f3cc23ebb0f86c0af8759d95306b9133ce0", + "url": "https://dart.googlesource.com/pub_semver.git" + }, + { + "kind": "git", + "path": "third_party/pkg/shelf", + "sha256": "4c54af6b6baa9404826d234385c1bf69575dfd47", + "url": "https://dart.googlesource.com/shelf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_map_stack_trace", + "sha256": "96a8213dacf7cd42aefb1311491a4169826f98d2", + "url": "https://dart.googlesource.com/source_map_stack_trace.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_maps", + "sha256": "caa79c2011015759c6cf3299f299f5cccdf8bb61", + "url": "https://dart.googlesource.com/source_maps.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_span", + "sha256": "59a3903521dbf4c38c77df73669e73174a170327", + "url": "https://dart.googlesource.com/source_span.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sse", + "sha256": "7dcde164d5bfe707441f206379ef33e7509e2aac", + "url": "https://dart.googlesource.com/sse.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stack_trace", + "sha256": "ab09060b82c936c38c04eb49c1154b83f6648349", + "url": "https://dart.googlesource.com/stack_trace.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stream_channel", + "sha256": "b41ff7a25395ace8b23e454e3d1a3459a71306ca", + "url": "https://dart.googlesource.com/stream_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/string_scanner", + "sha256": "7b37c1b3d1ca6b581792e6ba385f651573af4a45", + "url": "https://dart.googlesource.com/string_scanner.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sync_http", + "sha256": "7622bdd07501f3f279212e355325b7c84a2b0a08", + "url": "https://dart.googlesource.com/sync_http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tar", + "sha256": "552a49d7595e444184d4f91e9afd533aa253a31d", + "url": "https://dart.googlesource.com/external/github.com/simolus3/tar.git" + }, + { + "kind": "git", + "path": "third_party/pkg/term_glyph", + "sha256": "c86e8171ee7e9f6fc8e775e0be755a603dd0b72d", + "url": "https://dart.googlesource.com/term_glyph.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test", + "sha256": "329c6dff4dfcb178ba6c7009cf1c1b9215b317aa", + "url": "https://dart.googlesource.com/test.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_descriptor", + "sha256": "b23d7ccb0f9882e161fb4dea75b2237bf428432b", + "url": "https://dart.googlesource.com/test_descriptor.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_process", + "sha256": "862eaf3b825f5e97b278d84a2afbe81b3e8a1683", + "url": "https://dart.googlesource.com/test_process.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_reflective_loader", + "sha256": "816942eaeeac30cc59d8699f1e94ad779cc53c06", + "url": "https://dart.googlesource.com/test_reflective_loader.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tools", + "sha256": "4321aecf2cb618dceab5d90adf0cb2ef7207169c", + "url": "https://dart.googlesource.com/tools.git" + }, + { + "kind": "git", + "path": "third_party/pkg/typed_data", + "sha256": "d14f9654f7a5d6baa7dcc27691bd0fa56769fb67", + "url": "https://dart.googlesource.com/typed_data.git" + }, + { + "kind": "git", + "path": "third_party/pkg/vector_math", + "sha256": "e7b11a234638bd5d76a05bae99d20b937637dfe8", + "url": "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/watcher", + "sha256": "c00fc2a6cd869cdebbc52e00af3d912d25745729", + "url": "https://dart.googlesource.com/watcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web", + "sha256": "2fe754fb396cb9b87010f0318cfbfc5408346c48", + "url": "https://dart.googlesource.com/web.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web_socket_channel", + "sha256": "bf69990738f173c07e67cf6945551194bc8c2d92", + "url": "https://dart.googlesource.com/web_socket_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdev", + "sha256": "eccc7d87982b23f666d5e3e09953dca59ca094e4", + "url": "https://dart.googlesource.com/webdev.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdriver", + "sha256": "f85779edd7c9f66198d4391ed3631db1d97a5b11", + "url": "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webkit_inspection_protocol", + "sha256": "5740cc91eaeb13a02007b77b128fccf4b056db6e", + "url": "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml", + "sha256": "7873b3fb9f16ec83bc7778fed58615fa91f1f042", + "url": "https://dart.googlesource.com/yaml.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml_edit", + "sha256": "08a146ef8f2c7aba908d2017c9ec840b882c9e51", + "url": "https://dart.googlesource.com/yaml_edit.git" + }, + { + "kind": "git", + "path": "third_party/ply", + "sha256": "604b32590ffad5cbb82e4afef1d305512d06ae93", + "url": "https://chromium.googlesource.com/chromium/src/third_party/ply.git" + }, + { + "kind": "git", + "path": "third_party/protobuf", + "sha256": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", + "url": "https://fuchsia.googlesource.com/third_party/protobuf" + }, + { + "kind": "git", + "path": "third_party/zlib", + "sha256": "108fa50cda23ed4a712a098d058dccbbfd248206", + "url": "https://chromium.googlesource.com/chromium/src/third_party/zlib.git" + }, + { + "kind": "tar.gz", + "path": "third_party/devtools/devtools_shared", + "sha256": "72369878105eccd563547afbad97407a2431b96bd4c04a1d6da75cb068437f50", + "url": "https://pub.dev/api/archives/devtools_shared-10.0.2.tar.gz" + } + ], + "dependencies": [ + "*:native/dart-bin@3.4.0-247.0.dev", + "*:native/gn", + "*:native/libc++", + "*:native/llvm-ar", + "*:native/llvm-nm", + "*:native/llvm-strip", + "*:native/make", + "*:native/ninja", + "*:native/python@3.11.13", + "*:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:ln -s $(which gn) buildtools/gn", + "*:mkdir -p buildtools/ninja", + "*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:mkdir -p tools/sdks/dart-sdk/bin", + "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:echo 3.5.0-278.0.dev > sdk/version", + "*:mkdir -p third_party/devtools/web", + "*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:python3 ./tools/build.py --mode=product create_sdk", + "*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + ] + } +} \ No newline at end of file diff --git a/packages/native/dart@3.5.0-307.0.dev.json b/packages/native/dart@3.5.0-307.0.dev.json new file mode 100644 index 0000000..8a6b1f0 --- /dev/null +++ b/packages/native/dart@3.5.0-307.0.dev.json @@ -0,0 +1,566 @@ +{ + "package": "native/dart@3.5.0-307.0.dev", + "version": "3.5.0-307.0.dev", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "7d7fbb30e0ca19c76800b1ad388fa55d09037e66", + "url": "https://dart.googlesource.com/sdk.git" + }, + { + "kind": "git", + "path": "build/secondary/third_party/protobuf", + "sha256": "ca669f79945418f6229e4fef89b666b2a88cbb10", + "url": "https://fuchsia.googlesource.com/protobuf-gn" + }, + { + "kind": "git", + "path": "buildtools/clang_format/script", + "sha256": "bb994c6f067340c1135eb43eed84f4b33cfa7397", + "url": "https://chromium.googlesource.com/chromium/llvm-project/cfe/tools/clang-format.git" + }, + { + "kind": "git", + "path": "tests/co19/src", + "sha256": "3a1b6f75c771d62e7150f2dd69595a98fd6930f4", + "url": "https://dart.googlesource.com/co19" + }, + { + "kind": "git", + "path": "third_party/WebCore", + "sha256": "bcb10901266c884e7b3740abc597ab95373ab55c", + "url": "https://dart.googlesource.com/webcore.git" + }, + { + "kind": "git", + "path": "third_party/binaryen/src", + "sha256": "654ee6e2504f11fb0e982a2cf276bafa750f694b", + "url": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl", + "sha256": "9c7294fd58261a79794f5afaa26598cf1442ad20", + "url": "https://dart.googlesource.com/boringssl_gen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl/src", + "sha256": "d24a38200fef19150eef00cad35b138936c08767", + "url": "https://boringssl.googlesource.com/boringssl.git" + }, + { + "kind": "git", + "path": "third_party/cpu_features/src", + "sha256": "936b9ab5515dead115606559502e3864958f7f6e", + "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" + }, + { + "kind": "git", + "path": "third_party/emsdk", + "sha256": "e41b8c68a248da5f18ebd03bd0420953945d52ff", + "url": "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git" + }, + { + "kind": "git", + "path": "third_party/icu", + "sha256": "81d656878ec611cb0b42d52c82e9dae93920d9ba", + "url": "https://chromium.googlesource.com/chromium/deps/icu.git" + }, + { + "kind": "git", + "path": "third_party/jinja2", + "sha256": "2222b31554f03e62600cd7e383376a7c187967a1", + "url": "https://chromium.googlesource.com/chromium/src/third_party/jinja2.git" + }, + { + "kind": "git", + "path": "third_party/libcxx", + "sha256": "44079a4cc04cdeffb9cfe8067bfb3c276fb2bab0", + "url": "https://llvm.googlesource.com/llvm-project/libcxx" + }, + { + "kind": "git", + "path": "third_party/libcxxabi", + "sha256": "2ce528fb5e0f92e57c97ec3ff53b75359d33af12", + "url": "https://llvm.googlesource.com/llvm-project/libcxxabi" + }, + { + "kind": "git", + "path": "third_party/markupsafe", + "sha256": "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", + "url": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe.git" + }, + { + "kind": "git", + "path": "third_party/mdn/browser-compat-data/src", + "sha256": "ac8cae697014da1ff7124fba33b0b4245cc6cd1b", + "url": "https://chromium.googlesource.com/external/github.com/mdn/browser-compat-data" + }, + { + "kind": "git", + "path": "third_party/perfetto", + "sha256": "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b", + "url": "https://android.googlesource.com/platform/external/perfetto" + }, + { + "kind": "git", + "path": "third_party/pkg/args", + "sha256": "6a5a2e6b1f0020b873c7ffbdd36a784c4f9ee300", + "url": "https://dart.googlesource.com/args.git" + }, + { + "kind": "git", + "path": "third_party/pkg/async", + "sha256": "d7c0cd5a458308ab5e5a0d0deebdce32c4391ec6", + "url": "https://dart.googlesource.com/async.git" + }, + { + "kind": "git", + "path": "third_party/pkg/bazel_worker", + "sha256": "c76d7c86381a6ed594641ba03b55c65b84ee11a6", + "url": "https://dart.googlesource.com/bazel_worker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/benchmark_harness", + "sha256": "f6ef33dc88d7cbc9e4a8a087f1e652eb0d6cc254", + "url": "https://dart.googlesource.com/benchmark_harness.git" + }, + { + "kind": "git", + "path": "third_party/pkg/boolean_selector", + "sha256": "62f82f6a333b419b457e62cadc17b7a9c0545873", + "url": "https://dart.googlesource.com/boolean_selector.git" + }, + { + "kind": "git", + "path": "third_party/pkg/browser_launcher", + "sha256": "7348ceae6508e5350771979c2951a54313303416", + "url": "https://dart.googlesource.com/browser_launcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/cli_util", + "sha256": "c37d5e14f50e72a268c1ad86149cecfa4b58c494", + "url": "https://dart.googlesource.com/cli_util.git" + }, + { + "kind": "git", + "path": "third_party/pkg/clock", + "sha256": "7cbf08e36a92f14f22132d255846610c1b065324", + "url": "https://dart.googlesource.com/clock.git" + }, + { + "kind": "git", + "path": "third_party/pkg/collection", + "sha256": "9354f386de3c57f5486b01ab4dfa1a2f033307d9", + "url": "https://dart.googlesource.com/collection.git" + }, + { + "kind": "git", + "path": "third_party/pkg/convert", + "sha256": "0c9eab7d4656be97329c4970659afd53a78910e6", + "url": "https://dart.googlesource.com/convert.git" + }, + { + "kind": "git", + "path": "third_party/pkg/crypto", + "sha256": "813e35e913d12e16de67ac57523cd0ff4b07c012", + "url": "https://dart.googlesource.com/crypto.git" + }, + { + "kind": "git", + "path": "third_party/pkg/csslib", + "sha256": "b70fef222c8a98abca39c3f729ec34632089697e", + "url": "https://dart.googlesource.com/csslib.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dart_style", + "sha256": "a6ad7693555a9add6f98ad6fd94de80d35c89415", + "url": "https://dart.googlesource.com/dart_style.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dartdoc", + "sha256": "88df88c9278ec4ec31df818f3ae33d4f91c8cd64", + "url": "https://dart.googlesource.com/dartdoc.git" + }, + { + "kind": "git", + "path": "third_party/pkg/ecosystem", + "sha256": "31148cd81bdb3c248fc30cd345ef49a978ed454c", + "url": "https://dart.googlesource.com/ecosystem.git" + }, + { + "kind": "git", + "path": "third_party/pkg/file", + "sha256": "07cacaed6679a173e29176747e6ce0325742749f", + "url": "https://dart.googlesource.com/external/github.com/google/file.dart" + }, + { + "kind": "git", + "path": "third_party/pkg/fixnum", + "sha256": "a8157d87f17d5184e210403f2ed63d354b854132", + "url": "https://dart.googlesource.com/fixnum.git" + }, + { + "kind": "git", + "path": "third_party/pkg/glob", + "sha256": "6d3ba5ec02817e62d17ace040590bb81a3e1242f", + "url": "https://dart.googlesource.com/glob.git" + }, + { + "kind": "git", + "path": "third_party/pkg/html", + "sha256": "3bc803d7e655491b243418f19300ef0c6112bcea", + "url": "https://dart.googlesource.com/html.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http", + "sha256": "4d8e7ef73d6135a8cc9b5e53db1beb43977d44b0", + "url": "https://dart.googlesource.com/http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http_multi_server", + "sha256": "25941e260658efb324de857e6022f418faf9bdd1", + "url": "https://dart.googlesource.com/http_multi_server.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http_parser", + "sha256": "9bf7bd981a39137da1e5d7fe64f4652b078c7aa9", + "url": "https://dart.googlesource.com/http_parser.git" + }, + { + "kind": "git", + "path": "third_party/pkg/intl", + "sha256": "5d65e3808ce40e6282e40881492607df4e35669f", + "url": "https://dart.googlesource.com/intl.git" + }, + { + "kind": "git", + "path": "third_party/pkg/json_rpc_2", + "sha256": "5b1cbd679756700d5f319bf10a217da53e98ea52", + "url": "https://dart.googlesource.com/json_rpc_2.git" + }, + { + "kind": "git", + "path": "third_party/pkg/leak_tracker", + "sha256": "f5620600a5ce1c44f65ddaa02001e200b096e14c", + "url": "https://dart.googlesource.com/leak_tracker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/lints", + "sha256": "baaaa5616370243c3c8c6a9f67fb83d26bdac552", + "url": "https://dart.googlesource.com/lints.git" + }, + { + "kind": "git", + "path": "third_party/pkg/logging", + "sha256": "240ec33e23720091e0e5a029d569a3770ddccf1c", + "url": "https://dart.googlesource.com/logging.git" + }, + { + "kind": "git", + "path": "third_party/pkg/markdown", + "sha256": "3d8d7a8f14b74bb646bb6e4ae35e0bf2beb74154", + "url": "https://dart.googlesource.com/markdown.git" + }, + { + "kind": "git", + "path": "third_party/pkg/matcher", + "sha256": "0abd4054c47a923486a6c0c04b5c974ba13ad2da", + "url": "https://dart.googlesource.com/matcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/mime", + "sha256": "4ca2f5edaafe21f462922d34db99486a44bb08b8", + "url": "https://dart.googlesource.com/mime.git" + }, + { + "kind": "git", + "path": "third_party/pkg/mockito", + "sha256": "2302814df66e651b6710311366501523dbee2e11", + "url": "https://dart.googlesource.com/mockito.git" + }, + { + "kind": "git", + "path": "third_party/pkg/native", + "sha256": "fef40aebc3cf34654919e8a5785b6c50b3ea445c", + "url": "https://dart.googlesource.com/native.git" + }, + { + "kind": "git", + "path": "third_party/pkg/package_config", + "sha256": "903a0e528f91aef90821c8f5eaafbc1ae27198ab", + "url": "https://dart.googlesource.com/package_config.git" + }, + { + "kind": "git", + "path": "third_party/pkg/path", + "sha256": "04807b61c25f98f328b322ec511451f9f86f98bb", + "url": "https://dart.googlesource.com/path.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pool", + "sha256": "832c5ab5eaee444354a8c796f7998bf744f169af", + "url": "https://dart.googlesource.com/pool.git" + }, + { + "kind": "git", + "path": "third_party/pkg/protobuf", + "sha256": "ccf104dbc36929c0f8708285d5f3a8fae206343e", + "url": "https://dart.googlesource.com/protobuf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub", + "sha256": "ddc1c2fd2e2a7cd94a0b92ea033961a25f4ad517", + "url": "https://dart.googlesource.com/pub.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub_semver", + "sha256": "dfcad38866fb1e94e8ca91bff3dddd5189fb0794", + "url": "https://dart.googlesource.com/pub_semver.git" + }, + { + "kind": "git", + "path": "third_party/pkg/shelf", + "sha256": "2536c15a562cb183dabbc628824a215663830325", + "url": "https://dart.googlesource.com/shelf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_map_stack_trace", + "sha256": "96a8213dacf7cd42aefb1311491a4169826f98d2", + "url": "https://dart.googlesource.com/source_map_stack_trace.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_maps", + "sha256": "caa79c2011015759c6cf3299f299f5cccdf8bb61", + "url": "https://dart.googlesource.com/source_maps.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_span", + "sha256": "59a3903521dbf4c38c77df73669e73174a170327", + "url": "https://dart.googlesource.com/source_span.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sse", + "sha256": "7dcde164d5bfe707441f206379ef33e7509e2aac", + "url": "https://dart.googlesource.com/sse.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stack_trace", + "sha256": "ab09060b82c936c38c04eb49c1154b83f6648349", + "url": "https://dart.googlesource.com/stack_trace.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stream_channel", + "sha256": "b41ff7a25395ace8b23e454e3d1a3459a71306ca", + "url": "https://dart.googlesource.com/stream_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/string_scanner", + "sha256": "e1cab8f0538b50f6d7180598752cf5a7e07e74db", + "url": "https://dart.googlesource.com/string_scanner.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sync_http", + "sha256": "7622bdd07501f3f279212e355325b7c84a2b0a08", + "url": "https://dart.googlesource.com/sync_http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tar", + "sha256": "552a49d7595e444184d4f91e9afd533aa253a31d", + "url": "https://dart.googlesource.com/external/github.com/simolus3/tar.git" + }, + { + "kind": "git", + "path": "third_party/pkg/term_glyph", + "sha256": "c86e8171ee7e9f6fc8e775e0be755a603dd0b72d", + "url": "https://dart.googlesource.com/term_glyph.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test", + "sha256": "329c6dff4dfcb178ba6c7009cf1c1b9215b317aa", + "url": "https://dart.googlesource.com/test.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_descriptor", + "sha256": "2f19400259e6ec6801a79dcbf038b235545ab400", + "url": "https://dart.googlesource.com/test_descriptor.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_process", + "sha256": "a7ca20b73f28d220e6478254082ea2b52f46dc97", + "url": "https://dart.googlesource.com/test_process.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_reflective_loader", + "sha256": "816942eaeeac30cc59d8699f1e94ad779cc53c06", + "url": "https://dart.googlesource.com/test_reflective_loader.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tools", + "sha256": "e660a68dce659311fb47735ab00365e26fca2fe3", + "url": "https://dart.googlesource.com/tools.git" + }, + { + "kind": "git", + "path": "third_party/pkg/typed_data", + "sha256": "85299290551297a28202b6e7a177bb787f790ffd", + "url": "https://dart.googlesource.com/typed_data.git" + }, + { + "kind": "git", + "path": "third_party/pkg/vector_math", + "sha256": "e7b11a234638bd5d76a05bae99d20b937637dfe8", + "url": "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/watcher", + "sha256": "c00fc2a6cd869cdebbc52e00af3d912d25745729", + "url": "https://dart.googlesource.com/watcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web", + "sha256": "6b8a46561b82de9b20d77d9ac491844d303ca08f", + "url": "https://dart.googlesource.com/web.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web_socket_channel", + "sha256": "bf69990738f173c07e67cf6945551194bc8c2d92", + "url": "https://dart.googlesource.com/web_socket_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdev", + "sha256": "c56611255f3f02642da10750448a8c90a9fa7b47", + "url": "https://dart.googlesource.com/webdev.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdriver", + "sha256": "f85779edd7c9f66198d4391ed3631db1d97a5b11", + "url": "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webkit_inspection_protocol", + "sha256": "5740cc91eaeb13a02007b77b128fccf4b056db6e", + "url": "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml", + "sha256": "4cf24ca3bbcb2cd8cbea32fdd355ee5d0a597247", + "url": "https://dart.googlesource.com/yaml.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml_edit", + "sha256": "08a146ef8f2c7aba908d2017c9ec840b882c9e51", + "url": "https://dart.googlesource.com/yaml_edit.git" + }, + { + "kind": "git", + "path": "third_party/ply", + "sha256": "604b32590ffad5cbb82e4afef1d305512d06ae93", + "url": "https://chromium.googlesource.com/chromium/src/third_party/ply.git" + }, + { + "kind": "git", + "path": "third_party/protobuf", + "sha256": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", + "url": "https://fuchsia.googlesource.com/third_party/protobuf" + }, + { + "kind": "git", + "path": "third_party/zlib", + "sha256": "108fa50cda23ed4a712a098d058dccbbfd248206", + "url": "https://chromium.googlesource.com/chromium/src/third_party/zlib.git" + }, + { + "kind": "tar.gz", + "path": "third_party/devtools/devtools_shared", + "sha256": "72369878105eccd563547afbad97407a2431b96bd4c04a1d6da75cb068437f50", + "url": "https://pub.dev/api/archives/devtools_shared-10.0.2.tar.gz" + } + ], + "dependencies": [ + "*:native/dart@3.5.0-278.0.dev", + "*:native/gn", + "*:native/libc++", + "*:native/llvm-ar", + "*:native/llvm-nm", + "*:native/llvm-strip", + "*:native/make", + "*:native/ninja", + "*:native/python@3.11.13", + "*:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:ln -s $(which gn) buildtools/gn", + "*:mkdir -p buildtools/ninja", + "*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:mkdir -p tools/sdks/dart-sdk/bin", + "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:echo 3.5.0-307.0.dev > sdk/version", + "*:mkdir -p third_party/devtools/web", + "*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:python3 ./tools/build.py --mode=product create_sdk", + "*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + ] + } +} \ No newline at end of file diff --git a/packages/native/dart@3.6.0-2.0.dev.json b/packages/native/dart@3.6.0-2.0.dev.json new file mode 100644 index 0000000..d8f13c4 --- /dev/null +++ b/packages/native/dart@3.6.0-2.0.dev.json @@ -0,0 +1,560 @@ +{ + "package": "native/dart@3.6.0-2.0.dev", + "version": "3.6.0-2.0.dev", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "7e6469bd51d404916395a47b011d907d2c905121", + "url": "https://dart.googlesource.com/sdk.git" + }, + { + "kind": "git", + "path": "build/secondary/third_party/protobuf", + "sha256": "ca669f79945418f6229e4fef89b666b2a88cbb10", + "url": "https://fuchsia.googlesource.com/protobuf-gn" + }, + { + "kind": "git", + "path": "tests/co19/src", + "sha256": "7b457e8d8c10361424beb7b432347f668c974439", + "url": "https://dart.googlesource.com/co19" + }, + { + "kind": "git", + "path": "third_party/WebCore", + "sha256": "bcb10901266c884e7b3740abc597ab95373ab55c", + "url": "https://dart.googlesource.com/webcore.git" + }, + { + "kind": "git", + "path": "third_party/binaryen/src", + "sha256": "654ee6e2504f11fb0e982a2cf276bafa750f694b", + "url": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl", + "sha256": "9c7294fd58261a79794f5afaa26598cf1442ad20", + "url": "https://dart.googlesource.com/boringssl_gen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl/src", + "sha256": "d24a38200fef19150eef00cad35b138936c08767", + "url": "https://boringssl.googlesource.com/boringssl.git" + }, + { + "kind": "git", + "path": "third_party/cpu_features/src", + "sha256": "936b9ab5515dead115606559502e3864958f7f6e", + "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" + }, + { + "kind": "git", + "path": "third_party/emsdk", + "sha256": "e41b8c68a248da5f18ebd03bd0420953945d52ff", + "url": "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git" + }, + { + "kind": "git", + "path": "third_party/icu", + "sha256": "81d656878ec611cb0b42d52c82e9dae93920d9ba", + "url": "https://chromium.googlesource.com/chromium/deps/icu.git" + }, + { + "kind": "git", + "path": "third_party/jinja2", + "sha256": "2222b31554f03e62600cd7e383376a7c187967a1", + "url": "https://chromium.googlesource.com/chromium/src/third_party/jinja2.git" + }, + { + "kind": "git", + "path": "third_party/libcxx", + "sha256": "44079a4cc04cdeffb9cfe8067bfb3c276fb2bab0", + "url": "https://llvm.googlesource.com/llvm-project/libcxx" + }, + { + "kind": "git", + "path": "third_party/libcxxabi", + "sha256": "2ce528fb5e0f92e57c97ec3ff53b75359d33af12", + "url": "https://llvm.googlesource.com/llvm-project/libcxxabi" + }, + { + "kind": "git", + "path": "third_party/markupsafe", + "sha256": "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", + "url": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe.git" + }, + { + "kind": "git", + "path": "third_party/mdn/browser-compat-data/src", + "sha256": "ac8cae697014da1ff7124fba33b0b4245cc6cd1b", + "url": "https://chromium.googlesource.com/external/github.com/mdn/browser-compat-data" + }, + { + "kind": "git", + "path": "third_party/perfetto", + "sha256": "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b", + "url": "https://android.googlesource.com/platform/external/perfetto" + }, + { + "kind": "git", + "path": "third_party/pkg/args", + "sha256": "6a5a2e6b1f0020b873c7ffbdd36a784c4f9ee300", + "url": "https://dart.googlesource.com/args.git" + }, + { + "kind": "git", + "path": "third_party/pkg/async", + "sha256": "c0d81f8699682d01d657a9bf827107d11904a247", + "url": "https://dart.googlesource.com/async.git" + }, + { + "kind": "git", + "path": "third_party/pkg/bazel_worker", + "sha256": "c76d7c86381a6ed594641ba03b55c65b84ee11a6", + "url": "https://dart.googlesource.com/bazel_worker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/benchmark_harness", + "sha256": "f6ef33dc88d7cbc9e4a8a087f1e652eb0d6cc254", + "url": "https://dart.googlesource.com/benchmark_harness.git" + }, + { + "kind": "git", + "path": "third_party/pkg/boolean_selector", + "sha256": "c5468f44fd9ca0ea3435e1a0a84ff9b6fac38261", + "url": "https://dart.googlesource.com/boolean_selector.git" + }, + { + "kind": "git", + "path": "third_party/pkg/browser_launcher", + "sha256": "60126904a26b761d29b4f2d76292ff3c089160de", + "url": "https://dart.googlesource.com/browser_launcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/cli_util", + "sha256": "64192706344d0598784bebe1abc4a9bfc2608de0", + "url": "https://dart.googlesource.com/cli_util.git" + }, + { + "kind": "git", + "path": "third_party/pkg/clock", + "sha256": "ad428ea8b75fa0d7ba629791552d40478745c54a", + "url": "https://dart.googlesource.com/clock.git" + }, + { + "kind": "git", + "path": "third_party/pkg/collection", + "sha256": "9354f386de3c57f5486b01ab4dfa1a2f033307d9", + "url": "https://dart.googlesource.com/collection.git" + }, + { + "kind": "git", + "path": "third_party/pkg/convert", + "sha256": "9035cafefc1da4315f26058734d0c2a19d5ab56a", + "url": "https://dart.googlesource.com/convert.git" + }, + { + "kind": "git", + "path": "third_party/pkg/crypto", + "sha256": "1216790ba704a0ab194f9cd0da2d65e1767f3342", + "url": "https://dart.googlesource.com/crypto.git" + }, + { + "kind": "git", + "path": "third_party/pkg/csslib", + "sha256": "192d720f121792ab05ca157ea280edc7e0410e9c", + "url": "https://dart.googlesource.com/csslib.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dart_style", + "sha256": "a6ad7693555a9add6f98ad6fd94de80d35c89415", + "url": "https://dart.googlesource.com/dart_style.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dartdoc", + "sha256": "7e5da6090e6a48cebaee8789ca0fc396b34fd8a4", + "url": "https://dart.googlesource.com/dartdoc.git" + }, + { + "kind": "git", + "path": "third_party/pkg/ecosystem", + "sha256": "54ca01abe4b7b62419ee88814d3dc98df36ff8ff", + "url": "https://dart.googlesource.com/ecosystem.git" + }, + { + "kind": "git", + "path": "third_party/pkg/file", + "sha256": "07cacaed6679a173e29176747e6ce0325742749f", + "url": "https://dart.googlesource.com/external/github.com/google/file.dart" + }, + { + "kind": "git", + "path": "third_party/pkg/fixnum", + "sha256": "6c19e60366ce3d5edfaed51a7c12c98e7977977e", + "url": "https://dart.googlesource.com/fixnum.git" + }, + { + "kind": "git", + "path": "third_party/pkg/glob", + "sha256": "6d3ba5ec02817e62d17ace040590bb81a3e1242f", + "url": "https://dart.googlesource.com/glob.git" + }, + { + "kind": "git", + "path": "third_party/pkg/html", + "sha256": "0da420ca1e196cda54ede476d0d8d3ecf55375ef", + "url": "https://dart.googlesource.com/html.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http", + "sha256": "8d893851904d8cd292a66e39812b59aca2cc4d96", + "url": "https://dart.googlesource.com/http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http_multi_server", + "sha256": "25941e260658efb324de857e6022f418faf9bdd1", + "url": "https://dart.googlesource.com/http_multi_server.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http_parser", + "sha256": "9bf7bd981a39137da1e5d7fe64f4652b078c7aa9", + "url": "https://dart.googlesource.com/http_parser.git" + }, + { + "kind": "git", + "path": "third_party/pkg/intl", + "sha256": "5d65e3808ce40e6282e40881492607df4e35669f", + "url": "https://dart.googlesource.com/intl.git" + }, + { + "kind": "git", + "path": "third_party/pkg/json_rpc_2", + "sha256": "616937f6d3837e38a2a287653ddaf722de260702", + "url": "https://dart.googlesource.com/json_rpc_2.git" + }, + { + "kind": "git", + "path": "third_party/pkg/leak_tracker", + "sha256": "f5620600a5ce1c44f65ddaa02001e200b096e14c", + "url": "https://dart.googlesource.com/leak_tracker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/lints", + "sha256": "f6b5d36485f6f067ac0f5a7193006ebe82ee6113", + "url": "https://dart.googlesource.com/lints.git" + }, + { + "kind": "git", + "path": "third_party/pkg/logging", + "sha256": "6c3fb37fecb2e30415072f327b834a3e95517fa9", + "url": "https://dart.googlesource.com/logging.git" + }, + { + "kind": "git", + "path": "third_party/pkg/markdown", + "sha256": "62424376d0b5fe35a2957b3caed4b75db010ba82", + "url": "https://dart.googlesource.com/markdown.git" + }, + { + "kind": "git", + "path": "third_party/pkg/matcher", + "sha256": "d6d573d0f8d65b36550ce62aad3ce6b5e987b642", + "url": "https://dart.googlesource.com/matcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/mime", + "sha256": "11fec7d6df509a4efd554051cc27e3bf82df9c96", + "url": "https://dart.googlesource.com/mime.git" + }, + { + "kind": "git", + "path": "third_party/pkg/mockito", + "sha256": "a7fdf7101fbd31132a59188a6057d21004345927", + "url": "https://dart.googlesource.com/mockito.git" + }, + { + "kind": "git", + "path": "third_party/pkg/native", + "sha256": "fcc783c1d2777555616dfc850f131878ea5d88a9", + "url": "https://dart.googlesource.com/native.git" + }, + { + "kind": "git", + "path": "third_party/pkg/package_config", + "sha256": "903a0e528f91aef90821c8f5eaafbc1ae27198ab", + "url": "https://dart.googlesource.com/package_config.git" + }, + { + "kind": "git", + "path": "third_party/pkg/path", + "sha256": "e969f42ed112dd702a9453beb9df6c12ae2d3805", + "url": "https://dart.googlesource.com/path.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pool", + "sha256": "924fb04353cec915d927f9f1aed88e2eda92b98a", + "url": "https://dart.googlesource.com/pool.git" + }, + { + "kind": "git", + "path": "third_party/pkg/protobuf", + "sha256": "ccf104dbc36929c0f8708285d5f3a8fae206343e", + "url": "https://dart.googlesource.com/protobuf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub", + "sha256": "ea4a1c854690d3abceb92c8cc2c6454470f9d5a7", + "url": "https://dart.googlesource.com/pub.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub_semver", + "sha256": "d9e5ee68a350fbf4319bd4dfcb895fc016337d3a", + "url": "https://dart.googlesource.com/pub_semver.git" + }, + { + "kind": "git", + "path": "third_party/pkg/shelf", + "sha256": "9f2dffecbe8f219146a077e401758602752d486a", + "url": "https://dart.googlesource.com/shelf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_map_stack_trace", + "sha256": "741b6ceb4b6cdb8ff620664337d7ecc63ca52cc1", + "url": "https://dart.googlesource.com/source_map_stack_trace.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_maps", + "sha256": "caa79c2011015759c6cf3299f299f5cccdf8bb61", + "url": "https://dart.googlesource.com/source_maps.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_span", + "sha256": "89520f3009e332ce2b6675f71dca166521c36cc4", + "url": "https://dart.googlesource.com/source_span.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sse", + "sha256": "52d042ff9ab2d0e5bc26805d74a03077a67861e1", + "url": "https://dart.googlesource.com/sse.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stack_trace", + "sha256": "4fd3e2a2dc6611febf4cfb9197ebf9e60fc6a34d", + "url": "https://dart.googlesource.com/stack_trace.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stream_channel", + "sha256": "28a65331aa2d66a5e953205aa462bcdb1e240a5b", + "url": "https://dart.googlesource.com/stream_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/string_scanner", + "sha256": "0de03b5279a04aa05052ce306f90fca473c6fd1a", + "url": "https://dart.googlesource.com/string_scanner.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sync_http", + "sha256": "7622bdd07501f3f279212e355325b7c84a2b0a08", + "url": "https://dart.googlesource.com/sync_http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tar", + "sha256": "552a49d7595e444184d4f91e9afd533aa253a31d", + "url": "https://dart.googlesource.com/external/github.com/simolus3/tar.git" + }, + { + "kind": "git", + "path": "third_party/pkg/term_glyph", + "sha256": "38a158f55006cf30942c928171ea601ee5e0308f", + "url": "https://dart.googlesource.com/term_glyph.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test", + "sha256": "3256c23cc753a184bb3bf27610a7c8410735e3ac", + "url": "https://dart.googlesource.com/test.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_descriptor", + "sha256": "90743bc16bc00526a1b9a64f813614be9b2479d9", + "url": "https://dart.googlesource.com/test_descriptor.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_process", + "sha256": "6223572ca16d7585d5f08d9281de6a5734e45150", + "url": "https://dart.googlesource.com/test_process.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_reflective_loader", + "sha256": "6e648863b39aab8d0204e769d25805eea9db0ac4", + "url": "https://dart.googlesource.com/test_reflective_loader.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tools", + "sha256": "43a8582a85d2220b5f1ca8383d97587792085b36", + "url": "https://dart.googlesource.com/tools.git" + }, + { + "kind": "git", + "path": "third_party/pkg/typed_data", + "sha256": "365468a74251c930a463daf5b8f13227e269111a", + "url": "https://dart.googlesource.com/typed_data.git" + }, + { + "kind": "git", + "path": "third_party/pkg/vector_math", + "sha256": "2cfbe2c115a57b368ccbc3c89ebd38a06764d3d1", + "url": "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/watcher", + "sha256": "0484625589d8512b36a7ad898a6cc6351d24c556", + "url": "https://dart.googlesource.com/watcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web", + "sha256": "e4c4d8126466e28dc137890b8f999da59bdedddd", + "url": "https://dart.googlesource.com/web.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web_socket_channel", + "sha256": "8e95ea75302180af075295f7dd7ffe922e26f789", + "url": "https://dart.googlesource.com/web_socket_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdev", + "sha256": "75417c09181c97786d9539a662834bed9d2f1e77", + "url": "https://dart.googlesource.com/webdev.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdriver", + "sha256": "718e4c37d004fceb9856de980782c46bf9576df5", + "url": "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webkit_inspection_protocol", + "sha256": "32fffa53df3f54005c742ddf4f859fb585a6b254", + "url": "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml", + "sha256": "30fd9e0cd49b2e04f74769f9b24a0300e400403e", + "url": "https://dart.googlesource.com/yaml.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml_edit", + "sha256": "57a28daea82a3f00f57a90d5ea6df6a458b2f781", + "url": "https://dart.googlesource.com/yaml_edit.git" + }, + { + "kind": "git", + "path": "third_party/ply", + "sha256": "604b32590ffad5cbb82e4afef1d305512d06ae93", + "url": "https://chromium.googlesource.com/chromium/src/third_party/ply.git" + }, + { + "kind": "git", + "path": "third_party/protobuf", + "sha256": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", + "url": "https://fuchsia.googlesource.com/third_party/protobuf" + }, + { + "kind": "git", + "path": "third_party/zlib", + "sha256": "108fa50cda23ed4a712a098d058dccbbfd248206", + "url": "https://chromium.googlesource.com/chromium/src/third_party/zlib.git" + }, + { + "kind": "tar.gz", + "path": "third_party/devtools/devtools_shared", + "sha256": "72369878105eccd563547afbad97407a2431b96bd4c04a1d6da75cb068437f50", + "url": "https://pub.dev/api/archives/devtools_shared-10.0.2.tar.gz" + } + ], + "dependencies": [ + "*:native/dart@3.5.0-307.0.dev", + "*:native/gn", + "*:native/libc++", + "*:native/llvm-ar", + "*:native/llvm-nm", + "*:native/llvm-strip", + "*:native/make", + "*:native/ninja", + "*:native/python@3.11.13", + "*:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:ln -s $(which gn) buildtools/gn", + "*:mkdir -p buildtools/ninja", + "*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:mkdir -p tools/sdks/dart-sdk/bin", + "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:echo 3.6.0-2.0.dev > sdk/version", + "*:mkdir -p third_party/devtools/web", + "*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:python3 ./tools/build.py --mode=product create_sdk", + "*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + ] + } +} \ No newline at end of file diff --git a/packages/native/dart@3.7.0-224.0.dev.json b/packages/native/dart@3.7.0-224.0.dev.json new file mode 100644 index 0000000..0dff3c6 --- /dev/null +++ b/packages/native/dart@3.7.0-224.0.dev.json @@ -0,0 +1,429 @@ +{ + "package": "native/dart@3.7.0-224.0.dev", + "version": "3.7.0-224.0.dev", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "c7e47c6c5df6ffa16d92704d5291b3387f974648", + "url": "https://dart.googlesource.com/sdk.git" + }, + { + "kind": "git", + "path": "build/secondary/third_party/protobuf", + "sha256": "ca669f79945418f6229e4fef89b666b2a88cbb10", + "url": "https://fuchsia.googlesource.com/protobuf-gn" + }, + { + "kind": "git", + "path": "buildtools/clang_format/script", + "sha256": "bb994c6f067340c1135eb43eed84f4b33cfa7397", + "url": "https://chromium.googlesource.com/chromium/llvm-project/cfe/tools/clang-format.git" + }, + { + "kind": "git", + "path": "tests/co19/src", + "sha256": "d50a305d1b4455b4e72ba45a2cf2ab1c37004bc6", + "url": "https://dart.googlesource.com/co19" + }, + { + "kind": "git", + "path": "third_party/WebCore", + "sha256": "bcb10901266c884e7b3740abc597ab95373ab55c", + "url": "https://dart.googlesource.com/webcore.git" + }, + { + "kind": "git", + "path": "third_party/binaryen/src", + "sha256": "93883fde36ac158fd415dcd6dbd387dcfd928d3c", + "url": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl", + "sha256": "9c7294fd58261a79794f5afaa26598cf1442ad20", + "url": "https://dart.googlesource.com/boringssl_gen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl/src", + "sha256": "567289e4bb1958153f428bba52d953f3c080b4d7", + "url": "https://boringssl.googlesource.com/boringssl.git" + }, + { + "kind": "git", + "path": "third_party/cpu_features/src", + "sha256": "936b9ab5515dead115606559502e3864958f7f6e", + "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" + }, + { + "kind": "git", + "path": "third_party/emsdk", + "sha256": "e41b8c68a248da5f18ebd03bd0420953945d52ff", + "url": "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git" + }, + { + "kind": "git", + "path": "third_party/icu", + "sha256": "43953f57b037778a1b8005564afabe214834f7bd", + "url": "https://chromium.googlesource.com/chromium/deps/icu.git" + }, + { + "kind": "git", + "path": "third_party/jinja2", + "sha256": "2222b31554f03e62600cd7e383376a7c187967a1", + "url": "https://chromium.googlesource.com/chromium/src/third_party/jinja2.git" + }, + { + "kind": "git", + "path": "third_party/libcxx", + "sha256": "44079a4cc04cdeffb9cfe8067bfb3c276fb2bab0", + "url": "https://llvm.googlesource.com/llvm-project/libcxx" + }, + { + "kind": "git", + "path": "third_party/libcxxabi", + "sha256": "2ce528fb5e0f92e57c97ec3ff53b75359d33af12", + "url": "https://llvm.googlesource.com/llvm-project/libcxxabi" + }, + { + "kind": "git", + "path": "third_party/markupsafe", + "sha256": "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", + "url": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe.git" + }, + { + "kind": "git", + "path": "third_party/mdn/browser-compat-data/src", + "sha256": "ac8cae697014da1ff7124fba33b0b4245cc6cd1b", + "url": "https://chromium.googlesource.com/external/github.com/mdn/browser-compat-data" + }, + { + "kind": "git", + "path": "third_party/perfetto", + "sha256": "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b", + "url": "https://android.googlesource.com/platform/external/perfetto" + }, + { + "kind": "git", + "path": "third_party/pkg/core", + "sha256": "abcf992cf9fe1e896ed9dcff15523c0a6c00621d", + "url": "https://dart.googlesource.com/core.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dart_style", + "sha256": "1de89eb3bd340315f9ff5f2afc319cc1d6131b8d", + "url": "https://dart.googlesource.com/dart_style.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dartdoc", + "sha256": "c7f11603effa88ddacabfd555993f322fca8b3fe", + "url": "https://dart.googlesource.com/dartdoc.git" + }, + { + "kind": "git", + "path": "third_party/pkg/ecosystem", + "sha256": "248b1801131ddc2e738c8181fc32d488e1312052", + "url": "https://dart.googlesource.com/ecosystem.git" + }, + { + "kind": "git", + "path": "third_party/pkg/glob", + "sha256": "994191a107b99a1911a3ef52ca238cd9305c8d37", + "url": "https://dart.googlesource.com/glob.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http", + "sha256": "79470d014b467f01b0e7c5b63ab6c86b22dec8db", + "url": "https://dart.googlesource.com/http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http_multi_server", + "sha256": "f6a748819139b8cbf513d5fc36b10676b0cb066f", + "url": "https://dart.googlesource.com/http_multi_server.git" + }, + { + "kind": "git", + "path": "third_party/pkg/intl", + "sha256": "5d65e3808ce40e6282e40881492607df4e35669f", + "url": "https://dart.googlesource.com/intl.git" + }, + { + "kind": "git", + "path": "third_party/pkg/leak_tracker", + "sha256": "f5620600a5ce1c44f65ddaa02001e200b096e14c", + "url": "https://dart.googlesource.com/leak_tracker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/lints", + "sha256": "e1d4794412aacd3bbb370956d44b9a10c3f892f3", + "url": "https://dart.googlesource.com/lints.git" + }, + { + "kind": "git", + "path": "third_party/pkg/markdown", + "sha256": "4d5dbc659955973902f2585c54e94d453532db70", + "url": "https://dart.googlesource.com/markdown.git" + }, + { + "kind": "git", + "path": "third_party/pkg/native", + "sha256": "028f89d4a59448f9ecda5bd3d4519e2d7c742072", + "url": "https://dart.googlesource.com/native.git" + }, + { + "kind": "git", + "path": "third_party/pkg/package_config", + "sha256": "76f2f6c245451da1fa24d7bbb00251b909e729a5", + "url": "https://dart.googlesource.com/package_config.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pool", + "sha256": "f85209d83cb0aa3c5612ed80de32df51ba580abd", + "url": "https://dart.googlesource.com/pool.git" + }, + { + "kind": "git", + "path": "third_party/pkg/protobuf", + "sha256": "da7279c56734cffed4deb1e3a6f93bdcefccf6b8", + "url": "https://dart.googlesource.com/protobuf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub", + "sha256": "30bfc439fedba1ee3daadcf542f1483479bc4909", + "url": "https://dart.googlesource.com/pub.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub_semver", + "sha256": "8e9fcb9d3f89f06022387f906da4d380688f935c", + "url": "https://dart.googlesource.com/pub_semver.git" + }, + { + "kind": "git", + "path": "third_party/pkg/shelf", + "sha256": "2b5b683e78f5cc84e479a43297fd7b5489d7db02", + "url": "https://dart.googlesource.com/shelf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_maps", + "sha256": "198d32bbde2f5736c04dfbab306a17096fd1648b", + "url": "https://dart.googlesource.com/source_maps.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_span", + "sha256": "22a243eb50d926935a8a1300a49af6d2988c3ae6", + "url": "https://dart.googlesource.com/source_span.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sse", + "sha256": "b97dc3ad9a58a454dc5ffe5b3ec814dadc389e32", + "url": "https://dart.googlesource.com/sse.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stack_trace", + "sha256": "b660cfa444d46bcceb3a0eacbd6a2a7829da11de", + "url": "https://dart.googlesource.com/stack_trace.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stream_channel", + "sha256": "71fe6dd315e7f451466da80f7af2661cd28aaaea", + "url": "https://dart.googlesource.com/stream_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/string_scanner", + "sha256": "77de235c061a09264cae920e52939787325c8cae", + "url": "https://dart.googlesource.com/string_scanner.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sync_http", + "sha256": "47e6b264a209d0d806cfe9cdad8b6c69ce231986", + "url": "https://dart.googlesource.com/sync_http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tar", + "sha256": "5a1ea943e70cdf3fa5e1102cdbb9418bd9b4b81a", + "url": "https://dart.googlesource.com/external/github.com/simolus3/tar.git" + }, + { + "kind": "git", + "path": "third_party/pkg/term_glyph", + "sha256": "9ed8ed96fdd84cb7b72ee1be3e86010969fa95d4", + "url": "https://dart.googlesource.com/term_glyph.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test", + "sha256": "20967732ea9dd30240a6429621ab2f82874bd9f0", + "url": "https://dart.googlesource.com/test.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_descriptor", + "sha256": "408526a84e74d7af0f9c8c3fbb49ce9178927ee0", + "url": "https://dart.googlesource.com/test_descriptor.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_process", + "sha256": "5b0349ca18fe48cd527f74ac883db2964cbdba40", + "url": "https://dart.googlesource.com/test_process.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_reflective_loader", + "sha256": "faade6299d1823f0d062eb5e98f3b440ddcea7c6", + "url": "https://dart.googlesource.com/test_reflective_loader.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tools", + "sha256": "1c5b8b949128d62182e162ef65a2e6f3feb19acf", + "url": "https://dart.googlesource.com/tools.git" + }, + { + "kind": "git", + "path": "third_party/pkg/vector_math", + "sha256": "433fb6c829b18719fd0db4a703b607a26b7d81f4", + "url": "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/watcher", + "sha256": "bc44e6f6b85972e516c44b9ae6c042b4cbd7c72b", + "url": "https://dart.googlesource.com/watcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web", + "sha256": "bdf112ec64d28285cc29c6c78274ff3a827bb79b", + "url": "https://dart.googlesource.com/web.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web_socket_channel", + "sha256": "7a2039fd7c4c656ab27850926f89103b5f188dab", + "url": "https://dart.googlesource.com/web_socket_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdev", + "sha256": "5f30c560dc4e3df341356c43ec1a766ee6b74a7c", + "url": "https://dart.googlesource.com/webdev.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdriver", + "sha256": "d83d6a3cbaab152ff9b99b29382d1f48b5d5ba23", + "url": "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webkit_inspection_protocol", + "sha256": "effa75205516757795683d527c3dea9546eb0c32", + "url": "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml", + "sha256": "2a3727288a9336b6f9b7c5236657414ce1ee5d8a", + "url": "https://dart.googlesource.com/yaml.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml_edit", + "sha256": "fbdc70acc164af187772e013a2e1364cd05b88dc", + "url": "https://dart.googlesource.com/yaml_edit.git" + }, + { + "kind": "git", + "path": "third_party/ply", + "sha256": "604b32590ffad5cbb82e4afef1d305512d06ae93", + "url": "https://chromium.googlesource.com/chromium/src/third_party/ply.git" + }, + { + "kind": "git", + "path": "third_party/protobuf", + "sha256": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", + "url": "https://fuchsia.googlesource.com/third_party/protobuf" + }, + { + "kind": "git", + "path": "third_party/zlib", + "sha256": "108fa50cda23ed4a712a098d058dccbbfd248206", + "url": "https://chromium.googlesource.com/chromium/src/third_party/zlib.git" + }, + { + "kind": "tar.gz", + "path": "third_party/devtools/devtools_shared", + "sha256": "fa71f07006dfdf3f226ec76db95a4bad156820c081452cc99d18a4f291001bee", + "url": "https://pub.dev/api/archives/devtools_shared-11.2.0.tar.gz" + } + ], + "dependencies": [ + "*:native/dart@3.7.0-27.0.dev", + "*:native/gn", + "*:native/libc++", + "*:native/llvm-ar", + "*:native/llvm-nm", + "*:native/llvm-strip", + "*:native/make", + "*:native/ninja", + "*:native/python@3.11.13", + "*:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:ln -s $(which gn) buildtools/gn", + "*:mkdir -p buildtools/ninja", + "*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:mkdir -p tools/sdks/dart-sdk/bin", + "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:echo 3.7.0-224.0.dev > sdk/version", + "*:mkdir -p third_party/devtools/web", + "*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:python3 ./tools/build.py --mode=product create_sdk", + "*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + ] + } +} \ No newline at end of file diff --git a/packages/native/dart@3.7.0-232.0.dev.json b/packages/native/dart@3.7.0-232.0.dev.json new file mode 100644 index 0000000..bb2408c --- /dev/null +++ b/packages/native/dart@3.7.0-232.0.dev.json @@ -0,0 +1,405 @@ +{ + "package": "native/dart@3.7.0-232.0.dev", + "version": "3.7.0-232.0.dev", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "a8bfb132c5f7b9555d13ea79eaf0eaa77825824d", + "url": "https://dart.googlesource.com/sdk.git" + }, + { + "kind": "git", + "path": "build/secondary/third_party/protobuf", + "sha256": "ca669f79945418f6229e4fef89b666b2a88cbb10", + "url": "https://fuchsia.googlesource.com/protobuf-gn" + }, + { + "kind": "git", + "path": "tests/co19/src", + "sha256": "2424cfed7eedf53a122f8bfdbb6319692f726ec8", + "url": "https://dart.googlesource.com/co19" + }, + { + "kind": "git", + "path": "third_party/WebCore", + "sha256": "bcb10901266c884e7b3740abc597ab95373ab55c", + "url": "https://dart.googlesource.com/webcore.git" + }, + { + "kind": "git", + "path": "third_party/binaryen/src", + "sha256": "87f9dac127b387715d8d96ac7ec8fd469d8c2dab", + "url": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl", + "sha256": "7322fc15cc065d8d2957fccce6b62a509dc4d641", + "url": "https://dart.googlesource.com/boringssl_gen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl/src", + "sha256": "822902749a5956bba09c7e9e451104e8a74f02c5", + "url": "https://boringssl.googlesource.com/boringssl.git" + }, + { + "kind": "git", + "path": "third_party/cpu_features/src", + "sha256": "936b9ab5515dead115606559502e3864958f7f6e", + "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" + }, + { + "kind": "git", + "path": "third_party/emsdk", + "sha256": "e41b8c68a248da5f18ebd03bd0420953945d52ff", + "url": "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git" + }, + { + "kind": "git", + "path": "third_party/icu", + "sha256": "43953f57b037778a1b8005564afabe214834f7bd", + "url": "https://chromium.googlesource.com/chromium/deps/icu.git" + }, + { + "kind": "git", + "path": "third_party/jinja2", + "sha256": "2222b31554f03e62600cd7e383376a7c187967a1", + "url": "https://chromium.googlesource.com/chromium/src/third_party/jinja2.git" + }, + { + "kind": "git", + "path": "third_party/libcxx", + "sha256": "44079a4cc04cdeffb9cfe8067bfb3c276fb2bab0", + "url": "https://llvm.googlesource.com/llvm-project/libcxx" + }, + { + "kind": "git", + "path": "third_party/libcxxabi", + "sha256": "2ce528fb5e0f92e57c97ec3ff53b75359d33af12", + "url": "https://llvm.googlesource.com/llvm-project/libcxxabi" + }, + { + "kind": "git", + "path": "third_party/markupsafe", + "sha256": "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", + "url": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe.git" + }, + { + "kind": "git", + "path": "third_party/mdn/browser-compat-data/src", + "sha256": "ac8cae697014da1ff7124fba33b0b4245cc6cd1b", + "url": "https://chromium.googlesource.com/external/github.com/mdn/browser-compat-data" + }, + { + "kind": "git", + "path": "third_party/perfetto", + "sha256": "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b", + "url": "https://android.googlesource.com/platform/external/perfetto" + }, + { + "kind": "git", + "path": "third_party/pkg/core", + "sha256": "7a71ad6b9170e09d5cbe39f3fccdee648659f1e7", + "url": "https://dart.googlesource.com/core.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dart_style", + "sha256": "21de99ec0ff8ace4d946a746fb427fffd6afa535", + "url": "https://dart.googlesource.com/dart_style.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dartdoc", + "sha256": "c7f11603effa88ddacabfd555993f322fca8b3fe", + "url": "https://dart.googlesource.com/dartdoc.git" + }, + { + "kind": "git", + "path": "third_party/pkg/ecosystem", + "sha256": "efe4ee4af6ac2e4c90aa525fae213b65c97295a9", + "url": "https://dart.googlesource.com/ecosystem.git" + }, + { + "kind": "git", + "path": "third_party/pkg/glob", + "sha256": "eee18d1a577d5f965f6afbbd251798e065dced43", + "url": "https://dart.googlesource.com/glob.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http", + "sha256": "6ecd13a88b82c2fdc8a555f218bafb0ad0370f51", + "url": "https://dart.googlesource.com/http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/intl", + "sha256": "5d65e3808ce40e6282e40881492607df4e35669f", + "url": "https://dart.googlesource.com/intl.git" + }, + { + "kind": "git", + "path": "third_party/pkg/leak_tracker", + "sha256": "f5620600a5ce1c44f65ddaa02001e200b096e14c", + "url": "https://dart.googlesource.com/leak_tracker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/markdown", + "sha256": "19aaded4300d24bedcbf52ade792b203ddf030b0", + "url": "https://dart.googlesource.com/markdown.git" + }, + { + "kind": "git", + "path": "third_party/pkg/native", + "sha256": "14368a80bae9e3f381a2e59c91405338d82451ee", + "url": "https://dart.googlesource.com/native.git" + }, + { + "kind": "git", + "path": "third_party/pkg/package_config", + "sha256": "07097d7ae60d40b34ce8daabdce318ecc168b7d1", + "url": "https://dart.googlesource.com/package_config.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pool", + "sha256": "bf27900420ba382b6e5c0484ab3c79daad703dcd", + "url": "https://dart.googlesource.com/pool.git" + }, + { + "kind": "git", + "path": "third_party/pkg/protobuf", + "sha256": "b7dd58cdbd879beee4c3fbf8ee80fce8e97bad26", + "url": "https://dart.googlesource.com/protobuf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub", + "sha256": "58de642dc1d07601f6eb2b4ecd94555c0210106b", + "url": "https://dart.googlesource.com/pub.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub_semver", + "sha256": "960f91309e325ae037e5f1434acb77b83a12d91e", + "url": "https://dart.googlesource.com/pub_semver.git" + }, + { + "kind": "git", + "path": "third_party/pkg/shelf", + "sha256": "2b5b683e78f5cc84e479a43297fd7b5489d7db02", + "url": "https://dart.googlesource.com/shelf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_maps", + "sha256": "e5e9d343302acf7df2145316ae4e56026c550989", + "url": "https://dart.googlesource.com/source_maps.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_span", + "sha256": "e6a34591b7f7880c7ca0fcb95b858ccf7f8be304", + "url": "https://dart.googlesource.com/source_span.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sse", + "sha256": "b573a1e9a61f5f3e2198becfa3f4f2e8decd1e90", + "url": "https://dart.googlesource.com/sse.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stack_trace", + "sha256": "5fe4cfea7f0d8e67b7d5738d2e1c64a18b5ba450", + "url": "https://dart.googlesource.com/stack_trace.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stream_channel", + "sha256": "31a3aba8a78a78b266fbf7474f19cd4ba9ca562e", + "url": "https://dart.googlesource.com/stream_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/string_scanner", + "sha256": "69212690d491603a511904a7a84cd502f34bf7a9", + "url": "https://dart.googlesource.com/string_scanner.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sync_http", + "sha256": "47e6b264a209d0d806cfe9cdad8b6c69ce231986", + "url": "https://dart.googlesource.com/sync_http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tar", + "sha256": "5a1ea943e70cdf3fa5e1102cdbb9418bd9b4b81a", + "url": "https://dart.googlesource.com/external/github.com/simolus3/tar.git" + }, + { + "kind": "git", + "path": "third_party/pkg/term_glyph", + "sha256": "52677db71a2c6b6d0018ebbe5ed7552dbae1248f", + "url": "https://dart.googlesource.com/term_glyph.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test", + "sha256": "f364fc8291d668d85c702a5b9f9a4f2e5c1ade0e", + "url": "https://dart.googlesource.com/test.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_descriptor", + "sha256": "92fa0c551267b38e4b27c9f74976ae4cd96d8b1e", + "url": "https://dart.googlesource.com/test_descriptor.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_reflective_loader", + "sha256": "9e35c9e00b8b6299e9295c0f29617af39276717d", + "url": "https://dart.googlesource.com/test_reflective_loader.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tools", + "sha256": "b412ba4550bb634caf3c1064b7ebb671cd5e9247", + "url": "https://dart.googlesource.com/tools.git" + }, + { + "kind": "git", + "path": "third_party/pkg/vector_math", + "sha256": "bd4b574b2a457a3955d223694f1a979a0c0f38c9", + "url": "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/watcher", + "sha256": "7f3b3a3ea49ba7e21fff240ce8ee616d62d32956", + "url": "https://dart.googlesource.com/watcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web", + "sha256": "af5de5e8548060c0795713ee7129ba6d5ff9f1b2", + "url": "https://dart.googlesource.com/web.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web_socket_channel", + "sha256": "a937243563e8ee75d11fb23610297d4f6e5cb2b9", + "url": "https://dart.googlesource.com/web_socket_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdev", + "sha256": "e72f365a4408dce73bc023e624adc6a9a72dd7a2", + "url": "https://dart.googlesource.com/webdev.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdriver", + "sha256": "d83d6a3cbaab152ff9b99b29382d1f48b5d5ba23", + "url": "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webkit_inspection_protocol", + "sha256": "effa75205516757795683d527c3dea9546eb0c32", + "url": "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml", + "sha256": "0406507fb719b0c8787896475734747fa35f2b78", + "url": "https://dart.googlesource.com/yaml.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml_edit", + "sha256": "fbdc70acc164af187772e013a2e1364cd05b88dc", + "url": "https://dart.googlesource.com/yaml_edit.git" + }, + { + "kind": "git", + "path": "third_party/ply", + "sha256": "604b32590ffad5cbb82e4afef1d305512d06ae93", + "url": "https://chromium.googlesource.com/chromium/src/third_party/ply.git" + }, + { + "kind": "git", + "path": "third_party/protobuf", + "sha256": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", + "url": "https://fuchsia.googlesource.com/third_party/protobuf" + }, + { + "kind": "git", + "path": "third_party/zlib", + "sha256": "108fa50cda23ed4a712a098d058dccbbfd248206", + "url": "https://chromium.googlesource.com/chromium/src/third_party/zlib.git" + }, + { + "kind": "tar.gz", + "path": "third_party/devtools/devtools_shared", + "sha256": "fa71f07006dfdf3f226ec76db95a4bad156820c081452cc99d18a4f291001bee", + "url": "https://pub.dev/api/archives/devtools_shared-11.2.0.tar.gz" + } + ], + "dependencies": [ + "*:native/dart@3.7.0-224.0.dev", + "*:native/gn", + "*:native/libc++", + "*:native/llvm-ar", + "*:native/llvm-nm", + "*:native/llvm-strip", + "*:native/make", + "*:native/ninja", + "*:native/python@3.11.13", + "*:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:ln -s $(which gn) buildtools/gn", + "*:mkdir -p buildtools/ninja", + "*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:mkdir -p tools/sdks/dart-sdk/bin", + "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:echo 3.7.0-232.0.dev > sdk/version", + "*:mkdir -p third_party/devtools/web", + "*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:python3 ./tools/build.py --mode=product create_sdk", + "*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + ] + } +} \ No newline at end of file diff --git a/packages/native/dart@3.7.0-27.0.dev.json b/packages/native/dart@3.7.0-27.0.dev.json new file mode 100644 index 0000000..dae6691 --- /dev/null +++ b/packages/native/dart@3.7.0-27.0.dev.json @@ -0,0 +1,549 @@ +{ + "package": "native/dart@3.7.0-27.0.dev", + "version": "3.7.0-27.0.dev", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "7fce3544047c41018b8c00b4453c0262f463dd74", + "url": "https://dart.googlesource.com/sdk.git" + }, + { + "kind": "git", + "path": "build/secondary/third_party/protobuf", + "sha256": "ca669f79945418f6229e4fef89b666b2a88cbb10", + "url": "https://fuchsia.googlesource.com/protobuf-gn" + }, + { + "kind": "git", + "path": "tests/co19/src", + "sha256": "dd66678fea1d11bc6295a688ed5f8e726034f762", + "url": "https://dart.googlesource.com/co19" + }, + { + "kind": "git", + "path": "third_party/WebCore", + "sha256": "bcb10901266c884e7b3740abc597ab95373ab55c", + "url": "https://dart.googlesource.com/webcore.git" + }, + { + "kind": "git", + "path": "third_party/binaryen/src", + "sha256": "93883fde36ac158fd415dcd6dbd387dcfd928d3c", + "url": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl", + "sha256": "fef055e8d2749b82c79c8f043be1cbe5e8e4b40c", + "url": "https://dart.googlesource.com/boringssl_gen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl/src", + "sha256": "2db0eb3f96a5756298dcd7f9319e56a98585bd10", + "url": "https://boringssl.googlesource.com/boringssl.git" + }, + { + "kind": "git", + "path": "third_party/cpu_features/src", + "sha256": "936b9ab5515dead115606559502e3864958f7f6e", + "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" + }, + { + "kind": "git", + "path": "third_party/emsdk", + "sha256": "e41b8c68a248da5f18ebd03bd0420953945d52ff", + "url": "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git" + }, + { + "kind": "git", + "path": "third_party/icu", + "sha256": "43953f57b037778a1b8005564afabe214834f7bd", + "url": "https://chromium.googlesource.com/chromium/deps/icu.git" + }, + { + "kind": "git", + "path": "third_party/jinja2", + "sha256": "2222b31554f03e62600cd7e383376a7c187967a1", + "url": "https://chromium.googlesource.com/chromium/src/third_party/jinja2.git" + }, + { + "kind": "git", + "path": "third_party/libcxx", + "sha256": "44079a4cc04cdeffb9cfe8067bfb3c276fb2bab0", + "url": "https://llvm.googlesource.com/llvm-project/libcxx" + }, + { + "kind": "git", + "path": "third_party/libcxxabi", + "sha256": "2ce528fb5e0f92e57c97ec3ff53b75359d33af12", + "url": "https://llvm.googlesource.com/llvm-project/libcxxabi" + }, + { + "kind": "git", + "path": "third_party/markupsafe", + "sha256": "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", + "url": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe.git" + }, + { + "kind": "git", + "path": "third_party/mdn/browser-compat-data/src", + "sha256": "ac8cae697014da1ff7124fba33b0b4245cc6cd1b", + "url": "https://chromium.googlesource.com/external/github.com/mdn/browser-compat-data" + }, + { + "kind": "git", + "path": "third_party/perfetto", + "sha256": "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b", + "url": "https://android.googlesource.com/platform/external/perfetto" + }, + { + "kind": "git", + "path": "third_party/pkg/args", + "sha256": "09c0fca1785c9df39288a48f767994eed80bed40", + "url": "https://dart.googlesource.com/args.git" + }, + { + "kind": "git", + "path": "third_party/pkg/async", + "sha256": "5f70a996f673d625e3502597084653686c3e754c", + "url": "https://dart.googlesource.com/async.git" + }, + { + "kind": "git", + "path": "third_party/pkg/bazel_worker", + "sha256": "aa3cc9e826350b960e0c5a67e6065bcedba8b0ac", + "url": "https://dart.googlesource.com/bazel_worker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/benchmark_harness", + "sha256": "44f125ae1d045aa3de09fe88a8dd70cb7352d563", + "url": "https://dart.googlesource.com/benchmark_harness.git" + }, + { + "kind": "git", + "path": "third_party/pkg/boolean_selector", + "sha256": "d6c7c36ae1111f11cc24306d71d3ab2deea8fa68", + "url": "https://dart.googlesource.com/boolean_selector.git" + }, + { + "kind": "git", + "path": "third_party/pkg/browser_launcher", + "sha256": "e5fc5d488eb5038bfec2a6690c72ab8dd353e101", + "url": "https://dart.googlesource.com/browser_launcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/cli_util", + "sha256": "c36b3941e38092d6d6f87ac27d9e88f153d3ac38", + "url": "https://dart.googlesource.com/cli_util.git" + }, + { + "kind": "git", + "path": "third_party/pkg/clock", + "sha256": "7956d60042f4ea979c4554d43eeb57d087627869", + "url": "https://dart.googlesource.com/clock.git" + }, + { + "kind": "git", + "path": "third_party/pkg/collection", + "sha256": "887b826b50f48d6a9cd2c0684aa353e8e3a0fad0", + "url": "https://dart.googlesource.com/collection.git" + }, + { + "kind": "git", + "path": "third_party/pkg/convert", + "sha256": "d361833e117cb2438d2a2a6d0b0acb28ff0910fb", + "url": "https://dart.googlesource.com/convert.git" + }, + { + "kind": "git", + "path": "third_party/pkg/crypto", + "sha256": "3d26ef4cf22d4b218ba30e616544ad3cf52f64a1", + "url": "https://dart.googlesource.com/crypto.git" + }, + { + "kind": "git", + "path": "third_party/pkg/csslib", + "sha256": "a3700b05bbcc42782e8a7024790dbf019d89c249", + "url": "https://dart.googlesource.com/csslib.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dart_style", + "sha256": "5d35f4d829ffb8532d345d95d3e9504ae6cd839e", + "url": "https://dart.googlesource.com/dart_style.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dartdoc", + "sha256": "80c6f18f34b387d4b9ce89ddd2e3049093335f9d", + "url": "https://dart.googlesource.com/dartdoc.git" + }, + { + "kind": "git", + "path": "third_party/pkg/ecosystem", + "sha256": "2d58550f9e3fd8ecbc3b2e4444095fcb204a66c6", + "url": "https://dart.googlesource.com/ecosystem.git" + }, + { + "kind": "git", + "path": "third_party/pkg/file", + "sha256": "6842feaef1c4e06239bd30f8d3ef722838b1c97e", + "url": "https://dart.googlesource.com/external/github.com/google/file.dart" + }, + { + "kind": "git", + "path": "third_party/pkg/fixnum", + "sha256": "83293b8ed86ccd574a94fcf4a2da43f31c1b43e0", + "url": "https://dart.googlesource.com/fixnum.git" + }, + { + "kind": "git", + "path": "third_party/pkg/glob", + "sha256": "00a9c82d31c01ae88ec9ae4021d842e9b832aa52", + "url": "https://dart.googlesource.com/glob.git" + }, + { + "kind": "git", + "path": "third_party/pkg/html", + "sha256": "6d3bc86cf2ab530ef3fa5f84b5980dc318a02af4", + "url": "https://dart.googlesource.com/html.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http", + "sha256": "f59cd79e1322c6272481e4f2ccfa9afcb37a6525", + "url": "https://dart.googlesource.com/http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http_multi_server", + "sha256": "e7515b5896b83d522189802a1e14e103e19426c0", + "url": "https://dart.googlesource.com/http_multi_server.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http_parser", + "sha256": "23d775898ee90be9daf3297e298a8869bc755d84", + "url": "https://dart.googlesource.com/http_parser.git" + }, + { + "kind": "git", + "path": "third_party/pkg/intl", + "sha256": "5d65e3808ce40e6282e40881492607df4e35669f", + "url": "https://dart.googlesource.com/intl.git" + }, + { + "kind": "git", + "path": "third_party/pkg/json_rpc_2", + "sha256": "c9b616bded8cdb5bfdc836ba7648afa6aba40062", + "url": "https://dart.googlesource.com/json_rpc_2.git" + }, + { + "kind": "git", + "path": "third_party/pkg/leak_tracker", + "sha256": "f5620600a5ce1c44f65ddaa02001e200b096e14c", + "url": "https://dart.googlesource.com/leak_tracker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/lints", + "sha256": "5016d63c889936b2100520f999591d0492d9afe3", + "url": "https://dart.googlesource.com/lints.git" + }, + { + "kind": "git", + "path": "third_party/pkg/logging", + "sha256": "6fa056098ceca03d399bff64592822b2ae5dee6e", + "url": "https://dart.googlesource.com/logging.git" + }, + { + "kind": "git", + "path": "third_party/pkg/markdown", + "sha256": "d53feae0760a4f0aae5ffdfb12d8e6acccf14b40", + "url": "https://dart.googlesource.com/markdown.git" + }, + { + "kind": "git", + "path": "third_party/pkg/matcher", + "sha256": "31f13583630e093731c8cf2b843c14196d748c5c", + "url": "https://dart.googlesource.com/matcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/mockito", + "sha256": "57d484f9b8e7f6a504966a901174358a42fa932a", + "url": "https://dart.googlesource.com/mockito.git" + }, + { + "kind": "git", + "path": "third_party/pkg/native", + "sha256": "659511886501bcce638c3966590df04984909ef0", + "url": "https://dart.googlesource.com/native.git" + }, + { + "kind": "git", + "path": "third_party/pkg/package_config", + "sha256": "bafff8e90be25e1985f7e3ee40ea1d22571a93e6", + "url": "https://dart.googlesource.com/package_config.git" + }, + { + "kind": "git", + "path": "third_party/pkg/path", + "sha256": "e969f42ed112dd702a9453beb9df6c12ae2d3805", + "url": "https://dart.googlesource.com/path.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pool", + "sha256": "7bfc71b39742753a88688e56e55a828a2f5dc0bf", + "url": "https://dart.googlesource.com/pool.git" + }, + { + "kind": "git", + "path": "third_party/pkg/protobuf", + "sha256": "ccf104dbc36929c0f8708285d5f3a8fae206343e", + "url": "https://dart.googlesource.com/protobuf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub", + "sha256": "1efd3f5e274e153637d99698b0ee454f6f2550ab", + "url": "https://dart.googlesource.com/pub.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub_semver", + "sha256": "8cce9d00431b6653026cdfcf6cf8548078c56f02", + "url": "https://dart.googlesource.com/pub_semver.git" + }, + { + "kind": "git", + "path": "third_party/pkg/shelf", + "sha256": "f5600534e3e49ebed02e1e14ec82553958d86f36", + "url": "https://dart.googlesource.com/shelf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_maps", + "sha256": "17695e81d9ad129d20effd3d5c4f1cfa03f5add8", + "url": "https://dart.googlesource.com/source_maps.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_span", + "sha256": "ec100b7f12e9d36d2cdb3c369fefde736de4a550", + "url": "https://dart.googlesource.com/source_span.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sse", + "sha256": "af2c5c572a8da6d2f7551b80d75121f2a38a4c79", + "url": "https://dart.googlesource.com/sse.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stack_trace", + "sha256": "115bcd9591d251dab7a5ad518655c2124a1cc525", + "url": "https://dart.googlesource.com/stack_trace.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stream_channel", + "sha256": "f4407168b275fcde9187baefd7dbce76d0992825", + "url": "https://dart.googlesource.com/stream_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/string_scanner", + "sha256": "084b201c54b168aced178fff41fce71e3869ae42", + "url": "https://dart.googlesource.com/string_scanner.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sync_http", + "sha256": "91c0dd5ef9a008f0277aadcfd83036f82e572d09", + "url": "https://dart.googlesource.com/sync_http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tar", + "sha256": "5a1ea943e70cdf3fa5e1102cdbb9418bd9b4b81a", + "url": "https://dart.googlesource.com/external/github.com/simolus3/tar.git" + }, + { + "kind": "git", + "path": "third_party/pkg/term_glyph", + "sha256": "19d8c08a4e81122639129c62049896021910c932", + "url": "https://dart.googlesource.com/term_glyph.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test", + "sha256": "8e8a83607d90a7a6813fa378b2d1962a2fc0d44b", + "url": "https://dart.googlesource.com/test.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_descriptor", + "sha256": "a3db1efe3dc725dcae9ee61647d3bfc19b3231ac", + "url": "https://dart.googlesource.com/test_descriptor.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_process", + "sha256": "52ee3f5ab70ed965bb7122c1d499081fbccd0bde", + "url": "https://dart.googlesource.com/test_process.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_reflective_loader", + "sha256": "598af2f503955020af0eaa82558d574a03934078", + "url": "https://dart.googlesource.com/test_reflective_loader.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tools", + "sha256": "f882de9ba86712003728d4663e1b73a620d352b1", + "url": "https://dart.googlesource.com/tools.git" + }, + { + "kind": "git", + "path": "third_party/pkg/typed_data", + "sha256": "6abfafdcf661cd8a814619d7e2a3e99edb3a3862", + "url": "https://dart.googlesource.com/typed_data.git" + }, + { + "kind": "git", + "path": "third_party/pkg/vector_math", + "sha256": "2cfbe2c115a57b368ccbc3c89ebd38a06764d3d1", + "url": "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/watcher", + "sha256": "3b850778ad0b62db3aa2cfe48832870c2461db30", + "url": "https://dart.googlesource.com/watcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web", + "sha256": "8478cd27d574249eca3d41f9135458dfda2762c8", + "url": "https://dart.googlesource.com/web.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web_socket_channel", + "sha256": "40aa29f1d2167467f5934d755891a8beb62a1239", + "url": "https://dart.googlesource.com/web_socket_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdev", + "sha256": "5f30c560dc4e3df341356c43ec1a766ee6b74a7c", + "url": "https://dart.googlesource.com/webdev.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdriver", + "sha256": "accfed557c005c87df56ffb626458f87da9f2125", + "url": "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webkit_inspection_protocol", + "sha256": "b459c427b74bf5e0919a083a97a167fb74d8bff1", + "url": "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml", + "sha256": "e773005ab84e1b4d24132b0a687be7f9a3bfda15", + "url": "https://dart.googlesource.com/yaml.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml_edit", + "sha256": "35f4248c7bbba289b3899fa55486e2f31ef1a8c5", + "url": "https://dart.googlesource.com/yaml_edit.git" + }, + { + "kind": "git", + "path": "third_party/ply", + "sha256": "604b32590ffad5cbb82e4afef1d305512d06ae93", + "url": "https://chromium.googlesource.com/chromium/src/third_party/ply.git" + }, + { + "kind": "git", + "path": "third_party/protobuf", + "sha256": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", + "url": "https://fuchsia.googlesource.com/third_party/protobuf" + }, + { + "kind": "git", + "path": "third_party/zlib", + "sha256": "108fa50cda23ed4a712a098d058dccbbfd248206", + "url": "https://chromium.googlesource.com/chromium/src/third_party/zlib.git" + }, + { + "kind": "tar.gz", + "path": "third_party/devtools/devtools_shared", + "sha256": "fa71f07006dfdf3f226ec76db95a4bad156820c081452cc99d18a4f291001bee", + "url": "https://pub.dev/api/archives/devtools_shared-11.2.0.tar.gz" + } + ], + "dependencies": [ + "*:native/dart@3.6.0-2.0.dev", + "*:native/gn", + "*:native/libc++", + "*:native/llvm-ar", + "*:native/llvm-nm", + "*:native/llvm-strip", + "*:native/make", + "*:native/ninja", + "*:native/python@3.11.13", + "*:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:ln -s $(which gn) buildtools/gn", + "*:mkdir -p buildtools/ninja", + "*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:mkdir -p tools/sdks/dart-sdk/bin", + "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:echo 3.7.0-27.0.dev > sdk/version", + "*:mkdir -p third_party/devtools/web", + "*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:python3 ./tools/build.py --mode=product create_sdk", + "*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + ] + } +} \ No newline at end of file diff --git a/packages/native/dart@3.7.0.json b/packages/native/dart@3.7.0.json new file mode 100644 index 0000000..a3e75ca --- /dev/null +++ b/packages/native/dart@3.7.0.json @@ -0,0 +1,405 @@ +{ + "package": "native/dart@3.7.0", + "version": "3.7.0", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "a8bfb132c5f7b9555d13ea79eaf0eaa77825824d", + "url": "https://dart.googlesource.com/sdk.git" + }, + { + "kind": "git", + "path": "build/secondary/third_party/protobuf", + "sha256": "ca669f79945418f6229e4fef89b666b2a88cbb10", + "url": "https://fuchsia.googlesource.com/protobuf-gn" + }, + { + "kind": "git", + "path": "tests/co19/src", + "sha256": "2424cfed7eedf53a122f8bfdbb6319692f726ec8", + "url": "https://dart.googlesource.com/co19" + }, + { + "kind": "git", + "path": "third_party/WebCore", + "sha256": "bcb10901266c884e7b3740abc597ab95373ab55c", + "url": "https://dart.googlesource.com/webcore.git" + }, + { + "kind": "git", + "path": "third_party/binaryen/src", + "sha256": "87f9dac127b387715d8d96ac7ec8fd469d8c2dab", + "url": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl", + "sha256": "7322fc15cc065d8d2957fccce6b62a509dc4d641", + "url": "https://dart.googlesource.com/boringssl_gen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl/src", + "sha256": "822902749a5956bba09c7e9e451104e8a74f02c5", + "url": "https://boringssl.googlesource.com/boringssl.git" + }, + { + "kind": "git", + "path": "third_party/cpu_features/src", + "sha256": "936b9ab5515dead115606559502e3864958f7f6e", + "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" + }, + { + "kind": "git", + "path": "third_party/emsdk", + "sha256": "e41b8c68a248da5f18ebd03bd0420953945d52ff", + "url": "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git" + }, + { + "kind": "git", + "path": "third_party/icu", + "sha256": "43953f57b037778a1b8005564afabe214834f7bd", + "url": "https://chromium.googlesource.com/chromium/deps/icu.git" + }, + { + "kind": "git", + "path": "third_party/jinja2", + "sha256": "2222b31554f03e62600cd7e383376a7c187967a1", + "url": "https://chromium.googlesource.com/chromium/src/third_party/jinja2.git" + }, + { + "kind": "git", + "path": "third_party/libcxx", + "sha256": "44079a4cc04cdeffb9cfe8067bfb3c276fb2bab0", + "url": "https://llvm.googlesource.com/llvm-project/libcxx" + }, + { + "kind": "git", + "path": "third_party/libcxxabi", + "sha256": "2ce528fb5e0f92e57c97ec3ff53b75359d33af12", + "url": "https://llvm.googlesource.com/llvm-project/libcxxabi" + }, + { + "kind": "git", + "path": "third_party/markupsafe", + "sha256": "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", + "url": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe.git" + }, + { + "kind": "git", + "path": "third_party/mdn/browser-compat-data/src", + "sha256": "ac8cae697014da1ff7124fba33b0b4245cc6cd1b", + "url": "https://chromium.googlesource.com/external/github.com/mdn/browser-compat-data" + }, + { + "kind": "git", + "path": "third_party/perfetto", + "sha256": "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b", + "url": "https://android.googlesource.com/platform/external/perfetto" + }, + { + "kind": "git", + "path": "third_party/pkg/core", + "sha256": "7a71ad6b9170e09d5cbe39f3fccdee648659f1e7", + "url": "https://dart.googlesource.com/core.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dart_style", + "sha256": "21de99ec0ff8ace4d946a746fb427fffd6afa535", + "url": "https://dart.googlesource.com/dart_style.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dartdoc", + "sha256": "c7f11603effa88ddacabfd555993f322fca8b3fe", + "url": "https://dart.googlesource.com/dartdoc.git" + }, + { + "kind": "git", + "path": "third_party/pkg/ecosystem", + "sha256": "efe4ee4af6ac2e4c90aa525fae213b65c97295a9", + "url": "https://dart.googlesource.com/ecosystem.git" + }, + { + "kind": "git", + "path": "third_party/pkg/glob", + "sha256": "eee18d1a577d5f965f6afbbd251798e065dced43", + "url": "https://dart.googlesource.com/glob.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http", + "sha256": "6ecd13a88b82c2fdc8a555f218bafb0ad0370f51", + "url": "https://dart.googlesource.com/http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/intl", + "sha256": "5d65e3808ce40e6282e40881492607df4e35669f", + "url": "https://dart.googlesource.com/intl.git" + }, + { + "kind": "git", + "path": "third_party/pkg/leak_tracker", + "sha256": "f5620600a5ce1c44f65ddaa02001e200b096e14c", + "url": "https://dart.googlesource.com/leak_tracker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/markdown", + "sha256": "19aaded4300d24bedcbf52ade792b203ddf030b0", + "url": "https://dart.googlesource.com/markdown.git" + }, + { + "kind": "git", + "path": "third_party/pkg/native", + "sha256": "14368a80bae9e3f381a2e59c91405338d82451ee", + "url": "https://dart.googlesource.com/native.git" + }, + { + "kind": "git", + "path": "third_party/pkg/package_config", + "sha256": "07097d7ae60d40b34ce8daabdce318ecc168b7d1", + "url": "https://dart.googlesource.com/package_config.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pool", + "sha256": "bf27900420ba382b6e5c0484ab3c79daad703dcd", + "url": "https://dart.googlesource.com/pool.git" + }, + { + "kind": "git", + "path": "third_party/pkg/protobuf", + "sha256": "b7dd58cdbd879beee4c3fbf8ee80fce8e97bad26", + "url": "https://dart.googlesource.com/protobuf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub", + "sha256": "58de642dc1d07601f6eb2b4ecd94555c0210106b", + "url": "https://dart.googlesource.com/pub.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub_semver", + "sha256": "960f91309e325ae037e5f1434acb77b83a12d91e", + "url": "https://dart.googlesource.com/pub_semver.git" + }, + { + "kind": "git", + "path": "third_party/pkg/shelf", + "sha256": "2b5b683e78f5cc84e479a43297fd7b5489d7db02", + "url": "https://dart.googlesource.com/shelf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_maps", + "sha256": "e5e9d343302acf7df2145316ae4e56026c550989", + "url": "https://dart.googlesource.com/source_maps.git" + }, + { + "kind": "git", + "path": "third_party/pkg/source_span", + "sha256": "e6a34591b7f7880c7ca0fcb95b858ccf7f8be304", + "url": "https://dart.googlesource.com/source_span.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sse", + "sha256": "b573a1e9a61f5f3e2198becfa3f4f2e8decd1e90", + "url": "https://dart.googlesource.com/sse.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stack_trace", + "sha256": "5fe4cfea7f0d8e67b7d5738d2e1c64a18b5ba450", + "url": "https://dart.googlesource.com/stack_trace.git" + }, + { + "kind": "git", + "path": "third_party/pkg/stream_channel", + "sha256": "31a3aba8a78a78b266fbf7474f19cd4ba9ca562e", + "url": "https://dart.googlesource.com/stream_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/string_scanner", + "sha256": "69212690d491603a511904a7a84cd502f34bf7a9", + "url": "https://dart.googlesource.com/string_scanner.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sync_http", + "sha256": "47e6b264a209d0d806cfe9cdad8b6c69ce231986", + "url": "https://dart.googlesource.com/sync_http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tar", + "sha256": "5a1ea943e70cdf3fa5e1102cdbb9418bd9b4b81a", + "url": "https://dart.googlesource.com/external/github.com/simolus3/tar.git" + }, + { + "kind": "git", + "path": "third_party/pkg/term_glyph", + "sha256": "52677db71a2c6b6d0018ebbe5ed7552dbae1248f", + "url": "https://dart.googlesource.com/term_glyph.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test", + "sha256": "f364fc8291d668d85c702a5b9f9a4f2e5c1ade0e", + "url": "https://dart.googlesource.com/test.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_descriptor", + "sha256": "92fa0c551267b38e4b27c9f74976ae4cd96d8b1e", + "url": "https://dart.googlesource.com/test_descriptor.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test_reflective_loader", + "sha256": "9e35c9e00b8b6299e9295c0f29617af39276717d", + "url": "https://dart.googlesource.com/test_reflective_loader.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tools", + "sha256": "b412ba4550bb634caf3c1064b7ebb671cd5e9247", + "url": "https://dart.googlesource.com/tools.git" + }, + { + "kind": "git", + "path": "third_party/pkg/vector_math", + "sha256": "bd4b574b2a457a3955d223694f1a979a0c0f38c9", + "url": "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/watcher", + "sha256": "7f3b3a3ea49ba7e21fff240ce8ee616d62d32956", + "url": "https://dart.googlesource.com/watcher.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web", + "sha256": "af5de5e8548060c0795713ee7129ba6d5ff9f1b2", + "url": "https://dart.googlesource.com/web.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web_socket_channel", + "sha256": "a937243563e8ee75d11fb23610297d4f6e5cb2b9", + "url": "https://dart.googlesource.com/web_socket_channel.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdev", + "sha256": "e72f365a4408dce73bc023e624adc6a9a72dd7a2", + "url": "https://dart.googlesource.com/webdev.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdriver", + "sha256": "d83d6a3cbaab152ff9b99b29382d1f48b5d5ba23", + "url": "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webkit_inspection_protocol", + "sha256": "effa75205516757795683d527c3dea9546eb0c32", + "url": "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml", + "sha256": "0406507fb719b0c8787896475734747fa35f2b78", + "url": "https://dart.googlesource.com/yaml.git" + }, + { + "kind": "git", + "path": "third_party/pkg/yaml_edit", + "sha256": "fbdc70acc164af187772e013a2e1364cd05b88dc", + "url": "https://dart.googlesource.com/yaml_edit.git" + }, + { + "kind": "git", + "path": "third_party/ply", + "sha256": "604b32590ffad5cbb82e4afef1d305512d06ae93", + "url": "https://chromium.googlesource.com/chromium/src/third_party/ply.git" + }, + { + "kind": "git", + "path": "third_party/protobuf", + "sha256": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", + "url": "https://fuchsia.googlesource.com/third_party/protobuf" + }, + { + "kind": "git", + "path": "third_party/zlib", + "sha256": "108fa50cda23ed4a712a098d058dccbbfd248206", + "url": "https://chromium.googlesource.com/chromium/src/third_party/zlib.git" + }, + { + "kind": "tar.gz", + "path": "third_party/devtools/devtools_shared", + "sha256": "fa71f07006dfdf3f226ec76db95a4bad156820c081452cc99d18a4f291001bee", + "url": "https://pub.dev/api/archives/devtools_shared-11.2.0.tar.gz" + } + ], + "dependencies": [ + "*:native/dart@3.7.0-232.0.dev", + "*:native/gn", + "*:native/libc++", + "*:native/llvm-ar", + "*:native/llvm-nm", + "*:native/llvm-strip", + "*:native/make", + "*:native/ninja", + "*:native/python@3.11.13", + "*:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:ln -s $(which gn) buildtools/gn", + "*:mkdir -p buildtools/ninja", + "*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:mkdir -p tools/sdks/dart-sdk/bin", + "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:echo 3.7.0 > sdk/version", + "*:mkdir -p third_party/devtools/web", + "*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:python3 ./tools/build.py --mode=product create_sdk", + "*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + ] + } +} \ No newline at end of file diff --git a/packages/native/dart@3.8.0-171.0.dev.json b/packages/native/dart@3.8.0-171.0.dev.json new file mode 100644 index 0000000..1c3e6ae --- /dev/null +++ b/packages/native/dart@3.8.0-171.0.dev.json @@ -0,0 +1,297 @@ +{ + "package": "native/dart@3.8.0-171.0.dev", + "version": "3.8.0-171.0.dev", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "2d5dfe32cf2e6b3c3d6b396885502a5402b4fc72", + "url": "https://dart.googlesource.com/sdk.git" + }, + { + "kind": "git", + "path": "build/secondary/third_party/protobuf", + "sha256": "ca669f79945418f6229e4fef89b666b2a88cbb10", + "url": "https://fuchsia.googlesource.com/protobuf-gn" + }, + { + "kind": "git", + "path": "tests/co19/src", + "sha256": "d285ef839784162ca988a9d149522249d0c00c5c", + "url": "https://dart.googlesource.com/co19" + }, + { + "kind": "git", + "path": "third_party/WebCore", + "sha256": "bcb10901266c884e7b3740abc597ab95373ab55c", + "url": "https://dart.googlesource.com/webcore.git" + }, + { + "kind": "git", + "path": "third_party/binaryen/src", + "sha256": "3f6831c0bd147ae1ae0ab1d9187d37bce7cca38b", + "url": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl", + "sha256": "7322fc15cc065d8d2957fccce6b62a509dc4d641", + "url": "https://dart.googlesource.com/boringssl_gen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl/src", + "sha256": "5e73d0302c50cc38324686f937a75233d13ae4f0", + "url": "https://boringssl.googlesource.com/boringssl.git" + }, + { + "kind": "git", + "path": "third_party/cpu_features/src", + "sha256": "936b9ab5515dead115606559502e3864958f7f6e", + "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" + }, + { + "kind": "git", + "path": "third_party/emsdk", + "sha256": "e41b8c68a248da5f18ebd03bd0420953945d52ff", + "url": "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git" + }, + { + "kind": "git", + "path": "third_party/icu", + "sha256": "43953f57b037778a1b8005564afabe214834f7bd", + "url": "https://chromium.googlesource.com/chromium/deps/icu.git" + }, + { + "kind": "git", + "path": "third_party/jinja2", + "sha256": "2222b31554f03e62600cd7e383376a7c187967a1", + "url": "https://chromium.googlesource.com/chromium/src/third_party/jinja2.git" + }, + { + "kind": "git", + "path": "third_party/libcxx", + "sha256": "44079a4cc04cdeffb9cfe8067bfb3c276fb2bab0", + "url": "https://llvm.googlesource.com/llvm-project/libcxx" + }, + { + "kind": "git", + "path": "third_party/libcxxabi", + "sha256": "2ce528fb5e0f92e57c97ec3ff53b75359d33af12", + "url": "https://llvm.googlesource.com/llvm-project/libcxxabi" + }, + { + "kind": "git", + "path": "third_party/markupsafe", + "sha256": "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", + "url": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe.git" + }, + { + "kind": "git", + "path": "third_party/mdn/browser-compat-data/src", + "sha256": "ac8cae697014da1ff7124fba33b0b4245cc6cd1b", + "url": "https://chromium.googlesource.com/external/github.com/mdn/browser-compat-data" + }, + { + "kind": "git", + "path": "third_party/perfetto", + "sha256": "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b", + "url": "https://android.googlesource.com/platform/external/perfetto" + }, + { + "kind": "git", + "path": "third_party/pkg/core", + "sha256": "15c7fe9958b95998ba2f5a4ad1beab66b9d815fb", + "url": "https://dart.googlesource.com/core.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dart_style", + "sha256": "21de99ec0ff8ace4d946a746fb427fffd6afa535", + "url": "https://dart.googlesource.com/dart_style.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dartdoc", + "sha256": "34561d6ebf5fa89ca1f93b981de96a75ff573562", + "url": "https://dart.googlesource.com/dartdoc.git" + }, + { + "kind": "git", + "path": "third_party/pkg/ecosystem", + "sha256": "06bbbffc1dae26164ee0a9603d0a30af620b84d0", + "url": "https://dart.googlesource.com/ecosystem.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http", + "sha256": "900da9fe7d576caa4882053cf26d3a70bd3106e0", + "url": "https://dart.googlesource.com/http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/i18n", + "sha256": "06a664f7beaab1f8eaf82a60b722982c03c8657c", + "url": "https://dart.googlesource.com/i18n.git" + }, + { + "kind": "git", + "path": "third_party/pkg/leak_tracker", + "sha256": "f5620600a5ce1c44f65ddaa02001e200b096e14c", + "url": "https://dart.googlesource.com/leak_tracker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/native", + "sha256": "f08677646f9e5e9a8a233fed1ec324a003609260", + "url": "https://dart.googlesource.com/native.git" + }, + { + "kind": "git", + "path": "third_party/pkg/protobuf", + "sha256": "610943a3bed70c1c2079af5fca02462df10d223f", + "url": "https://dart.googlesource.com/protobuf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub", + "sha256": "639536aa78f7382b4a948669bfdc283f830b2ae9", + "url": "https://dart.googlesource.com/pub.git" + }, + { + "kind": "git", + "path": "third_party/pkg/shelf", + "sha256": "b39e61196ce555dc1d3a0c3da695228fa6bdebb8", + "url": "https://dart.googlesource.com/shelf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sync_http", + "sha256": "47e6b264a209d0d806cfe9cdad8b6c69ce231986", + "url": "https://dart.googlesource.com/sync_http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tar", + "sha256": "5a1ea943e70cdf3fa5e1102cdbb9418bd9b4b81a", + "url": "https://dart.googlesource.com/external/github.com/simolus3/tar.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test", + "sha256": "a833663e56b6182f8372180f5c95d1c01b531150", + "url": "https://dart.googlesource.com/test.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tools", + "sha256": "b51f39d01f5a4af33428a0189cd62595c01e23de", + "url": "https://dart.googlesource.com/tools.git" + }, + { + "kind": "git", + "path": "third_party/pkg/vector_math", + "sha256": "533c513771d35312dcd0f69e662d729979882df1", + "url": "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web", + "sha256": "c2d5f63e9ea4c1409d6e159fc7b92dbcf4dc0d4d", + "url": "https://dart.googlesource.com/web.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdev", + "sha256": "f4856867de3e7b6ea6778dbc47cff44b12f9eed2", + "url": "https://dart.googlesource.com/webdev.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdriver", + "sha256": "b4fd8592fb9b1405fea3979cab88bcd857f2addb", + "url": "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webkit_inspection_protocol", + "sha256": "effa75205516757795683d527c3dea9546eb0c32", + "url": "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git" + }, + { + "kind": "git", + "path": "third_party/ply", + "sha256": "604b32590ffad5cbb82e4afef1d305512d06ae93", + "url": "https://chromium.googlesource.com/chromium/src/third_party/ply.git" + }, + { + "kind": "git", + "path": "third_party/protobuf", + "sha256": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", + "url": "https://fuchsia.googlesource.com/third_party/protobuf" + }, + { + "kind": "git", + "path": "third_party/zlib", + "sha256": "108fa50cda23ed4a712a098d058dccbbfd248206", + "url": "https://chromium.googlesource.com/chromium/src/third_party/zlib.git" + }, + { + "kind": "tar.gz", + "path": "third_party/devtools/devtools_shared", + "sha256": "fa71f07006dfdf3f226ec76db95a4bad156820c081452cc99d18a4f291001bee", + "url": "https://pub.dev/api/archives/devtools_shared-11.2.0.tar.gz" + } + ], + "dependencies": [ + "*:native/dart@3.7.0", + "*:native/gn", + "*:native/libc++", + "*:native/llvm-ar", + "*:native/llvm-nm", + "*:native/llvm-strip", + "*:native/make", + "*:native/ninja", + "*:native/python@3.11.13", + "*:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:ln -s $(which gn) buildtools/gn", + "*:mkdir -p buildtools/ninja", + "*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:mkdir -p tools/sdks/dart-sdk/bin", + "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:echo 3.8.0-171.0.dev > sdk/version", + "*:mkdir -p third_party/devtools/web", + "*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:python3 ./tools/build.py --mode=product create_sdk", + "*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + ] + } +} \ No newline at end of file diff --git a/packages/native/dart@3.8.0-237.0.dev.json b/packages/native/dart@3.8.0-237.0.dev.json new file mode 100644 index 0000000..d0ab01c --- /dev/null +++ b/packages/native/dart@3.8.0-237.0.dev.json @@ -0,0 +1,297 @@ +{ + "package": "native/dart@3.8.0-237.0.dev", + "version": "3.8.0-237.0.dev", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "4a4ff9fba9ca67e9406743a24a3c47ad64d9e9c2", + "url": "https://dart.googlesource.com/sdk.git" + }, + { + "kind": "git", + "path": "build/secondary/third_party/protobuf", + "sha256": "ca669f79945418f6229e4fef89b666b2a88cbb10", + "url": "https://fuchsia.googlesource.com/protobuf-gn" + }, + { + "kind": "git", + "path": "tests/co19/src", + "sha256": "7e4321a5cb2d8fcf9c3c818e62ef6d6f4fd87626", + "url": "https://dart.googlesource.com/co19" + }, + { + "kind": "git", + "path": "third_party/WebCore", + "sha256": "bcb10901266c884e7b3740abc597ab95373ab55c", + "url": "https://dart.googlesource.com/webcore.git" + }, + { + "kind": "git", + "path": "third_party/binaryen/src", + "sha256": "b4bdcc33115b31758c56b83bb9de4642c411a042", + "url": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl", + "sha256": "7322fc15cc065d8d2957fccce6b62a509dc4d641", + "url": "https://dart.googlesource.com/boringssl_gen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl/src", + "sha256": "02f0d8776ecd83a1c663db2eaba6283aa72cc5b8", + "url": "https://boringssl.googlesource.com/boringssl.git" + }, + { + "kind": "git", + "path": "third_party/cpu_features/src", + "sha256": "936b9ab5515dead115606559502e3864958f7f6e", + "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" + }, + { + "kind": "git", + "path": "third_party/emsdk", + "sha256": "e41b8c68a248da5f18ebd03bd0420953945d52ff", + "url": "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git" + }, + { + "kind": "git", + "path": "third_party/icu", + "sha256": "43953f57b037778a1b8005564afabe214834f7bd", + "url": "https://chromium.googlesource.com/chromium/deps/icu.git" + }, + { + "kind": "git", + "path": "third_party/jinja2", + "sha256": "2222b31554f03e62600cd7e383376a7c187967a1", + "url": "https://chromium.googlesource.com/chromium/src/third_party/jinja2.git" + }, + { + "kind": "git", + "path": "third_party/libcxx", + "sha256": "44079a4cc04cdeffb9cfe8067bfb3c276fb2bab0", + "url": "https://llvm.googlesource.com/llvm-project/libcxx" + }, + { + "kind": "git", + "path": "third_party/libcxxabi", + "sha256": "2ce528fb5e0f92e57c97ec3ff53b75359d33af12", + "url": "https://llvm.googlesource.com/llvm-project/libcxxabi" + }, + { + "kind": "git", + "path": "third_party/markupsafe", + "sha256": "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", + "url": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe.git" + }, + { + "kind": "git", + "path": "third_party/mdn/browser-compat-data/src", + "sha256": "ac8cae697014da1ff7124fba33b0b4245cc6cd1b", + "url": "https://chromium.googlesource.com/external/github.com/mdn/browser-compat-data" + }, + { + "kind": "git", + "path": "third_party/perfetto", + "sha256": "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b", + "url": "https://android.googlesource.com/platform/external/perfetto" + }, + { + "kind": "git", + "path": "third_party/pkg/core", + "sha256": "61e677100b06d56a1b3731ab1178ebf9102ecb1f", + "url": "https://dart.googlesource.com/core.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dart_style", + "sha256": "21de99ec0ff8ace4d946a746fb427fffd6afa535", + "url": "https://dart.googlesource.com/dart_style.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dartdoc", + "sha256": "d40067626b8c419e451897447e4dae74d25bcc37", + "url": "https://dart.googlesource.com/dartdoc.git" + }, + { + "kind": "git", + "path": "third_party/pkg/ecosystem", + "sha256": "23172636e60c52384b40e6bd1240d12c8e860122", + "url": "https://dart.googlesource.com/ecosystem.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http", + "sha256": "1b6e28d7e1c61f7b0f8561be7aee9c35b03de193", + "url": "https://dart.googlesource.com/http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/i18n", + "sha256": "d9cce0b6348b51872fb269e43ff8a43120fe191d", + "url": "https://dart.googlesource.com/i18n.git" + }, + { + "kind": "git", + "path": "third_party/pkg/leak_tracker", + "sha256": "f5620600a5ce1c44f65ddaa02001e200b096e14c", + "url": "https://dart.googlesource.com/leak_tracker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/native", + "sha256": "f1fa5be4b0d7449fa8fe4077113ac0413d2b16bf", + "url": "https://dart.googlesource.com/native.git" + }, + { + "kind": "git", + "path": "third_party/pkg/protobuf", + "sha256": "0bab78d9538e49d50023bab36159b15ff3c369eb", + "url": "https://dart.googlesource.com/protobuf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub", + "sha256": "b2c03b448a47fdd52800609b9222cd737be3a934", + "url": "https://dart.googlesource.com/pub.git" + }, + { + "kind": "git", + "path": "third_party/pkg/shelf", + "sha256": "2af8529640d10a247ebfa4e17e629a2ff5273656", + "url": "https://dart.googlesource.com/shelf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sync_http", + "sha256": "dc54465f07d9652875deeade643256dafa2fbc6c", + "url": "https://dart.googlesource.com/sync_http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tar", + "sha256": "5a1ea943e70cdf3fa5e1102cdbb9418bd9b4b81a", + "url": "https://dart.googlesource.com/external/github.com/simolus3/tar.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test", + "sha256": "9e349d0e9f6c477584ea320f7ba2f49f761d84ac", + "url": "https://dart.googlesource.com/test.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tools", + "sha256": "62bc13bc086a66ce9a6a3e64865c82d17a1379b3", + "url": "https://dart.googlesource.com/tools.git" + }, + { + "kind": "git", + "path": "third_party/pkg/vector_math", + "sha256": "f08d7d2652e9ecf7d8f8605d9983335174511c95", + "url": "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web", + "sha256": "5a39fdc396ae40344308975140343c23b6863261", + "url": "https://dart.googlesource.com/web.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdev", + "sha256": "302b6db6125901fd183390e339aff7490cdde3d0", + "url": "https://dart.googlesource.com/webdev.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdriver", + "sha256": "f52afbf72895ae980bd4129d877305c2182d6cbc", + "url": "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webkit_inspection_protocol", + "sha256": "effa75205516757795683d527c3dea9546eb0c32", + "url": "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git" + }, + { + "kind": "git", + "path": "third_party/ply", + "sha256": "604b32590ffad5cbb82e4afef1d305512d06ae93", + "url": "https://chromium.googlesource.com/chromium/src/third_party/ply.git" + }, + { + "kind": "git", + "path": "third_party/protobuf", + "sha256": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", + "url": "https://fuchsia.googlesource.com/third_party/protobuf" + }, + { + "kind": "git", + "path": "third_party/zlib", + "sha256": "108fa50cda23ed4a712a098d058dccbbfd248206", + "url": "https://chromium.googlesource.com/chromium/src/third_party/zlib.git" + }, + { + "kind": "tar.gz", + "path": "third_party/devtools/devtools_shared", + "sha256": "fa71f07006dfdf3f226ec76db95a4bad156820c081452cc99d18a4f291001bee", + "url": "https://pub.dev/api/archives/devtools_shared-11.2.0.tar.gz" + } + ], + "dependencies": [ + "*:native/dart@3.8.0-171.0.dev", + "*:native/gn", + "*:native/libc++", + "*:native/llvm-ar", + "*:native/llvm-nm", + "*:native/llvm-strip", + "*:native/make", + "*:native/ninja", + "*:native/python@3.11.13", + "*:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:ln -s $(which gn) buildtools/gn", + "*:mkdir -p buildtools/ninja", + "*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:mkdir -p tools/sdks/dart-sdk/bin", + "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:echo 3.8.0-237.0.dev > sdk/version", + "*:mkdir -p third_party/devtools/web", + "*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:python3 ./tools/build.py --mode=product create_sdk", + "*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + ] + } +} \ No newline at end of file diff --git a/packages/native/dart@3.9.0-27.0.dev.json b/packages/native/dart@3.9.0-27.0.dev.json new file mode 100644 index 0000000..3af143e --- /dev/null +++ b/packages/native/dart@3.9.0-27.0.dev.json @@ -0,0 +1,303 @@ +{ + "package": "native/dart@3.9.0-27.0.dev", + "version": "3.9.0-27.0.dev", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "4bb26ad346b166d759773e01ffc8247893b9681e", + "url": "https://dart.googlesource.com/sdk.git" + }, + { + "kind": "git", + "path": "build/secondary/third_party/protobuf", + "sha256": "ca669f79945418f6229e4fef89b666b2a88cbb10", + "url": "https://fuchsia.googlesource.com/protobuf-gn" + }, + { + "kind": "git", + "path": "tests/co19/src", + "sha256": "4ebc13c27af77129889a11fd1f95cff04dccd8f9", + "url": "https://dart.googlesource.com/co19" + }, + { + "kind": "git", + "path": "third_party/WebCore", + "sha256": "bcb10901266c884e7b3740abc597ab95373ab55c", + "url": "https://dart.googlesource.com/webcore.git" + }, + { + "kind": "git", + "path": "third_party/binaryen/src", + "sha256": "b4bdcc33115b31758c56b83bb9de4642c411a042", + "url": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl", + "sha256": "7322fc15cc065d8d2957fccce6b62a509dc4d641", + "url": "https://dart.googlesource.com/boringssl_gen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl/src", + "sha256": "ef839bf397fb4ecdb66ef2679a08ac7b3563c50b", + "url": "https://boringssl.googlesource.com/boringssl.git" + }, + { + "kind": "git", + "path": "third_party/cpu_features/src", + "sha256": "936b9ab5515dead115606559502e3864958f7f6e", + "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" + }, + { + "kind": "git", + "path": "third_party/emsdk", + "sha256": "e41b8c68a248da5f18ebd03bd0420953945d52ff", + "url": "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git" + }, + { + "kind": "git", + "path": "third_party/icu", + "sha256": "43953f57b037778a1b8005564afabe214834f7bd", + "url": "https://chromium.googlesource.com/chromium/deps/icu.git" + }, + { + "kind": "git", + "path": "third_party/jinja2", + "sha256": "2222b31554f03e62600cd7e383376a7c187967a1", + "url": "https://chromium.googlesource.com/chromium/src/third_party/jinja2.git" + }, + { + "kind": "git", + "path": "third_party/libc", + "sha256": "5af39a19a1ad51ce93972cdab206dcd3ff9b6afa", + "url": "https://llvm.googlesource.com/llvm-project/libc" + }, + { + "kind": "git", + "path": "third_party/libcxx", + "sha256": "bd557f6f764d1e40b62528a13b124ce740624f8f", + "url": "https://llvm.googlesource.com/llvm-project/libcxx" + }, + { + "kind": "git", + "path": "third_party/libcxxabi", + "sha256": "a4dda1589d37a7e4b4f7a81ebad01b1083f2e726", + "url": "https://llvm.googlesource.com/llvm-project/libcxxabi" + }, + { + "kind": "git", + "path": "third_party/markupsafe", + "sha256": "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", + "url": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe.git" + }, + { + "kind": "git", + "path": "third_party/mdn/browser-compat-data/src", + "sha256": "ac8cae697014da1ff7124fba33b0b4245cc6cd1b", + "url": "https://chromium.googlesource.com/external/github.com/mdn/browser-compat-data" + }, + { + "kind": "git", + "path": "third_party/perfetto", + "sha256": "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b", + "url": "https://android.googlesource.com/platform/external/perfetto" + }, + { + "kind": "git", + "path": "third_party/pkg/core", + "sha256": "635dfa32c261ba078438b74de397f2207904ca78", + "url": "https://dart.googlesource.com/core.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dart_style", + "sha256": "100db45075abdd66fd8788b205243e90ff0595df", + "url": "https://dart.googlesource.com/dart_style.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dartdoc", + "sha256": "62aefbb788baf5b73b2d704d66d9735a7ca56a69", + "url": "https://dart.googlesource.com/dartdoc.git" + }, + { + "kind": "git", + "path": "third_party/pkg/ecosystem", + "sha256": "815d4ba2e7d11f8695a26f6cbe1262e3b8ff8d0d", + "url": "https://dart.googlesource.com/ecosystem.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http", + "sha256": "e4ddd3e3d3a3d0ba7c9e48506e9d2e8620af30a8", + "url": "https://dart.googlesource.com/http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/i18n", + "sha256": "de1943629469719bf34269bf90fcdbe9334a73f3", + "url": "https://dart.googlesource.com/i18n.git" + }, + { + "kind": "git", + "path": "third_party/pkg/leak_tracker", + "sha256": "f5620600a5ce1c44f65ddaa02001e200b096e14c", + "url": "https://dart.googlesource.com/leak_tracker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/native", + "sha256": "49a8912734162e5dc6ad009fc080fe54e9985470", + "url": "https://dart.googlesource.com/native.git" + }, + { + "kind": "git", + "path": "third_party/pkg/protobuf", + "sha256": "1aaa332af75c61ff32739821f7ec52186ff18d4c", + "url": "https://dart.googlesource.com/protobuf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub", + "sha256": "b2c03b448a47fdd52800609b9222cd737be3a934", + "url": "https://dart.googlesource.com/pub.git" + }, + { + "kind": "git", + "path": "third_party/pkg/shelf", + "sha256": "082d3ac2d13a98700d8148e8fad8f3e12a6fd0e1", + "url": "https://dart.googlesource.com/shelf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sync_http", + "sha256": "dc54465f07d9652875deeade643256dafa2fbc6c", + "url": "https://dart.googlesource.com/sync_http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tar", + "sha256": "5a1ea943e70cdf3fa5e1102cdbb9418bd9b4b81a", + "url": "https://dart.googlesource.com/external/github.com/simolus3/tar.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test", + "sha256": "84eba115521b74e848f096572a2d3e4d3607e8fa", + "url": "https://dart.googlesource.com/test.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tools", + "sha256": "4a284152c263a5d3429d5ab6acfdb70eca2ebcfb", + "url": "https://dart.googlesource.com/tools.git" + }, + { + "kind": "git", + "path": "third_party/pkg/vector_math", + "sha256": "dc9d379674f50bb5559e99ee3a9f64729df9d3c8", + "url": "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web", + "sha256": "5a39fdc396ae40344308975140343c23b6863261", + "url": "https://dart.googlesource.com/web.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdev", + "sha256": "5bf833d0c277a384ab8bbfc10e7d3d71b8022560", + "url": "https://dart.googlesource.com/webdev.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdriver", + "sha256": "f52afbf72895ae980bd4129d877305c2182d6cbc", + "url": "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webkit_inspection_protocol", + "sha256": "effa75205516757795683d527c3dea9546eb0c32", + "url": "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git" + }, + { + "kind": "git", + "path": "third_party/ply", + "sha256": "604b32590ffad5cbb82e4afef1d305512d06ae93", + "url": "https://chromium.googlesource.com/chromium/src/third_party/ply.git" + }, + { + "kind": "git", + "path": "third_party/protobuf", + "sha256": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", + "url": "https://fuchsia.googlesource.com/third_party/protobuf" + }, + { + "kind": "git", + "path": "third_party/zlib", + "sha256": "108fa50cda23ed4a712a098d058dccbbfd248206", + "url": "https://chromium.googlesource.com/chromium/src/third_party/zlib.git" + }, + { + "kind": "tar.gz", + "path": "third_party/devtools/devtools_shared", + "sha256": "fa71f07006dfdf3f226ec76db95a4bad156820c081452cc99d18a4f291001bee", + "url": "https://pub.dev/api/archives/devtools_shared-11.2.0.tar.gz" + } + ], + "dependencies": [ + "*:native/dart@3.9.0-3.0.dev", + "*:native/gn", + "*:native/libc++", + "*:native/llvm-ar", + "*:native/llvm-nm", + "*:native/llvm-strip", + "*:native/make", + "*:native/ninja", + "*:native/python@3.11.13", + "*:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:ln -s $(which gn) buildtools/gn", + "*:mkdir -p buildtools/ninja", + "*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:mkdir -p tools/sdks/dart-sdk/bin", + "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:echo 3.9.0-27.0.dev > sdk/version", + "*:mkdir -p third_party/devtools/web", + "*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:python3 ./tools/build.py --mode=product create_sdk", + "*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + ] + } +} \ No newline at end of file diff --git a/packages/native/dart@3.9.0-3.0.dev.json b/packages/native/dart@3.9.0-3.0.dev.json new file mode 100644 index 0000000..1b9667e --- /dev/null +++ b/packages/native/dart@3.9.0-3.0.dev.json @@ -0,0 +1,303 @@ +{ + "package": "native/dart@3.9.0-3.0.dev", + "version": "3.9.0-3.0.dev", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "5a8921e0042c662ea2adbac35ea051dec20a5341", + "url": "https://dart.googlesource.com/sdk.git" + }, + { + "kind": "git", + "path": "build/secondary/third_party/protobuf", + "sha256": "ca669f79945418f6229e4fef89b666b2a88cbb10", + "url": "https://fuchsia.googlesource.com/protobuf-gn" + }, + { + "kind": "git", + "path": "tests/co19/src", + "sha256": "2c7f9a6a379cfc49b3e9019d1f616d7ec9edd766", + "url": "https://dart.googlesource.com/co19" + }, + { + "kind": "git", + "path": "third_party/WebCore", + "sha256": "bcb10901266c884e7b3740abc597ab95373ab55c", + "url": "https://dart.googlesource.com/webcore.git" + }, + { + "kind": "git", + "path": "third_party/binaryen/src", + "sha256": "b4bdcc33115b31758c56b83bb9de4642c411a042", + "url": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl", + "sha256": "7322fc15cc065d8d2957fccce6b62a509dc4d641", + "url": "https://dart.googlesource.com/boringssl_gen.git" + }, + { + "kind": "git", + "path": "third_party/boringssl/src", + "sha256": "d5440dd2c2c500ac2d3bba4afec47a054b4d99ae", + "url": "https://boringssl.googlesource.com/boringssl.git" + }, + { + "kind": "git", + "path": "third_party/cpu_features/src", + "sha256": "936b9ab5515dead115606559502e3864958f7f6e", + "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git" + }, + { + "kind": "git", + "path": "third_party/emsdk", + "sha256": "e41b8c68a248da5f18ebd03bd0420953945d52ff", + "url": "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git" + }, + { + "kind": "git", + "path": "third_party/icu", + "sha256": "43953f57b037778a1b8005564afabe214834f7bd", + "url": "https://chromium.googlesource.com/chromium/deps/icu.git" + }, + { + "kind": "git", + "path": "third_party/jinja2", + "sha256": "2222b31554f03e62600cd7e383376a7c187967a1", + "url": "https://chromium.googlesource.com/chromium/src/third_party/jinja2.git" + }, + { + "kind": "git", + "path": "third_party/libc", + "sha256": "5af39a19a1ad51ce93972cdab206dcd3ff9b6afa", + "url": "https://llvm.googlesource.com/llvm-project/libc" + }, + { + "kind": "git", + "path": "third_party/libcxx", + "sha256": "bd557f6f764d1e40b62528a13b124ce740624f8f", + "url": "https://llvm.googlesource.com/llvm-project/libcxx" + }, + { + "kind": "git", + "path": "third_party/libcxxabi", + "sha256": "a4dda1589d37a7e4b4f7a81ebad01b1083f2e726", + "url": "https://llvm.googlesource.com/llvm-project/libcxxabi" + }, + { + "kind": "git", + "path": "third_party/markupsafe", + "sha256": "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", + "url": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe.git" + }, + { + "kind": "git", + "path": "third_party/mdn/browser-compat-data/src", + "sha256": "ac8cae697014da1ff7124fba33b0b4245cc6cd1b", + "url": "https://chromium.googlesource.com/external/github.com/mdn/browser-compat-data" + }, + { + "kind": "git", + "path": "third_party/perfetto", + "sha256": "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b", + "url": "https://android.googlesource.com/platform/external/perfetto" + }, + { + "kind": "git", + "path": "third_party/pkg/core", + "sha256": "635dfa32c261ba078438b74de397f2207904ca78", + "url": "https://dart.googlesource.com/core.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dart_style", + "sha256": "21de99ec0ff8ace4d946a746fb427fffd6afa535", + "url": "https://dart.googlesource.com/dart_style.git" + }, + { + "kind": "git", + "path": "third_party/pkg/dartdoc", + "sha256": "62aefbb788baf5b73b2d704d66d9735a7ca56a69", + "url": "https://dart.googlesource.com/dartdoc.git" + }, + { + "kind": "git", + "path": "third_party/pkg/ecosystem", + "sha256": "7f6f1c1d53173307bde1aa4f4ee851d260cc7e69", + "url": "https://dart.googlesource.com/ecosystem.git" + }, + { + "kind": "git", + "path": "third_party/pkg/http", + "sha256": "e4ddd3e3d3a3d0ba7c9e48506e9d2e8620af30a8", + "url": "https://dart.googlesource.com/http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/i18n", + "sha256": "de1943629469719bf34269bf90fcdbe9334a73f3", + "url": "https://dart.googlesource.com/i18n.git" + }, + { + "kind": "git", + "path": "third_party/pkg/leak_tracker", + "sha256": "f5620600a5ce1c44f65ddaa02001e200b096e14c", + "url": "https://dart.googlesource.com/leak_tracker.git" + }, + { + "kind": "git", + "path": "third_party/pkg/native", + "sha256": "4e71c281e4e3c262b28b7ab5b3306e4029b78b1c", + "url": "https://dart.googlesource.com/native.git" + }, + { + "kind": "git", + "path": "third_party/pkg/protobuf", + "sha256": "1aaa332af75c61ff32739821f7ec52186ff18d4c", + "url": "https://dart.googlesource.com/protobuf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/pub", + "sha256": "b2c03b448a47fdd52800609b9222cd737be3a934", + "url": "https://dart.googlesource.com/pub.git" + }, + { + "kind": "git", + "path": "third_party/pkg/shelf", + "sha256": "082d3ac2d13a98700d8148e8fad8f3e12a6fd0e1", + "url": "https://dart.googlesource.com/shelf.git" + }, + { + "kind": "git", + "path": "third_party/pkg/sync_http", + "sha256": "dc54465f07d9652875deeade643256dafa2fbc6c", + "url": "https://dart.googlesource.com/sync_http.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tar", + "sha256": "5a1ea943e70cdf3fa5e1102cdbb9418bd9b4b81a", + "url": "https://dart.googlesource.com/external/github.com/simolus3/tar.git" + }, + { + "kind": "git", + "path": "third_party/pkg/test", + "sha256": "8643fbf375330cd1099cdc7434306532b4bcaaf1", + "url": "https://dart.googlesource.com/test.git" + }, + { + "kind": "git", + "path": "third_party/pkg/tools", + "sha256": "d74f9e13dc02736f12ae57d5984c57024113cf5a", + "url": "https://dart.googlesource.com/tools.git" + }, + { + "kind": "git", + "path": "third_party/pkg/vector_math", + "sha256": "f08d7d2652e9ecf7d8f8605d9983335174511c95", + "url": "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/web", + "sha256": "5a39fdc396ae40344308975140343c23b6863261", + "url": "https://dart.googlesource.com/web.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdev", + "sha256": "c8b1cfa9d12c680b612eb1ed7a6b9f99fcce3ac3", + "url": "https://dart.googlesource.com/webdev.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webdriver", + "sha256": "f52afbf72895ae980bd4129d877305c2182d6cbc", + "url": "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git" + }, + { + "kind": "git", + "path": "third_party/pkg/webkit_inspection_protocol", + "sha256": "effa75205516757795683d527c3dea9546eb0c32", + "url": "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git" + }, + { + "kind": "git", + "path": "third_party/ply", + "sha256": "604b32590ffad5cbb82e4afef1d305512d06ae93", + "url": "https://chromium.googlesource.com/chromium/src/third_party/ply.git" + }, + { + "kind": "git", + "path": "third_party/protobuf", + "sha256": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", + "url": "https://fuchsia.googlesource.com/third_party/protobuf" + }, + { + "kind": "git", + "path": "third_party/zlib", + "sha256": "108fa50cda23ed4a712a098d058dccbbfd248206", + "url": "https://chromium.googlesource.com/chromium/src/third_party/zlib.git" + }, + { + "kind": "tar.gz", + "path": "third_party/devtools/devtools_shared", + "sha256": "fa71f07006dfdf3f226ec76db95a4bad156820c081452cc99d18a4f291001bee", + "url": "https://pub.dev/api/archives/devtools_shared-11.2.0.tar.gz" + } + ], + "dependencies": [ + "*:native/dart@3.8.0-237.0.dev", + "*:native/gn", + "*:native/libc++", + "*:native/llvm-ar", + "*:native/llvm-nm", + "*:native/llvm-strip", + "*:native/make", + "*:native/ninja", + "*:native/python@3.11.13", + "*:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:ln -s $(which gn) buildtools/gn", + "*:mkdir -p buildtools/ninja", + "*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:mkdir -p tools/sdks/dart-sdk/bin", + "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:echo 3.9.0-3.0.dev > sdk/version", + "*:mkdir -p third_party/devtools/web", + "*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:python3 ./tools/build.py --mode=product create_sdk", + "*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + ] + } +} \ No newline at end of file diff --git a/packages/native/dart@3.9.4.json b/packages/native/dart@3.9.4.json index 9ce7d07..58a65cf 100644 --- a/packages/native/dart@3.9.4.json +++ b/packages/native/dart@3.9.4.json @@ -14,12 +14,6 @@ "sha256": "ca669f79945418f6229e4fef89b666b2a88cbb10", "url": "https://fuchsia.googlesource.com/protobuf-gn" }, - { - "kind": "git", - "path": "buildtools/clang_format/script", - "sha256": "bb994c6f067340c1135eb43eed84f4b33cfa7397", - "url": "https://chromium.googlesource.com/chromium/llvm-project/cfe/tools/clang-format.git" - }, { "kind": "git", "path": "tests/co19/src", @@ -256,7 +250,7 @@ } ], "dependencies": [ - "*:native/dart-bin@3.9.0-100.2.beta", + "*:native/dart@3.9.0-27.0.dev", "*:native/gn", "*:native/libc++", "*:native/llvm-ar", @@ -296,11 +290,11 @@ "*:echo 3.9.4 > sdk/version", "*:mkdir -p third_party/devtools/web", "*:echo 'no devtools :(' > third_party/devtools/web/index.html", - "*:python3 ./tools/build.py --mode=product", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin $STAGING_DIR$PREFIX/native/lib $STAGING_DIR$PREFIX/native/include/", - "*:cp ./xcodebuild/ProductARM64/dart $STAGING_DIR$PREFIX/native/bin/ || true", - "*:cp -r runtime/ $STAGING_DIR$PREFIX/native/lib/", - "*:cp -r runtime/include/* $STAGING_DIR$PREFIX/native/include/", + "*:python3 ./tools/build.py --mode=product create_sdk", + "*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", "*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } diff --git a/packages/native/llvm@google@18.0.0git.json b/packages/native/llvm@google@18.0.0git.json new file mode 100644 index 0000000..52d2dfa --- /dev/null +++ b/packages/native/llvm@google@18.0.0git.json @@ -0,0 +1,41 @@ +{ + "package": "native/llvm@google@18.0.0git", + "version": "18.0.0git", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "c58bc24fcf678c55b0bf522be89eff070507a005", + "url": "https://android.googlesource.com/toolchain/llvm-project" + } + ], + "dependencies": [ + "*:native/cmake", + "*:native/ninja", + "*:native/python@3.11.13" + ], + "build": { + "env": [ + "*:config_opts=-DCMAKE_BUILD_TYPE=Release", + "*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:config_opts=$config_opts -DLLVM_ENABLE_PROJECTS='clang;lld;libc;openmp;pstl'", + "*:config_opts=$config_opts -DLLVM_ENABLE_RUNTIMES='compiler-rt'", + "*:config_opts=$config_opts -DLLVM_ENABLE_BINDINGS=OFF", + "*:config_opts=$config_opts -DCOMPILER_RT_BAREMETAL_BUILD=ON", + "*:config_opts=$config_opts -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON", + "*:config_opts=$config_opts -DCOMPILER_RT_BUILD_SANITIZERS=OFF", + "*:config_opts=$config_opts -DCOMPILER_RT_BUILD_XRAY=OFF", + "*:config_opts=$config_opts -DCOMPILER_RT_BUILD_LIBFUZZER=OFF", + "*:config_opts=$config_opts -DCOMPILER_RT_BUILD_PROFILE=OFF", + "*:config_opts=$config_opts -DCOMPILER_RT_BUILD_BUILTINS=ON", + "*:config_opts=$config_opts -DCLANG_ENABLE_BOOTSTRAP=ON" + ], + "steps": [ + "*:cmake -S llvm -B build -G Ninja $config_opts", + "*:sed -i.bak 's/(state->ControlWord)/(state->ControlWord \\& 0xFFFFFFFF)/g' ./libc/src/__support/FPUtil/aarch64/fenv_darwin_impl.h", + "*:sed -i.bak 's/(state->StatusWord)/(state->StatusWord \\& 0xFFFFFFFF)/g' ./libc/src/__support/FPUtil/aarch64/fenv_darwin_impl.h", + "*:cd build && ninja -j $NUM_CORES", + "*:cd build && DESTDIR=$STAGING_DIR ninja install" + ] + } +} \ No newline at end of file diff --git a/sources.json b/sources.json index bead492..3d00243 100644 --- a/sources.json +++ b/sources.json @@ -152,14 +152,12 @@ }, "https://chromium.googlesource.com/chromium/src/third_party/zlib.git": { "refs": [ - "14dd4c4455602c9b71a1a89b5cafd1f4030d2e3f", "108fa50cda23ed4a712a098d058dccbbfd248206", "470d3a2ee4ef721688ce6961bc865a99fcb64070" ] }, "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git": { "refs": [ - "9784f012848a7eb321c2037bdb363dfe0eab8bc9", "d844d2e77b402d562ade8cf8fd96759b587bf09d", "654ee6e2504f11fb0e982a2cf276bafa750f694b", "93883fde36ac158fd415dcd6dbd387dcfd928d3c", @@ -186,14 +184,12 @@ }, "https://dart.googlesource.com/args.git": { "refs": [ - "7dc7fe0430709229ccc87c3eaae729aeffe10c56", "6a5a2e6b1f0020b873c7ffbdd36a784c4f9ee300", "09c0fca1785c9df39288a48f767994eed80bed40" ] }, "https://dart.googlesource.com/async.git": { "refs": [ - "1556660ca5159d84bf28239825a25dca58f1fde3", "a00437017231ebb6c3e3e8ecdfc9dd03522ab828", "d7c0cd5a458308ab5e5a0d0deebdce32c4391ec6", "c0d81f8699682d01d657a9bf827107d11904a247", @@ -202,21 +198,18 @@ }, "https://dart.googlesource.com/bazel_worker.git": { "refs": [ - "8619b92baa9959e55b9fc49d2afcd6dda2ec1c10", "c76d7c86381a6ed594641ba03b55c65b84ee11a6", "aa3cc9e826350b960e0c5a67e6065bcedba8b0ac" ] }, "https://dart.googlesource.com/benchmark_harness.git": { "refs": [ - "c8a0c8b1883dc16c7558a43cee1c3f4f9a163418", "f6ef33dc88d7cbc9e4a8a087f1e652eb0d6cc254", "44f125ae1d045aa3de09fe88a8dd70cb7352d563" ] }, "https://dart.googlesource.com/boolean_selector.git": { "refs": [ - "be88351e521648d381b96350bfe62c34abacee6d", "62f82f6a333b419b457e62cadc17b7a9c0545873", "c5468f44fd9ca0ea3435e1a0a84ff9b6fac38261", "d6c7c36ae1111f11cc24306d71d3ab2deea8fa68" @@ -231,7 +224,6 @@ }, "https://dart.googlesource.com/browser_launcher.git": { "refs": [ - "79562306c86e5c087359a31a60309c8d65a699d3", "7348ceae6508e5350771979c2951a54313303416", "60126904a26b761d29b4f2d76292ff3c089160de", "e5fc5d488eb5038bfec2a6690c72ab8dd353e101" @@ -239,7 +231,6 @@ }, "https://dart.googlesource.com/cli_util.git": { "refs": [ - "ffeb5d2869b44b28d1b9035b540d164af44f3f1c", "c37d5e14f50e72a268c1ad86149cecfa4b58c494", "64192706344d0598784bebe1abc4a9bfc2608de0", "c36b3941e38092d6d6f87ac27d9e88f153d3ac38" @@ -247,7 +238,6 @@ }, "https://dart.googlesource.com/clock.git": { "refs": [ - "daf0fadabc5b3dc8e6e71bf3fb27ef9c3b79df5c", "7cbf08e36a92f14f22132d255846610c1b065324", "ad428ea8b75fa0d7ba629791552d40478745c54a", "7956d60042f4ea979c4554d43eeb57d087627869" @@ -255,7 +245,6 @@ }, "https://dart.googlesource.com/co19": { "refs": [ - "6f34e53fa54396f17bcffcd307528f714a099e03", "831b22d5e496fe63a813ca1c1b64f533c2f9fa0c", "3a1b6f75c771d62e7150f2dd69595a98fd6930f4", "7b457e8d8c10361424beb7b432347f668c974439", @@ -271,14 +260,12 @@ }, "https://dart.googlesource.com/collection.git": { "refs": [ - "fc616ff8fd7b732c07b2b19e31b6601e59900ccf", "9354f386de3c57f5486b01ab4dfa1a2f033307d9", "887b826b50f48d6a9cd2c0684aa353e8e3a0fad0" ] }, "https://dart.googlesource.com/convert.git": { "refs": [ - "d4d6368cffb8f4f25522875ef8e1d5f7d158bbad", "0c9eab7d4656be97329c4970659afd53a78910e6", "9035cafefc1da4315f26058734d0c2a19d5ab56a", "d361833e117cb2438d2a2a6d0b0acb28ff0910fb" @@ -296,7 +283,6 @@ }, "https://dart.googlesource.com/crypto.git": { "refs": [ - "f059196bae4718187c9f421565f9cd1f8fb43898", "813e35e913d12e16de67ac57523cd0ff4b07c012", "1216790ba704a0ab194f9cd0da2d65e1767f3342", "3d26ef4cf22d4b218ba30e616544ad3cf52f64a1" @@ -304,7 +290,6 @@ }, "https://dart.googlesource.com/csslib.git": { "refs": [ - "62ae85e84590f61169fddbca650e91a57544834b", "23c314bb6b247a71348cfb0987ba0eb29574abb6", "b70fef222c8a98abca39c3f729ec34632089697e", "192d720f121792ab05ca157ea280edc7e0410e9c", @@ -323,7 +308,6 @@ }, "https://dart.googlesource.com/dartdoc.git": { "refs": [ - "b001a15069bfd7cfec5edf5b441a2f0a9b4223eb", "14d33d3a120ad3ce621bbcf0a545dc3adeccd7e7", "88df88c9278ec4ec31df818f3ae33d4f91c8cd64", "7e5da6090e6a48cebaee8789ca0fc396b34fd8a4", @@ -337,7 +321,6 @@ }, "https://dart.googlesource.com/ecosystem.git": { "refs": [ - "5a900ca68466efe8680d3500bc0a6172d07ef5a7", "8ada2ee303383cf62cace9b2a97e8a3cc983e5c1", "31148cd81bdb3c248fc30cd345ef49a978ed454c", "54ca01abe4b7b62419ee88814d3dc98df36ff8ff", @@ -358,14 +341,12 @@ }, "https://dart.googlesource.com/external/github.com/google/file.dart": { "refs": [ - "3aa06490bf34bddf04c7ea964a50c177a4ca0de7", "07cacaed6679a173e29176747e6ce0325742749f", "6842feaef1c4e06239bd30f8d3ef722838b1c97e" ] }, "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git": { "refs": [ - "7e705f734e94917e9a5347578e6e496f8db38ac6", "e7b11a234638bd5d76a05bae99d20b937637dfe8", "2cfbe2c115a57b368ccbc3c89ebd38a06764d3d1", "433fb6c829b18719fd0db4a703b607a26b7d81f4", @@ -378,7 +359,6 @@ }, "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git": { "refs": [ - "73a7ac8c0dcb0f84eae47e2133805295176aa972", "f85779edd7c9f66198d4391ed3631db1d97a5b11", "718e4c37d004fceb9856de980782c46bf9576df5", "d83d6a3cbaab152ff9b99b29382d1f48b5d5ba23", @@ -390,7 +370,6 @@ }, "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git": { "refs": [ - "153fea4fe5ac45bebf0c2e76bb3d76b0f1fcdaae", "5740cc91eaeb13a02007b77b128fccf4b056db6e", "32fffa53df3f54005c742ddf4f859fb585a6b254", "effa75205516757795683d527c3dea9546eb0c32", @@ -399,14 +378,12 @@ }, "https://dart.googlesource.com/external/github.com/simolus3/tar.git": { "refs": [ - "6150a0c88d9bd17e3e961593a9a7a9564866e8b4", "552a49d7595e444184d4f91e9afd533aa253a31d", "5a1ea943e70cdf3fa5e1102cdbb9418bd9b4b81a" ] }, "https://dart.googlesource.com/fixnum.git": { "refs": [ - "570b28adcfbfdd5b8a7230ea1d6ec0f9587493f1", "a8157d87f17d5184e210403f2ed63d354b854132", "6c19e60366ce3d5edfaed51a7c12c98e7977977e", "83293b8ed86ccd574a94fcf4a2da43f31c1b43e0" @@ -414,7 +391,6 @@ }, "https://dart.googlesource.com/glob.git": { "refs": [ - "379d60c7cc5c0e9fe7d0d45549ad0b1ca51396c8", "eaec6a448576048b748475d80bfac2795ad5a267", "6d3ba5ec02817e62d17ace040590bb81a3e1242f", "994191a107b99a1911a3ef52ca238cd9305c8d37", @@ -424,7 +400,6 @@ }, "https://dart.googlesource.com/html.git": { "refs": [ - "327e37a6a4dd46599737ee982f280d73a8f646f7", "3bc803d7e655491b243418f19300ef0c6112bcea", "0da420ca1e196cda54ede476d0d8d3ecf55375ef", "6d3bc86cf2ab530ef3fa5f84b5980dc318a02af4" @@ -432,7 +407,6 @@ }, "https://dart.googlesource.com/http.git": { "refs": [ - "5dfea721993fd22363a5800ab7a2f3aeecee25f5", "8c325b9ca33d878a86d69c5048a8e6e18379663c", "4d8e7ef73d6135a8cc9b5e53db1beb43977d44b0", "8d893851904d8cd292a66e39812b59aca2cc4d96", @@ -447,7 +421,6 @@ }, "https://dart.googlesource.com/http_multi_server.git": { "refs": [ - "ba9d07f3596b24718ddf45c9e071d40879cca565", "25941e260658efb324de857e6022f418faf9bdd1", "f6a748819139b8cbf513d5fc36b10676b0cb066f", "e7515b5896b83d522189802a1e14e103e19426c0" @@ -455,7 +428,6 @@ }, "https://dart.googlesource.com/http_parser.git": { "refs": [ - "84db8b029d9b51859a0bb4966859af009f9442e3", "71b4c2c448b333397d5ff3235825d8cea773291c", "9bf7bd981a39137da1e5d7fe64f4652b078c7aa9", "23d775898ee90be9daf3297e298a8869bc755d84" @@ -476,7 +448,6 @@ }, "https://dart.googlesource.com/json_rpc_2.git": { "refs": [ - "639857be892050159f5164c749d7947694976a4a", "5b1cbd679756700d5f319bf10a217da53e98ea52", "616937f6d3837e38a2a287653ddaf722de260702", "c9b616bded8cdb5bfdc836ba7648afa6aba40062" @@ -489,7 +460,6 @@ }, "https://dart.googlesource.com/lints.git": { "refs": [ - "ead770872e272e25a64315c120950ea8ad5b2509", "baaaa5616370243c3c8c6a9f67fb83d26bdac552", "f6b5d36485f6f067ac0f5a7193006ebe82ee6113", "e1d4794412aacd3bbb370956d44b9a10c3f892f3", @@ -498,7 +468,6 @@ }, "https://dart.googlesource.com/logging.git": { "refs": [ - "7a7bd5e31ddfe23e34d37ded82d6d0cd5706862c", "dbd682919708316e9a6d1e2fa472c9ad9225c2b4", "240ec33e23720091e0e5a029d569a3770ddccf1c", "6c3fb37fecb2e30415072f327b834a3e95517fa9", @@ -507,7 +476,6 @@ }, "https://dart.googlesource.com/markdown.git": { "refs": [ - "9c6b1afc3721571af37eaaefe043a6ae7637bd09", "3d8d7a8f14b74bb646bb6e4ae35e0bf2beb74154", "62424376d0b5fe35a2957b3caed4b75db010ba82", "4d5dbc659955973902f2585c54e94d453532db70", @@ -517,7 +485,6 @@ }, "https://dart.googlesource.com/matcher.git": { "refs": [ - "d954c8d979579b4b46427b0ea1d9c721117c191e", "0abd4054c47a923486a6c0c04b5c974ba13ad2da", "d6d573d0f8d65b36550ce62aad3ce6b5e987b642", "31f13583630e093731c8cf2b843c14196d748c5c" @@ -525,14 +492,12 @@ }, "https://dart.googlesource.com/mime.git": { "refs": [ - "9a168712d6db610c3822617c132daea72d4fd2b5", "4ca2f5edaafe21f462922d34db99486a44bb08b8", "11fec7d6df509a4efd554051cc27e3bf82df9c96" ] }, "https://dart.googlesource.com/mockito.git": { "refs": [ - "3ef744f8749864f2a036eba60c4203cc8f638949", "2302814df66e651b6710311366501523dbee2e11", "a7fdf7101fbd31132a59188a6057d21004345927", "57d484f9b8e7f6a504966a901174358a42fa932a" @@ -540,7 +505,6 @@ }, "https://dart.googlesource.com/native.git": { "refs": [ - "4fc6a333badace5d569bde4496462cc237dc3363", "fef40aebc3cf34654919e8a5785b6c50b3ea445c", "fcc783c1d2777555616dfc850f131878ea5d88a9", "028f89d4a59448f9ecda5bd3d4519e2d7c742072", @@ -555,7 +519,6 @@ }, "https://dart.googlesource.com/package_config.git": { "refs": [ - "3d90e6955ef19b7ce4f1b742a06a20ed4260700a", "903a0e528f91aef90821c8f5eaafbc1ae27198ab", "76f2f6c245451da1fa24d7bbb00251b909e729a5", "07097d7ae60d40b34ce8daabdce318ecc168b7d1", @@ -564,14 +527,12 @@ }, "https://dart.googlesource.com/path.git": { "refs": [ - "a7b696071bd83d3ee0a0f1b57ac94d6b1f05cac4", "04807b61c25f98f328b322ec511451f9f86f98bb", "e969f42ed112dd702a9453beb9df6c12ae2d3805" ] }, "https://dart.googlesource.com/pool.git": { "refs": [ - "c118f69d8a6441a8453bf7d455fd7c79d3ee1497", "88e463600c636a0d8cdb5dc306524ebf04b06baf", "832c5ab5eaee444354a8c796f7998bf744f169af", "924fb04353cec915d927f9f1aed88e2eda92b98a", @@ -582,7 +543,6 @@ }, "https://dart.googlesource.com/protobuf.git": { "refs": [ - "b7613581d847e1e36e76f0e36db3a412d8fea5b1", "ccf104dbc36929c0f8708285d5f3a8fae206343e", "da7279c56734cffed4deb1e3a6f93bdcefccf6b8", "b7dd58cdbd879beee4c3fbf8ee80fce8e97bad26", @@ -594,7 +554,6 @@ }, "https://dart.googlesource.com/pub.git": { "refs": [ - "79952b99861109c526f8fc6c513d1ac297c690d9", "ddc1c2fd2e2a7cd94a0b92ea033961a25f4ad517", "ea4a1c854690d3abceb92c8cc2c6454470f9d5a7", "30bfc439fedba1ee3daadcf542f1483479bc4909", @@ -607,7 +566,6 @@ }, "https://dart.googlesource.com/pub_semver.git": { "refs": [ - "3175ba0a58a96fb23f8d68b5f5c44d1a5b30cc16", "a9025f3cc23ebb0f86c0af8759d95306b9133ce0", "dfcad38866fb1e94e8ca91bff3dddd5189fb0794", "d9e5ee68a350fbf4319bd4dfcb895fc016337d3a", @@ -618,7 +576,6 @@ }, "https://dart.googlesource.com/sdk.git": { "refs": [ - "7c64e31f4c3eaa0bcfd29ce40459b74cf20a806d", "cf0d430bc6a507b3d54d4b5bfc91b308f0325178", "7d7fbb30e0ca19c76800b1ad388fa55d09037e66", "7e6469bd51d404916395a47b011d907d2c905121", @@ -634,7 +591,6 @@ }, "https://dart.googlesource.com/shelf.git": { "refs": [ - "1acbc673326e5b31280184744f2864a8f92c5b46", "4c54af6b6baa9404826d234385c1bf69575dfd47", "2536c15a562cb183dabbc628824a215663830325", "9f2dffecbe8f219146a077e401758602752d486a", @@ -647,14 +603,12 @@ }, "https://dart.googlesource.com/source_map_stack_trace.git": { "refs": [ - "c75649651d01826236e3ab7093d277a70756905a", "96a8213dacf7cd42aefb1311491a4169826f98d2", "741b6ceb4b6cdb8ff620664337d7ecc63ca52cc1" ] }, "https://dart.googlesource.com/source_maps.git": { "refs": [ - "55e92a4b0a8560d5b2b3bb7255249afdb8186ea6", "caa79c2011015759c6cf3299f299f5cccdf8bb61", "198d32bbde2f5736c04dfbab306a17096fd1648b", "e5e9d343302acf7df2145316ae4e56026c550989", @@ -663,7 +617,6 @@ }, "https://dart.googlesource.com/source_span.git": { "refs": [ - "21a403a75b6887fbd811fb53b74b08c2cef67ab6", "59a3903521dbf4c38c77df73669e73174a170327", "89520f3009e332ce2b6675f71dca166521c36cc4", "22a243eb50d926935a8a1300a49af6d2988c3ae6", @@ -673,7 +626,6 @@ }, "https://dart.googlesource.com/sse.git": { "refs": [ - "b53ba14de4fe9823432ebfbb4ec04f23a620ec50", "7dcde164d5bfe707441f206379ef33e7509e2aac", "52d042ff9ab2d0e5bc26805d74a03077a67861e1", "b97dc3ad9a58a454dc5ffe5b3ec814dadc389e32", @@ -683,7 +635,6 @@ }, "https://dart.googlesource.com/stack_trace.git": { "refs": [ - "155f12c51226d6372f6722f5e55c38ef39625006", "ab09060b82c936c38c04eb49c1154b83f6648349", "4fd3e2a2dc6611febf4cfb9197ebf9e60fc6a34d", "b660cfa444d46bcceb3a0eacbd6a2a7829da11de", @@ -693,7 +644,6 @@ }, "https://dart.googlesource.com/stream_channel.git": { "refs": [ - "e02a5ddef804f0d546a405ab3917fb27788acaef", "b41ff7a25395ace8b23e454e3d1a3459a71306ca", "28a65331aa2d66a5e953205aa462bcdb1e240a5b", "71fe6dd315e7f451466da80f7af2661cd28aaaea", @@ -703,7 +653,6 @@ }, "https://dart.googlesource.com/string_scanner.git": { "refs": [ - "a2bcdb575f6bb30b944b4f632ea95d8dc4f914bd", "7b37c1b3d1ca6b581792e6ba385f651573af4a45", "e1cab8f0538b50f6d7180598752cf5a7e07e74db", "0de03b5279a04aa05052ce306f90fca473c6fd1a", @@ -714,7 +663,6 @@ }, "https://dart.googlesource.com/sync_http.git": { "refs": [ - "b849559fedc7c5d19a68950f255b6edde6eec6ef", "7622bdd07501f3f279212e355325b7c84a2b0a08", "47e6b264a209d0d806cfe9cdad8b6c69ce231986", "91c0dd5ef9a008f0277aadcfd83036f82e572d09", @@ -724,7 +672,6 @@ }, "https://dart.googlesource.com/term_glyph.git": { "refs": [ - "85a4aa6bf25cd6ecaa5c56a1b259b2d95264a439", "c86e8171ee7e9f6fc8e775e0be755a603dd0b72d", "38a158f55006cf30942c928171ea601ee5e0308f", "9ed8ed96fdd84cb7b72ee1be3e86010969fa95d4", @@ -734,7 +681,6 @@ }, "https://dart.googlesource.com/test.git": { "refs": [ - "6a4e75a6283b1366ea21067f9ced0b6c87745d4a", "329c6dff4dfcb178ba6c7009cf1c1b9215b317aa", "3256c23cc753a184bb3bf27610a7c8410735e3ac", "20967732ea9dd30240a6429621ab2f82874bd9f0", @@ -749,7 +695,6 @@ }, "https://dart.googlesource.com/test_descriptor.git": { "refs": [ - "35f97afacb2b7fe627f6ed0bede722fd48980848", "b23d7ccb0f9882e161fb4dea75b2237bf428432b", "2f19400259e6ec6801a79dcbf038b235545ab400", "90743bc16bc00526a1b9a64f813614be9b2479d9", @@ -760,7 +705,6 @@ }, "https://dart.googlesource.com/test_process.git": { "refs": [ - "7fe39afbb6c444f256c1ec0eef008edebcd44644", "862eaf3b825f5e97b278d84a2afbe81b3e8a1683", "a7ca20b73f28d220e6478254082ea2b52f46dc97", "6223572ca16d7585d5f08d9281de6a5734e45150", @@ -770,7 +714,6 @@ }, "https://dart.googlesource.com/test_reflective_loader.git": { "refs": [ - "9862703a3d14848376c8efde271c88022fba91eb", "816942eaeeac30cc59d8699f1e94ad779cc53c06", "6e648863b39aab8d0204e769d25805eea9db0ac4", "faade6299d1823f0d062eb5e98f3b440ddcea7c6", @@ -780,7 +723,6 @@ }, "https://dart.googlesource.com/tools.git": { "refs": [ - "f611290b530123ee2f0a3fda7c440d85dd080a30", "4321aecf2cb618dceab5d90adf0cb2ef7207169c", "e660a68dce659311fb47735ab00365e26fca2fe3", "43a8582a85d2220b5f1ca8383d97587792085b36", @@ -796,21 +738,14 @@ }, "https://dart.googlesource.com/typed_data.git": { "refs": [ - "375efaa02a13dad0785cfbd9bdcb9f09aa8ef529", "d14f9654f7a5d6baa7dcc27691bd0fa56769fb67", "85299290551297a28202b6e7a177bb787f790ffd", "365468a74251c930a463daf5b8f13227e269111a", "6abfafdcf661cd8a814619d7e2a3e99edb3a3862" ] }, - "https://dart.googlesource.com/usage.git": { - "refs": [ - "67ecd7d1328347ec15cbf8d8a46918df75a66af8" - ] - }, "https://dart.googlesource.com/watcher.git": { "refs": [ - "21858a41da1482922e03ee65cdf2169d01d59a67", "c00fc2a6cd869cdebbc52e00af3d912d25745729", "0484625589d8512b36a7ad898a6cc6351d24c556", "bc44e6f6b85972e516c44b9ae6c042b4cbd7c72b", @@ -820,7 +755,6 @@ }, "https://dart.googlesource.com/web.git": { "refs": [ - "2f13cd55f938f71bcd16c831110e3a196967337f", "2fe754fb396cb9b87010f0318cfbfc5408346c48", "6b8a46561b82de9b20d77d9ac491844d303ca08f", "e4c4d8126466e28dc137890b8f999da59bdedddd", @@ -834,7 +768,6 @@ }, "https://dart.googlesource.com/web_socket_channel.git": { "refs": [ - "3db86bc0a09e1038a0fa418262c8a92211c5de69", "bf69990738f173c07e67cf6945551194bc8c2d92", "8e95ea75302180af075295f7dd7ffe922e26f789", "7a2039fd7c4c656ab27850926f89103b5f188dab", @@ -849,7 +782,6 @@ }, "https://dart.googlesource.com/webdev.git": { "refs": [ - "51b5484348b4a8ede351e8dff0428b083495ba78", "eccc7d87982b23f666d5e3e09953dca59ca094e4", "c56611255f3f02642da10750448a8c90a9fa7b47", "75417c09181c97786d9539a662834bed9d2f1e77", @@ -864,7 +796,6 @@ }, "https://dart.googlesource.com/yaml.git": { "refs": [ - "e5984433a2803d5c67ed0abac5891a55040381ee", "7873b3fb9f16ec83bc7778fed58615fa91f1f042", "4cf24ca3bbcb2cd8cbea32fdd355ee5d0a597247", "30fd9e0cd49b2e04f74769f9b24a0300e400403e", @@ -875,7 +806,6 @@ }, "https://dart.googlesource.com/yaml_edit.git": { "refs": [ - "54884db790720ac0f7ca491cb9e6d7a0395ad4cb", "08a146ef8f2c7aba908d2017c9ec840b882c9e51", "57a28daea82a3f00f57a90d5ea6df6a458b2f781", "fbdc70acc164af187772e013a2e1364cd05b88dc", From 9baf8ae1400fcb96c84d83b28019170d3b0c9101 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 26 Oct 2025 17:52:20 +0100 Subject: [PATCH 018/200] feat: properly define prefix --- README.md | 7 +++++++ host/main.go | 6 +++++- pack/build.go | 6 +++++- pack/info.go | 1 + 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0f4ac67..937462e 100644 --- a/README.md +++ b/README.md @@ -79,4 +79,11 @@ In order to build, let's say, `tor` for armv7a-linux-androideabi you would run t ``` $ go run . -host armv7a-linux-androideabi -package tor -build +``` + +## Recommended / "official" cache settings + + +```bash +SIMPLYBS_ENV_DIR=/opt/_ ``` \ No newline at end of file diff --git a/host/main.go b/host/main.go index 42d62ec..0ec41c6 100644 --- a/host/main.go +++ b/host/main.go @@ -44,7 +44,11 @@ func DataDir() string { } func (h *Host) GetEnvPath() string { - return filepath.Join(DataDir(), "env", h.Triplet) + if os.Getenv("SIMPLYBS_ENV_DIR") != "" { + return os.Getenv("SIMPLYBS_ENV_DIR") + } + dir := DataDirRoot() + return filepath.Join(dir, "env") } var SupportedHosts = map[string]*Host{ diff --git a/pack/build.go b/pack/build.go index d8eb31b..46ac042 100644 --- a/pack/build.go +++ b/pack/build.go @@ -118,7 +118,11 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { } } envPath := h.GetEnvPath() - os.RemoveAll(envPath) + if entries, err := os.ReadDir(envPath); err == nil { + for _, entry := range entries { + os.RemoveAll(filepath.Join(envPath, entry.Name())) + } + } os.MkdirAll(envPath, 0755) for _, dep := range deps { dep.ExtractEnv(h, envPath) diff --git a/pack/info.go b/pack/info.go index 809c75e..7f4223f 100644 --- a/pack/info.go +++ b/pack/info.go @@ -81,6 +81,7 @@ func (p *Package) GeneratePackageInfo(h *host.Host) string { env := p.GetEnvForLogs(h) delete(env, "PATH") pkgs["_env"] = env + pkgs["_prefix"] = h.GetEnvPath() info, err := json.MarshalIndent(pkgs, "", " ") crash.Handle(err) return string(info) From 39d0ea35b4cfee33623ef09e14900090c8062fac Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 27 Oct 2025 14:26:28 +0100 Subject: [PATCH 019/200] package unistring --- packages/native/gettext.json | 1 + packages/native/unistring.json | 27 +++++++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 packages/native/unistring.json diff --git a/packages/native/gettext.json b/packages/native/gettext.json index 56ae2dc..c616af8 100644 --- a/packages/native/gettext.json +++ b/packages/native/gettext.json @@ -11,6 +11,7 @@ ], "dependencies": [ "*:native/libiconv", + "*:native/unistring", "*:native/make", "*:native/sed" ], diff --git a/packages/native/unistring.json b/packages/native/unistring.json new file mode 100644 index 0000000..07569ea --- /dev/null +++ b/packages/native/unistring.json @@ -0,0 +1,27 @@ +{ + "package": "native/unistring", + "version": "1.4.1", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "12542ad7619470efd95a623174dcd4b364f2483caf708c6bee837cb53a54cb9d", + "url": "http://ftpmirror.gnu.org/gnu/libunistring/libunistring-1.4.1.tar.gz" + } + ], + "dependencies": [ + "*:native/make", + "*:native/sed" + ], + "build": { + "env": [ + "*:config_opts=--prefix=$PREFIX/native", + "*:config_opts=$config_opts --disable-shared --enable-static" + ], + "steps": [ + "*:./configure $config_opts", + "*:make -j$NUM_CORES", + "*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file From 78fe32bbd423fa8aea3395a3f3b8afbe9228921b Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 27 Oct 2025 14:33:43 +0100 Subject: [PATCH 020/200] gettext: use lubunistring --- packages/native/gettext.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/native/gettext.json b/packages/native/gettext.json index c616af8..4dcbc60 100644 --- a/packages/native/gettext.json +++ b/packages/native/gettext.json @@ -18,7 +18,8 @@ "build": { "env": [ "*:config_opts=--prefix=$PREFIX/native", - "*:config_opts=$config_opts --with-libiconv-prefix=$PREFIX/native" + "*:config_opts=$config_opts --with-libiconv-prefix=$PREFIX/native", + "*:config_opts=$config_opts --with-libunistring-prefix=$PREFIX/native" ], "steps": [ "*:./configure $config_opts", From 3214f0e2840d537baf5cc1d9fef2bd8446091c10 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 27 Oct 2025 14:51:04 +0100 Subject: [PATCH 021/200] fix: libunistring link in gettext --- packages/native/gettext.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/native/gettext.json b/packages/native/gettext.json index 4dcbc60..08b2ef8 100644 --- a/packages/native/gettext.json +++ b/packages/native/gettext.json @@ -19,7 +19,8 @@ "env": [ "*:config_opts=--prefix=$PREFIX/native", "*:config_opts=$config_opts --with-libiconv-prefix=$PREFIX/native", - "*:config_opts=$config_opts --with-libunistring-prefix=$PREFIX/native" + "*:config_opts=$config_opts --with-libunistring-prefix=$PREFIX/native", + "*:LIBS=-lunistring" ], "steps": [ "*:./configure $config_opts", From 460ba6a71f2e6490d32a34564103ffa463d0c88d Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 6 Nov 2025 08:47:19 +0100 Subject: [PATCH 022/200] fix: asm patch --- packages/native/gettext.json | 4 +- packages/native/llvm@google@19.0.1.json | 59 +++++++++++++++++++++++++ packages/native/ndk.json | 10 +++-- packages/native/rust@1_54_0.json | 3 -- packages/native/rust@1_55_0.json | 4 -- packages/native/rust@1_56_1.json | 4 -- packages/native/rust@1_57_0.json | 4 -- packages/native/rust@1_58_1.json | 4 -- packages/native/rust@1_59_0.json | 4 -- packages/native/rust@1_60_0.json | 4 -- packages/native/rust@1_61_0.json | 4 -- packages/native/rust@1_62_1.json | 4 -- packages/native/rust@1_63_0.json | 4 -- packages/native/rust@1_64_0.json | 4 -- packages/native/rust@1_65_0.json | 6 +-- packages/native/rust@1_66_1.json | 6 +-- packages/native/rust@1_67_1.json | 2 +- packages/native/rust@1_68_2.json | 8 +--- packages/native/rust@1_69_0.json | 6 +-- packages/native/rust@1_70_0.json | 6 +-- packages/native/rust@1_71_1.json | 6 +-- packages/native/rust@1_72_1.json | 6 +-- packages/native/rust@1_73_0.json | 6 +-- packages/native/rust@1_74_1.json | 6 +-- packages/native/rust@1_75_0.json | 6 +-- packages/native/rust@1_76_0.json | 3 -- packages/native/rust@1_77_1.json | 3 -- patches/rust/1_66_1/assembly.h.patch | 14 ++++++ sources.json | 11 +++++ 29 files changed, 105 insertions(+), 106 deletions(-) create mode 100644 packages/native/llvm@google@19.0.1.json create mode 100644 patches/rust/1_66_1/assembly.h.patch diff --git a/packages/native/gettext.json b/packages/native/gettext.json index 08b2ef8..6d7159c 100644 --- a/packages/native/gettext.json +++ b/packages/native/gettext.json @@ -11,9 +11,9 @@ ], "dependencies": [ "*:native/libiconv", - "*:native/unistring", "*:native/make", - "*:native/sed" + "*:native/sed", + "*:native/unistring" ], "build": { "env": [ diff --git a/packages/native/llvm@google@19.0.1.json b/packages/native/llvm@google@19.0.1.json new file mode 100644 index 0000000..c36f3c4 --- /dev/null +++ b/packages/native/llvm@google@19.0.1.json @@ -0,0 +1,59 @@ +{ + "package": "native/llvm@google@19.0.1", + "version": "19.0.1", + "type": "native", + "download": [ + { + "kind": "git", + "path": "llvm", + "sha256": "3b5e7c83a6e226d5bd7ed2e9b67449b64812074c", + "url": "https://android.googlesource.com/toolchain/llvm-project" + }, + { + "kind": "git", + "path": "llvm-android", + "sha256": "e727bfb014bd436f581a66a450c939a6983a1fc3", + "url": "https://android.googlesource.com/toolchain/llvm_android.git" + }, + { + "kind": "git", + "path": "toolchain-utils", + "sha256": "d71e320ab860721f764fe7403588641c8a7bc65d", + "url": "https://android.googlesource.com/platform/external/toolchain-utils" + } + ], + "dependencies": [ + "*:native/cmake", + "*:native/gawk", + "*:native/ninja", + "*:native/patch", + "*:native/python@3.11.13" + ], + "build": { + "env": [ + "*:config_opts=-DCMAKE_BUILD_TYPE=Release", + "*-android*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", + "*-android*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX/native/llvm@google@19.0.1", + "*-android*:config_opts=$config_opts -DLLVM_ENABLE_PROJECTS='clang;lld;libc;openmp;pstl'", + "*-android*:config_opts=$config_opts -DLLVM_ENABLE_BINDINGS=OFF", + "*-android*:config_opts=$config_opts -DCLANG_ENABLE_BOOTSTRAP=ON", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_BUILTINS=ON", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_BAREMETAL_BUILD=ON", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_SANITIZERS=OFF", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_XRAY=OFF", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_LIBFUZZER=OFF", + "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_PROFILE=OFF", + "aarch64-linux-android:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='AArch64' -DCLANG_DEFAULT_TARGET_TRIPLE='aarch64-linux-android' -DLLVM_DEFAULT_TARGET_TRIPLE='aarch64-linux-android' -DCOMPILER_RT_TARGET_TRIPLE='aarch64-linux-android'", + "x86_64-linux-android:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='X86' -DCLANG_DEFAULT_TARGET_TRIPLE='x86_64-linux-android' -DLLVM_DEFAULT_TARGET_TRIPLE='x86_64-linux-android' -DCOMPILER_RT_TARGET_TRIPLE='x86_64-linux-android'", + "armv7a-linux-androideabi:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='ARM' -DCLANG_DEFAULT_TARGET_TRIPLE='armv7a-linux-androideabi' -DLLVM_DEFAULT_TARGET_TRIPLE='armv7a-linux-androideabi' -DCOMPILER_RT_TARGET_TRIPLE='armv7a-linux-androideabi'", + "*:SVN_REVISION=530567" + ], + "steps": [ + "*-android*:cd llvm-android && python3 ../toolchain-utils/llvm_tools/patch_manager.py --patch_metadata_file=patches/PATCHES.json --src_path=../llvm --svn_version=$SVN_REVISION", + "*-android*:cd llvm && cmake -S llvm -B build -G Ninja $config_opts", + "*-android*:cd llvm && cd build && ninja -j $NUM_CORES", + "*-android*:cd llvm && cd build && DESTDIR=$STAGING_DIR ninja install" + ] + } +} \ No newline at end of file diff --git a/packages/native/ndk.json b/packages/native/ndk.json index b11f659..67c51cd 100644 --- a/packages/native/ndk.json +++ b/packages/native/ndk.json @@ -120,15 +120,19 @@ ], "dependencies": [ "*-android*:native/cmake", + "*-android*:native/llvm@google@19.0.1", "*-android*:native/make", "*-android*:native/ninja", "*-android*:native/python@3.11.13" ], "build": { "steps": [ - "*-android*:mkdir -p prebuilts/clang/host/darwin-x86/clang-r563880c", - "*-android*:mkdir -p prebuilts/clang/host/linux-x86/clang-r563880c", - "*-android*:mkdir -p prebuilts/clang/host/windows-x86/clang-r563880c", + "*-android*:mkdir -p prebuilts/clang/host/darwin-x86", + "*-android*:mkdir -p prebuilts/clang/host/linux-x86", + "*-android*:mkdir -p prebuilts/clang/host/windows-x86", + "*-android*:cp -a $PREFIX/native/llvm@google@19.0.1 prebuilts/clang/host/darwin-x86/clang-r563880c", + "*-android*:cp -a $PREFIX/native/llvm@google@19.0.1 prebuilts/clang/host/linux-x86/clang-r563880c", + "*-android*:cp -a $PREFIX/native/llvm@google@19.0.1 prebuilts/clang/host/windows-x86/clang-r563880c", "*-android*:touch prebuilts/clang/host/darwin-x86/clang-r563880c/NOTICE", "*-android*:touch prebuilts/clang/host/linux-x86/clang-r563880c/NOTICE", "*-android*:touch prebuilts/clang/host/windows-x86/clang-r563880c/NOTICE", diff --git a/packages/native/rust@1_54_0.json b/packages/native/rust@1_54_0.json index 1c703b8..b585b38 100644 --- a/packages/native/rust@1_54_0.json +++ b/packages/native/rust@1_54_0.json @@ -22,9 +22,6 @@ "*:native/perl", "*:native/zlib" ], - "patches": [ - "codegen_c.cpp.patch" - ], "build": { "env": [ "*:PARLEVEL=$NUM_CORES" diff --git a/packages/native/rust@1_55_0.json b/packages/native/rust@1_55_0.json index 3771b1e..a062f8a 100644 --- a/packages/native/rust@1_55_0.json +++ b/packages/native/rust@1_55_0.json @@ -18,10 +18,6 @@ "*:native/python@3.11.13", "*:native/rust@1_54_0" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ diff --git a/packages/native/rust@1_56_1.json b/packages/native/rust@1_56_1.json index 2186579..5eca2d8 100644 --- a/packages/native/rust@1_56_1.json +++ b/packages/native/rust@1_56_1.json @@ -18,10 +18,6 @@ "*:native/python@3.11.13", "*:native/rust@1_55_0" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ diff --git a/packages/native/rust@1_57_0.json b/packages/native/rust@1_57_0.json index d78413c..465cbe7 100644 --- a/packages/native/rust@1_57_0.json +++ b/packages/native/rust@1_57_0.json @@ -18,10 +18,6 @@ "*:native/python@3.11.13", "*:native/rust@1_56_1" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ diff --git a/packages/native/rust@1_58_1.json b/packages/native/rust@1_58_1.json index e739b0e..598d3ce 100644 --- a/packages/native/rust@1_58_1.json +++ b/packages/native/rust@1_58_1.json @@ -18,10 +18,6 @@ "*:native/python@3.11.13", "*:native/rust@1_57_0" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ diff --git a/packages/native/rust@1_59_0.json b/packages/native/rust@1_59_0.json index 98a474c..4ca6e1c 100644 --- a/packages/native/rust@1_59_0.json +++ b/packages/native/rust@1_59_0.json @@ -18,10 +18,6 @@ "*:native/python@3.11.13", "*:native/rust@1_58_1" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ diff --git a/packages/native/rust@1_60_0.json b/packages/native/rust@1_60_0.json index 7d36e2a..30ac99d 100644 --- a/packages/native/rust@1_60_0.json +++ b/packages/native/rust@1_60_0.json @@ -18,10 +18,6 @@ "*:native/python@3.11.13", "*:native/rust@1_59_0" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ diff --git a/packages/native/rust@1_61_0.json b/packages/native/rust@1_61_0.json index d334a58..cb81a7f 100644 --- a/packages/native/rust@1_61_0.json +++ b/packages/native/rust@1_61_0.json @@ -18,10 +18,6 @@ "*:native/python@3.11.13", "*:native/rust@1_60_0" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ diff --git a/packages/native/rust@1_62_1.json b/packages/native/rust@1_62_1.json index 5311af6..b32ed3d 100644 --- a/packages/native/rust@1_62_1.json +++ b/packages/native/rust@1_62_1.json @@ -18,10 +18,6 @@ "*:native/python@3.11.13", "*:native/rust@1_61_0" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ diff --git a/packages/native/rust@1_63_0.json b/packages/native/rust@1_63_0.json index 12a8caa..94c9144 100644 --- a/packages/native/rust@1_63_0.json +++ b/packages/native/rust@1_63_0.json @@ -18,10 +18,6 @@ "*:native/python@3.11.13", "*:native/rust@1_62_1" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ diff --git a/packages/native/rust@1_64_0.json b/packages/native/rust@1_64_0.json index 5935f88..1f7aaa2 100644 --- a/packages/native/rust@1_64_0.json +++ b/packages/native/rust@1_64_0.json @@ -18,10 +18,6 @@ "*:native/python@3.11.13", "*:native/rust@1_63_0" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ diff --git a/packages/native/rust@1_65_0.json b/packages/native/rust@1_65_0.json index e63baa7..8f6d3dc 100644 --- a/packages/native/rust@1_65_0.json +++ b/packages/native/rust@1_65_0.json @@ -18,14 +18,10 @@ "*:native/python@3.11.13", "*:native/rust@1_64_0" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_66_1.json b/packages/native/rust@1_66_1.json index aa32192..03492ae 100644 --- a/packages/native/rust@1_66_1.json +++ b/packages/native/rust@1_66_1.json @@ -18,14 +18,10 @@ "*:native/python@3.11.13", "*:native/rust@1_65_0" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_67_1.json b/packages/native/rust@1_67_1.json index 6e12759..b512fb1 100644 --- a/packages/native/rust@1_67_1.json +++ b/packages/native/rust@1_67_1.json @@ -25,7 +25,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_68_2.json b/packages/native/rust@1_68_2.json index bef1e04..7a9eaa8 100644 --- a/packages/native/rust@1_68_2.json +++ b/packages/native/rust@1_68_2.json @@ -18,14 +18,10 @@ "*:native/python@3.11.13", "*:native/rust@1_67_1" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", @@ -44,4 +40,4 @@ "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } -} \ No newline at end of file +} diff --git a/packages/native/rust@1_69_0.json b/packages/native/rust@1_69_0.json index da573cc..a3b70c5 100644 --- a/packages/native/rust@1_69_0.json +++ b/packages/native/rust@1_69_0.json @@ -18,14 +18,10 @@ "*:native/python@3.11.13", "*:native/rust@1_68_2" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_70_0.json b/packages/native/rust@1_70_0.json index 4542495..d4a654c 100644 --- a/packages/native/rust@1_70_0.json +++ b/packages/native/rust@1_70_0.json @@ -18,14 +18,10 @@ "*:native/python@3.11.13", "*:native/rust@1_69_0" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_71_1.json b/packages/native/rust@1_71_1.json index 1a97834..88ecb06 100644 --- a/packages/native/rust@1_71_1.json +++ b/packages/native/rust@1_71_1.json @@ -18,14 +18,10 @@ "*:native/python@3.11.13", "*:native/rust@1_70_0" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_72_1.json b/packages/native/rust@1_72_1.json index 5a89b98..91edf05 100644 --- a/packages/native/rust@1_72_1.json +++ b/packages/native/rust@1_72_1.json @@ -18,14 +18,10 @@ "*:native/python@3.11.13", "*:native/rust@1_71_1" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_73_0.json b/packages/native/rust@1_73_0.json index 99ee5be..c3ed2c3 100644 --- a/packages/native/rust@1_73_0.json +++ b/packages/native/rust@1_73_0.json @@ -18,14 +18,10 @@ "*:native/python@3.11.13", "*:native/rust@1_72_1" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_74_1.json b/packages/native/rust@1_74_1.json index cff7039..62acbef 100644 --- a/packages/native/rust@1_74_1.json +++ b/packages/native/rust@1_74_1.json @@ -18,14 +18,10 @@ "*:native/python@3.11.13", "*:native/rust@1_73_0" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_75_0.json b/packages/native/rust@1_75_0.json index 8074c2a..c012c73 100644 --- a/packages/native/rust@1_75_0.json +++ b/packages/native/rust@1_75_0.json @@ -18,14 +18,10 @@ "*:native/python@3.11.13", "*:native/rust@1_74_1" ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_76_0.json b/packages/native/rust@1_76_0.json index 8029e4e..5ccd7de 100644 --- a/packages/native/rust@1_76_0.json +++ b/packages/native/rust@1_76_0.json @@ -18,9 +18,6 @@ "*:native/python@3.11.13", "*:native/rust@1_75_0" ], - "patches": [ - "assembly.h.patch" - ], "build": { "env": [], "steps": [ diff --git a/packages/native/rust@1_77_1.json b/packages/native/rust@1_77_1.json index 224ea70..b8e81e6 100644 --- a/packages/native/rust@1_77_1.json +++ b/packages/native/rust@1_77_1.json @@ -18,9 +18,6 @@ "*:native/python@3.11.13", "*:native/rust@1_76_0" ], - "patches": [ - "assembly.h.patch" - ], "build": { "env": [], "steps": [ diff --git a/patches/rust/1_66_1/assembly.h.patch b/patches/rust/1_66_1/assembly.h.patch new file mode 100644 index 0000000..c60b4f6 --- /dev/null +++ b/patches/rust/1_66_1/assembly.h.patch @@ -0,0 +1,14 @@ +--- a/src/llvm-project/compiler-rt/lib/builtins/assembly.h 2025-07-10 12:41:44.474103047 +0200 ++++ b/src/llvm-project/compiler-rt/lib/builtins/assembly.h 2025-07-10 12:46:14.327250160 +0200 +@@ -260,9 +260,10 @@ + .globl name SEPARATOR \ + SYMBOL_IS_FUNC(name) SEPARATOR \ + DECLARE_SYMBOL_VISIBILITY_UNMANGLED(name) SEPARATOR \ ++ name: SEPARATOR \ + CFI_START SEPARATOR \ + DECLARE_FUNC_ENCODING \ +- name: SEPARATOR BTI_C ++ BTI_C + + #define DEFINE_COMPILERRT_FUNCTION_ALIAS(name, target) \ + .globl SYMBOL_NAME(name) SEPARATOR \ \ No newline at end of file diff --git a/sources.json b/sources.json index 3d00243..eb648c0 100644 --- a/sources.json +++ b/sources.json @@ -70,6 +70,11 @@ "12f5c853ee9e06ba6565006d8d36ee261a140d91" ] }, + "https://android.googlesource.com/platform/external/toolchain-utils": { + "refs": [ + "d71e320ab860721f764fe7403588641c8a7bc65d" + ] + }, "https://android.googlesource.com/platform/external/vulkan-headers": { "refs": [ "062f62b42a62e18a8eaccbce323d4f58548677be" @@ -98,9 +103,15 @@ "https://android.googlesource.com/toolchain/llvm-project": { "refs": [ "c58bc24fcf678c55b0bf522be89eff070507a005", + "3b5e7c83a6e226d5bd7ed2e9b67449b64812074c", "5e96669f06077099aa41290cdb4c5e6fa0f59349" ] }, + "https://android.googlesource.com/toolchain/llvm_android.git": { + "refs": [ + "e727bfb014bd436f581a66a450c939a6983a1fc3" + ] + }, "https://android.googlesource.com/toolchain/make": { "refs": [ "44fc4fe66a484b91844c302f03eaa8438e065d17" From 17cab0e8710efd891ea9a4dd69e7fcc06df79f52 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 6 Nov 2025 11:25:09 +0100 Subject: [PATCH 023/200] split apple sdk --- packages/native/apple-sdk-macos.json | 60 ++++++++++++++++++++++++++++ packages/native/osx-cross.json | 18 ++------- packages/native/rust@1_68_2.json | 2 +- 3 files changed, 65 insertions(+), 15 deletions(-) create mode 100644 packages/native/apple-sdk-macos.json diff --git a/packages/native/apple-sdk-macos.json b/packages/native/apple-sdk-macos.json new file mode 100644 index 0000000..f463981 --- /dev/null +++ b/packages/native/apple-sdk-macos.json @@ -0,0 +1,60 @@ +{ + "package": "native/apple-sdk-macos", + "version": "master@f873f53", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "7ff7657a435e709dfc81e79965bf2d0544d71bea26432991db8837b797290c28", + "url": "https://github.com/tpoechtrager/osxcross/archive/f873f534c6cdb0776e457af8c7513da1e02abe59.tar.gz" + }, + { + "kind": "blob", + "path": "Xcode_26.1.xip", + "sha256": "9881c457068c86ac91e94cca2d7116dfd01cb7179c22b0863b63c7f3bb7e7695", + "url": "https://download.developer.apple.com/Developer_Tools/Xcode_26.1/XcodeXIP_26.1_Universal.xip" + } + ], + "dependencies": [ + "*-apple-darwin:native/bzip2", + "*-apple-darwin:native/cctools-port", + "*-apple-darwin:native/cmake", + "*-apple-darwin:native/cpio", + "*-apple-darwin:native/gettext", + "*-apple-darwin:native/git", + "*-apple-darwin:native/libtapi", + "*-apple-darwin:native/libxml2", + "*-apple-darwin:native/make", + "*-apple-darwin:native/openssl", + "*-apple-darwin:native/patch", + "*-apple-darwin:native/pbzx", + "*-apple-darwin:native/perl", + "*-apple-darwin:native/pkgconf", + "*-apple-darwin:native/python@3.11.13", + "*-apple-darwin:native/xar", + "*-apple-darwin:native/xz" + ], + "build": { + "env": [ + "*-apple-darwin:JOBS=$NUM_CORES", + "*-apple-darwin:PORTABLE=1", + "*-apple-darwin:TARGET_DIR=$PREFIX/native/", + "aarch64-apple-darwin:ENABLE_ARCHS=arm64", + "x86_64-apple-darwin:ENABLE_ARCHS=x86_64", + "*-apple-darwin:UNATTENDED=1", + "*-apple-darwin:SDK_VERSION=26.0", + "*-apple-darwin:COMPRESSLEVEL=9 -e" + ], + "steps": [ + "*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", + "*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", + "*-apple-darwin:sed -i.bak 's/build_xar/echo build_xar/g' tools/gen_sdk_package_pbzx.sh", + "*-apple-darwin:sed -i.bak 's/build_pbxz/echo build_pbxz/g' tools/gen_sdk_package_pbzx.sh", + "*-apple-darwin:sed -i.bak 's/git /echo git /g' tools/tools.sh", + "*-apple-darwin:sed -i.bak '8,11d' tools/gen_sdk_package_pbzx.sh", + "*-apple-darwin:./tools/gen_sdk_package_pbzx.sh ./Xcode_*.xip", + "*-apple-darwin:mkdir -p $STAGING_DIR$PREFIX/native/share", + "*-apple-darwin:mv MacOSX26.sdk.tar.xz $STAGING_DIR$PREFIX/native/share" + ] + } +} \ No newline at end of file diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 70d47d5..7b277a1 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -8,12 +8,6 @@ "sha256": "7ff7657a435e709dfc81e79965bf2d0544d71bea26432991db8837b797290c28", "url": "https://github.com/tpoechtrager/osxcross/archive/f873f534c6cdb0776e457af8c7513da1e02abe59.tar.gz" }, - { - "kind": "blob", - "path": "Xcode_26.0.1.xip", - "sha256": "9881c457068c86ac91e94cca2d7116dfd01cb7179c22b0863b63c7f3bb7e7695", - "url": "https://download.developer.apple.com/Developer_Tools/Xcode_26.0.1/Xcode_26.0.1_Universal.xip" - }, { "kind": "blob", "path": "tarballs/llvmorg-20.1.8.zip", @@ -28,6 +22,7 @@ } ], "dependencies": [ + "*-apple-darwin:native/apple-sdk-macos", "*-apple-darwin:native/bzip2", "*-apple-darwin:native/cctools-port", "*-apple-darwin:native/cmake", @@ -54,27 +49,22 @@ "aarch64-apple-darwin:ENABLE_ARCHS=arm64", "x86_64-apple-darwin:ENABLE_ARCHS=x86_64", "*-apple-darwin:UNATTENDED=1", - "*-apple-darwin:SDK_VERSION=26.0", + "*-apple-darwin:SDK_VERSION=26", "*-apple-darwin:COMPRESSLEVEL=0" ], "steps": [ - "*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", - "*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", - "*-apple-darwin:sed -i.bak 's/build_xar/echo build_xar/g' tools/gen_sdk_package_pbzx.sh", "*-apple-darwin:sed -i.bak 's/build_xar/echo build_xar/g' build.sh", "*-apple-darwin:sed -i.bak 's/git clone/echo git clone/g' build.sh", "*-apple-darwin:sed -i.bak 's/--with-libtapi=$TARGET_DIR/--with-libtapi=$PREFIX\\/native/g' build.sh", "*-apple-darwin:sed -i.bak 's/--with-libxar=$TARGET_DIR/--with-libxar=$PREFIX\\/native/g' build.sh", - "*-apple-darwin:sed -i.bak 's/build_pbxz/echo build_pbxz/g' tools/gen_sdk_package_pbzx.sh", "*-apple-darwin:sed -i.bak 's/git /echo git /g' tools/tools.sh", "*-apple-darwin:sed -i.bak 's/download $CLANG_LLVM_PKG/echo download $CLANG_LLVM_PKG/g' build_clang.sh", "*-apple-darwin:sed -i.bak 's/rm -f $(basename $CLANG_LLVM_PKG)/echo rm -f $(basename $CLANG_LLVM_PKG)/g' build_clang.sh", "*-apple-darwin:sed -i.bak 's/get_sources/echo get_sources/g' build.sh", - "*-apple-darwin:sed -i.bak '8,11d' tools/gen_sdk_package_pbzx.sh", + "*-apple-darwin:sed -i.bak 's/-DCMAKE_BUILD_TYPE=Release/& -DCLANG_ENABLE_BOOTSTRAP=ON/g' build.sh", "*-apple-darwin:sed -i.bak '135,145d' build.sh", "*-apple-darwin:sed -i.bak '145,160d' build.sh", - "*-apple-darwin:./tools/gen_sdk_package_pbzx.sh ./Xcode_26.0.1.xip", - "*-apple-darwin:mv MacOSX26.* tarballs", + "*-apple-darwin:mv $PREFIX/native/share/MacOSX26.* tarballs", "none:yes | INSTALLPREFIX=$PREFIX/native ./build_clang.sh", "none:cd build/clang-20.1.8/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", "*-apple-darwin:yes | INSTALLPREFIX=$PREFIX/native ./build_apple_clang.sh", diff --git a/packages/native/rust@1_68_2.json b/packages/native/rust@1_68_2.json index 7a9eaa8..7296279 100644 --- a/packages/native/rust@1_68_2.json +++ b/packages/native/rust@1_68_2.json @@ -40,4 +40,4 @@ "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } -} +} \ No newline at end of file From 036980321ca687ab7b8b1b1fc1e50e5177670bd4 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 12 Nov 2025 10:54:00 +0100 Subject: [PATCH 024/200] tor: update to 0.4.8.20 --- packages/native/android_ndk.json | 3 ++- packages/tor.json | 4 ++-- sources.json | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index d12f128..7eb3e1f 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -3,7 +3,8 @@ "version": "r28c", "type": "native", "dependencies": [ - "*:native/p7zip" + "*:native/p7zip", + "*:native/python@3.11.13" ], "build": { "env": [ diff --git a/packages/tor.json b/packages/tor.json index c6af8b0..a9c79d2 100644 --- a/packages/tor.json +++ b/packages/tor.json @@ -1,11 +1,11 @@ { "package": "tor", - "version": "tor-0.4.8.17", + "version": "tor-0.4.8.20", "type": "host", "download": [ { "kind": "git", - "sha256": "e41649c9a34f39f1d543e064fd2b97de26d3e097", + "sha256": "106dcfa18c1a9539cb97337e57954ff89685840e", "url": "http://gitlab.torproject.org/tpo/core/tor.git" } ], diff --git a/sources.json b/sources.json index eb648c0..e86e9a9 100644 --- a/sources.json +++ b/sources.json @@ -7,7 +7,7 @@ }, "http://gitlab.torproject.org/tpo/core/tor.git": { "refs": [ - "e41649c9a34f39f1d543e064fd2b97de26d3e097" + "106dcfa18c1a9539cb97337e57954ff89685840e" ] }, "https://android.googlesource.com/platform/bionic": { From a95084afb831e0b5597108dbec17688a9bf8b518 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 6 Nov 2025 19:10:09 +0100 Subject: [PATCH 025/200] wip rust --- packages/native/_.json | 31 ++----------------- packages/native/rust@1_60_0.json | 2 +- packages/native/rust@1_61_0.json | 2 +- packages/native/rust@1_62_1.json | 2 +- packages/native/rust@1_63_0.json | 2 +- packages/native/rust@1_64_0.json | 2 +- packages/native/rust@1_65_0.json | 2 +- packages/native/rust@1_66_1.json | 2 +- packages/native/rust@1_67_1.json | 2 +- packages/native/rust@1_68_2.json | 2 +- packages/native/rust@1_69_0.json | 2 +- packages/native/rust@1_70_0.json | 2 +- packages/native/rust@1_71_1.json | 2 +- packages/native/rust@1_72_1.json | 2 +- packages/native/rust@1_73_0.json | 2 +- packages/native/rust@1_74_1.json | 2 +- packages/native/rust@1_75_0.json | 2 +- .../rust/{1_66_1 => 1_60_0}/assembly.h.patch | 0 18 files changed, 19 insertions(+), 44 deletions(-) rename patches/rust/{1_66_1 => 1_60_0}/assembly.h.patch (100%) diff --git a/packages/native/_.json b/packages/native/_.json index c0ecab1..a49e3f7 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -8,41 +8,16 @@ "*-apple-*:native/osx-cross", "*-linux-gnu:native/ct-tools", "*-linux-musl:native/ct-tools", - "*-w64-mingw32:native/ct-tools", - "*:native/autoconf", - "*:native/automake", - "*:native/bash", - "*:native/bison", - "*:native/cmake", - "*:native/cmake-toolchain", - "*:native/config", - "*:native/gawk", - "*:native/gettext", - "*:native/libtapi", - "*:native/libtool", - "*:native/libxml2", - "*:native/m4", - "*:native/make", - "*:native/mpc", - "*:native/mpfr", - "*:native/ninja", - "*:native/nproc", - "*:native/patch", - "*:native/perl", - "*:native/pkgconf", - "*:native/rsync", - "*:native/sed", - "*:native/texinfo", - "*:native/xar" + "*-w64-mingw32:native/ct-tools" ], "build": { "env": [ - "none:A_=This is a meta-package library that includes common tools needed for builds", + "none:A_=This is a meta-package library that includes c and c++ compiler", "none:B_=All packages included as dependencies (other than bootstrap packages) are copied over to staging dir" ], "steps": [ "*:mkdir -p $STAGING_DIR$PREFIX ", - "*:rsync -a $PREFIX/* $STAGING_DIR$PREFIX", + "*:cp -a $PREFIX/* $STAGING_DIR$PREFIX", "*:rm -rf $STAGING_DIR$PREFIX/native/bootstrap" ] } diff --git a/packages/native/rust@1_60_0.json b/packages/native/rust@1_60_0.json index 30ac99d..0b5b80d 100644 --- a/packages/native/rust@1_60_0.json +++ b/packages/native/rust@1_60_0.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_61_0.json b/packages/native/rust@1_61_0.json index cb81a7f..c5d5fcf 100644 --- a/packages/native/rust@1_61_0.json +++ b/packages/native/rust@1_61_0.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_62_1.json b/packages/native/rust@1_62_1.json index b32ed3d..3a49b8f 100644 --- a/packages/native/rust@1_62_1.json +++ b/packages/native/rust@1_62_1.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_63_0.json b/packages/native/rust@1_63_0.json index 94c9144..62b27af 100644 --- a/packages/native/rust@1_63_0.json +++ b/packages/native/rust@1_63_0.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_64_0.json b/packages/native/rust@1_64_0.json index 1f7aaa2..6433fa7 100644 --- a/packages/native/rust@1_64_0.json +++ b/packages/native/rust@1_64_0.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_65_0.json b/packages/native/rust@1_65_0.json index 8f6d3dc..d05a0ce 100644 --- a/packages/native/rust@1_65_0.json +++ b/packages/native/rust@1_65_0.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_66_1.json b/packages/native/rust@1_66_1.json index 03492ae..5c64e58 100644 --- a/packages/native/rust@1_66_1.json +++ b/packages/native/rust@1_66_1.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_67_1.json b/packages/native/rust@1_67_1.json index b512fb1..b4e3ffc 100644 --- a/packages/native/rust@1_67_1.json +++ b/packages/native/rust@1_67_1.json @@ -25,7 +25,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_68_2.json b/packages/native/rust@1_68_2.json index 7296279..9cafcdf 100644 --- a/packages/native/rust@1_68_2.json +++ b/packages/native/rust@1_68_2.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_69_0.json b/packages/native/rust@1_69_0.json index a3b70c5..bdf74dd 100644 --- a/packages/native/rust@1_69_0.json +++ b/packages/native/rust@1_69_0.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_70_0.json b/packages/native/rust@1_70_0.json index d4a654c..de88060 100644 --- a/packages/native/rust@1_70_0.json +++ b/packages/native/rust@1_70_0.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_71_1.json b/packages/native/rust@1_71_1.json index 88ecb06..a40552c 100644 --- a/packages/native/rust@1_71_1.json +++ b/packages/native/rust@1_71_1.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_72_1.json b/packages/native/rust@1_72_1.json index 91edf05..e8062e5 100644 --- a/packages/native/rust@1_72_1.json +++ b/packages/native/rust@1_72_1.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_73_0.json b/packages/native/rust@1_73_0.json index c3ed2c3..047d1db 100644 --- a/packages/native/rust@1_73_0.json +++ b/packages/native/rust@1_73_0.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_74_1.json b/packages/native/rust@1_74_1.json index 62acbef..618d48b 100644 --- a/packages/native/rust@1_74_1.json +++ b/packages/native/rust@1_74_1.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_75_0.json b/packages/native/rust@1_75_0.json index c012c73..1868dae 100644 --- a/packages/native/rust@1_75_0.json +++ b/packages/native/rust@1_75_0.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_66_1/assembly.h.patch", + "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", "*:echo '[build]' > config.toml", "*:echo 'full-bootstrap = true' >> config.toml", diff --git a/patches/rust/1_66_1/assembly.h.patch b/patches/rust/1_60_0/assembly.h.patch similarity index 100% rename from patches/rust/1_66_1/assembly.h.patch rename to patches/rust/1_60_0/assembly.h.patch From 8f88f21e67bc1145ea18aed75e17ec3faee583d1 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 7 Nov 2025 06:35:34 +0100 Subject: [PATCH 026/200] wip --- builder/default.go | 21 +- cmd/buildweb/archive.go | 79 ----- cmd/buildweb/builder_matrix.tpl | 178 ----------- cmd/buildweb/buildweb.go | 142 --------- cmd/buildweb/buildweb_test.go | 436 ------------------------- cmd/buildweb/data.go | 250 --------------- cmd/buildweb/file_details.tpl | 245 -------------- cmd/buildweb/html.go | 231 -------------- cmd/buildweb/index.tpl | 134 -------- cmd/buildweb/json.go | 194 ------------ cmd/buildweb/metadata.go | 80 ----- cmd/buildweb/package.tpl | 544 -------------------------------- cmd/buildweb/source_details.tpl | 240 -------------- cmd/buildweb/utils.go | 121 ------- cmd/lint/lint.go | 20 +- main.go | 13 +- pack/build.go | 12 +- pack/info.go | 48 ++- pack/main.go | 11 +- packages/native/ncurses.json | 62 ++++ packages/native/unzip.json | 24 ++ utils/ifstring.go | 28 ++ 22 files changed, 179 insertions(+), 2934 deletions(-) delete mode 100644 cmd/buildweb/archive.go delete mode 100644 cmd/buildweb/builder_matrix.tpl delete mode 100644 cmd/buildweb/buildweb.go delete mode 100644 cmd/buildweb/buildweb_test.go delete mode 100644 cmd/buildweb/data.go delete mode 100644 cmd/buildweb/file_details.tpl delete mode 100644 cmd/buildweb/html.go delete mode 100644 cmd/buildweb/index.tpl delete mode 100644 cmd/buildweb/json.go delete mode 100644 cmd/buildweb/metadata.go delete mode 100644 cmd/buildweb/package.tpl delete mode 100644 cmd/buildweb/source_details.tpl delete mode 100644 cmd/buildweb/utils.go create mode 100644 packages/native/ncurses.json create mode 100644 packages/native/unzip.json create mode 100644 utils/ifstring.go diff --git a/builder/default.go b/builder/default.go index 347b03d..85a3f43 100644 --- a/builder/default.go +++ b/builder/default.go @@ -2,9 +2,16 @@ package builder import ( "os/exec" + "runtime" "strings" + + "github.com/mrcyjanek/simplybs/utils" ) +func GetName() string { + return runtime.GOOS + "_" + runtime.GOARCH +} + type Builder struct { GlobalEnv []string } @@ -21,10 +28,9 @@ func shellOutput(cmd string) string { func (b *Builder) GetCC() string { for _, env := range b.GlobalEnv { - splitIndex := strings.Index(env, ":") - envVar := env[splitIndex+1:] - if strings.HasPrefix(envVar, "CC=") { - return envVar[3:] + is := utils.ParseIfString(env) + if strings.HasPrefix(is.Content, "CC=") { + return is.Content[3:] } } return "" @@ -32,10 +38,9 @@ func (b *Builder) GetCC() string { func (b *Builder) GetCXX() string { for _, env := range b.GlobalEnv { - splitIndex := strings.Index(env, ":") - envVar := env[splitIndex+1:] - if strings.HasPrefix(envVar, "CXX=") { - return envVar[4:] + is := utils.ParseIfString(env) + if strings.HasPrefix(is.Content, "CXX=") { + return is.Content[4:] } } return "" diff --git a/cmd/buildweb/archive.go b/cmd/buildweb/archive.go deleted file mode 100644 index 5f88e1c..0000000 --- a/cmd/buildweb/archive.go +++ /dev/null @@ -1,79 +0,0 @@ -package buildweb - -import ( - "fmt" - "os" - "path/filepath" - - "github.com/mrcyjanek/simplybs/host" - "github.com/mrcyjanek/simplybs/pack" -) - -func ListArchiveContents(pkg *pack.Package, download *pack.Download) ([]ArchiveFileInfo, error) { - sourcePath := pkg.GenerateSourceBuildPath(download) - - info, err := os.Stat(sourcePath) - if err != nil { - return nil, fmt.Errorf("failed to stat archive: %w", err) - } - if info.Size() == 0 { - return nil, fmt.Errorf("archive is 0 bytes (incomplete download)") - } - - if download.Kind == "blob" || download.Kind == "none" { - return nil, fmt.Errorf("cannot list contents of %s type", download.Kind) - } - - tempDir, err := os.MkdirTemp("", "buildweb-archive-*") - if err != nil { - return nil, fmt.Errorf("failed to create temp directory: %w", err) - } - defer os.RemoveAll(tempDir) - - tempPkg := &pack.Package{ - Package: pkg.Package, - Version: pkg.Version, - Download: []*pack.Download{download}, - } - - tempPkg.ExtractSource(&host.Host{}, tempDir) - - var files []ArchiveFileInfo - err = filepath.Walk(tempDir, func(path string, info os.FileInfo, err error) error { - if err != nil { - return err - } - if !info.IsDir() { - relPath, _ := filepath.Rel(tempDir, path) - files = append(files, ArchiveFileInfo{ - Name: relPath, - Size: info.Size(), - }) - } - return nil - }) - - if err != nil { - return nil, fmt.Errorf("failed to walk extracted files: %w", err) - } - - return files, nil -} - -func GetArchiveInfo(pkg *pack.Package, download *pack.Download) ArchiveInfo { - files, err := ListArchiveContents(pkg, download) - if err != nil { - return ArchiveInfo{Files: []ArchiveFileInfo{}, TotalSize: 0, FileCount: 0} - } - - var totalSize int64 - for _, file := range files { - totalSize += file.Size - } - - return ArchiveInfo{ - Files: files, - TotalSize: totalSize, - FileCount: len(files), - } -} diff --git a/cmd/buildweb/builder_matrix.tpl b/cmd/buildweb/builder_matrix.tpl deleted file mode 100644 index 455f4ab..0000000 --- a/cmd/buildweb/builder_matrix.tpl +++ /dev/null @@ -1,178 +0,0 @@ - - - - {{.Builder}} Build Matrix - - - -
- ← Back to Package List - -

{{.Builder}} Build Matrix

-

Builder: {{.Builder}} | Total packages: {{len .Packages}}

- -
- - - - - {{range getTargets}} - - {{end}} - - - - {{range .Packages}} - {{$pkg := .}} - - - {{range getTargets}} - {{$target := .}} - {{$found := false}} - {{range $pkg.BuiltFiles}} - {{if and (eq .Builder $.Builder) (eq .Target $target)}} - {{$found = true}} - - {{end}} - {{end}} - {{if not $found}} - - {{end}} - {{end}} - - {{end}} - -
Package{{.}}
- {{.Package.Package}} - - - ✓ - - - - ✗ - -
-
-
- - \ No newline at end of file diff --git a/cmd/buildweb/buildweb.go b/cmd/buildweb/buildweb.go deleted file mode 100644 index 84971f0..0000000 --- a/cmd/buildweb/buildweb.go +++ /dev/null @@ -1,142 +0,0 @@ -package buildweb - -import ( - "log" - "os" - "path/filepath" - "runtime" - "sync" - - "github.com/mrcyjanek/simplybs/builder" - "github.com/mrcyjanek/simplybs/crash" - "github.com/mrcyjanek/simplybs/host" - "github.com/mrcyjanek/simplybs/pack" -) - -func BuildWeb() { - log.Println("Starting BuildWeb generation...") - - webDir := filepath.Join(host.DataDirRoot(), "web") - if err := setupWebDirectory(webDir); err != nil { - crash.Handle(err) - } - - log.Println("Collecting package and build data...") - packagesWithBuilds := GetAllPackagesWithBuilds() - - packagesWithBuilds = deduplicateBuilds(packagesWithBuilds) - - log.Println("Generating builder metadata...") - buildersMetadata := GetBuildersMetadata(packagesWithBuilds) - - log.Println("Generating JSON files...") - generateAllJSON(packagesWithBuilds, buildersMetadata, webDir) - - log.Println("Generating HTML pages...") - GenerateAllHTML(packagesWithBuilds, webDir) - - printSummary(packagesWithBuilds) - - log.Printf("Website generated successfully in %s\n", webDir) -} - -func setupWebDirectory(webDir string) error { - // Don't clean the directory - just ensure it exists - // This allows us to reuse cached JSON and HTML files - return os.MkdirAll(webDir, 0755) -} - -func deduplicateBuilds(packagesWithBuilds []*pack.PackageWithBuilds) []*pack.PackageWithBuilds { - for i, pkg := range packagesWithBuilds { - builderTargetMap := make(map[string]pack.BuiltFile) - for _, builtFile := range pkg.BuiltFiles { - key := builtFile.Builder + "/" + builtFile.Target - if _, exists := builderTargetMap[key]; !exists { - builderTargetMap[key] = builtFile - } - } - - var filteredBuilds []pack.BuiltFile - for _, builtFile := range builderTargetMap { - filteredBuilds = append(filteredBuilds, builtFile) - } - packagesWithBuilds[i].BuiltFiles = filteredBuilds - } - - return packagesWithBuilds -} - -func generateAllJSON(packagesWithBuilds []*pack.PackageWithBuilds, buildersMetadata map[string]*BuildMetadata, webDir string) { - log.Println(" - Generating index.json...") - GenerateIndexJSON(packagesWithBuilds, webDir) - - log.Printf(" - Generating %d package JSON files...", len(packagesWithBuilds)) - for _, pkg := range packagesWithBuilds { - GeneratePackageJSON(pkg, webDir) - } - - log.Printf(" - Generating %d builder JSON files...", len(builder.Builders)) - for builderName, metadata := range buildersMetadata { - GenerateBuilderJSON(builderName, metadata, webDir) - } - - log.Println(" - Generating builder metadata in built/ directories...") - GenerateBuilderMetadataFiles(buildersMetadata) - - log.Println(" - Generating file details and source details JSON...") - totalFiles := 0 - totalSources := 0 - for _, pkg := range packagesWithBuilds { - totalFiles += len(pkg.BuiltFiles) - totalSources += len(pkg.Package.Download) - } - - var wg sync.WaitGroup - semaphore := make(chan struct{}, runtime.NumCPU()) - - for _, pkg := range packagesWithBuilds { - // Generate built file details JSON - for _, builtFile := range pkg.BuiltFiles { - wg.Add(1) - semaphore <- struct{}{} - - go func(p *pack.PackageWithBuilds, bf pack.BuiltFile) { - defer wg.Done() - defer func() { <-semaphore }() - - GenerateFileDetailsJSON(p, &bf, webDir) - }(pkg, builtFile) - } - - // Generate source file details JSON - for i, download := range pkg.Package.Download { - wg.Add(1) - semaphore <- struct{}{} - - go func(p *pack.PackageWithBuilds, dl *pack.Download, idx int) { - defer wg.Done() - defer func() { <-semaphore }() - - GenerateSourceDetailsJSON(p, dl, idx, webDir) - }(pkg, download, i) - } - } - - wg.Wait() - log.Printf(" - Generated %d file detail JSON files and %d source detail JSON files", totalFiles, totalSources) -} - -func printSummary(packagesWithBuilds []*pack.PackageWithBuilds) { - totalFiles := 0 - for _, pkg := range packagesWithBuilds { - totalFiles += len(pkg.BuiltFiles) - } - - log.Println("\n=== Generation Summary ===") - log.Printf("Total packages: %d", len(packagesWithBuilds)) - log.Printf("Total builders: %d", len(builder.Builders)) - log.Printf("Total targets: %d", len(host.SupportedHosts)) - log.Printf("Total built files: %d", totalFiles) - log.Printf("HTML pages: %d", len(packagesWithBuilds)+len(builder.Builders)+totalFiles+1) - log.Printf("JSON files: %d", len(packagesWithBuilds)+len(builder.Builders)+totalFiles+1+len(builder.Builders)) -} diff --git a/cmd/buildweb/buildweb_test.go b/cmd/buildweb/buildweb_test.go deleted file mode 100644 index 54bde89..0000000 --- a/cmd/buildweb/buildweb_test.go +++ /dev/null @@ -1,436 +0,0 @@ -package buildweb - -import ( - "os" - "path/filepath" - "testing" - - "github.com/mrcyjanek/simplybs/pack" -) - -func TestFormatFileSize(t *testing.T) { - tests := []struct { - bytes int64 - expected string - }{ - {0, "0 B"}, - {1023, "1023 B"}, - {1024, "1.0 KB"}, - {1536, "1.5 KB"}, - {1048576, "1.0 MB"}, - {1073741824, "1.0 GB"}, - {1099511627776, "1.0 TB"}, - } - - for _, tt := range tests { - result := FormatFileSize(tt.bytes) - if result != tt.expected { - t.Errorf("FormatFileSize(%d) = %s; want %s", tt.bytes, result, tt.expected) - } - } -} - -func TestGetGlobPattern(t *testing.T) { - tests := []struct { - entry string - expected string - }{ - {"*:content", "*"}, - {"pattern:value", "pattern"}, - {"nopattern", ""}, - {"x86*:CC=gcc", "x86*"}, - } - - for _, tt := range tests { - result := GetGlobPattern(tt.entry) - if result != tt.expected { - t.Errorf("GetGlobPattern(%q) = %q; want %q", tt.entry, result, tt.expected) - } - } -} - -func TestGetGlobContent(t *testing.T) { - tests := []struct { - entry string - expected string - }{ - {"*:content", "content"}, - {"pattern:value", "value"}, - {"nopattern", "nopattern"}, - {"x86*:CC=gcc", "CC=gcc"}, - } - - for _, tt := range tests { - result := GetGlobContent(tt.entry) - if result != tt.expected { - t.Errorf("GetGlobContent(%q) = %q; want %q", tt.entry, result, tt.expected) - } - } -} - -func TestGetRelativePath(t *testing.T) { - tests := []struct { - from string - to string - expected string - }{ - {"boost", "index", "index.html"}, // web/boost.html -> web/index.html - {"native/cmake", "index", "../index.html"}, // web/native/cmake.html -> web/index.html - {"boost", "zlib", "zlib.html"}, // web/boost.html -> web/zlib.html - {"native/cmake", "native/perl", "../native/perl.html"}, // web/native/cmake.html -> web/native/perl.html - } - - for _, tt := range tests { - result := GetRelativePath(tt.from, tt.to) - if result != tt.expected { - t.Errorf("GetRelativePath(%q, %q) = %q; want %q", tt.from, tt.to, result, tt.expected) - } - } -} - -func TestGetBuildProgress(t *testing.T) { - tests := []struct { - name string - builtFiles []pack.BuiltFile - totalBuilders int - totalTargets int - expected int - }{ - { - name: "no builds", - builtFiles: []pack.BuiltFile{}, - totalBuilders: 3, - totalTargets: 10, - expected: 0, - }, - { - name: "50% complete", - builtFiles: []pack.BuiltFile{ - {Builder: "darwin_arm64", Target: "aarch64-apple-ios"}, - {Builder: "darwin_arm64", Target: "aarch64-apple-darwin"}, - {Builder: "linux_amd64", Target: "aarch64-apple-ios"}, - {Builder: "linux_amd64", Target: "aarch64-apple-darwin"}, - {Builder: "linux_arm64", Target: "aarch64-apple-ios"}, - {Builder: "linux_arm64", Target: "aarch64-apple-darwin"}, - }, - totalBuilders: 3, - totalTargets: 4, - expected: 50, - }, - { - name: "100% complete", - builtFiles: []pack.BuiltFile{ - {Builder: "darwin_arm64", Target: "aarch64-apple-ios"}, - {Builder: "darwin_arm64", Target: "aarch64-apple-darwin"}, - {Builder: "linux_amd64", Target: "aarch64-apple-ios"}, - {Builder: "linux_amd64", Target: "aarch64-apple-darwin"}, - }, - totalBuilders: 2, - totalTargets: 2, - expected: 100, - }, - } - - for _, tt := range tests { - t.Run(tt.name, func(t *testing.T) { - pkg := &pack.PackageWithBuilds{ - Package: &pack.Package{}, - BuiltFiles: tt.builtFiles, - } - result := GetBuildProgress(pkg, tt.totalBuilders, tt.totalTargets) - if result != tt.expected { - t.Errorf("GetBuildProgress() = %d; want %d", result, tt.expected) - } - }) - } -} - -func TestDependencyExists(t *testing.T) { - packages := []*pack.Package{ - {Package: "boost"}, - {Package: "zlib"}, - {Package: "native/cmake"}, - } - - tests := []struct { - dep string - expected bool - }{ - {"boost", true}, - {"zlib", true}, - {"native/cmake", true}, - {"nonexistent", false}, - {"native/perl", false}, - } - - for _, tt := range tests { - result := DependencyExists(tt.dep, packages) - if result != tt.expected { - t.Errorf("DependencyExists(%q) = %v; want %v", tt.dep, result, tt.expected) - } - } -} - -func TestGetBuiltFilePath(t *testing.T) { - tests := []struct { - packageName string - filePath string - expected string - }{ - // From web/boost.html, go up to root: ../ - {"boost", "darwin_arm64/built/target/boost-1.0-abc.tar.gz", "../darwin_arm64/built/target/boost-1.0-abc.tar.gz"}, - // From web/native/cmake.html, go up to root: ../../ - {"native/cmake", "linux_amd64/built/target/file.tar.gz", "../../linux_amd64/built/target/file.tar.gz"}, - } - - for _, tt := range tests { - result := GetBuiltFilePath(tt.packageName, tt.filePath) - if result != tt.expected { - t.Errorf("GetBuiltFilePath(%q, %q) = %q; want %q", tt.packageName, tt.filePath, result, tt.expected) - } - } -} - -func TestConvertToPackageMetadata(t *testing.T) { - pkg := &pack.PackageWithBuilds{ - Package: &pack.Package{ - Package: "boost", - Version: "1.0.0", - Type: "host", - Download: []*pack.Download{ - {Kind: "http", URL: "https://example.com/boost.tar.gz", Sha256: "abc123"}, - }, - Dependencies: []string{"zlib"}, - }, - BuiltFiles: []pack.BuiltFile{ - { - Builder: "darwin_arm64", - Target: "aarch64-apple-ios", - ID: "abc12345", - InfoPath: "darwin_arm64/built/aarch64-apple-ios/boost-1.0.0-abc12345.info.txt", - ArchPath: "darwin_arm64/built/aarch64-apple-ios/boost-1.0.0-abc12345.tar.gz", - FileSize: 1024, - }, - }, - } - - metadata := ConvertToPackageMetadata(pkg) - - if metadata.Package != "boost" { - t.Errorf("Package name = %q; want %q", metadata.Package, "boost") - } - - if metadata.Version != "1.0.0" { - t.Errorf("Version = %q; want %q", metadata.Version, "1.0.0") - } - - if len(metadata.Builds) != 1 { - t.Errorf("Number of builders = %d; want 1", len(metadata.Builds)) - } - - if _, exists := metadata.Builds["darwin_arm64"]; !exists { - t.Error("darwin_arm64 builder not found in builds") - } - - if len(metadata.Builds["darwin_arm64"]) != 1 { - t.Errorf("Number of targets for darwin_arm64 = %d; want 1", len(metadata.Builds["darwin_arm64"])) - } -} - -func TestGetBuildMatrix(t *testing.T) { - pkg := &pack.PackageWithBuilds{ - Package: &pack.Package{Package: "boost"}, - BuiltFiles: []pack.BuiltFile{ - {Builder: "darwin_arm64", Target: "aarch64-apple-ios", ID: "abc"}, - {Builder: "linux_amd64", Target: "x86_64-linux-gnu", ID: "def"}, - }, - } - - matrix := GetBuildMatrix(pkg) - - if len(matrix) == 0 { - t.Error("Matrix should not be empty") - } - - if matrix["darwin_arm64"]["aarch64-apple-ios"] == nil { - t.Error("Expected darwin_arm64/aarch64-apple-ios to be in matrix") - } - - if matrix["linux_amd64"]["x86_64-linux-gnu"] == nil { - t.Error("Expected linux_amd64/x86_64-linux-gnu to be in matrix") - } -} - -func TestGetWebsiteIndex(t *testing.T) { - packagesWithBuilds := []*pack.PackageWithBuilds{ - { - Package: &pack.Package{ - Package: "boost", - Version: "1.0.0", - Type: "host", - }, - BuiltFiles: []pack.BuiltFile{ - {Builder: "darwin_arm64", Target: "aarch64-apple-ios"}, - }, - }, - { - Package: &pack.Package{ - Package: "zlib", - Version: "1.2.11", - Type: "host", - }, - BuiltFiles: []pack.BuiltFile{}, - }, - } - - index := GetWebsiteIndex(packagesWithBuilds) - - if index.TotalPackages != 2 { - t.Errorf("TotalPackages = %d; want 2", index.TotalPackages) - } - - if len(index.Packages) != 2 { - t.Errorf("Number of packages = %d; want 2", len(index.Packages)) - } - - if len(index.Builders) == 0 { - t.Error("Builders list should not be empty") - } - - if len(index.Targets) == 0 { - t.Error("Targets list should not be empty") - } -} - -func TestGetArchiveInfo(t *testing.T) { - testPkg := &pack.Package{Package: "test", Version: "1.0"} - testDownload := &pack.Download{Kind: "tar.gz", URL: "file:///nonexistent/file.tar.gz"} - info := GetArchiveInfo(testPkg, testDownload) - - if info.FileCount != 0 { - t.Errorf("FileCount for nonexistent file = %d; want 0", info.FileCount) - } - - if info.TotalSize != 0 { - t.Errorf("TotalSize for nonexistent file = %d; want 0", info.TotalSize) - } - - if len(info.Files) != 0 { - t.Errorf("Files length for nonexistent file = %d; want 0", len(info.Files)) - } -} - -func TestDeduplicateBuilds(t *testing.T) { - packagesWithBuilds := []*pack.PackageWithBuilds{ - { - Package: &pack.Package{Package: "boost"}, - BuiltFiles: []pack.BuiltFile{ - {Builder: "darwin_arm64", Target: "aarch64-apple-ios", ID: "abc"}, - {Builder: "darwin_arm64", Target: "aarch64-apple-ios", ID: "def"}, // Duplicate - {Builder: "linux_amd64", Target: "x86_64-linux-gnu", ID: "ghi"}, - }, - }, - } - - result := deduplicateBuilds(packagesWithBuilds) - - if len(result[0].BuiltFiles) != 2 { - t.Errorf("After deduplication, expected 2 builds, got %d", len(result[0].BuiltFiles)) - } -} - -func TestGetBuildersMetadata(t *testing.T) { - packagesWithBuilds := []*pack.PackageWithBuilds{ - { - Package: &pack.Package{ - Package: "boost", - Version: "1.0.0", - Type: "host", - }, - BuiltFiles: []pack.BuiltFile{ - {Builder: "darwin_arm64", Target: "aarch64-apple-ios", FileSize: 1024}, - }, - }, - } - - metadata := GetBuildersMetadata(packagesWithBuilds) - - if len(metadata) == 0 { - t.Error("Metadata should not be empty") - } - - for _, builderName := range []string{"darwin_arm64", "linux_amd64", "linux_arm64"} { - if meta, exists := metadata[builderName]; !exists { - t.Errorf("Metadata for builder %s not found", builderName) - } else { - if meta.Builder != builderName { - t.Errorf("Builder name in metadata = %q; want %q", meta.Builder, builderName) - } - if len(meta.Packages) != 1 { - t.Errorf("Number of packages in metadata = %d; want 1", len(meta.Packages)) - } - } - } -} - -func TestSetupWebDirectory(t *testing.T) { - tmpDir := filepath.Join(os.TempDir(), "buildweb_test") - defer os.RemoveAll(tmpDir) - - err := setupWebDirectory(tmpDir) - if err != nil { - t.Fatalf("setupWebDirectory failed: %v", err) - } - - if _, err := os.Stat(tmpDir); os.IsNotExist(err) { - t.Error("Web directory was not created") - } - - testFile := filepath.Join(tmpDir, "test.txt") - if err := os.WriteFile(testFile, []byte("test"), 0644); err != nil { - t.Fatalf("Failed to create test file: %v", err) - } - - err = setupWebDirectory(tmpDir) - if err != nil { - t.Fatalf("setupWebDirectory failed on second call: %v", err) - } - - if _, err := os.Stat(testFile); os.IsNotExist(err) { - t.Error("Existing files should be preserved for caching") - } - - if _, err := os.Stat(tmpDir); os.IsNotExist(err) { - t.Error("Web directory does not exist after second call") - } -} - -func TestGetSortedBuilders(t *testing.T) { - builders := getSortedBuilders() - - if len(builders) == 0 { - t.Error("Builders list should not be empty") - } - - for i := 1; i < len(builders); i++ { - if builders[i-1] > builders[i] { - t.Errorf("Builders list is not sorted: %v", builders) - break - } - } -} - -func TestGetSortedTargets(t *testing.T) { - targets := getSortedTargets() - - if len(targets) == 0 { - t.Error("Targets list should not be empty") - } - - for i := 1; i < len(targets); i++ { - if targets[i-1] > targets[i] { - t.Errorf("Targets list is not sorted: %v", targets) - break - } - } -} diff --git a/cmd/buildweb/data.go b/cmd/buildweb/data.go deleted file mode 100644 index f0207b9..0000000 --- a/cmd/buildweb/data.go +++ /dev/null @@ -1,250 +0,0 @@ -package buildweb - -import ( - "os" - "path/filepath" - "sort" - "strings" - - "github.com/mrcyjanek/simplybs/builder" - "github.com/mrcyjanek/simplybs/host" - "github.com/mrcyjanek/simplybs/pack" -) - -func GetAllPackagesWithBuilds() []*pack.PackageWithBuilds { - packages := pack.GetAllPackages() - packagesWithBuilds := make([]*pack.PackageWithBuilds, len(packages)) - - for i, pkg := range packages { - builtFiles := scanBuiltFilesForPackage(pkg.Package, pkg.Version) - packagesWithBuilds[i] = &pack.PackageWithBuilds{ - Package: pkg, - BuiltFiles: builtFiles, - } - } - - return packagesWithBuilds -} - -func scanBuiltFilesForPackage(packageName string, packageVersion string) []pack.BuiltFile { - var builtFiles []pack.BuiltFile - baseBuildDir := host.DataDirRoot() - - targets := getSortedTargets() - - for _, builderName := range builder.Builders { - builderDir := filepath.Join(baseBuildDir, builderName) - if _, err := os.Stat(builderDir); os.IsNotExist(err) { - continue - } - - for _, target := range targets { - buildOutputDir := filepath.Join(builderDir, "built", target, packageName) - buildOutputDir = filepath.Dir(buildOutputDir) - - if _, err := os.Stat(buildOutputDir); os.IsNotExist(err) { - continue - } - - files, err := os.ReadDir(buildOutputDir) - if err != nil { - continue - } - - for _, file := range files { - fileName := file.Name() - fsFilepath := filepath.Join(buildOutputDir, fileName) - if !strings.Contains(fsFilepath, packageName) { - continue - } - if !strings.HasSuffix(fileName, ".tar.gz") { - continue - } - - nameWithoutExt := strings.TrimSuffix(fileName, ".tar.gz") - parts := strings.Split(nameWithoutExt, "-") - if len(parts) < 3 { - continue - } - - archPathRelative := filepath.Join(builderName, "built", target, filepath.Dir(packageName), fileName) - infoPathRelative := filepath.Join(builderName, "built", target, filepath.Dir(packageName), strings.TrimSuffix(fileName, ".tar.gz")+".info.txt") - - fullArchPath := filepath.Join(baseBuildDir, archPathRelative) - info, err := os.Stat(fullArchPath) - var fileSize int64 - if err == nil { - fileSize = info.Size() - } - id := strings.Split(parts[len(parts)-1], ".")[0] - - builtFiles = append(builtFiles, pack.BuiltFile{ - Builder: builderName, - Target: target, - ID: id, - InfoPath: infoPathRelative, - ArchPath: archPathRelative, - FileSize: fileSize, - }) - } - } - } - - return builtFiles -} - -func GetBuildersMetadata(packagesWithBuilds []*pack.PackageWithBuilds) map[string]*BuildMetadata { - metadata := make(map[string]*BuildMetadata) - targets := getSortedTargets() - - for _, builderName := range builder.Builders { - meta := &BuildMetadata{ - Builder: builderName, - Targets: targets, - Packages: []PackageBuildStatus{}, - Stats: BuilderStats{ - TotalPackages: len(packagesWithBuilds), - TotalTargets: len(targets), - }, - } - - for _, pkg := range packagesWithBuilds { - status := PackageBuildStatus{ - Package: pkg.Package.Package, - Version: pkg.Package.Version, - Type: pkg.Package.Type, - Targets: make(map[string]*TargetBuildInfo), - } - - for _, target := range targets { - status.Targets[target] = &TargetBuildInfo{Built: false} - } - - for _, builtFile := range pkg.BuiltFiles { - if builtFile.Builder == builderName { - status.Targets[builtFile.Target] = &TargetBuildInfo{ - Built: true, - BuildID: builtFile.ID, - FileSize: builtFile.FileSize, - ArchPath: builtFile.ArchPath, - InfoPath: builtFile.InfoPath, - } - meta.Stats.TotalBuilds++ - } - } - - meta.Packages = append(meta.Packages, status) - } - - totalPossible := meta.Stats.TotalPackages * meta.Stats.TotalTargets - if totalPossible > 0 { - meta.Stats.CompletionRate = float64(meta.Stats.TotalBuilds) / float64(totalPossible) * 100 - } - - metadata[builderName] = meta - } - - return metadata -} - -func ConvertToPackageMetadata(pkg *pack.PackageWithBuilds) *PackageMetadata { - meta := &PackageMetadata{ - Package: pkg.Package.Package, - Version: pkg.Package.Version, - Type: pkg.Package.Type, - Downloads: pkg.Package.Download, - Dependencies: pkg.Package.Dependencies, - BuildEnv: pkg.Package.Build.Env, - BuildSteps: pkg.Package.Build.Steps, - Builds: make(map[string]map[string]*BuildInfo), - } - - for _, builtFile := range pkg.BuiltFiles { - if meta.Builds[builtFile.Builder] == nil { - meta.Builds[builtFile.Builder] = make(map[string]*BuildInfo) - } - - basePath := "../" - depth := strings.Count(pkg.Package.Package, "/") - for i := 0; i < depth; i++ { - basePath += "../" - } - - meta.Builds[builtFile.Builder][builtFile.Target] = &BuildInfo{ - Builder: builtFile.Builder, - Target: builtFile.Target, - BuildID: builtFile.ID, - FileSize: builtFile.FileSize, - ArchivePath: builtFile.ArchPath, - InfoPath: builtFile.InfoPath, - DownloadURL: basePath + builtFile.ArchPath, - } - } - - return meta -} - -func GetWebsiteIndex(packagesWithBuilds []*pack.PackageWithBuilds) *WebsiteIndex { - index := &WebsiteIndex{ - TotalPackages: len(packagesWithBuilds), - Builders: getSortedBuilders(), - Targets: getSortedTargets(), - Packages: []PackageIndexEntry{}, - } - - totalCombinations := len(builder.Builders) * len(host.SupportedHosts) - - for _, pkg := range packagesWithBuilds { - builderTargetMap := make(map[string]pack.BuiltFile) - for _, builtFile := range pkg.BuiltFiles { - key := builtFile.Builder + "/" + builtFile.Target - if _, exists := builderTargetMap[key]; !exists { - builderTargetMap[key] = builtFile - } - } - - actualBuilds := len(builderTargetMap) - progress := 0 - if totalCombinations > 0 { - progress = (actualBuilds * 100) / totalCombinations - } - - entry := PackageIndexEntry{ - Package: pkg.Package.Package, - Version: pkg.Package.Version, - Type: pkg.Package.Type, - BuildProgress: progress, - TotalBuilds: actualBuilds, - PossibleBuilds: totalCombinations, - } - - index.Packages = append(index.Packages, entry) - } - - return index -} - -func getSortedBuilders() []string { - builders := make([]string, len(builder.Builders)) - copy(builders, builder.Builders) - sort.Strings(builders) - return builders -} - -func getSortedTargets() []string { - targets := make([]string, 0, len(host.SupportedHosts)) - for k := range host.SupportedHosts { - targets = append(targets, k) - } - sort.Strings(targets) - return targets -} - -func DependencyExists(dep string, packages []*pack.Package) bool { - for _, pkg := range packages { - if pkg.Package == dep { - return true - } - } - return false -} diff --git a/cmd/buildweb/file_details.tpl b/cmd/buildweb/file_details.tpl deleted file mode 100644 index 31e052d..0000000 --- a/cmd/buildweb/file_details.tpl +++ /dev/null @@ -1,245 +0,0 @@ - - - - {{.Package.Package.Package}} - {{.BuiltFile.Builder}}/{{.BuiltFile.Target}} Archive Contents - - - -
- ← Back to Package - ← Back to {{.BuiltFile.Builder}} - -

{{.Package.Package.Package}}

-
- {{.BuiltFile.Builder}} - {{.BuiltFile.Target}} -
- - - -
-

Build Information

- - - - - - - -
Package{{.Package.Package.Package}}
Version{{.Package.Package.Version}}
Builder{{.BuiltFile.Builder}}
Target{{.BuiltFile.Target}}
Build ID{{.BuiltFile.ID}}
Archive Size{{formatFileSize .BuiltFile.FileSize}}
-
- -
-

Archive Contents

- {{$tempDownload := index (list (dict "Kind" "tar.gz")) 0}} - {{$archiveInfo := getArchiveInfo .Package.Package $tempDownload}} - {{if $archiveInfo.Files}} -
-
{{len $archiveInfo.Files}} files in archive
-
- Total uncompressed size: {{formatFileSize $archiveInfo.TotalSize}} -
-
-
-
-
File Path
-
Size
-
- {{range $archiveInfo.Files}} -
-
{{.Name}}
-
{{formatFileSize .Size}}
-
- {{end}} -
- {{else}} -
-
Unable to read archive contents
-
Archive may be corrupted or use an unsupported format
-
- {{end}} -
-
- - \ No newline at end of file diff --git a/cmd/buildweb/html.go b/cmd/buildweb/html.go deleted file mode 100644 index 07bd925..0000000 --- a/cmd/buildweb/html.go +++ /dev/null @@ -1,231 +0,0 @@ -package buildweb - -import ( - "fmt" - "html/template" - "os" - "path/filepath" - "sync" - - _ "embed" - - "github.com/mrcyjanek/simplybs/builder" - "github.com/mrcyjanek/simplybs/crash" - "github.com/mrcyjanek/simplybs/host" - "github.com/mrcyjanek/simplybs/pack" -) - -//go:embed index.tpl -var indexTemplate string - -//go:embed package.tpl -var packageTemplate string - -//go:embed builder_matrix.tpl -var builderMatrixTemplate string - -//go:embed file_details.tpl -var fileDetailsTemplate string - -//go:embed source_details.tpl -var sourceDetailsTemplate string - -func GenerateIndexHTML(packagesWithBuilds []*pack.PackageWithBuilds, webDir string, funcMap template.FuncMap) { - path := filepath.Join(webDir, "index.html") - - tmpl, err := template.New("index").Funcs(funcMap).Parse(indexTemplate) - crash.Handle(err) - - file, err := os.Create(path) - crash.Handle(err) - defer file.Close() - - err = tmpl.Execute(file, packagesWithBuilds) - crash.Handle(err) -} - -func GeneratePackageHTML(pkgWithBuilds *pack.PackageWithBuilds, webDir string, funcMap template.FuncMap) { - path := filepath.Join(webDir, pkgWithBuilds.Package.Package+".html") - - funcMap["add"] = func(a, b int) int { - return a + b - } - - tmpl, err := template.New("package").Funcs(funcMap).Parse(packageTemplate) - crash.Handle(err) - - err = os.MkdirAll(filepath.Dir(path), 0755) - crash.Handle(err) - - file, err := os.Create(path) - crash.Handle(err) - defer file.Close() - - err = tmpl.Execute(file, pkgWithBuilds) - crash.Handle(err) -} - -func GenerateBuilderMatrixHTML(builderName string, packagesWithBuilds []*pack.PackageWithBuilds, webDir string, funcMap template.FuncMap) { - path := filepath.Join(webDir, "builder_"+builderName+".html") - - tmpl, err := template.New("builder_matrix").Funcs(funcMap).Parse(builderMatrixTemplate) - crash.Handle(err) - - err = os.MkdirAll(filepath.Dir(path), 0755) - crash.Handle(err) - - file, err := os.Create(path) - crash.Handle(err) - defer file.Close() - - data := struct { - Builder string - Packages []*pack.PackageWithBuilds - }{ - Builder: builderName, - Packages: packagesWithBuilds, - } - - err = tmpl.Execute(file, data) - crash.Handle(err) -} - -func GenerateFileDetailsHTML(pkg *pack.PackageWithBuilds, builtFile *pack.BuiltFile, webDir string, funcMap template.FuncMap) { - fileName := fmt.Sprintf("%s-%s-%s.html", pkg.Package.Package, pkg.Package.Version, builtFile.ID) - path := filepath.Join(webDir, "files", builtFile.Builder, builtFile.Target, fileName) - - tmpl, err := template.New("file_details").Funcs(funcMap).Parse(fileDetailsTemplate) - crash.Handle(err) - - err = os.MkdirAll(filepath.Dir(path), 0755) - crash.Handle(err) - - file, err := os.Create(path) - crash.Handle(err) - defer file.Close() - - data := struct { - Package *pack.PackageWithBuilds - BuiltFile *pack.BuiltFile - }{ - Package: pkg, - BuiltFile: builtFile, - } - - err = tmpl.Execute(file, data) - crash.Handle(err) -} - -func CreateTemplateFuncMap(packages []*pack.Package) template.FuncMap { - return template.FuncMap{ - "getGlobPattern": GetGlobPattern, - "getGlobContent": GetGlobContent, - "depExists": func(dep string) bool { - return DependencyExists(dep, packages) - }, - "getRelativePath": GetRelativePath, - "formatFileSize": FormatFileSize, - "getMirrorPath": GetMirrorPath, - "getBuiltFilePath": GetBuiltFilePath, - "getFileDetailsPath": GetFileDetailsPath, - "getSourceFilePath": GetSourceFilePath, - "getSourceDetailsPath": GetSourceDetailsPath, - "getBuildMatrix": GetBuildMatrix, - "getBuilders": getSortedBuilders, - "getTargets": getSortedTargets, - "getBuildProgress": func(pkg *pack.PackageWithBuilds) int { - return GetBuildProgress(pkg, len(builder.Builders), len(host.SupportedHosts)) - }, - "getArchiveInfo": func(pkg *pack.Package, download *pack.Download) ArchiveInfo { - return GetArchiveInfo(pkg, download) - }, - } -} - -func GenerateSourceDetailsHTML(pkg *pack.PackageWithBuilds, download *pack.Download, downloadIndex int, webDir string, funcMap template.FuncMap) { - fileName := fmt.Sprintf("%s-download-%d.html", pkg.Package.Package, downloadIndex) - path := filepath.Join(webDir, "source", fileName) - - tmpl, err := template.New("source_details").Funcs(funcMap).Parse(sourceDetailsTemplate) - crash.Handle(err) - - err = os.MkdirAll(filepath.Dir(path), 0755) - crash.Handle(err) - - file, err := os.Create(path) - crash.Handle(err) - defer file.Close() - - sourcePath := pkg.Package.GenerateSourceBuildPath(download) - relSourcePath, _ := filepath.Rel(host.DataDirRoot(), sourcePath) - - var fileSize int64 - if info, err := os.Stat(sourcePath); err == nil { - fileSize = info.Size() - } - - data := struct { - Package *pack.Package - Download *pack.Download - SourcePath string - FileSize int64 - }{ - Package: pkg.Package, - Download: download, - SourcePath: relSourcePath, - FileSize: fileSize, - } - - err = tmpl.Execute(file, data) - crash.Handle(err) -} - -func GenerateAllHTML(packagesWithBuilds []*pack.PackageWithBuilds, webDir string) { - packages := make([]*pack.Package, len(packagesWithBuilds)) - for i, pwb := range packagesWithBuilds { - packages[i] = pwb.Package - } - - funcMap := CreateTemplateFuncMap(packages) - - GenerateIndexHTML(packagesWithBuilds, webDir, funcMap) - - for _, pkgWithBuilds := range packagesWithBuilds { - GeneratePackageHTML(pkgWithBuilds, webDir, funcMap) - } - - for _, builderName := range builder.Builders { - GenerateBuilderMatrixHTML(builderName, packagesWithBuilds, webDir, funcMap) - } - - var wg sync.WaitGroup - semaphore := make(chan struct{}, 10) - - for _, pkgWithBuilds := range packagesWithBuilds { - for _, builtFile := range pkgWithBuilds.BuiltFiles { - wg.Add(1) - semaphore <- struct{}{} - - go func(pkg *pack.PackageWithBuilds, bf pack.BuiltFile) { - defer wg.Done() - defer func() { <-semaphore }() - - GenerateFileDetailsHTML(pkg, &bf, webDir, funcMap) - }(pkgWithBuilds, builtFile) - } - - for i, download := range pkgWithBuilds.Package.Download { - wg.Add(1) - semaphore <- struct{}{} - - go func(pkg *pack.PackageWithBuilds, dl *pack.Download, idx int) { - defer wg.Done() - defer func() { <-semaphore }() - - GenerateSourceDetailsHTML(pkg, dl, idx, webDir, funcMap) - }(pkgWithBuilds, download, i) - } - } - - wg.Wait() -} diff --git a/cmd/buildweb/index.tpl b/cmd/buildweb/index.tpl deleted file mode 100644 index 1dfe04c..0000000 --- a/cmd/buildweb/index.tpl +++ /dev/null @@ -1,134 +0,0 @@ - - - - Package Information - - - -
-

Package Information

-

Total packages: {{len .}}

- -
-

Builder Matrices

-
- {{range getBuilders}} - {{.}} - {{end}} -
-
- - - - - - - - - {{range .}} - - - - - - - - {{end}} -
PackageVersionTypeBuild ProgressDetails
{{.Package.Package}}{{.Package.Version}} - {{.Package.Type}} - - {{$progress := getBuildProgress .}} -
-
-
{{$progress}}%
-
-
View Details →
-
- -` \ No newline at end of file diff --git a/cmd/buildweb/json.go b/cmd/buildweb/json.go deleted file mode 100644 index 34cddc2..0000000 --- a/cmd/buildweb/json.go +++ /dev/null @@ -1,194 +0,0 @@ -package buildweb - -import ( - "encoding/json" - "fmt" - "os" - "path/filepath" - - "github.com/mrcyjanek/simplybs/crash" - "github.com/mrcyjanek/simplybs/host" - "github.com/mrcyjanek/simplybs/pack" -) - -func GenerateIndexJSON(packagesWithBuilds []*pack.PackageWithBuilds, webDir string) { - path := filepath.Join(webDir, "index.json") - - if _, err := os.Stat(path); err == nil { - return - } - - index := GetWebsiteIndex(packagesWithBuilds) - - data, err := json.MarshalIndent(index, "", " ") - crash.Handle(err) - - err = os.WriteFile(path, data, 0644) - crash.Handle(err) -} - -func GeneratePackageJSON(pkg *pack.PackageWithBuilds, webDir string) { - path := filepath.Join(webDir, pkg.Package.Package+".json") - - if _, err := os.Stat(path); err == nil { - return - } - - metadata := ConvertToPackageMetadata(pkg) - - data, err := json.MarshalIndent(metadata, "", " ") - crash.Handle(err) - - err = os.MkdirAll(filepath.Dir(path), 0755) - crash.Handle(err) - - err = os.WriteFile(path, data, 0644) - crash.Handle(err) -} - -func GenerateBuilderJSON(builderName string, metadata *BuildMetadata, webDir string) { - path := filepath.Join(webDir, "builder_"+builderName+".json") - - if _, err := os.Stat(path); err == nil { - return - } - - data, err := json.MarshalIndent(metadata, "", " ") - crash.Handle(err) - - err = os.WriteFile(path, data, 0644) - crash.Handle(err) -} - -func GenerateBuilderMetadataFiles(metadata map[string]*BuildMetadata) { - baseBuildDir := host.DataDirRoot() - - for builderName, meta := range metadata { - builderDir := filepath.Join(baseBuildDir, builderName, "built") - err := os.MkdirAll(builderDir, 0755) - crash.Handle(err) - - metadataPath := filepath.Join(builderDir, "metadata.json") - - if _, err := os.Stat(metadataPath); err == nil { - continue - } - - data, err := json.MarshalIndent(meta, "", " ") - crash.Handle(err) - - err = os.WriteFile(metadataPath, data, 0644) - crash.Handle(err) - } -} - -func GenerateFileDetailsJSON(pkg *pack.PackageWithBuilds, builtFile *pack.BuiltFile, webDir string) { - fileName := pkg.Package.Package + "-" + pkg.Package.Version + "-" + builtFile.ID + ".json" - path := filepath.Join(webDir, "files", builtFile.Builder, builtFile.Target, fileName) - - if _, err := os.Stat(path); err == nil { - return - } - - baseBuildDir := host.DataDirRoot() - fullArchPath := filepath.Join(baseBuildDir, builtFile.ArchPath) - - info, err := os.Stat(fullArchPath) - if os.IsNotExist(err) { - return - } - - if info.Size() == 0 { - crash.Handle(fmt.Errorf("built archive is 0 bytes: %s", fullArchPath)) - } - - tempDownload := &pack.Download{Kind: "tar.gz"} - tempPkg := &pack.Package{ - Package: pkg.Package.Package, - Version: pkg.Package.Version, - } - archiveInfo := GetArchiveInfo(tempPkg, tempDownload) - - data := struct { - Package string `json:"package"` - Version string `json:"version"` - Builder string `json:"builder"` - Target string `json:"target"` - BuildID string `json:"build_id"` - FileSize int64 `json:"file_size"` - ArchivePath string `json:"archive_path"` - InfoPath string `json:"info_path"` - Archive ArchiveInfo `json:"archive"` - }{ - Package: pkg.Package.Package, - Version: pkg.Package.Version, - Builder: builtFile.Builder, - Target: builtFile.Target, - BuildID: builtFile.ID, - FileSize: builtFile.FileSize, - ArchivePath: builtFile.ArchPath, - InfoPath: builtFile.InfoPath, - Archive: archiveInfo, - } - - jsonData, err := json.MarshalIndent(data, "", " ") - crash.Handle(err) - - err = os.MkdirAll(filepath.Dir(path), 0755) - crash.Handle(err) - - err = os.WriteFile(path, jsonData, 0644) - crash.Handle(err) -} - -func GenerateSourceDetailsJSON(pkg *pack.PackageWithBuilds, download *pack.Download, downloadIndex int, webDir string) { - fileName := pkg.Package.Package + "-download-" + fmt.Sprintf("%d", downloadIndex) + ".json" - path := filepath.Join(webDir, "source", fileName) - - if _, err := os.Stat(path); err == nil { - return - } - - sourcePath := pkg.Package.GenerateSourceBuildPath(download) - relSourcePath, _ := filepath.Rel(host.DataDirRoot(), sourcePath) - - var fileSize int64 - var archiveInfo ArchiveInfo - if info, err := os.Stat(sourcePath); err == nil { - fileSize = info.Size() - if download.Kind != "blob" && download.Kind != "none" { - archiveInfo = GetArchiveInfo(pkg.Package, download) - } - } - - data := struct { - Package string `json:"package"` - Version string `json:"version"` - Kind string `json:"kind"` - URL string `json:"url"` - SHA256 string `json:"sha256"` - Path string `json:"path,omitempty"` - FileSize int64 `json:"file_size"` - SourcePath string `json:"source_path"` - Archive ArchiveInfo `json:"archive,omitempty"` - }{ - Package: pkg.Package.Package, - Version: pkg.Package.Version, - Kind: download.Kind, - URL: download.URL, - SHA256: download.Sha256, - Path: download.Path, - FileSize: fileSize, - SourcePath: relSourcePath, - Archive: archiveInfo, - } - - jsonData, err := json.MarshalIndent(data, "", " ") - crash.Handle(err) - - err = os.MkdirAll(filepath.Dir(path), 0755) - crash.Handle(err) - - err = os.WriteFile(path, jsonData, 0644) - crash.Handle(err) -} diff --git a/cmd/buildweb/metadata.go b/cmd/buildweb/metadata.go deleted file mode 100644 index 4ac597f..0000000 --- a/cmd/buildweb/metadata.go +++ /dev/null @@ -1,80 +0,0 @@ -package buildweb - -import "github.com/mrcyjanek/simplybs/pack" - -type BuildMetadata struct { - Builder string `json:"builder"` - Targets []string `json:"targets"` - Packages []PackageBuildStatus `json:"packages"` - Stats BuilderStats `json:"stats"` -} - -type BuilderStats struct { - TotalPackages int `json:"total_packages"` - TotalTargets int `json:"total_targets"` - TotalBuilds int `json:"total_builds"` - CompletionRate float64 `json:"completion_rate"` -} - -type PackageBuildStatus struct { - Package string `json:"package"` - Version string `json:"version"` - Type string `json:"type"` - Targets map[string]*TargetBuildInfo `json:"targets"` -} - -type TargetBuildInfo struct { - Built bool `json:"built"` - BuildID string `json:"build_id,omitempty"` - FileSize int64 `json:"file_size,omitempty"` - ArchPath string `json:"arch_path,omitempty"` - InfoPath string `json:"info_path,omitempty"` -} - -type PackageMetadata struct { - Package string `json:"package"` - Version string `json:"version"` - Type string `json:"type"` - Downloads []*pack.Download `json:"downloads"` - Dependencies []string `json:"dependencies"` - BuildEnv []string `json:"build_env"` - BuildSteps []string `json:"build_steps"` - Builds map[string]map[string]*BuildInfo `json:"builds"` // builder -> target -> BuildInfo -} - -type BuildInfo struct { - Builder string `json:"builder"` - Target string `json:"target"` - BuildID string `json:"build_id"` - FileSize int64 `json:"file_size"` - ArchivePath string `json:"archive_path"` - InfoPath string `json:"info_path"` - DownloadURL string `json:"download_url"` -} - -type ArchiveFileInfo struct { - Name string `json:"name"` - Size int64 `json:"size"` -} - -type ArchiveInfo struct { - Files []ArchiveFileInfo `json:"files"` - TotalSize int64 `json:"total_size"` - FileCount int `json:"file_count"` -} - -type WebsiteIndex struct { - TotalPackages int `json:"total_packages"` - Builders []string `json:"builders"` - Targets []string `json:"targets"` - Packages []PackageIndexEntry `json:"packages"` -} - -type PackageIndexEntry struct { - Package string `json:"package"` - Version string `json:"version"` - Type string `json:"type"` - BuildProgress int `json:"build_progress"` - TotalBuilds int `json:"total_builds"` - PossibleBuilds int `json:"possible_builds"` -} diff --git a/cmd/buildweb/package.tpl b/cmd/buildweb/package.tpl deleted file mode 100644 index 22a8fc5..0000000 --- a/cmd/buildweb/package.tpl +++ /dev/null @@ -1,544 +0,0 @@ - - - - {{.Package.Package}} - Package Details - - - -
- ← Back to Package List - -

{{.Package.Package}}

- -
-

Basic Information

- - - - -
Package Name{{.Package.Package}}
Version{{.Package.Version}}
Type{{.Package.Type}}
-
- - {{if .Package.Download}} -
-

Source Downloads

- {{range $index, $download := .Package.Download}} -
-
-
Download {{if gt (len $.Package.Download) 1}}{{add $index 1}}{{end}}
-
{{$download.Kind}}
-
-
-
- URL: - - {{$download.URL}} - -
-
- SHA256: - {{$download.Sha256}} -
- {{if $download.Path}} -
- Path: - {{$download.Path}} -
- {{end}} -
- -
- {{end}} -
- {{end}} - - {{if .Package.Dependencies}} -
-

Dependencies Explorer

-
- {{range .Package.Dependencies}} - {{$pattern := getGlobPattern .}} - {{$dep := getGlobContent .}} -
-
- {{if $pattern}} - {{$pattern}} - {{else}} - all - {{end}} -
-
- {{if depExists $dep}} - {{$dep}} - {{else}} - {{$dep}} - {{end}} -
-
- {{end}} -
-
- {{end}} - - {{if .Package.Build.Env}} -
-

Build Environment

-
- {{range .Package.Build.Env}} - {{$pattern := getGlobPattern .}} - {{$content := getGlobContent .}} -
-
- {{if $pattern}} - {{$pattern}} - {{else}} - all - {{end}} -
-
- {{$content}} -
-
- {{end}} -
-
- {{end}} - - {{if .Package.Build.Steps}} -
-

Build Steps

-
- {{range $index, $step := .Package.Build.Steps}} - {{$pattern := getGlobPattern $step}} - {{$content := getGlobContent $step}} -
-
{{add $index 1}}.
-
- {{if $pattern}} - {{$pattern}} - {{else}} - all - {{end}} -
-
- {{$content}} -
-
- {{end}} -
-
- {{end}} - -
-

Build Matrix

-
- - - - - {{range getBuilders}} - - {{end}} - - - - {{$matrix := getBuildMatrix .}} - {{range getTargets}} - {{$target := .}} - - - {{range getBuilders}} - {{$builder := .}} - {{$build := index (index $matrix $builder) $target}} - - {{end}} - - {{end}} - -
Target / Builder{{.}}
{{$target}} - {{if $build}} - - ✓ - - {{else}} - - ✗ - - {{end}} -
-
-
- - {{if .BuiltFiles}} -
-

Available Downloads

-
- {{range .BuiltFiles}} -
-
-
{{.Target}}
-
{{.Builder}}
-
-
-
- Size: - {{formatFileSize .FileSize}} -
-
- Build ID: - {{.ID}} -
-
- -
- {{end}} -
-
- {{end}} - -
- - \ No newline at end of file diff --git a/cmd/buildweb/source_details.tpl b/cmd/buildweb/source_details.tpl deleted file mode 100644 index 59b61f0..0000000 --- a/cmd/buildweb/source_details.tpl +++ /dev/null @@ -1,240 +0,0 @@ - - - - {{.Package.Package}} - Source Archive Contents - - - -
- ← Back to Package - -

{{.Package.Package}}

-
- {{.Download.Kind}} source -
- - - -
-

Source Information

- - - - - - - {{if .Download.Path}} - - {{end}} - -
Package{{.Package.Package}}
Version{{.Package.Version}}
Download Kind{{.Download.Kind}}
URL{{.Download.URL}}
SHA256{{.Download.Sha256}}
Extract Path{{.Download.Path}}
File Size{{formatFileSize .FileSize}}
-
- - {{if eq .Download.Kind "blob"}} -
-

File Information

-
-
This is a single file (blob)
-
-
- {{else if eq .Download.Kind "none"}} -
-

No Download

-
-
This package has no downloadable source
-
-
- {{else}} -
-

Archive Contents

- {{$archiveInfo := getArchiveInfo .Package .Download}} - {{if $archiveInfo.Files}} -
-
{{len $archiveInfo.Files}} files in archive
-
- Total uncompressed size: {{formatFileSize $archiveInfo.TotalSize}} -
-
-
-
-
File Path
-
Size
-
- {{range $archiveInfo.Files}} -
-
{{.Name}}
-
{{formatFileSize .Size}}
-
- {{end}} -
- {{else}} -
-
Unable to read archive contents
-
Archive may be corrupted or use an unsupported format
-
- {{end}} -
- {{end}} -
- - - diff --git a/cmd/buildweb/utils.go b/cmd/buildweb/utils.go deleted file mode 100644 index b9c6e09..0000000 --- a/cmd/buildweb/utils.go +++ /dev/null @@ -1,121 +0,0 @@ -package buildweb - -import ( - "fmt" - "path/filepath" - "strings" - - "github.com/mrcyjanek/simplybs/pack" -) - -func FormatFileSize(bytes int64) string { - const unit = 1024 - if bytes < unit { - return fmt.Sprintf("%d B", bytes) - } - div, exp := int64(unit), 0 - for n := bytes / unit; n >= unit; n /= unit { - div *= unit - exp++ - } - return fmt.Sprintf("%.1f %cB", float64(bytes)/float64(div), "KMGTPE"[exp]) -} - -func GetGlobPattern(entry string) string { - if strings.Contains(entry, ":") { - parts := strings.SplitN(entry, ":", 2) - return parts[0] - } - return "" -} - -func GetGlobContent(entry string) string { - if strings.Contains(entry, ":") { - parts := strings.SplitN(entry, ":", 2) - return parts[1] - } - return entry -} - -func GetRelativePath(fromPackage, toPackage string) string { - fromDepth := strings.Count(fromPackage, "/") - upPath := strings.Repeat("../", fromDepth) - if toPackage == "index" { - return upPath + "index.html" - } - return upPath + toPackage + ".html" -} - -func GetMirrorPath(pkg *pack.PackageWithBuilds, download *pack.Download) string { - packageDepth := strings.Count(pkg.Package.Package, "/") - upPath := strings.Repeat("../", packageDepth+1) - - if download.Kind == "git" { - bundleName := filepath.Base(download.URL) + "-" + download.Sha256[0:8] + ".bundle" - return fmt.Sprintf("%ssource/%s", upPath, bundleName) - } - return fmt.Sprintf("%ssource/%s", upPath, filepath.Base(download.URL)) -} - -func GetBuiltFilePath(packageName, filePath string) string { - packageDepth := strings.Count(packageName, "/") - upPath := strings.Repeat("../", packageDepth+1) - return upPath + filePath -} - -func GetFileDetailsPath(packageName, builder, target, packageVersion, buildID string) string { - packageDepth := strings.Count(packageName, "/") - upPath := strings.Repeat("../", packageDepth) - fileName := fmt.Sprintf("%s-%s-%s.html", packageName, packageVersion, buildID) - return fmt.Sprintf("%sfiles/%s/%s/%s", upPath, builder, target, fileName) -} - -func GetBuildMatrix(pkg *pack.PackageWithBuilds) map[string]map[string]*pack.BuiltFile { - builders := getSortedBuilders() - targets := getSortedTargets() - - matrix := make(map[string]map[string]*pack.BuiltFile) - for _, builder := range builders { - matrix[builder] = make(map[string]*pack.BuiltFile) - for _, target := range targets { - matrix[builder][target] = nil - } - } - - for i := range pkg.BuiltFiles { - bf := &pkg.BuiltFiles[i] - if matrix[bf.Builder] != nil { - matrix[bf.Builder][bf.Target] = bf - } - } - - return matrix -} - -func GetBuildProgress(pkg *pack.PackageWithBuilds, totalBuilders, totalTargets int) int { - totalCombinations := totalBuilders * totalTargets - if totalCombinations == 0 { - return 0 - } - - builderTargetMap := make(map[string]bool) - for _, builtFile := range pkg.BuiltFiles { - key := builtFile.Builder + "/" + builtFile.Target - builderTargetMap[key] = true - } - - actualBuilds := len(builderTargetMap) - return (actualBuilds * 100) / totalCombinations -} - -func GetSourceFilePath(packageName, sourcePath string) string { - packageDepth := strings.Count(packageName, "/") - upPath := strings.Repeat("../", packageDepth+1) - return upPath + sourcePath -} - -func GetSourceDetailsPath(packageName string, downloadIndex int) string { - packageDepth := strings.Count(packageName, "/") - upPath := strings.Repeat("../", packageDepth) - return fmt.Sprintf("%ssource/%s-download-%d.html", upPath, packageName, downloadIndex) -} diff --git a/cmd/lint/lint.go b/cmd/lint/lint.go index 3fcb735..aec84ab 100644 --- a/cmd/lint/lint.go +++ b/cmd/lint/lint.go @@ -10,6 +10,7 @@ import ( "strings" "github.com/gobwas/glob" + "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/pack" @@ -151,21 +152,30 @@ func ensureValidName(pkg *pack.Package) { func ensureValidDependencies(pkg *pack.Package) { for _, dep := range pkg.Dependencies { split := strings.Split(dep, ":") - if len(split) <= 1 { + if len(split) <= 2 { log.Printf("Package %s has invalid dependency %s", pkg.Package, dep) continue } - prefix := split[0] usedIn := 0 for _, host := range host.SupportedHosts { - g := glob.MustCompile(prefix) + g := glob.MustCompile(split[0]) if g.Match(host.Triplet) { usedIn++ } } - if usedIn == 0 && prefix != "none" { - log.Printf("Package %s is not used in any of host.SupportedHosts %s", pkg.Package, prefix) + usedInBuilder := 0 + for _, b := range builder.Builders { + g := glob.MustCompile(split[1]) + if g.Match(b) { + usedInBuilder++ + } + } + if usedIn == 0 && split[0] != "none" { + log.Printf("Package %s is not used in any of host.SupportedHosts %s", pkg.Package, split[0]) + } + if usedInBuilder == 0 && split[1] != "none" { + log.Printf("Package %s is not used in any of host.SupportedHosts %s", pkg.Package, split[1]) } _, err := pack.FindPackage(split[1]) diff --git a/main.go b/main.go index b60e83f..d8ca79b 100644 --- a/main.go +++ b/main.go @@ -6,7 +6,6 @@ import ( "log" "strings" - cmd "github.com/mrcyjanek/simplybs/cmd/buildweb" "github.com/mrcyjanek/simplybs/cmd/lint" "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" @@ -22,7 +21,6 @@ func main() { argExtract := flag.Bool("extract", false, "Extract packages") argDownload := flag.Bool("download", false, "Download package sources") argBuild := flag.Bool("build", false, "Build packages") - argBuildWeb := flag.Bool("buildweb", false, "Generate static website with package information") argLint := flag.Bool("lint", false, "Lint packages") argVersion := flag.Bool("v", false, "Show version") argShell := flag.Bool("shell", false, "Extract source and start shell with build environment") @@ -32,10 +30,6 @@ func main() { fmt.Println("simplybs version 0.0.0") return } - if *argBuildWeb { - cmd.BuildWeb() - return - } if *argCleanup { pack.Cleanup() return @@ -65,16 +59,13 @@ func main() { return } - hosts := strings.Split(*argHost, ",") - for _, h := range hosts { + hosts := strings.SplitSeq(*argHost, ",") + for h := range hosts { host := host.SupportedHosts[h] if host == nil { crash.Handle(fmt.Errorf("host %s not supported", h)) } buildForHost(host, packageNames, *argList, *argExtract, *argBuild, *argShell) - if *argBuildWeb { - cmd.BuildWeb() - } } } diff --git a/pack/build.go b/pack/build.go index 46ac042..36ee586 100644 --- a/pack/build.go +++ b/pack/build.go @@ -9,6 +9,7 @@ import ( "strings" "github.com/gobwas/glob" + "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/utils" ) @@ -100,12 +101,17 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { if buildDependencies { for _, dep := range p.Dependencies { if strings.Contains(dep, ":") { - prefix := strings.Split(dep, ":")[0] - g := glob.MustCompile(prefix) + builderPrefix := strings.Split(dep, ":")[0] + hostPrefix := strings.Split(dep, ":")[1] + g := glob.MustCompile(hostPrefix) if !g.Match(h.Triplet) { continue } - dep = dep[strings.Index(dep, ":")+1:] + g = glob.MustCompile(builderPrefix) + if !g.Match(builder.GetName()) { + continue + } + dep = dep[len(builderPrefix)+len(hostPrefix)+2:] } else { log.Fatalf("Invalid dependency: %s", dep) } diff --git a/pack/info.go b/pack/info.go index 7f4223f..1b5c583 100644 --- a/pack/info.go +++ b/pack/info.go @@ -11,7 +11,6 @@ import ( "strconv" "strings" - "github.com/gobwas/glob" "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" @@ -30,36 +29,36 @@ func (p *Package) FilterForHost(h *host.Host) *Package { filtered.Build.Steps = []string{} for _, dep := range p.Dependencies { - if strings.Contains(dep, ":") { - prefix := strings.Split(dep, ":")[0] - g := glob.MustCompile(prefix) - if !g.Match(h.Triplet) { - continue - } + is := utils.ParseIfString(dep) + if !is.HostGlob().Match(h.Triplet) { + continue } - filtered.Dependencies = append(filtered.Dependencies, dep) + if !is.BuilderGlob().Match(builder.GetName()) { + continue + } + filtered.Dependencies = append(filtered.Dependencies, is.Content) } for _, env := range p.Build.Env { - if strings.Contains(env, ":") { - prefix := strings.Split(env, ":")[0] - g := glob.MustCompile(prefix) - if !g.Match(h.Triplet) { - continue - } + is := utils.ParseIfString(env) + if !is.HostGlob().Match(h.Triplet) { + continue + } + if !is.BuilderGlob().Match(builder.GetName()) { + continue } - filtered.Build.Env = append(filtered.Build.Env, env) + filtered.Build.Env = append(filtered.Build.Env, is.Content) } for _, step := range p.Build.Steps { - if strings.Contains(step, ":") { - prefix := strings.Split(step, ":")[0] - g := glob.MustCompile(prefix) - if !g.Match(h.Triplet) { - continue - } + is := utils.ParseIfString(step) + if !is.HostGlob().Match(h.Triplet) { + continue } - filtered.Build.Steps = append(filtered.Build.Steps, step) + if !is.BuilderGlob().Match(builder.GetName()) { + continue + } + filtered.Build.Steps = append(filtered.Build.Steps, is.Content) } return filtered @@ -69,9 +68,8 @@ func (p *Package) GeneratePackageInfo(h *host.Host) string { pkgs := map[string]interface{}{} pkgs["_target"] = p.FilterForHost(h) for _, dep := range p.Dependencies { - if strings.Contains(dep, ":") { - dep = dep[strings.Index(dep, ":")+1:] - } + is := utils.ParseIfString(dep) + dep := is.Content pkg, err := FindPackage(dep) if err != nil { log.Fatalf("Package %s not found in info", dep) diff --git a/pack/main.go b/pack/main.go index aca947f..7bb568d 100644 --- a/pack/main.go +++ b/pack/main.go @@ -35,7 +35,7 @@ type Package struct { type BuiltFile struct { Builder string `json:"builder"` // e.g. "darwin_arm64" - Target string `json:"target"` // e.g. "aarch64-apple-ios" + Target string `json:"target"` // e.g. "*:aarch64-apple-ios" ID string `json:"id"` // short hash InfoPath string `json:"info_path"` // relative path to .info.txt ArchPath string `json:"arch_path"` // relative path to .tar.gz @@ -48,11 +48,6 @@ type PackageWithBuilds struct { } var bootstrapPackages = []string{ - "native/bootstrap/perl", - "native/bootstrap/cpan/autodie", - "native/bootstrap/cpan/archive-cpio", - "native/bootstrap/cpan/archive-zip", - "native/bootstrap/cpan/sub-override", "native/bootstrap/strip-nondeterminism", } @@ -70,9 +65,9 @@ func FindPackage(name string) (*Package, error) { if !strings.Contains(pkg.Package, "/bootstrap/") { for _, pkgName := range bootstrapPackages { - pkg.Dependencies = append(pkg.Dependencies, "*:"+pkgName) + pkg.Dependencies = append(pkg.Dependencies, "*:*:"+pkgName) } - pkg.Build.Steps = append(pkg.Build.Steps, "*:$PREFIX/native/bootstrap/bin/perl $PREFIX/native/bootstrap/bin/strip-nondeterminism-recursive --directory $STAGING_DIR") + // pkg.Build.Steps = append(pkg.Build.Steps, "*:$PREFIX/native/bootstrap/bin/perl $PREFIX/native/bootstrap/bin/strip-nondeterminism-recursive --directory $STAGING_DIR") } return &pkg, nil } diff --git a/packages/native/ncurses.json b/packages/native/ncurses.json new file mode 100644 index 0000000..6ac1da6 --- /dev/null +++ b/packages/native/ncurses.json @@ -0,0 +1,62 @@ +{ + "package": "native/ncurses", + "version": "6.5", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "136d91bc269a9a5785e5f9e980bc76ab57428f604ce3e5a5a90cebc767971cc6", + "url": "http://ftpmirror.gnu.org/gnu/ncurses/ncurses-6.5.tar.gz" + } + ], + "dependencies": [ + "*:*:native/make" + ], + "build": { + "env": [ + "*:config_opts=--host=$HOST --prefix=$PREFIX/native", + "*:config_opts=$config_opts --disable-shared", + "*:config_opts=$config_opts --with-build-cc=gcc", + "*:config_opts=$config_opts --without-debug", + "*:config_opts=$config_opts --without-ada", + "*:config_opts=$config_opts --without-cxx-binding", + "*:config_opts=$config_opts --without-cxx", + "*:config_opts=$config_opts --without-ticlib", + "*:config_opts=$config_opts --without-tic", + "*:config_opts=$config_opts --without-progs", + "*:config_opts=$config_opts --without-tests", + "*:config_opts=$config_opts --without-tack", + "*:config_opts=$config_opts --without-manpages", + "*:config_opts=$config_opts --with-termlib", + "*:config_opts=$config_opts --disable-tic-depends", + "*:config_opts=$config_opts --disable-big-strings", + "*:config_opts=$config_opts --disable-ext-colors", + "*:config_opts=$config_opts --enable-pc-files", + "*:config_opts=$config_opts --without-shared", + "*:config_opts=$config_opts --without-pthread", + "*:config_opts=$config_opts --disable-rpath", + "*:config_opts=$config_opts --disable-colorfgbg", + "*:config_opts=$config_opts --disable-ext-mouse", + "*:config_opts=$config_opts --disable-symlinks", + "*:config_opts=$config_opts --enable-warnings", + "*:config_opts=$config_opts --enable-assertions", + "*:config_opts=$config_opts --with-default-terminfo-dir=/etc/_terminfo_", + "*:config_opts=$config_opts --with-terminfo-dirs=/etc/_terminfo_", + "*:config_opts=$config_opts --enable-database", + "*:config_opts=$config_opts --enable-sp-funcs", + "*:config_opts=$config_opts --disable-term-driver", + "*:config_opts=$config_opts --enable-interop", + "*:config_opts=$config_opts --enable-widec", + "*:SHOULD_BUILD=echo", + "*:*-linux-*:SHOULD_BUILD=", + "*:*-w64-mingw32:SHOULD_BUILD=", + "*:*-apple-darwin:SHOULD_BUILD=" + ], + "steps": [ + "*:$SHOULD_BUILD cp $PATCH_DIR/ncurses/fallback.c ncurses", + "*:$SHOULD_BUILD ./configure $config_opts", + "*:$SHOULD_BUILD make -j$NUM_CORES $build_opts", + "*:$SHOULD_BUILD make install.libs DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/native/unzip.json b/packages/native/unzip.json new file mode 100644 index 0000000..1604805 --- /dev/null +++ b/packages/native/unzip.json @@ -0,0 +1,24 @@ +{ + "package": "native/unzip", + "version": "6.0-29-debian", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "e811196e79092a387e6ff0b345780710acfab1c4", + "url": "https://salsa.debian.org/sanvila/unzip.git" + } + ], + "dependencies": [ + "*:*:native/bzip2", + "*:*:native/make", + "*:*:native/sed" + ], + "build": { + "steps": [ + "*:make -f unix/Makefile D_USE_BZ2=-DUSE_BZIP2 L_BZ2=-lbz2 CC=\"$CC\" LF2=\"$LDFLAGS\" CF=\"$CFLAGS $CPPFLAGS -I.\" unzips", + "*:make -f unix/Makefile install prefix=$STAGING_DIR$PREFIX/native", + "*:cd $STAGING_DIR$PREFIX/native/bin && rm -f zipinfo && ln unzip zipinfo" + ] + } +} \ No newline at end of file diff --git a/utils/ifstring.go b/utils/ifstring.go new file mode 100644 index 0000000..2810b9a --- /dev/null +++ b/utils/ifstring.go @@ -0,0 +1,28 @@ +package utils + +import ( + "strings" + + "github.com/gobwas/glob" +) + +type IfString struct { + Builder string + Host string + Content string +} + +func (is *IfString) BuilderGlob() glob.Glob { + return glob.MustCompile(is.Builder) +} +func (is *IfString) HostGlob() glob.Glob { + return glob.MustCompile(is.Host) +} + +func ParseIfString(str string) *IfString { + is := &IfString{} + is.Builder = strings.Split(str, ":")[0] + is.Host = strings.Split(str, ":")[1] + is.Content = str[len(is.Builder)+len(is.Host)+2:] + return is +} From f46563768be35a2fcc95f578cc263e24b76aee84 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 17 Nov 2025 10:04:22 +0100 Subject: [PATCH 027/200] wip --- builder/builder_darwin_arm64.go | 26 +- builder/builder_linux_amd64.go | 26 +- builder/builder_linux_arm64.go | 26 +- builder/default.go | 6 +- cmd/lint/lint.go | 42 +-- host/main.go | 306 +++++++++--------- pack/build.go | 87 ++--- pack/info.go | 45 +-- pack/main.go | 17 +- packages/audit-userspace.json | 32 +- packages/boost.json | 78 ++--- packages/bzip2.json | 10 +- packages/eudev.json | 22 +- packages/expat.json | 18 +- packages/glib.json | 24 +- packages/gtest.json | 28 +- packages/hidapi.json | 32 +- packages/icu4c.json | 20 +- packages/libcap.json | 8 +- packages/libevent.json | 38 +-- packages/libffi.json | 10 +- packages/libiconv.json | 27 +- packages/libusb.json | 34 +- packages/libxcrypt.json | 14 +- packages/native/_.json | 23 +- packages/native/android_ndk.json | 60 ++-- packages/native/apple-sdk-macos.json | 68 ++-- packages/native/autoconf.json | 12 +- packages/native/automake.json | 18 +- packages/native/bash.json | 8 +- packages/native/binutils@2.42.json | 50 +-- packages/native/bison.json | 16 +- packages/native/boost-b2.json | 6 +- .../native/bootstrap/cpan/archive-cpio.json | 26 -- .../native/bootstrap/cpan/archive-zip.json | 26 -- packages/native/bootstrap/cpan/autodie.json | 26 -- .../native/bootstrap/cpan/sub-override.json | 26 -- packages/native/bootstrap/make.json | 20 -- packages/native/bootstrap/perl.json | 26 -- .../bootstrap/strip-nondeterminism.json | 29 +- packages/native/bzip2.json | 10 +- packages/native/cctools-port.json | 36 +-- packages/native/cmake-toolchain.json | 4 +- packages/native/cmake.json | 14 +- packages/native/config.json | 6 +- packages/native/cpio.json | 8 +- packages/native/crosstool-ng.json | 64 ++-- packages/native/ct-tools.json | 200 ++++++------ packages/native/curl.json | 14 +- packages/native/dart-bin@3.4.0-247.0.dev.json | 14 +- packages/native/dart@3.5.0-278.0.dev.json | 86 ++--- packages/native/dart@3.5.0-307.0.dev.json | 86 ++--- packages/native/dart@3.6.0-2.0.dev.json | 86 ++--- packages/native/dart@3.7.0-224.0.dev.json | 88 ++--- packages/native/dart@3.7.0-232.0.dev.json | 88 ++--- packages/native/dart@3.7.0-27.0.dev.json | 88 ++--- packages/native/dart@3.7.0.json | 88 ++--- packages/native/dart@3.8.0-171.0.dev.json | 88 ++--- packages/native/dart@3.8.0-237.0.dev.json | 88 ++--- packages/native/dart@3.9.0-27.0.dev.json | 88 ++--- packages/native/dart@3.9.0-3.0.dev.json | 88 ++--- packages/native/dart@3.9.4.json | 84 ++--- packages/native/expat.json | 18 +- packages/native/file.json | 8 +- packages/native/flex.json | 14 +- packages/native/gawk.json | 26 +- packages/native/gawk@5.2.2.json | 14 +- packages/native/gettext.json | 22 +- packages/native/git.json | 20 +- packages/native/gmp.json | 20 +- packages/native/gn.json | 16 +- packages/native/gperf.json | 10 +- packages/native/help2man.json | 14 +- packages/native/libc++.json | 28 +- packages/native/libiconv.json | 22 +- packages/native/libpsl.json | 8 +- packages/native/libtapi.json | 14 +- packages/native/libtool.json | 10 +- packages/native/libxml2.json | 12 +- packages/native/llvm-ar.json | 16 +- packages/native/llvm-nm.json | 16 +- packages/native/llvm-strip.json | 16 +- packages/native/llvm@google@18.0.0git.json | 42 +-- packages/native/llvm@google@19.0.1.json | 52 +-- packages/native/llvm@google@r563880.json | 44 +-- packages/native/m4.json | 10 +- packages/native/make.json | 12 +- packages/native/meson.json | 8 +- packages/native/mpc.json | 18 +- packages/native/mpfr.json | 16 +- packages/native/ncurses.json | 78 +++-- packages/native/ndk.json | 34 +- packages/native/ninja.json | 10 +- packages/native/nproc.json | 6 +- packages/native/openssl.json | 26 +- packages/native/osx-cross.json | 86 ++--- packages/native/p7zip.json | 14 +- packages/native/patch.json | 10 +- packages/native/pbzx.json | 10 +- packages/native/perl.json | 10 +- packages/native/pkgconf.json | 24 +- packages/native/protobuf.json | 48 +-- packages/native/python@3.11.13.json | 29 -- packages/native/python@3.11.json | 27 ++ packages/native/python@3.14.json | 28 ++ packages/native/rsync.json | 20 +- packages/native/rust@1_54_0.json | 47 +-- packages/native/rust@1_55_0.json | 48 +-- packages/native/rust@1_56_1.json | 48 +-- packages/native/rust@1_57_0.json | 48 +-- packages/native/rust@1_58_1.json | 48 +-- packages/native/rust@1_59_0.json | 48 +-- packages/native/rust@1_60_0.json | 48 +-- packages/native/rust@1_61_0.json | 48 +-- packages/native/rust@1_62_1.json | 48 +-- packages/native/rust@1_63_0.json | 48 +-- packages/native/rust@1_64_0.json | 48 +-- packages/native/rust@1_65_0.json | 48 +-- packages/native/rust@1_66_1.json | 54 ++-- packages/native/rust@1_67_1.json | 48 +-- packages/native/rust@1_68_2.json | 48 +-- packages/native/rust@1_69_0.json | 48 +-- packages/native/rust@1_70_0.json | 48 +-- packages/native/rust@1_71_1.json | 48 +-- packages/native/rust@1_72_1.json | 48 +-- packages/native/rust@1_73_0.json | 48 +-- packages/native/rust@1_74_1.json | 48 +-- packages/native/rust@1_75_0.json | 48 +-- packages/native/rust@1_76_0.json | 44 +-- packages/native/rust@1_77_1.json | 44 +-- packages/native/rust@1_78_0.json | 42 +-- packages/native/rust@1_79_0.json | 42 +-- packages/native/rust@1_80_1.json | 42 +-- packages/native/rust@1_81_0.json | 42 +-- packages/native/rust@1_82_0.json | 42 +-- packages/native/rust@1_83_0.json | 42 +-- packages/native/rust@1_84_1.json | 42 +-- packages/native/rust@1_85_1.json | 42 +-- packages/native/rust@1_86_0.json | 42 +-- packages/native/rust@1_87_0.json | 42 +-- packages/native/rust@1_88_0.json | 42 +-- packages/native/rust@1_89_0.json | 42 +-- packages/native/rust@1_90_0.json | 60 ++-- packages/native/sed.json | 10 +- packages/native/texinfo.json | 18 +- packages/native/unistring.json | 14 +- packages/native/unzip.json | 6 +- packages/native/xar.json | 24 +- packages/native/xmlto.json | 22 +- packages/native/xz.json | 40 +-- packages/native/zlib.json | 18 +- packages/ncurses.json | 86 ++--- packages/node@25.json | 30 ++ packages/openssl.json | 84 ++--- packages/pcre2.json | 8 +- packages/polyseed.json | 6 +- packages/protobuf.json | 40 +-- packages/readline.json | 20 +- packages/selinux.json | 38 +-- packages/sodium.json | 30 +- packages/tor.json | 74 ++--- packages/torch.json | 28 +- packages/unbound.json | 40 +-- packages/unwind.json | 22 +- packages/xz.json | 44 +-- packages/zeromq.json | 22 +- packages/zlib.json | 24 +- packages/zstd.json | 24 +- sources.json | 10 + utils/env.go | 26 +- utils/{ => ifstring}/ifstring.go | 9 +- 171 files changed, 3115 insertions(+), 3233 deletions(-) delete mode 100644 packages/native/bootstrap/cpan/archive-cpio.json delete mode 100644 packages/native/bootstrap/cpan/archive-zip.json delete mode 100644 packages/native/bootstrap/cpan/autodie.json delete mode 100644 packages/native/bootstrap/cpan/sub-override.json delete mode 100644 packages/native/bootstrap/make.json delete mode 100644 packages/native/bootstrap/perl.json delete mode 100644 packages/native/python@3.11.13.json create mode 100644 packages/native/python@3.11.json create mode 100644 packages/native/python@3.14.json create mode 100644 packages/node@25.json rename utils/{ => ifstring}/ifstring.go (73%) diff --git a/builder/builder_darwin_arm64.go b/builder/builder_darwin_arm64.go index 4b4c038..c64e418 100644 --- a/builder/builder_darwin_arm64.go +++ b/builder/builder_darwin_arm64.go @@ -4,18 +4,18 @@ import "runtime" var HostBuilder = Builder{ GlobalEnv: []string{ - "*:HOST=aarch64-apple-darwin", - "*:TARGET=aarch64-apple-darwin", - "*:OSX_MIN_VERSION=13", - "*:CC=/usr/bin/clang", - "*:CXX=/usr/bin/clang++", - "*:AR=/usr/bin/ar", - "*:RANLIB=/usr/bin/ranlib", - "*:STRIP=/usr/bin/strip", - "*:NM=/usr/bin/nm", - "*:OTOOL=/usr/bin/otool", - "*:INSTALL_NAME_TOOL=/usr/bin/install_name_tool", - "*:BUILDER_GOOS=" + runtime.GOOS, - "*:BUILDER_GOARCH=" + runtime.GOARCH, + "*:*:HOST=aarch64-apple-darwin", + "*:*:TARGET=aarch64-apple-darwin", + "*:*:OSX_MIN_VERSION=13", + "*:*:CC=/usr/bin/clang", + "*:*:CXX=/usr/bin/clang++", + "*:*:AR=/usr/bin/ar", + "*:*:RANLIB=/usr/bin/ranlib", + "*:*:STRIP=/usr/bin/strip", + "*:*:NM=/usr/bin/nm", + "*:*:OTOOL=/usr/bin/otool", + "*:*:INSTALL_NAME_TOOL=/usr/bin/install_name_tool", + "*:*:BUILDER_GOOS=" + runtime.GOOS, + "*:*:BUILDER_GOARCH=" + runtime.GOARCH, }, } diff --git a/builder/builder_linux_amd64.go b/builder/builder_linux_amd64.go index 1135d92..3bc5e95 100644 --- a/builder/builder_linux_amd64.go +++ b/builder/builder_linux_amd64.go @@ -4,18 +4,18 @@ import "runtime" var HostBuilder = Builder{ GlobalEnv: []string{ - "*:HOST=x86_64-linux-gnu", - "*:TARGET=x86_64-linux-gnu", - "*:CC=clang", - "*:CXX=clang++", - "*:AR=ar", - "*:RANLIB=ranlib", - "*:STRIP=strip", - "*:NM=nm", - "*:OTOOL=otool", - "*:AUTOMAKE=automake", - "*:INSTALL_NAME_TOOL=install_name_tool", - "*:BUILDER_GOOS=" + runtime.GOOS, - "*:BUILDER_GOARCH=" + runtime.GOARCH, + "*:*:HOST=x86_64-linux-gnu", + "*:*:TARGET=x86_64-linux-gnu", + "*:*:CC=clang", + "*:*:CXX=clang++", + "*:*:AR=ar", + "*:*:RANLIB=ranlib", + "*:*:STRIP=strip", + "*:*:NM=nm", + "*:*:OTOOL=otool", + "*:*:AUTOMAKE=automake", + "*:*:INSTALL_NAME_TOOL=install_name_tool", + "*:*:BUILDER_GOOS=" + runtime.GOOS, + "*:*:BUILDER_GOARCH=" + runtime.GOARCH, }, } diff --git a/builder/builder_linux_arm64.go b/builder/builder_linux_arm64.go index 1a7464c..625601d 100644 --- a/builder/builder_linux_arm64.go +++ b/builder/builder_linux_arm64.go @@ -4,18 +4,18 @@ import "runtime" var HostBuilder = Builder{ GlobalEnv: []string{ - "*:HOST=aarch64-linux-gnu", - "*:TARGET=aarch64-linux-gnu", - "*:CC=aarch64-linux-gnu-gcc", - "*:CXX=aarch64-linux-gnu-g++", - "*:AR=ar", - "*:RANLIB=ranlib", - "*:STRIP=strip", - "*:NM=nm", - "*:OTOOL=otool", - "*:AUTOMAKE=automake", - "*:INSTALL_NAME_TOOL=install_name_tool", - "*:BUILDER_GOOS=" + runtime.GOOS, - "*:BUILDER_GOARCH=" + runtime.GOARCH, + "*:*:HOST=aarch64-linux-gnu", + "*:*:TARGET=aarch64-linux-gnu", + "*:*:CC=aarch64-linux-gnu-gcc", + "*:*:CXX=aarch64-linux-gnu-g++", + "*:*:AR=ar", + "*:*:RANLIB=ranlib", + "*:*:STRIP=strip", + "*:*:NM=nm", + "*:*:OTOOL=otool", + "*:*:AUTOMAKE=automake", + "*:*:INSTALL_NAME_TOOL=install_name_tool", + "*:*:BUILDER_GOOS=" + runtime.GOOS, + "*:*:BUILDER_GOARCH=" + runtime.GOARCH, }, } diff --git a/builder/default.go b/builder/default.go index 85a3f43..e012e23 100644 --- a/builder/default.go +++ b/builder/default.go @@ -5,7 +5,7 @@ import ( "runtime" "strings" - "github.com/mrcyjanek/simplybs/utils" + "github.com/mrcyjanek/simplybs/utils/ifstring" ) func GetName() string { @@ -28,7 +28,7 @@ func shellOutput(cmd string) string { func (b *Builder) GetCC() string { for _, env := range b.GlobalEnv { - is := utils.ParseIfString(env) + is := ifstring.ParseIfString(env) if strings.HasPrefix(is.Content, "CC=") { return is.Content[3:] } @@ -38,7 +38,7 @@ func (b *Builder) GetCC() string { func (b *Builder) GetCXX() string { for _, env := range b.GlobalEnv { - is := utils.ParseIfString(env) + is := ifstring.ParseIfString(env) if strings.HasPrefix(is.Content, "CXX=") { return is.Content[4:] } diff --git a/cmd/lint/lint.go b/cmd/lint/lint.go index aec84ab..3590548 100644 --- a/cmd/lint/lint.go +++ b/cmd/lint/lint.go @@ -9,11 +9,11 @@ import ( "sort" "strings" - "github.com/gobwas/glob" "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/pack" + "github.com/mrcyjanek/simplybs/utils/ifstring" ) type RepositoryInfo struct { @@ -84,9 +84,8 @@ func fixFormatting() { for _, dep := range v { if s, ok := dep.(string); ok { - parts := strings.Split(s, ":") - depName := parts[len(parts)-1] - if strings.HasPrefix(depName, "native") { + is := ifstring.ParseIfString(s) + if strings.HasPrefix(is.Content, "native") { nativeDeps = append(nativeDeps, s) } else { otherDeps = append(otherDeps, s) @@ -151,34 +150,28 @@ func ensureValidName(pkg *pack.Package) { func ensureValidDependencies(pkg *pack.Package) { for _, dep := range pkg.Dependencies { - split := strings.Split(dep, ":") - if len(split) <= 2 { - log.Printf("Package %s has invalid dependency %s", pkg.Package, dep) - continue - } + is := ifstring.ParseIfString(dep) usedIn := 0 for _, host := range host.SupportedHosts { - g := glob.MustCompile(split[0]) - if g.Match(host.Triplet) { + if is.HostGlob().Match(host.Triplet) { usedIn++ } } usedInBuilder := 0 for _, b := range builder.Builders { - g := glob.MustCompile(split[1]) - if g.Match(b) { + if is.BuilderGlob().Match(b) { usedInBuilder++ } } - if usedIn == 0 && split[0] != "none" { - log.Printf("Package %s is not used in any of host.SupportedHosts %s", pkg.Package, split[0]) + if usedIn == 0 && is.Host != "none" { + log.Printf("Package %s is not used in any of host.SupportedHosts %s", pkg.Package, is.Host) } - if usedInBuilder == 0 && split[1] != "none" { - log.Printf("Package %s is not used in any of host.SupportedHosts %s", pkg.Package, split[1]) + if usedInBuilder == 0 && is.Builder != "none" { + log.Printf("Package %s is not used in any of builder.Builders %s", pkg.Package, is.Builder) } - _, err := pack.FindPackage(split[1]) + _, err := pack.FindPackage(is.Content) if err != nil { log.Printf("Package %s has invalid dependency %s: %v", pkg.Package, dep, err) } @@ -202,16 +195,11 @@ func checkCyclesForHost(pkgs []*pack.Package, hostTriplet string) { for _, dep := range pkg.Dependencies { var actualDep string - if strings.Contains(dep, ":") { - prefix := strings.Split(dep, ":")[0] - g := glob.MustCompile(prefix) - if !g.Match(hostTriplet) { - continue - } - actualDep = dep[strings.Index(dep, ":")+1:] - } else { - actualDep = dep + is := ifstring.ParseIfString(dep) + if is.HostGlob().Match(hostTriplet) { + continue } + actualDep = is.Content graph[pkg.Package] = append(graph[pkg.Package], actualDep) } } diff --git a/host/main.go b/host/main.go index 0ec41c6..77425e1 100644 --- a/host/main.go +++ b/host/main.go @@ -55,209 +55,209 @@ var SupportedHosts = map[string]*Host{ "aarch64-apple-darwin": { Triplet: "aarch64-apple-darwin", Env: []string{ - "*:HOST=aarch64-apple-darwin25", - "*:TARGET=aarch64-apple-darwin25", - "*:OSX_MIN_VERSION=10.16", - "*:LD64_VERSION=609", - "*:CC_target=arm64-apple-darwin", - "*:CC=aarch64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", - "*:CXX=aarch64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", - "*:CFLAGS=", - "*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:RANLIB=llvm-ranlib", - "*:AR=llvm-ar", - "*:LIBTOOL=llvm-libtool-darwin", - "*:SDK_PATH=$PREFIX/native/SDK/MacOSX26.0.sdk", - "*:LDFLAGS=-lc++ -lc++abi", + "*:*:HOST=aarch64-apple-darwin25", + "*:*:TARGET=aarch64-apple-darwin25", + "*:*:OSX_MIN_VERSION=10.16", + "*:*:LD64_VERSION=609", + "*:*:CC_target=arm64-apple-darwin", + "*:*:CC=aarch64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:*:CXX=aarch64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:*:CFLAGS=", + "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", + "*:*:RANLIB=llvm-ranlib", + "*:*:AR=llvm-ar", + "*:*:LIBTOOL=llvm-libtool-darwin", + "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX26.0.sdk", + "*:*:LDFLAGS=-lc++ -lc++abi", }, }, "x86_64-apple-darwin": { Triplet: "x86_64-apple-darwin", Env: []string{ - "*:HOST=x86_64-apple-darwin", - "*:TARGET=x86_64-apple-darwin", - "*:OSX_MIN_VERSION=10.16", - "*:LD64_VERSION=609", - "*:CC_target=x86_64-apple-darwin", - "*:CC=x86_64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", - "*:CXX=x86_64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", - "*:CFLAGS=", - "*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:RANLIB=llvm-ranlib", - "*:AR=llvm-ar", - "*:LIBTOOL=llvm-libtool-darwin", - "*:SDK_PATH=$PREFIX/native/SDK/MacOSX26.0.sdk", - "*:LDFLAGS=-lc++ -lc++abi", + "*:*:HOST=x86_64-apple-darwin", + "*:*:TARGET=x86_64-apple-darwin", + "*:*:OSX_MIN_VERSION=10.16", + "*:*:LD64_VERSION=609", + "*:*:CC_target=x86_64-apple-darwin", + "*:*:CC=x86_64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:*:CXX=x86_64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:*:CFLAGS=", + "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", + "*:*:RANLIB=llvm-ranlib", + "*:*:AR=llvm-ar", + "*:*:LIBTOOL=llvm-libtool-darwin", + "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX26.0.sdk", + "*:*:LDFLAGS=-lc++ -lc++abi", }, }, "aarch64-apple-ios": { Triplet: "aarch64-apple-ios", Env: []string{ - "*:HOST=aarch64-apple-ios", - "*:TARGET=aarch64-apple-ios", - "*:IOS_MIN_VERSION=12", - "*:LD64_VERSION=609", - "*:CC_target=aarch64-apple-ios", - "*:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + "/usr/include -I$PREFIX/include", - "*:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + "/usr/include -I$PREFIX/include", - "*:CFLAGS=", - "*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:RANLIB=" + shellOutput("xcrun -f ranlib"), - "*:AR=" + shellOutput("xcrun -f ar"), - "*:LIBTOOL=" + shellOutput("xcrun -f libtool"), - "*:SDK_PATH=" + shellOutput("xcrun --sdk iphoneos --show-sdk-path"), + "*:*:HOST=aarch64-apple-ios", + "*:*:TARGET=aarch64-apple-ios", + "*:*:IOS_MIN_VERSION=12", + "*:*:LD64_VERSION=609", + "*:*:CC_target=aarch64-apple-ios", + "*:*:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:*:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:*:CFLAGS=", + "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", + "*:*:RANLIB=" + shellOutput("xcrun -f ranlib"), + "*:*:AR=" + shellOutput("xcrun -f ar"), + "*:*:LIBTOOL=" + shellOutput("xcrun -f libtool"), + "*:*:SDK_PATH=" + shellOutput("xcrun --sdk iphoneos --show-sdk-path"), }, }, "aarch64-apple-ios-simulator": { Triplet: "aarch64-apple-ios-simulator", Env: []string{ - "*:HOST=aarch64-apple-ios-simulator", - "*:TARGET=aarch64-apple-ios-simulator", - "*:IOS_MIN_VERSION=12", - "*:LD64_VERSION=609", - "*:CC_target=aarch64-apple-ios-simulator", - "*:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + "/usr/include -I$PREFIX/include", - "*:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + "/usr/include -I$PREFIX/include", - "*:CFLAGS=", - "*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:RANLIB=" + shellOutput("xcrun -f ranlib"), - "*:AR=" + shellOutput("xcrun -f ar"), - "*:LIBTOOL=" + shellOutput("xcrun -f libtool"), - "*:SDK_PATH=" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path"), + "*:*:HOST=aarch64-apple-ios-simulator", + "*:*:TARGET=aarch64-apple-ios-simulator", + "*:*:IOS_MIN_VERSION=12", + "*:*:LD64_VERSION=609", + "*:*:CC_target=aarch64-apple-ios-simulator", + "*:*:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:*:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:*:CFLAGS=", + "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", + "*:*:RANLIB=" + shellOutput("xcrun -f ranlib"), + "*:*:AR=" + shellOutput("xcrun -f ar"), + "*:*:LIBTOOL=" + shellOutput("xcrun -f libtool"), + "*:*:SDK_PATH=" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path"), }, }, // "x86_64-linux-musl": { // Triplet: "x86_64-linux-musl", // Env: []string{ - // "*:HOST=x86_64-linux-musl", - // "*:TARGET=x86_64-linux-musl", - // "*:CC_target=x86_64-linux-musl", - // "*:CC=x86_64-linux-musl-gcc", - // "*:CXX=x86_64-linux-musl-g++", - // "*:CXXFLAGS=$CFLAGS", - // "*:RANLIB=x86_64-linux-musl-ranlib", - // "*:AR=x86_64-linux-musl-ar", - // "*:AS=x86_64-linux-musl-as", - // "*:LIBTOOL=x86_64-linux-musl-libtool", - // "*:OBJCOPY=x86_64-linux-musl-objcopy", - // "*:OBJDUMP=x86_64-linux-musl-objdump", - // "*:STRIP=x86_64-linux-musl-strip", - // "*:READELF=x86_64-linux-musl-readelf", - // "*:LD=x86_64-linux-musl-ld", - // "*:NM=x86_64-linux-musl-nm", + // "*:*:HOST=x86_64-linux-musl", + // "*:*:TARGET=x86_64-linux-musl", + // "*:*:CC_target=x86_64-linux-musl", + // "*:*:CC=x86_64-linux-musl-gcc", + // "*:*:CXX=x86_64-linux-musl-g++", + // "*:*:CXXFLAGS=$CFLAGS", + // "*:*:RANLIB=x86_64-linux-musl-ranlib", + // "*:*:AR=x86_64-linux-musl-ar", + // "*:*:AS=x86_64-linux-musl-as", + // "*:*:LIBTOOL=x86_64-linux-musl-libtool", + // "*:*:OBJCOPY=x86_64-linux-musl-objcopy", + // "*:*:OBJDUMP=x86_64-linux-musl-objdump", + // "*:*:STRIP=x86_64-linux-musl-strip", + // "*:*:READELF=x86_64-linux-musl-readelf", + // "*:*:LD=x86_64-linux-musl-ld", + // "*:*:NM=x86_64-linux-musl-nm", // }, // }, // "x86_64-w64-mingw32": { // Triplet: "x86_64-w64-mingw32", // Env: []string{ - // "*:HOST=x86_64-w64-mingw32", - // "*:TARGET=x86_64-w64-mingw32", - // "*:CC_target=x86_64-w64-mingw32", - // "*:CC=x86_64-w64-mingw32-gcc", - // "*:CXX=x86_64-w64-mingw32-g++", - // "*:CXXFLAGS=$CFLAGS", - // "*:RANLIB=x86_64-w64-mingw32-ranlib", - // "*:AR=x86_64-w64-mingw32-ar", - // "*:AS=x86_64-w64-mingw32-as", - // "*:LIBTOOL=x86_64-w64-mingw32-libtool", - // "*:OBJCOPY=x86_64-w64-mingw32-objcopy", - // "*:OBJDUMP=x86_64-w64-mingw32-objdump", - // "*:STRIP=x86_64-w64-mingw32-strip", - // "*:READELF=x86_64-w64-mingw32-readelf", - // "*:LD=x86_64-w64-mingw32-ld", - // "*:NM=x86_64-w64-mingw32-nm", + // "*:*:HOST=x86_64-w64-mingw32", + // "*:*:TARGET=x86_64-w64-mingw32", + // "*:*:CC_target=x86_64-w64-mingw32", + // "*:*:CC=x86_64-w64-mingw32-gcc", + // "*:*:CXX=x86_64-w64-mingw32-g++", + // "*:*:CXXFLAGS=$CFLAGS", + // "*:*:RANLIB=x86_64-w64-mingw32-ranlib", + // "*:*:AR=x86_64-w64-mingw32-ar", + // "*:*:AS=x86_64-w64-mingw32-as", + // "*:*:LIBTOOL=x86_64-w64-mingw32-libtool", + // "*:*:OBJCOPY=x86_64-w64-mingw32-objcopy", + // "*:*:OBJDUMP=x86_64-w64-mingw32-objdump", + // "*:*:STRIP=x86_64-w64-mingw32-strip", + // "*:*:READELF=x86_64-w64-mingw32-readelf", + // "*:*:LD=x86_64-w64-mingw32-ld", + // "*:*:NM=x86_64-w64-mingw32-nm", // }, // }, "x86_64-linux-gnu": { Triplet: "x86_64-linux-gnu", Env: []string{ - "*:HOST=x86_64-linux-gnu", - "*:TARGET=x86_64-linux-gnu", - "*:CC_target=x86_64-linux-gnu", - "*:CC=x86_64-multilib-linux-gnu-gcc --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", - "*:CXX=x86_64-multilib-linux-gnu-g++ --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", - "*:CXXFLAGS=$CFLAGS", - "*:RANLIB=x86_64-multilib-linux-gnu-ranlib", - "*:AR=x86_64-multilib-linux-gnu-ar", - "*:AS=x86_64-multilib-linux-gnu-as", - "*:LIBTOOL=x86_64-multilib-linux-gnu-libtool", - "*:OBJCOPY=x86_64-multilib-linux-gnu-objcopy", - "*:OBJDUMP=x86_64-multilib-linux-gnu-objdump", - "*:STRIP=x86_64-multilib-linux-gnu-strip", - "*:READELF=x86_64-multilib-linux-gnu-readelf", - "*:LD=x86_64-multilib-linux-gnu-ld", - "*:NM=x86_64-multilib-linux-gnu-nm", + "*:*:HOST=x86_64-linux-gnu", + "*:*:TARGET=x86_64-linux-gnu", + "*:*:CC_target=x86_64-linux-gnu", + "*:*:CC=x86_64-multilib-linux-gnu-gcc --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CXX=x86_64-multilib-linux-gnu-g++ --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CXXFLAGS=$CFLAGS", + "*:*:RANLIB=x86_64-multilib-linux-gnu-ranlib", + "*:*:AR=x86_64-multilib-linux-gnu-ar", + "*:*:AS=x86_64-multilib-linux-gnu-as", + "*:*:LIBTOOL=x86_64-multilib-linux-gnu-libtool", + "*:*:OBJCOPY=x86_64-multilib-linux-gnu-objcopy", + "*:*:OBJDUMP=x86_64-multilib-linux-gnu-objdump", + "*:*:STRIP=x86_64-multilib-linux-gnu-strip", + "*:*:READELF=x86_64-multilib-linux-gnu-readelf", + "*:*:LD=x86_64-multilib-linux-gnu-ld", + "*:*:NM=x86_64-multilib-linux-gnu-nm", }, }, "aarch64-linux-gnu": { Triplet: "aarch64-linux-gnu", Env: []string{ - "*:HOST=aarch64-linux-gnu", - "*:TARGET=aarch64-linux-gnu", - "*:CC_target=x86_64-linux-gnu", - "*:CC=aarch64-unknown-linux-gnu-gcc --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", - "*:CXX=aarch64-unknown-linux-gnu-g++ --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", - "*:CXXFLAGS=$CFLAGS", - "*:RANLIB=aarch64-unknown-linux-gnu-ranlib", - "*:AR=aarch64-unknown-linux-gnu-ar", - "*:AS=aarch64-unknown-linux-gnu-as", - "*:LIBTOOL=aarch64-unknown-linux-gnu-libtool", - "*:OBJCOPY=aarch64-unknown-linux-gnu-objcopy", - "*:OBJDUMP=aarch64-unknown-linux-gnu-objdump", - "*:STRIP=aarch64-unknown-linux-gnu-strip", - "*:READELF=aarch64-unknown-linux-gnu-readelf", - "*:LD=aarch64-unknown-linux-gnu-ld", - "*:NM=aarch64-unknown-linux-gnu-nm", + "*:*:HOST=aarch64-linux-gnu", + "*:*:TARGET=aarch64-linux-gnu", + "*:*:CC_target=x86_64-linux-gnu", + "*:*:CC=aarch64-unknown-linux-gnu-gcc --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CXX=aarch64-unknown-linux-gnu-g++ --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CXXFLAGS=$CFLAGS", + "*:*:RANLIB=aarch64-unknown-linux-gnu-ranlib", + "*:*:AR=aarch64-unknown-linux-gnu-ar", + "*:*:AS=aarch64-unknown-linux-gnu-as", + "*:*:LIBTOOL=aarch64-unknown-linux-gnu-libtool", + "*:*:OBJCOPY=aarch64-unknown-linux-gnu-objcopy", + "*:*:OBJDUMP=aarch64-unknown-linux-gnu-objdump", + "*:*:STRIP=aarch64-unknown-linux-gnu-strip", + "*:*:READELF=aarch64-unknown-linux-gnu-readelf", + "*:*:LD=aarch64-unknown-linux-gnu-ld", + "*:*:NM=aarch64-unknown-linux-gnu-nm", }, }, "aarch64-linux-android": { Triplet: "aarch64-linux-android", Env: []string{ - "*:HOST=aarch64-linux-android", - "*:TARGET=aarch64-linux-android", - "*:CC_target=aarch64-linux-android", - "*:CC=aarch64-linux-android21-clang", - "*:CXX=aarch64-linux-android21-clang++", - "*:CFLAGS=", - "*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:RANLIB=llvm-ranlib", - "*:AR=llvm-ar", - "*:AS=llvm-as", - "*:LIBTOOL=libtool", - "*:ANDROID_NDK_HOME=$PREFIX/native/", - "*:LDFLAGS=$PREFIX/usr/lib/libc++_static.a $PREFIX/usr/lib/libc++abi.a -lm -lc -llog", + "*:*:HOST=aarch64-linux-android", + "*:*:TARGET=aarch64-linux-android", + "*:*:CC_target=aarch64-linux-android", + "*:*:CC=aarch64-linux-android21-clang", + "*:*:CXX=aarch64-linux-android21-clang++", + "*:*:CFLAGS=", + "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", + "*:*:RANLIB=llvm-ranlib", + "*:*:AR=llvm-ar", + "*:*:AS=llvm-as", + "*:*:LIBTOOL=libtool", + "*:*:ANDROID_NDK_HOME=$PREFIX/native/", + "*:*:LDFLAGS=$PREFIX/usr/lib/libc++_static.a $PREFIX/usr/lib/libc++abi.a -lm -lc -llog", }, }, "x86_64-linux-android": { Triplet: "x86_64-linux-android", Env: []string{ - "*:HOST=x86_64-linux-android", - "*:TARGET=x86_64-linux-android", - "*:CC_target=x86_64-linux-android", - "*:CC=x86_64-linux-android21-clang", - "*:CXX=x86_64-linux-android21-clang++", - "*:CFLAGS=", - "*:CXXFLAGS=$CFLAGS", - "*:RANLIB=llvm-ranlib", - "*:AR=llvm-ar", - "*:LIBTOOL=llvm-libtool", - "*:ANDROID_NDK_HOME=$PREFIX/native/", + "*:*:HOST=x86_64-linux-android", + "*:*:TARGET=x86_64-linux-android", + "*:*:CC_target=x86_64-linux-android", + "*:*:CC=x86_64-linux-android21-clang", + "*:*:CXX=x86_64-linux-android21-clang++", + "*:*:CFLAGS=", + "*:*:CXXFLAGS=$CFLAGS", + "*:*:RANLIB=llvm-ranlib", + "*:*:AR=llvm-ar", + "*:*:LIBTOOL=llvm-libtool", + "*:*:ANDROID_NDK_HOME=$PREFIX/native/", }, }, "armv7a-linux-androideabi": { Triplet: "armv7a-linux-androideabi", Env: []string{ - "*:HOST=armv7a-linux-androideabi", - "*:TARGET=armv7a-linux-androideabi", - "*:CC_target=armv7a-linux-androideabi", - "*:CC=armv7a-linux-androideabi21-clang", - "*:CXX=armv7a-linux-androideabi21-clang++", - "*:CFLAGS=", - "*:CXXFLAGS=$CFLAGS", - "*:RANLIB=llvm-ranlib", - "*:AR=llvm-ar", - "*:LIBTOOL=llvm-libtool", - "*:ANDROID_NDK_HOME=$PREFIX/native/", + "*:*:HOST=armv7a-linux-androideabi", + "*:*:TARGET=armv7a-linux-androideabi", + "*:*:CC_target=armv7a-linux-androideabi", + "*:*:CC=armv7a-linux-androideabi21-clang", + "*:*:CXX=armv7a-linux-androideabi21-clang++", + "*:*:CFLAGS=", + "*:*:CXXFLAGS=$CFLAGS", + "*:*:RANLIB=llvm-ranlib", + "*:*:AR=llvm-ar", + "*:*:LIBTOOL=llvm-libtool", + "*:*:ANDROID_NDK_HOME=$PREFIX/native/", }, }, } diff --git a/pack/build.go b/pack/build.go index 36ee586..ec83cb6 100644 --- a/pack/build.go +++ b/pack/build.go @@ -6,12 +6,11 @@ import ( "os" "os/exec" "path/filepath" - "strings" - "github.com/gobwas/glob" "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/utils" + "github.com/mrcyjanek/simplybs/utils/ifstring" ) func (p *Package) EnsureBuilt(h *host.Host, buildDependencies bool) { @@ -100,21 +99,14 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { var deps []*Package if buildDependencies { for _, dep := range p.Dependencies { - if strings.Contains(dep, ":") { - builderPrefix := strings.Split(dep, ":")[0] - hostPrefix := strings.Split(dep, ":")[1] - g := glob.MustCompile(hostPrefix) - if !g.Match(h.Triplet) { - continue - } - g = glob.MustCompile(builderPrefix) - if !g.Match(builder.GetName()) { - continue - } - dep = dep[len(builderPrefix)+len(hostPrefix)+2:] - } else { - log.Fatalf("Invalid dependency: %s", dep) + is := ifstring.ParseIfString(dep) + if !is.HostGlob().Match(h.Triplet) { + continue + } + if !is.BuilderGlob().Match(builder.GetName()) { + continue } + dep = is.Content d, err := FindPackage(dep) if err != nil { log.Fatalf("Package %s not found in build", dep) @@ -152,16 +144,14 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { } for _, step := range p.Build.Steps { - if strings.Contains(step, ":") { - prefix := strings.Split(step, ":")[0] - g := glob.MustCompile(prefix) - if !g.Match(h.Triplet) { - continue - } - step = step[strings.Index(step, ":")+1:] - } else { - log.Fatalf("Invalid step: %s", step) + is := ifstring.ParseIfString(step) + if !is.HostGlob().Match(h.Triplet) { + continue + } + if !is.BuilderGlob().Match(builder.GetName()) { + continue } + step = is.Content cmd := exec.Command("sh", "-c", step) cmd.Dir = buildPath @@ -212,16 +202,14 @@ func (p *Package) StartShell(h *host.Host) { log.Printf("Extracting source for package: %s", p.Package) for _, depName := range p.Dependencies { - if strings.Contains(depName, ":") { - prefix := strings.Split(depName, ":")[0] - g := glob.MustCompile(prefix) - if !g.Match(h.Triplet) { - continue - } - depName = depName[strings.Index(depName, ":")+1:] - } else { - log.Fatalf("Invalid dependency: %s", depName) + is := ifstring.ParseIfString(depName) + if !is.HostGlob().Match(h.Triplet) { + continue + } + if !is.BuilderGlob().Match(builder.GetName()) { + continue } + depName = is.Content dep, err := FindPackage(depName) if err != nil { log.Fatalf("Package %s not found in build", depName) @@ -239,30 +227,25 @@ func (p *Package) StartShell(h *host.Host) { } fmt.Print("\n\n") for _, step := range p.Build.Steps { - if strings.Contains(step, ":") { - prefix := strings.Split(step, ":")[0] - g := glob.MustCompile(prefix) - if !g.Match(h.Triplet) { - continue - } - step = step[strings.Index(step, ":")+1:] - fmt.Printf("%s;\n", utils.ExpandEnvFromMap(step, env)) + is := ifstring.ParseIfString(step) + if !is.HostGlob().Match(h.Triplet) { + continue } + if !is.BuilderGlob().Match(builder.GetName()) { + continue + } + step = is.Content + fmt.Printf("%s;\n", utils.ExpandEnvFromMap(step, env)) } fmt.Print("\n\n") for _, step := range p.Build.Steps { - if strings.Contains(step, ":") { - prefix := strings.Split(step, ":")[0] - g := glob.MustCompile(prefix) - if !g.Match(h.Triplet) { - log.Printf("[no match] %s", utils.ExpandEnvFromMap(step, env)) - continue - } - log.Printf(" [match] %s", utils.ExpandEnvFromMap(step, env)) - } else { - log.Fatalf("Invalid step: %s", step) + is := ifstring.ParseIfString(step) + if !(is.HostGlob().Match(h.Triplet) && is.BuilderGlob().Match(builder.GetName())) { + log.Printf("[no match] %s", utils.ExpandEnvFromMap(step, env)) + continue } + log.Printf(" [match] %s", utils.ExpandEnvFromMap(step, env)) } fmt.Print("\n\n") log.Printf("Starting %s in %s with build environment for %s", userShell, buildPath, h.Triplet) diff --git a/pack/info.go b/pack/info.go index 1b5c583..a33c589 100644 --- a/pack/info.go +++ b/pack/info.go @@ -15,6 +15,7 @@ import ( "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/utils" + "github.com/mrcyjanek/simplybs/utils/ifstring" ) func (p *Package) FilterForHost(h *host.Host) *Package { @@ -29,7 +30,7 @@ func (p *Package) FilterForHost(h *host.Host) *Package { filtered.Build.Steps = []string{} for _, dep := range p.Dependencies { - is := utils.ParseIfString(dep) + is := ifstring.ParseIfString(dep) if !is.HostGlob().Match(h.Triplet) { continue } @@ -40,7 +41,7 @@ func (p *Package) FilterForHost(h *host.Host) *Package { } for _, env := range p.Build.Env { - is := utils.ParseIfString(env) + is := ifstring.ParseIfString(env) if !is.HostGlob().Match(h.Triplet) { continue } @@ -51,7 +52,7 @@ func (p *Package) FilterForHost(h *host.Host) *Package { } for _, step := range p.Build.Steps { - is := utils.ParseIfString(step) + is := ifstring.ParseIfString(step) if !is.HostGlob().Match(h.Triplet) { continue } @@ -68,7 +69,7 @@ func (p *Package) GeneratePackageInfo(h *host.Host) string { pkgs := map[string]interface{}{} pkgs["_target"] = p.FilterForHost(h) for _, dep := range p.Dependencies { - is := utils.ParseIfString(dep) + is := ifstring.ParseIfString(dep) dep := is.Content pkg, err := FindPackage(dep) if err != nil { @@ -149,27 +150,27 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { env = utils.AppendEnv(env, builder.HostBuilder.GlobalEnv, h) if p.Type == "native" { env = utils.AppendEnv(env, []string{ - "*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/native/include", - "*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/native/usr/include", - "*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/native/lib", - "*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/native/usr/lib", - "*:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:" + h.GetEnvPath() + "/native/lib", - "*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/native/lib/pkgconfig", - "*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/native/lib", + "*:*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/native/include", + "*:*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/native/usr/include", + "*:*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/native/lib", + "*:*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/native/usr/lib", + "*:*:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:" + h.GetEnvPath() + "/native/lib", + "*:*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/native/lib/pkgconfig", + "*:*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/native/lib", }, h) } else { env = utils.AppendEnv(env, []string{ - "*:CC_FOR_BUILD=" + builder.HostBuilder.GetCC(), - "*:CXX_FOR_BUILD=" + builder.HostBuilder.GetCXX(), - "*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/include", - "*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/usr/include", - "*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/lib", - "*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/usr/lib", - "*:LD_LIBRARY_PATH=" + h.GetEnvPath() + "/native/lib", - "*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/lib/pkgconfig", - "*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/usr/lib/pkgconfig", - "*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/lib", - "*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/usr/lib", + "*:*:CC_FOR_BUILD=" + builder.HostBuilder.GetCC(), + "*:*:CXX_FOR_BUILD=" + builder.HostBuilder.GetCXX(), + "*:*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/include", + "*:*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/usr/include", + "*:*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/lib", + "*:*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/usr/lib", + "*:*:LD_LIBRARY_PATH=" + h.GetEnvPath() + "/native/lib", + "*:*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/lib/pkgconfig", + "*:*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/usr/lib/pkgconfig", + "*:*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/lib", + "*:*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/usr/lib", }, h) } if p.Type != "native" { diff --git a/pack/main.go b/pack/main.go index 7bb568d..f4853ee 100644 --- a/pack/main.go +++ b/pack/main.go @@ -8,10 +8,10 @@ import ( "runtime" "strings" - "github.com/gobwas/glob" "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" + "github.com/mrcyjanek/simplybs/utils/ifstring" ) type Download struct { @@ -321,15 +321,12 @@ func collectDependenciesByLevel(pkgName string, host string) [][]string { for _, dep := range pkg.Dependencies { var actualDep string - if strings.Contains(dep, ":") { - prefix := strings.Split(dep, ":")[0] - g := glob.MustCompile(prefix) - if !g.Match(host) { - continue - } - actualDep = dep[strings.Index(dep, ":")+1:] - } else { - actualDep = dep + is := ifstring.ParseIfString(dep) + if !is.HostGlob().Match(host) { + continue + } + if !is.BuilderGlob().Match(builder.GetName()) { + continue } if !visited[actualDep] { diff --git a/packages/audit-userspace.json b/packages/audit-userspace.json index 1f28c48..6b5789e 100644 --- a/packages/audit-userspace.json +++ b/packages/audit-userspace.json @@ -10,24 +10,30 @@ } ], "dependencies": [ - "*-linux-gnu:native/_" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/autoconf", + "*:*-linux-gnu:native/automake", + "*:*-linux-gnu:native/libtool", + "*:*-linux-gnu:native/m4", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:native/perl" ], "build": { "env": [ - "*-linux-gnu:config_opts=--prefix=$PREFIX --host=$HOST --disable-shared --enable-static", - "*-linux-gnu:config_opts=$config_opts --with-python3=no", - "*-linux-gnu:config_opts=$config_opts --enable-gssapi-krb5=no", - "arm*:config_opts=$config_opts --with-arm=no", - "aarch64-*:config_opts=$config_opts --with-aarch64=no", - "*-linux-gnu:config_opts=$config_opts --with-libcap-ng=no", - "*-linux-gnu:config_opts=$config_opts --with-io_uring=no", - "*-linux-gnu:config_opts=$config_opts --disable-zos-remote" + "*:*-linux-gnu:config_opts=--prefix=$PREFIX --host=$HOST --disable-shared --enable-static", + "*:*-linux-gnu:config_opts=$config_opts --with-python3=no", + "*:*-linux-gnu:config_opts=$config_opts --enable-gssapi-krb5=no", + "*:arm*:config_opts=$config_opts --with-arm=no", + "*:aarch64-*:config_opts=$config_opts --with-aarch64=no", + "*:*-linux-gnu:config_opts=$config_opts --with-libcap-ng=no", + "*:*-linux-gnu:config_opts=$config_opts --with-io_uring=no", + "*:*-linux-gnu:config_opts=$config_opts --disable-zos-remote" ], "steps": [ - "*-linux-gnu:autoreconf -f --install", - "*-linux-gnu:./configure $config_opts", - "*-linux-gnu:make -j$NUM_CORES", - "*-linux-gnu:make install DESTDIR=$STAGING_DIR" + "*:*-linux-gnu:autoreconf -f --install", + "*:*-linux-gnu:./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/boost.json b/packages/boost.json index 3e2e0ba..7f2ff78 100644 --- a/packages/boost.json +++ b/packages/boost.json @@ -10,53 +10,53 @@ } ], "dependencies": [ - "*:native/_", - "*:native/boost-b2", - "*:native/python@3.11.13", - "*:libiconv" + "*:*:native/_", + "*:*:native/boost-b2", + "*:*:native/python@3.11", + "*:*:libiconv" ], "patches": [ "fix_io_control_hpp.patch" ], "build": { "env": [ - "*:config_opts=variant=release", - "*-apple-ios*:target_os=iphone", - "*-linux-android*:target_os=android", - "*-mingw32*:target_os=windows", - "*-linux-gnu*:target_os=linux", - "*:config_opts=$config_opts --layout=system --user-config=user-config.jam", - "*:config_opts=$config_opts threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1", - "*-linux-gnu*:config_opts=$config_opts threadapi=pthread runtime-link=static", - "*-android*:config_opts=$config_opts threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", - "*64-linux-android*:config_opts=$config_opts address-model=64", - "armv7-linux-androideabi*:config_opts=$config_opts address-model=32", - "*-darwin*:config_opts=$config_opts --toolset=darwin runtime-link=static", - "*-ios*:config_opts=$config_opts --toolset=darwin-iphone runtime-link=static", - "*-ios-simulator*:config_opts=$config_opts --toolset=darwin-iphone runtime-link=static", - "*mingw32*:config_opts=$config_opts binary-format=pe target-os=$target_os threadapi=win32 runtime-link=static", - "*x86_64-*-mingw32*:config_opts=$config_opts address-model=64", - "*i686-*-mingw32*:config_opts=$config_opts address-model=32", - "*i686-linux-gnu*:config_opts=$config_opts address-model=32 architecture=x86", - "*:toolset=gcc", - "*-apple-*:archiver=$LIBTOOL", - "*-apple-*:toolset=darwin", - "*-android*:toolset=gcc", - "*mingw32*:toolset=gcc", - "*-ios*:toolset2=iphone", - "*-ios-simulator*:toolset2=~iphone", - "*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log", - "*:CXXFLAGS=-fPIC -std=c++17", - "*-darwin*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", - "*-ios*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", - "*-ios-simulator*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", - "*-apple-*:AR=libtool", - "*-linux-*:ARFLAGS=rcs" + "*:*:config_opts=variant=release", + "*:*-apple-ios*:target_os=iphone", + "*:*-linux-android*:target_os=android", + "*:*-mingw32*:target_os=windows", + "*:*-linux-gnu*:target_os=linux", + "*:*:config_opts=$config_opts --layout=system --user-config=user-config.jam", + "*:*:config_opts=$config_opts threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1", + "*:*-linux-gnu*:config_opts=$config_opts threadapi=pthread runtime-link=static", + "*:*-android*:config_opts=$config_opts threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", + "*:*64-linux-android*:config_opts=$config_opts address-model=64", + "*:armv7-linux-androideabi*:config_opts=$config_opts address-model=32", + "*:*-darwin*:config_opts=$config_opts --toolset=darwin runtime-link=static", + "*:*-ios*:config_opts=$config_opts --toolset=darwin-iphone runtime-link=static", + "*:*-ios-simulator*:config_opts=$config_opts --toolset=darwin-iphone runtime-link=static", + "*:*mingw32*:config_opts=$config_opts binary-format=pe target-os=$target_os threadapi=win32 runtime-link=static", + "*:*x86_64-*-mingw32*:config_opts=$config_opts address-model=64", + "*:*i686-*-mingw32*:config_opts=$config_opts address-model=32", + "*:*i686-linux-gnu*:config_opts=$config_opts address-model=32 architecture=x86", + "*:*:toolset=gcc", + "*:*-apple-*:archiver=$LIBTOOL", + "*:*-apple-*:toolset=darwin", + "*:*-android*:toolset=gcc", + "*:*mingw32*:toolset=gcc", + "*:*-ios*:toolset2=iphone", + "*:*-ios-simulator*:toolset2=~iphone", + "*:*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log", + "*:*:CXXFLAGS=-fPIC -std=c++17", + "*:*-darwin*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", + "*:*-ios*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", + "*:*-ios-simulator*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", + "*:*-apple-*:AR=libtool", + "*:*-linux-*:ARFLAGS=rcs" ], "steps": [ - "*:echo \"using $toolset : $toolset2 : $CXX $CXXFLAGS : \"$CXXFLAGS\" \"$LDFLAGS\" \"$AR\" \"$ARFLAGS\" \"$STRIP\" \"$RANLIB\" \"$WINDRES\" \"$target_os\" : ;\" > user-config.jam", - "*:b2 -d2 -j$NUM_CORES --prefix=$STAGING_DIR$PREFIX $config_opts stage", - "*:b2 -d0 -j1 --prefix=$STAGING_DIR$PREFIX $config_opts install" + "*:*:echo \"using $toolset : $toolset2 : $CXX $CXXFLAGS : \"$CXXFLAGS\" \"$LDFLAGS\" \"$AR\" \"$ARFLAGS\" \"$STRIP\" \"$RANLIB\" \"$WINDRES\" \"$target_os\" : ;\" > user-config.jam", + "*:*:b2 -d2 -j$NUM_CORES --prefix=$STAGING_DIR$PREFIX $config_opts stage", + "*:*:b2 -d0 -j1 --prefix=$STAGING_DIR$PREFIX $config_opts install" ] } } \ No newline at end of file diff --git a/packages/bzip2.json b/packages/bzip2.json index f708105..db1bc22 100644 --- a/packages/bzip2.json +++ b/packages/bzip2.json @@ -10,14 +10,14 @@ } ], "dependencies": [ - "*:native/_", - "*:openssl" + "*:*:native/_", + "*:*:openssl" ], "build": { "steps": [ - "*:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", - "*:make -j$NUM_CORES", - "*:make install PREFIX=$STAGING_DIR$PREFIX" + "*:*:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", + "*:*:make -j$NUM_CORES", + "*:*:make install PREFIX=$STAGING_DIR$PREFIX" ] } } \ No newline at end of file diff --git a/packages/eudev.json b/packages/eudev.json index 623c2f5..0255e19 100644 --- a/packages/eudev.json +++ b/packages/eudev.json @@ -10,22 +10,22 @@ } ], "dependencies": [ - "*-linux-gnu:native/_", - "*-linux-gnu:selinux" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:selinux" ], "build": { "env": [ - "*:config_opts=--host=$HOST --prefix=$PREFIX", - "*:config_opts=$config_opts --disable-gudev --disable-introspection --disable-hwdb --disable-manpages --disable-shared", - "*-linux-gnu:ARFLAGS=rcs", - "*:config_opts=$config_opts AR_FLAGS=$ARFLAGS", - "*:SHOULD_BUILD=echo", - "*-linux-gnu:SHOULD_BUILD=" + "*:*:config_opts=--host=$HOST --prefix=$PREFIX", + "*:*:config_opts=$config_opts --disable-gudev --disable-introspection --disable-hwdb --disable-manpages --disable-shared", + "*:*-linux-gnu:ARFLAGS=rcs", + "*:*:config_opts=$config_opts AR_FLAGS=$ARFLAGS", + "*:*:SHOULD_BUILD=echo", + "*:*-linux-gnu:SHOULD_BUILD=" ], "steps": [ - "*:$SHOULD_BUILD ./configure $config_opts", - "*:$SHOULD_BUILD make -j$NUM_CORES", - "*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install" + "*:*:$SHOULD_BUILD ./configure $config_opts", + "*:*:$SHOULD_BUILD make -j$NUM_CORES", + "*:*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/expat.json b/packages/expat.json index c8ce009..d75317e 100644 --- a/packages/expat.json +++ b/packages/expat.json @@ -10,20 +10,20 @@ } ], "dependencies": [ - "*:native/_", - "*:libiconv" + "*:*:native/_", + "*:*:libiconv" ], "build": { "env": [ - "*:CFLAGS=$CFLAGS -fPIC", - "*:LDFLAGS=$LDFLAGS -fPIC", - "*:BUILD_HOST=$HOST", - "aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios" + "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*:LDFLAGS=$LDFLAGS -fPIC", + "*:*:BUILD_HOST=$HOST", + "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios" ], "steps": [ - "*:./configure --host=$BUILD_HOST --prefix=$PREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --host=$BUILD_HOST --prefix=$PREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/glib.json b/packages/glib.json index 957fa7e..fafda30 100644 --- a/packages/glib.json +++ b/packages/glib.json @@ -22,21 +22,21 @@ } ], "dependencies": [ - "*:native/_", - "*:native/meson", - "*:native/ninja", - "*:native/python@3.11.13", - "*:libffi", - "*:libiconv", - "*:pcre2", - "*:unwind", - "*:zlib" + "*:*:native/_", + "*:*:native/meson", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:libffi", + "*:*:libiconv", + "*:*:pcre2", + "*:*:unwind", + "*:*:zlib" ], "build": { "steps": [ - "*:meson setup --prefix $PREFIX _build", - "*:meson compile -C _build -j$NUM_CORES", - "*:meson install -C _build DESTDIR=$STAGING_DIR" + "*:*:meson setup --prefix $PREFIX _build", + "*:*:meson compile -C _build -j$NUM_CORES", + "*:*:meson install -C _build DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/gtest.json b/packages/gtest.json index 12f901d..1424d96 100644 --- a/packages/gtest.json +++ b/packages/gtest.json @@ -10,25 +10,25 @@ } ], "dependencies": [ - "*:native/_" + "*:*:native/_" ], "build": { "env": [ - "*:CXXFLAGS=$CXXFLAGS -std=c++11", - "*-linux-gnu:CXXFLAGS=$CXXFLAGS -fPIC", - "*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", - "*:config_opts=$config_opts -DGOOGLETEST_VERSION=1.17.0", - "*:config_opts=$config_opts -DCMAKE_POLICY_VERSION_MINIMUM=3.5", - "*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", - "*:config_opts=$config_opts -DCMAKE_CXX_FLAGS_DEBUG=ON" + "*:*:CXXFLAGS=$CXXFLAGS -std=c++11", + "*:*-linux-gnu:CXXFLAGS=$CXXFLAGS -fPIC", + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", + "*:*:config_opts=$config_opts -DGOOGLETEST_VERSION=1.17.0", + "*:*:config_opts=$config_opts -DCMAKE_POLICY_VERSION_MINIMUM=3.5", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:*:config_opts=$config_opts -DCMAKE_CXX_FLAGS_DEBUG=ON" ], "steps": [ - "*:cd googletest && cmake $config_opts", - "*:cd googletest && make -j$NUM_CORES", - "*:mkdir $STAGING_DIR$PREFIX/lib $STAGING_DIR$PREFIX/include", - "*:cp googletest/lib/libgtest.a $STAGING_DIR$PREFIX/lib", - "*:cp googletest/lib/libgtest_main.a $STAGING_DIR$PREFIX/lib", - "*:cp -a googletest/include/* $STAGING_DIR$PREFIX/include/" + "*:*:cd googletest && cmake $config_opts", + "*:*:cd googletest && make -j$NUM_CORES", + "*:*:mkdir $STAGING_DIR$PREFIX/lib $STAGING_DIR$PREFIX/include", + "*:*:cp googletest/lib/libgtest.a $STAGING_DIR$PREFIX/lib", + "*:*:cp googletest/lib/libgtest_main.a $STAGING_DIR$PREFIX/lib", + "*:*:cp -a googletest/include/* $STAGING_DIR$PREFIX/include/" ] } } \ No newline at end of file diff --git a/packages/hidapi.json b/packages/hidapi.json index 2c00d16..e0db143 100644 --- a/packages/hidapi.json +++ b/packages/hidapi.json @@ -10,30 +10,30 @@ } ], "dependencies": [ - "*:native/_", - "*:eudev", - "*:libusb" + "*:*:native/_", + "*:*:eudev", + "*:*:libusb" ], "patches": [ "missing_win_include.patch" ], "build": { "env": [ - "*:config_opts=--prefix=$PREFIX --host=$HOST --enable-static --disable-shared", - "*-linux-gnu:config_opts=$config_opts libudev_CFLAGS=-I$PREFIX/include", - "*-linux-gnu:config_opts=$config_opts libusb_CFLAGS=-I$PREFIX/include/libusb-1.0", - "*-linux-gnu:config_opts=$config_opts --with-pic", - "*:SHOULD_BUILD=echo", - "*-linux-gnu:SHOULD_BUILD=", - "*-w64-mingw32:SHOULD_BUILD=", - "*-apple-darwin:SHOULD_BUILD=" + "*:*:config_opts=--prefix=$PREFIX --host=$HOST --enable-static --disable-shared", + "*:*-linux-gnu:config_opts=$config_opts libudev_CFLAGS=-I$PREFIX/include", + "*:*-linux-gnu:config_opts=$config_opts libusb_CFLAGS=-I$PREFIX/include/libusb-1.0", + "*:*-linux-gnu:config_opts=$config_opts --with-pic", + "*:*:SHOULD_BUILD=echo", + "*:*-linux-gnu:SHOULD_BUILD=", + "*:*-w64-mingw32:SHOULD_BUILD=", + "*:*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "*:$SHOULD_BUILD patch -p1 < $PATCH_DIR/hidapi/missing_win_include.patch", - "*:$SHOULD_BUILD ./bootstrap", - "*:$SHOULD_BUILD ./configure $config_opts libudev_LIBS=\"-L$PREFIX/lib -ludev\" libusb_LIBS=\"-L$PREFIX/lib -lusb-1.0\"", - "*:$SHOULD_BUILD make -j$NUM_CORES", - "*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install" + "*:*:$SHOULD_BUILD patch -p1 < $PATCH_DIR/hidapi/missing_win_include.patch", + "*:*:$SHOULD_BUILD ./bootstrap", + "*:*:$SHOULD_BUILD ./configure $config_opts libudev_LIBS=\"-L$PREFIX/lib -ludev\" libusb_LIBS=\"-L$PREFIX/lib -lusb-1.0\"", + "*:*:$SHOULD_BUILD make -j$NUM_CORES", + "*:*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/icu4c.json b/packages/icu4c.json index c884ca7..4356dc4 100644 --- a/packages/icu4c.json +++ b/packages/icu4c.json @@ -14,18 +14,18 @@ ], "build": { "env": [ - "*-w64-mingw32:CFLAGS=$CFLAGS -DU_USING_ICU_NAMESPACE=0 -DU_STATIC_IMPLEMENTATION -DU_COMBINED_IMPLEMENTATION -fPIC -DENABLE_STATIC=YES -DPGKDATA_MODE=static", - "*-w64-mingw32:TARGET=" + "*:*-w64-mingw32:CFLAGS=$CFLAGS -DU_USING_ICU_NAMESPACE=0 -DU_STATIC_IMPLEMENTATION -DU_COMBINED_IMPLEMENTATION -fPIC -DENABLE_STATIC=YES -DPGKDATA_MODE=static", + "*:*-w64-mingw32:TARGET=" ], "steps": [ - "*-w64-mingw32:patch -p1 < $PATCH_DIR/icu4c/icu-001-dont-build-static-dynamic-twice.patch", - "*-w64-mingw32:mkdir builda", - "*-w64-mingw32:mkdir buildb", - "*-w64-mingw32:cd builda && sh ../source/runConfigureICU Linux", - "*-w64-mingw32:cd builda && make -j$NUM_CORES", - "*-w64-mingw32:cd buildb && ../source/runConfigureICU MinGW --enable-static=yes --disable-shared --disable-layout --disable-layoutex --disable-tests --disable-samples --prefix=$PREFIX --with-cross-build=$(pwd)/../builda", - "*-w64-mingw32:cd buildb && make -j$NUM_CORES $build_opts", - "*-w64-mingw32:cd buildb && -j$NUM_CORES $build_opts DESTDIR=$STAGING_DIR install lib/*" + "*:*-w64-mingw32:patch -p1 < $PATCH_DIR/icu4c/icu-001-dont-build-static-dynamic-twice.patch", + "*:*-w64-mingw32:mkdir builda", + "*:*-w64-mingw32:mkdir buildb", + "*:*-w64-mingw32:cd builda && sh ../source/runConfigureICU Linux", + "*:*-w64-mingw32:cd builda && make -j$NUM_CORES", + "*:*-w64-mingw32:cd buildb && ../source/runConfigureICU MinGW --enable-static=yes --disable-shared --disable-layout --disable-layoutex --disable-tests --disable-samples --prefix=$PREFIX --with-cross-build=$(pwd)/../builda", + "*:*-w64-mingw32:cd buildb && make -j$NUM_CORES $build_opts", + "*:*-w64-mingw32:cd buildb && -j$NUM_CORES $build_opts DESTDIR=$STAGING_DIR install lib/*" ] } } \ No newline at end of file diff --git a/packages/libcap.json b/packages/libcap.json index 8b01cc2..a000622 100644 --- a/packages/libcap.json +++ b/packages/libcap.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "*:native/_" + "*:*:native/_" ], "build": { "steps": [ - "*:make prefix=$PREFIX -j$NUM_CORES", - "*:make prefix=$PREFIX DESTDIR=$STAGING_DIR install", - "x86_64-linux-gnu:mv $STAGING_DIR$PREFIX/lib64 $STAGING_DIR$PREFIX/lib" + "*:*:make prefix=$PREFIX -j$NUM_CORES", + "*:*:make prefix=$PREFIX DESTDIR=$STAGING_DIR install", + "*:x86_64-linux-gnu:mv $STAGING_DIR$PREFIX/lib64 $STAGING_DIR$PREFIX/lib" ] } } \ No newline at end of file diff --git a/packages/libevent.json b/packages/libevent.json index a4bb5cf..05c2d0d 100644 --- a/packages/libevent.json +++ b/packages/libevent.json @@ -10,30 +10,30 @@ } ], "dependencies": [ - "*:native/_" + "*:*:native/_" ], "build": { "env": [ - "*:HOSTOVERRIDE=$HOST", - "aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "*:config_opts=--host=$HOSTOVERRIDE --prefix=$PREFIX ", - "*:config_opts=$config_opts --disable-shared", - "*:config_opts=$config_opts --disable-openssl", - "*:config_opts=$config_opts --disable-libevent-regress", - "*:config_opts=$config_opts --disable-doxygen-html", - "*:config_opts=$config_opts --disable-debug-mode", - "*:config_opts=$config_opts --enable-static", - "*:config_opts=$config_opts --enable-gcc-hardening", - "*:config_opts=$config_opts --with-pic", - "*:CFLAGS=$CFLAGS -fPIC", - "*:CXXFLAGS=$CXXFLAGS -fPIC" + "*:*:HOSTOVERRIDE=$HOST", + "*:aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", + "*:*:config_opts=--host=$HOSTOVERRIDE --prefix=$PREFIX ", + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --disable-openssl", + "*:*:config_opts=$config_opts --disable-libevent-regress", + "*:*:config_opts=$config_opts --disable-doxygen-html", + "*:*:config_opts=$config_opts --disable-debug-mode", + "*:*:config_opts=$config_opts --enable-static", + "*:*:config_opts=$config_opts --enable-gcc-hardening", + "*:*:config_opts=$config_opts --with-pic", + "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*:CXXFLAGS=$CXXFLAGS -fPIC" ], "steps": [ - "*:./autogen.sh", - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install", - "*:rm $STAGING_DIR$PREFIX/lib/*.la" + "*:*:./autogen.sh", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install", + "*:*:rm $STAGING_DIR$PREFIX/lib/*.la" ] } } \ No newline at end of file diff --git a/packages/libffi.json b/packages/libffi.json index be60b1e..34d3876 100644 --- a/packages/libffi.json +++ b/packages/libffi.json @@ -10,14 +10,14 @@ } ], "dependencies": [ - "*-linux-gnu:native/_" + "*:*-linux-gnu:native/_" ], "build": { "steps": [ - "*-linux-gnu:./autogen.sh", - "*-linux-gnu:./configure --host=$HOST --prefix=$PREFIX --enable-static --disable-shared --disable-docs --with-pic", - "*-linux-gnu:make -j$NUM_CORES", - "*-linux-gnu:make install DESTDIR=$STAGING_DIR" + "*:*-linux-gnu:./autogen.sh", + "*:*-linux-gnu:./configure --host=$HOST --prefix=$PREFIX --enable-static --disable-shared --disable-docs --with-pic", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/libiconv.json b/packages/libiconv.json index 27f8e54..208fed1 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -10,24 +10,25 @@ } ], "dependencies": [ - "*:native/_", - "*:native/config" + "*:*:native/_", + "*:*:native/config", + "*:*:native/make" ], "build": { "env": [ - "*:CFLAGS=$CFLAGS -fPIC", - "*:BUILD_HOST=$HOST", - "aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios", - "*:config_opts=--host=$BUILD_HOST --prefix=$PREFIX --disable-nls --enable-static --disable-shared", - "*:config_opts=$config_opts", - "*linux:config_opts=$config_opts --with-pic" + "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*:BUILD_HOST=$HOST", + "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios", + "*:*:config_opts=--host=$BUILD_HOST --prefix=$PREFIX --disable-nls --enable-static --disable-shared", + "*:*:config_opts=$config_opts", + "*:*linux:config_opts=$config_opts --with-pic" ], "steps": [ - "*:cp -f $PREFIX/native/share/config/config.guess build-aux/", - "*:cp -f $PREFIX/native/share/config/config.sub build-aux/", - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:cp -f $PREFIX/native/share/config/config.guess build-aux/", + "*:*:cp -f $PREFIX/native/share/config/config.sub build-aux/", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/libusb.json b/packages/libusb.json index b1a6ed0..9f5421c 100644 --- a/packages/libusb.json +++ b/packages/libusb.json @@ -10,28 +10,28 @@ } ], "dependencies": [ - "*:native/_", - "*:native/config", - "*:native/make" + "*:*:native/_", + "*:*:native/config", + "*:*:native/make" ], "build": { "env": [ - "*:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared", - "*-linux-gnu:config_opts=$config_opts --with-pic --disable-udev", - "*-w64-mingw32:config_opts=$config_opts --disable-udev", - "*-apple-darwin:config_opts=$config_opts --disable-udev", - "*:SHOULD_BUILD=echo", - "*-linux-gnu:SHOULD_BUILD=", - "*-w64-mingw32:SHOULD_BUILD=", - "*-apple-darwin:SHOULD_BUILD=" + "*:*:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared", + "*:*-linux-gnu:config_opts=$config_opts --with-pic --disable-udev", + "*:*-w64-mingw32:config_opts=$config_opts --disable-udev", + "*:*-apple-darwin:config_opts=$config_opts --disable-udev", + "*:*:SHOULD_BUILD=echo", + "*:*-linux-gnu:SHOULD_BUILD=", + "*:*-w64-mingw32:SHOULD_BUILD=", + "*:*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "*:cp -f $PREFIX/native/share/config/config.guess config.guess", - "*:cp -f $PREFIX/native/share/config/config.sub config.sub", - "*:$SHOULD_BUILD ./configure $config_opts", - "*:$SHOULD_BUILD make -j$NUM_CORES", - "*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install", - "*:$SHOULD_BUILD cp -f $STAGING_DIR$PREFIX/lib/libusb-1.0.a $STAGING_DIR$PREFIX/lib/libusb.a" + "*:*:cp -f $PREFIX/native/share/config/config.guess config.guess", + "*:*:cp -f $PREFIX/native/share/config/config.sub config.sub", + "*:*:$SHOULD_BUILD ./configure $config_opts", + "*:*:$SHOULD_BUILD make -j$NUM_CORES", + "*:*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install", + "*:*:$SHOULD_BUILD cp -f $STAGING_DIR$PREFIX/lib/libusb-1.0.a $STAGING_DIR$PREFIX/lib/libusb.a" ] } } \ No newline at end of file diff --git a/packages/libxcrypt.json b/packages/libxcrypt.json index df5a5a6..32b8d7e 100644 --- a/packages/libxcrypt.json +++ b/packages/libxcrypt.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "*:native/_" + "*:*:native/_" ], "build": { "env": [ - "*:config_opts=--host=$HOST --prefix=$PREFIX", - "*:config_opts=$config_opts --enable-static --disable-shared --with-pic" + "*:*:config_opts=--host=$HOST --prefix=$PREFIX", + "*:*:config_opts=$config_opts --enable-static --disable-shared --with-pic" ], "steps": [ - "*:./autogen.sh", - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make install DESTDIR=$STAGING_DIR" + "*:*:./autogen.sh", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/native/_.json b/packages/native/_.json index a49e3f7..4dabdb4 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -3,22 +3,23 @@ "version": "0.0.0", "type": "native", "dependencies": [ - "*-android*:native/android_ndk", - "*-apple-*:native/cctools-port", - "*-apple-*:native/osx-cross", - "*-linux-gnu:native/ct-tools", - "*-linux-musl:native/ct-tools", - "*-w64-mingw32:native/ct-tools" + "*:*-android*:native/android_ndk", + "*:*-apple-*:native/cctools-port", + "*:*-apple-*:native/osx-cross", + "*:*-linux-*:native/bash", + "*:*-linux-gnu:native/ct-tools", + "*:*-linux-musl:native/ct-tools", + "*:*-w64-mingw32:native/ct-tools" ], "build": { "env": [ - "none:A_=This is a meta-package library that includes c and c++ compiler", - "none:B_=All packages included as dependencies (other than bootstrap packages) are copied over to staging dir" + "*:none:A_=This is a meta-package library that includes c and c++ compiler", + "*:none:B_=All packages included as dependencies (other than bootstrap packages) are copied over to staging dir" ], "steps": [ - "*:mkdir -p $STAGING_DIR$PREFIX ", - "*:cp -a $PREFIX/* $STAGING_DIR$PREFIX", - "*:rm -rf $STAGING_DIR$PREFIX/native/bootstrap" + "*:*:mkdir -p $STAGING_DIR$PREFIX ", + "*:*:cp -a $PREFIX/* $STAGING_DIR$PREFIX", + "*:*:rm -rf $STAGING_DIR$PREFIX/native/bootstrap" ] } } \ No newline at end of file diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index 7eb3e1f..4931417 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -3,41 +3,41 @@ "version": "r28c", "type": "native", "dependencies": [ - "*:native/p7zip", - "*:native/python@3.11.13" + "*:*:native/python@3.11.13" + "*:*:native/p7zip" ], "build": { "env": [ - "aarch64-linux-android:config_opts=--arch arm", - "x86_64-linux-android:config_opts=--arch x86_64", - "armv7a-linux-androideabi:config_opts=--arch arm64", - "i686-linux-android:config_opts=--arch x86", - "aarch64-linux-android:BUILDLIB_HOST=aarch64-linux-android", - "x86_64-linux-android:BUILDLIB_HOST=x86_64-linux-android", - "armv7a-linux-androideabi:BUILDLIB_HOST=armv7a-linux-androideabi", - "i686-linux-android:BUILDLIB_HOST=i686-linux-android", - "*-android*:API_LEVEL=21" + "*:aarch64-linux-android:config_opts=--arch arm", + "*:x86_64-linux-android:config_opts=--arch x86_64", + "*:armv7a-linux-androideabi:config_opts=--arch arm64", + "*:i686-linux-android:config_opts=--arch x86", + "*:aarch64-linux-android:BUILDLIB_HOST=aarch64-linux-android", + "*:x86_64-linux-android:BUILDLIB_HOST=x86_64-linux-android", + "*:armv7a-linux-androideabi:BUILDLIB_HOST=armv7a-linux-androideabi", + "*:i686-linux-android:BUILDLIB_HOST=i686-linux-android", + "*:*-android*:API_LEVEL=21" ], "steps": [ - "*-android*:if [ $(uname) = 'Darwin' ]; then curl -o android-ndk-r28c-darwin.zip https://dl.google.com/android/repository/android-ndk-r28c-darwin.zip; else true; fi", - "*-android*:if [ $(uname) = 'Darwin' ]; then echo '0d4599e8bbf1a1668a0d51a541729b2246360f350018a2081d0b302dbb594f2a android-ndk-r28c-darwin.zip' | shasum -a 256 -c -; else true; fi", - "*-android*:if [ $(uname) = 'Linux' ]; then curl -o android-ndk-r28c-linux.zip https://dl.google.com/android/repository/android-ndk-r28c-linux.zip; else true; fi", - "*-android*:if [ $(uname) = 'Linux' ]; then echo 'dfb20d396df28ca02a8c708314b814a4d961dc9074f9a161932746f815aa552f android-ndk-r28c-linux.zip' | sha256sum -c -; else true; fi", - "*-android*:7z x $PWD/android-ndk-r28c-*.zip", - "*-android*:android-ndk-r28c/build/tools/make_standalone_toolchain.py --api $API_LEVEL --install-dir $PWD/toolchain --stl=libc++ $config_opts", - "*-android*:mkdir -p $STAGING_DIR$PREFIX/native", - "*-android*:mv $PWD/toolchain/* $STAGING_DIR$PREFIX/native", - "*-android*:cp $STAGING_DIR$PREFIX/native/bin/llvm-ar $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-ar", - "*-android*:cp $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST$API_LEVEL-clang $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-clang", - "*-android*:cp $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST$API_LEVEL-clang++ $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-clang++", - "*-android*:cp $STAGING_DIR$PREFIX/native/bin/llvm-ranlib $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-ranlib", - "*-android*:cp $STAGING_DIR$PREFIX/native/bin/llvm-ar $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-ar", - "*-android*:mkdir -p $STAGING_DIR$PREFIX/lib", - "aarch64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/aarch64-linux-android/*.a $STAGING_DIR$PREFIX/lib", - "x86_64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/x86_64-linux-android/*.a $STAGING_DIR$PREFIX/lib", - "armv7a-linux-androideabi:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/arm-linux-androideabi/*.a $STAGING_DIR$PREFIX/lib", - "*-android*:mkdir -p $STAGING_DIR$PREFIX/usr/lib", - "*-android*:ln -s ../lib $STAGING_DIR$PREFIX/usr/lib" + "*:*-android*:if [ $(uname) = 'Darwin' ]; then curl -o android-ndk-r28c-darwin.zip https://dl.google.com/android/repository/android-ndk-r28c-darwin.zip; else true; fi", + "*:*-android*:if [ $(uname) = 'Darwin' ]; then echo '0d4599e8bbf1a1668a0d51a541729b2246360f350018a2081d0b302dbb594f2a android-ndk-r28c-darwin.zip' | shasum -a 256 -c -; else true; fi", + "*:*-android*:if [ $(uname) = 'Linux' ]; then curl -o android-ndk-r28c-linux.zip https://dl.google.com/android/repository/android-ndk-r28c-linux.zip; else true; fi", + "*:*-android*:if [ $(uname) = 'Linux' ]; then echo 'dfb20d396df28ca02a8c708314b814a4d961dc9074f9a161932746f815aa552f android-ndk-r28c-linux.zip' | sha256sum -c -; else true; fi", + "*:*-android*:7z x $PWD/android-ndk-r28c-*.zip", + "*:*-android*:android-ndk-r28c/build/tools/make_standalone_toolchain.py --api $API_LEVEL --install-dir $PWD/toolchain --stl=libc++ $config_opts", + "*:*-android*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*-android*:mv $PWD/toolchain/* $STAGING_DIR$PREFIX/native", + "*:*-android*:cp $STAGING_DIR$PREFIX/native/bin/llvm-ar $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-ar", + "*:*-android*:cp $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST$API_LEVEL-clang $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-clang", + "*:*-android*:cp $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST$API_LEVEL-clang++ $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-clang++", + "*:*-android*:cp $STAGING_DIR$PREFIX/native/bin/llvm-ranlib $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-ranlib", + "*:*-android*:cp $STAGING_DIR$PREFIX/native/bin/llvm-ar $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-ar", + "*:*-android*:mkdir -p $STAGING_DIR$PREFIX/lib", + "*:aarch64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/aarch64-linux-android/*.a $STAGING_DIR$PREFIX/lib", + "*:x86_64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/x86_64-linux-android/*.a $STAGING_DIR$PREFIX/lib", + "*:armv7a-linux-androideabi:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/arm-linux-androideabi/*.a $STAGING_DIR$PREFIX/lib", + "*:*-android*:mkdir -p $STAGING_DIR$PREFIX/usr/lib", + "*:*-android*:ln -s ../lib $STAGING_DIR$PREFIX/usr/lib" ] } } \ No newline at end of file diff --git a/packages/native/apple-sdk-macos.json b/packages/native/apple-sdk-macos.json index f463981..680620b 100644 --- a/packages/native/apple-sdk-macos.json +++ b/packages/native/apple-sdk-macos.json @@ -16,45 +16,45 @@ } ], "dependencies": [ - "*-apple-darwin:native/bzip2", - "*-apple-darwin:native/cctools-port", - "*-apple-darwin:native/cmake", - "*-apple-darwin:native/cpio", - "*-apple-darwin:native/gettext", - "*-apple-darwin:native/git", - "*-apple-darwin:native/libtapi", - "*-apple-darwin:native/libxml2", - "*-apple-darwin:native/make", - "*-apple-darwin:native/openssl", - "*-apple-darwin:native/patch", - "*-apple-darwin:native/pbzx", - "*-apple-darwin:native/perl", - "*-apple-darwin:native/pkgconf", - "*-apple-darwin:native/python@3.11.13", - "*-apple-darwin:native/xar", - "*-apple-darwin:native/xz" + "*:*-apple-darwin:native/bzip2", + "*:*-apple-darwin:native/cctools-port", + "*:*-apple-darwin:native/cmake", + "*:*-apple-darwin:native/cpio", + "*:*-apple-darwin:native/gettext", + "*:*-apple-darwin:native/git", + "*:*-apple-darwin:native/libtapi", + "*:*-apple-darwin:native/libxml2", + "*:*-apple-darwin:native/make", + "*:*-apple-darwin:native/openssl", + "*:*-apple-darwin:native/patch", + "*:*-apple-darwin:native/pbzx", + "*:*-apple-darwin:native/perl", + "*:*-apple-darwin:native/pkgconf", + "*:*-apple-darwin:native/python@3.11", + "*:*-apple-darwin:native/xar", + "*:*-apple-darwin:native/xz" ], "build": { "env": [ - "*-apple-darwin:JOBS=$NUM_CORES", - "*-apple-darwin:PORTABLE=1", - "*-apple-darwin:TARGET_DIR=$PREFIX/native/", - "aarch64-apple-darwin:ENABLE_ARCHS=arm64", - "x86_64-apple-darwin:ENABLE_ARCHS=x86_64", - "*-apple-darwin:UNATTENDED=1", - "*-apple-darwin:SDK_VERSION=26.0", - "*-apple-darwin:COMPRESSLEVEL=9 -e" + "*:*-apple-darwin:JOBS=$NUM_CORES", + "*:*-apple-darwin:PORTABLE=1", + "*:*-apple-darwin:TARGET_DIR=$PREFIX/native/", + "*:aarch64-apple-darwin:ENABLE_ARCHS=arm64", + "*:x86_64-apple-darwin:ENABLE_ARCHS=x86_64", + "*:*-apple-darwin:UNATTENDED=1", + "*:*-apple-darwin:SDK_VERSION=26.0", + "*:*-apple-darwin:COMPRESSLEVEL=9 -e" ], "steps": [ - "*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", - "*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", - "*-apple-darwin:sed -i.bak 's/build_xar/echo build_xar/g' tools/gen_sdk_package_pbzx.sh", - "*-apple-darwin:sed -i.bak 's/build_pbxz/echo build_pbxz/g' tools/gen_sdk_package_pbzx.sh", - "*-apple-darwin:sed -i.bak 's/git /echo git /g' tools/tools.sh", - "*-apple-darwin:sed -i.bak '8,11d' tools/gen_sdk_package_pbzx.sh", - "*-apple-darwin:./tools/gen_sdk_package_pbzx.sh ./Xcode_*.xip", - "*-apple-darwin:mkdir -p $STAGING_DIR$PREFIX/native/share", - "*-apple-darwin:mv MacOSX26.sdk.tar.xz $STAGING_DIR$PREFIX/native/share" + "*:*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", + "*:*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", + "*:*-apple-darwin:sed -i.bak 's/build_xar/echo build_xar/g' tools/gen_sdk_package_pbzx.sh", + "*:*-apple-darwin:sed -i.bak 's/build_pbxz/echo build_pbxz/g' tools/gen_sdk_package_pbzx.sh", + "*:*-apple-darwin:sed -i.bak 's/git /echo git /g' tools/tools.sh", + "*:*-apple-darwin:sed -i.bak '8,11d' tools/gen_sdk_package_pbzx.sh", + "*:*-apple-darwin:./tools/gen_sdk_package_pbzx.sh ./Xcode_*.xip", + "*:*-apple-darwin:mkdir -p $STAGING_DIR$PREFIX/native/share", + "*:*-apple-darwin:mv MacOSX26.sdk.tar.xz $STAGING_DIR$PREFIX/native/share" ] } } \ No newline at end of file diff --git a/packages/native/autoconf.json b/packages/native/autoconf.json index 2c5e896..ee88557 100644 --- a/packages/native/autoconf.json +++ b/packages/native/autoconf.json @@ -10,16 +10,16 @@ } ], "dependencies": [ - "*:native/m4", - "*:native/make", - "*:native/perl" + "*:*:native/m4", + "*:*:native/make", + "*:*:native/perl" ], "build": { "env": [], "steps": [ - "*:./configure --host=$HOST --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --host=$HOST --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/automake.json b/packages/native/automake.json index aeae97c..e3c1fee 100644 --- a/packages/native/automake.json +++ b/packages/native/automake.json @@ -10,20 +10,20 @@ } ], "dependencies": [ - "*:native/autoconf", - "*:native/m4", - "*:native/make", - "*:native/perl" + "*:*:native/autoconf", + "*:*:native/m4", + "*:*:native/make", + "*:*:native/perl" ], "build": { "env": [ - "*:MAKEINFO=true" + "*:*:MAKEINFO=true" ], "steps": [ - "*:./bootstrap", - "*:./configure --prefix=$PREFIX/native --disable-doc", - "*:make -j$NUM_CORES V=1", - "*:make install DESTDIR=$STAGING_DIR " + "*:*:./bootstrap", + "*:*:./configure --prefix=$PREFIX/native --disable-doc", + "*:*:make -j$NUM_CORES V=1", + "*:*:make install DESTDIR=$STAGING_DIR " ] } } \ No newline at end of file diff --git a/packages/native/bash.json b/packages/native/bash.json index 5baa980..7e9c505 100644 --- a/packages/native/bash.json +++ b/packages/native/bash.json @@ -10,14 +10,14 @@ } ], "dependencies": [ - "*:native/make" + "*:*:native/make" ], "build": { "env": [], "steps": [ - "*:./configure --prefix=$PREFIX/native", - "*:make -j$NUM_CORES V=1", - "*:make install DESTDIR=$STAGING_DIR" + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES V=1", + "*:*:make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/native/binutils@2.42.json b/packages/native/binutils@2.42.json index e9942fc..036b99d 100644 --- a/packages/native/binutils@2.42.json +++ b/packages/native/binutils@2.42.json @@ -10,36 +10,36 @@ } ], "dependencies": [ - "*:native/bison", - "*:native/libiconv", - "*:native/make", - "*:native/perl", - "*:native/pkgconf", - "*:native/texinfo", - "*:native/zlib" + "*:*:native/bison", + "*:*:native/libiconv", + "*:*:native/make", + "*:*:native/perl", + "*:*:native/pkgconf", + "*:*:native/texinfo", + "*:*:native/zlib" ], "build": { "env": [ - "x86_64-linux-gnu:TOOL_TARGET=x86_64-linux-gnu", - "aarch64-linux-gnu:TOOL_TARGET=aarch64-linux-gnu", - "x86_64-linux-musl:TOOL_TARGET=x86_64-linux-musl", - "x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", - "*:config_opts=--prefix=$PREFIX/native", - "*:config_opts=$config_opts --disable-nls", - "*:config_opts=$config_opts --disable-werror", - "*:config_opts=$config_opts --with-system-zlib", - "*:config_opts=$config_opts --enable-targets=$TOOL_TARGET", - "*:config_opts=$config_opts --target=$TOOL_TARGET", - "*:config_opts=$config_opts --libdir=$PREFIX/native/lib/$TOOL_TARGET", - "*:config_opts=$config_opts --infodir=$PREFIX/native/share/info/$TOOL_TARGET", - "*:CPPFLAGS=-I$PREFIX/native/include", - "*:LDFLAGS=-L$PREFIX/native/lib" + "*:x86_64-linux-gnu:TOOL_TARGET=x86_64-linux-gnu", + "*:aarch64-linux-gnu:TOOL_TARGET=aarch64-linux-gnu", + "*:x86_64-linux-musl:TOOL_TARGET=x86_64-linux-musl", + "*:x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", + "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --disable-nls", + "*:*:config_opts=$config_opts --disable-werror", + "*:*:config_opts=$config_opts --with-system-zlib", + "*:*:config_opts=$config_opts --enable-targets=$TOOL_TARGET", + "*:*:config_opts=$config_opts --target=$TOOL_TARGET", + "*:*:config_opts=$config_opts --libdir=$PREFIX/native/lib/$TOOL_TARGET", + "*:*:config_opts=$config_opts --infodir=$PREFIX/native/share/info/$TOOL_TARGET", + "*:*:CPPFLAGS=-I$PREFIX/native/include", + "*:*:LDFLAGS=-L$PREFIX/native/lib" ], "steps": [ - "*:mkdir -p build", - "*:cd build && ../configure $config_opts", - "*:cd build && make -j$NUM_CORES", - "*:cd build && make install DESTDIR=$STAGING_DIR" + "*:*:mkdir -p build", + "*:*:cd build && ../configure $config_opts", + "*:*:cd build && make -j$NUM_CORES", + "*:*:cd build && make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/native/bison.json b/packages/native/bison.json index ad702e3..b7a73d1 100644 --- a/packages/native/bison.json +++ b/packages/native/bison.json @@ -10,19 +10,19 @@ } ], "dependencies": [ - "*:native/m4", - "*:native/make", - "*:native/texinfo" + "*:*:native/m4", + "*:*:native/make", + "*:*:native/texinfo" ], "build": { "env": [ - "*:AUTOMAKE=true", - "*:ACLOCAL=true" + "*:*:AUTOMAKE=true", + "*:*:ACLOCAL=true" ], "steps": [ - "*:./configure --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/boost-b2.json b/packages/native/boost-b2.json index 61e3650..a63a05a 100644 --- a/packages/native/boost-b2.json +++ b/packages/native/boost-b2.json @@ -11,9 +11,9 @@ ], "build": { "steps": [ - "*:./bootstrap.sh", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp b2 $STAGING_DIR$PREFIX/native/bin/" + "*:*:./bootstrap.sh", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp b2 $STAGING_DIR$PREFIX/native/bin/" ] } } \ No newline at end of file diff --git a/packages/native/bootstrap/cpan/archive-cpio.json b/packages/native/bootstrap/cpan/archive-cpio.json deleted file mode 100644 index 53dca89..0000000 --- a/packages/native/bootstrap/cpan/archive-cpio.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "package": "native/bootstrap/cpan/archive-cpio", - "version": "0.10", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "246fb31669764e78336b2191134122e07c44f2d82dc4f37d552ab28f8668bed3", - "url": "https://cpan.metacpan.org/authors/id/P/PI/PIXEL/Archive-Cpio-0.10.tar.gz" - } - ], - "dependencies": [ - "*:native/bootstrap/make", - "*:native/bootstrap/perl" - ], - "build": { - "env": [ - "*:PATH=$PREFIX/native/bootstrap/bin:$PATH" - ], - "steps": [ - "*:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" - ] - } -} \ No newline at end of file diff --git a/packages/native/bootstrap/cpan/archive-zip.json b/packages/native/bootstrap/cpan/archive-zip.json deleted file mode 100644 index 3167500..0000000 --- a/packages/native/bootstrap/cpan/archive-zip.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "package": "native/bootstrap/cpan/archive-zip", - "version": "1.68", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "984e185d785baf6129c6e75f8eb44411745ac00bf6122fb1c8e822a3861ec650", - "url": "https://cpan.metacpan.org/authors/id/P/PH/PHRED/Archive-Zip-1.68.tar.gz" - } - ], - "dependencies": [ - "*:native/bootstrap/make", - "*:native/bootstrap/perl" - ], - "build": { - "env": [ - "*:PATH=$PREFIX/native/bootstrap/bin:$PATH" - ], - "steps": [ - "*:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" - ] - } -} \ No newline at end of file diff --git a/packages/native/bootstrap/cpan/autodie.json b/packages/native/bootstrap/cpan/autodie.json deleted file mode 100644 index c15a1c5..0000000 --- a/packages/native/bootstrap/cpan/autodie.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "package": "native/bootstrap/cpan/autodie", - "version": "2.37", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "4921d211b0cea63c2ca06dfc0c948a7203a3d48ad80a06f43b46104354f2c1c3", - "url": "https://cpan.metacpan.org/authors/id/T/TO/TODDR/autodie-2.37.tar.gz" - } - ], - "dependencies": [ - "*:native/bootstrap/make", - "*:native/bootstrap/perl" - ], - "build": { - "env": [ - "*:PATH=$PREFIX/native/bootstrap/bin:$PATH" - ], - "steps": [ - "*:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" - ] - } -} \ No newline at end of file diff --git a/packages/native/bootstrap/cpan/sub-override.json b/packages/native/bootstrap/cpan/sub-override.json deleted file mode 100644 index ff75c1c..0000000 --- a/packages/native/bootstrap/cpan/sub-override.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "package": "native/bootstrap/cpan/sub-override", - "version": "0.09", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "939a67c1f729968e0cc81b74958db750e1bdb7c020bee1a263332f422c2e25b5", - "url": "https://cpan.metacpan.org/authors/id/O/OV/OVID/Sub-Override-0.09.tar.gz" - } - ], - "dependencies": [ - "*:native/bootstrap/make", - "*:native/bootstrap/perl" - ], - "build": { - "env": [ - "*:PATH=$PREFIX/native/bootstrap/bin:$PATH" - ], - "steps": [ - "*:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" - ] - } -} \ No newline at end of file diff --git a/packages/native/bootstrap/make.json b/packages/native/bootstrap/make.json deleted file mode 100644 index bba16cb..0000000 --- a/packages/native/bootstrap/make.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "package": "native/bootstrap/make", - "version": "4.4", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "581f4d4e872da74b3941c874215898a7d35802f03732bdccee1d4a7979105d18", - "url": "http://ftpmirror.gnu.org/gnu/make/make-4.4.tar.gz" - } - ], - "build": { - "steps": [ - "*:./configure --disable-dependency-tracking", - "*:./build.sh", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bootstrap/bin", - "*:cp make $STAGING_DIR/$PREFIX/native/bootstrap/bin/make" - ] - } -} \ No newline at end of file diff --git a/packages/native/bootstrap/perl.json b/packages/native/bootstrap/perl.json deleted file mode 100644 index 784046d..0000000 --- a/packages/native/bootstrap/perl.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "package": "native/bootstrap/perl", - "version": "5.42.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "e093ef184d7f9a1b9797e2465296f55510adb6dab8842b0c3ed53329663096dc", - "url": "http://www.cpan.org/src/5.0/perl-5.42.0.tar.gz" - } - ], - "dependencies": [ - "*:native/bootstrap/make" - ], - "build": { - "env": [ - "*:PATH=$PREFIX/native/bootstrap/bin:$PATH" - ], - "steps": [ - "*:sed -i.bak '/^#ifndef PERL_BUILD_DATE$/,/^#endif$/{/^#ifndef PERL_BUILD_DATE$/!d; s/.*/\\#define PERL_BUILD_DATE \"Jan 1 1970 00:00:01\"/;}' perl.c", - "*:./Configure -des -Dprefix=$PREFIX/native/bootstrap -Duseithreads -Dall_static", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" - ] - } -} \ No newline at end of file diff --git a/packages/native/bootstrap/strip-nondeterminism.json b/packages/native/bootstrap/strip-nondeterminism.json index b94f758..d076072 100644 --- a/packages/native/bootstrap/strip-nondeterminism.json +++ b/packages/native/bootstrap/strip-nondeterminism.json @@ -1,32 +1,9 @@ { "package": "native/bootstrap/strip-nondeterminism", - "version": "1.13.0", + "version": "0.0.0", "type": "native", - "download": [ - { - "kind": "tar.bz2", - "sha256": "a70cdad5d728ea78b75d09880c4b51c7d887e89d0b610149b10cfb2abc70b4fc", - "url": "https://salsa.debian.org/reproducible-builds/reproducible-lfs/-/raw/master/releases/strip-nondeterminism/strip-nondeterminism_1.13.0.tar.bz2" - } - ], - "dependencies": [ - "*:native/bootstrap/cpan/archive-cpio", - "*:native/bootstrap/cpan/archive-zip", - "*:native/bootstrap/cpan/autodie", - "*:native/bootstrap/cpan/sub-override", - "*:native/bootstrap/make", - "*:native/bootstrap/perl" - ], "build": { - "env": [ - "*:PATH=$PREFIX/native/bootstrap/bin:$PATH" - ], - "steps": [ - "*:$PREFIX/native/bootstrap/bin/perl Makefile.PL PREFIX=$PREFIX/native/bootstrap", - "*:make", - "*:make DESTDIR=$STAGING_DIR install", - "*:mkdir -p $STAGING_DIR/$PREFIX/native/bootstrap/bin/", - "*:cp $PATCH_DIR/strip-nondeterminism-recursive $STAGING_DIR/$PREFIX/native/bootstrap/bin" - ] + "env": [], + "steps": [] } } \ No newline at end of file diff --git a/packages/native/bzip2.json b/packages/native/bzip2.json index 1edab13..14fbb73 100644 --- a/packages/native/bzip2.json +++ b/packages/native/bzip2.json @@ -10,14 +10,14 @@ } ], "dependencies": [ - "*:native/make", - "*:native/openssl" + "*:*:native/make", + "*:*:native/openssl" ], "build": { "steps": [ - "*:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", - "*:make -j$NUM_CORES", - "*:make install PREFIX=$STAGING_DIR$PREFIX/native" + "*:*:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", + "*:*:make -j$NUM_CORES", + "*:*:make install PREFIX=$STAGING_DIR$PREFIX/native" ] } } \ No newline at end of file diff --git a/packages/native/cctools-port.json b/packages/native/cctools-port.json index 783c053..6c6f9b5 100644 --- a/packages/native/cctools-port.json +++ b/packages/native/cctools-port.json @@ -10,29 +10,29 @@ } ], "dependencies": [ - "*-apple-darwin:native/bzip2", - "*-apple-darwin:native/libtapi", - "*-apple-darwin:native/make", - "*-apple-darwin:native/openssl", - "*-apple-darwin:native/xar", - "*-apple-darwin:native/xz", - "*-apple-darwin:native/zlib" + "*:*-apple-darwin:native/bzip2", + "*:*-apple-darwin:native/libtapi", + "*:*-apple-darwin:native/make", + "*:*-apple-darwin:native/openssl", + "*:*-apple-darwin:native/xar", + "*:*-apple-darwin:native/xz", + "*:*-apple-darwin:native/zlib" ], "build": { "env": [ - "*-apple-darwin:config_opts=--prefix=$PREFIX/native", - "aarch64-apple-darwin:config_opts=$config_opts --target=arm64-apple-darwin25", - "x86_64-apple-darwin:config_opts=$config_opts --target=x86_64-apple-darwin25", - "*-apple-darwin:config_opts=$config_opts --with-libtapi=$PREFIX/native", - "*-apple-darwin:config_opts=$config_opts --with-libxar=$PREFIX/native", - "*-apple-darwin:CC=clang", - "*-apple-darwin:CXX=clang++" + "*:*-apple-darwin:config_opts=--prefix=$PREFIX/native", + "*:aarch64-apple-darwin:config_opts=$config_opts --target=arm64-apple-darwin25", + "*:x86_64-apple-darwin:config_opts=$config_opts --target=x86_64-apple-darwin25", + "*:*-apple-darwin:config_opts=$config_opts --with-libtapi=$PREFIX/native", + "*:*-apple-darwin:config_opts=$config_opts --with-libxar=$PREFIX/native", + "*:*-apple-darwin:CC=clang", + "*:*-apple-darwin:CXX=clang++" ], "steps": [ - "*-apple-darwin:sed -i.bak '3182d' cctools/configure", - "*-apple-darwin:cd cctools && ./configure $config_opts", - "*-apple-darwin:cd cctools && make -j$NUM_CORES", - "*-apple-darwin:cd cctools && DESTDIR=$STAGING_DIR make -j$NUM_CORES install" + "*:*-apple-darwin:sed -i.bak '3182d' cctools/configure", + "*:*-apple-darwin:cd cctools && ./configure $config_opts", + "*:*-apple-darwin:cd cctools && make -j$NUM_CORES", + "*:*-apple-darwin:cd cctools && DESTDIR=$STAGING_DIR make -j$NUM_CORES install" ] } } \ No newline at end of file diff --git a/packages/native/cmake-toolchain.json b/packages/native/cmake-toolchain.json index 53fce56..9d3a797 100644 --- a/packages/native/cmake-toolchain.json +++ b/packages/native/cmake-toolchain.json @@ -12,8 +12,8 @@ "build": { "env": [], "steps": [ - "*:mkdir -p $STAGING_DIR$PREFIX/native/", - "*:cp toolchain.cmake $STAGING_DIR$PREFIX/native/toolchain.cmake" + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/", + "*:*:cp toolchain.cmake $STAGING_DIR$PREFIX/native/toolchain.cmake" ] } } \ No newline at end of file diff --git a/packages/native/cmake.json b/packages/native/cmake.json index 0e79665..d0e9814 100644 --- a/packages/native/cmake.json +++ b/packages/native/cmake.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "*:native/make", - "*:native/openssl" + "*:*:native/make", + "*:*:native/openssl" ], "build": { "env": [ - "*:OPENSSL_ROOT_DIR=$PREFIX/native" + "*:*:OPENSSL_ROOT_DIR=$PREFIX/native" ], "steps": [ - "*:./bootstrap --parallel=$NUM_CORES", - "*:./configure --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./bootstrap --parallel=$NUM_CORES", + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/config.json b/packages/native/config.json index 4e7f8f6..8f84f0d 100644 --- a/packages/native/config.json +++ b/packages/native/config.json @@ -12,9 +12,9 @@ "build": { "env": [], "steps": [ - "*:mkdir -p $STAGING_DIR$PREFIX/native/share/config", - "*:cp config.guess $STAGING_DIR$PREFIX/native/share/config/config.guess", - "*:cp config.sub $STAGING_DIR$PREFIX/native/share/config/config.sub" + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/share/config", + "*:*:cp config.guess $STAGING_DIR$PREFIX/native/share/config/config.guess", + "*:*:cp config.sub $STAGING_DIR$PREFIX/native/share/config/config.sub" ] } } \ No newline at end of file diff --git a/packages/native/cpio.json b/packages/native/cpio.json index 71f7a67..2fee4bf 100644 --- a/packages/native/cpio.json +++ b/packages/native/cpio.json @@ -10,14 +10,14 @@ } ], "dependencies": [ - "*:native/make" + "*:*:native/make" ], "build": { "env": [], "steps": [ - "*:./configure --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index 7d0f514..d4956dd 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -10,42 +10,44 @@ } ], "dependencies": [ - "*:native/autoconf", - "*:native/automake", - "*:native/bash", - "*:native/binutils@2.42", - "*:native/bison", - "*:native/bzip2", - "*:native/file", - "*:native/flex", - "*:native/gawk", - "*:native/gettext", - "*:native/help2man", - "*:native/libtool", - "*:native/m4", - "*:native/make", - "*:native/perl", - "*:native/python@3.11.13", - "*:native/rsync", - "*:native/sed", - "*:native/texinfo", - "*:native/xz", - "*:native/zlib" + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/bash", + "*:*:native/binutils@2.42", + "*:*:native/bison", + "*:*:native/bzip2", + "*:*:native/file", + "*:*:native/flex", + "*:*:native/gawk", + "*:*:native/gettext", + "*:*:native/help2man", + "*:*:native/libtool", + "*:*:native/m4", + "*:*:native/make", + "*:*:native/ncurses", + "*:*:native/perl", + "*:*:native/python@3.11", + "*:*:native/rsync", + "*:*:native/sed", + "*:*:native/texinfo", + "*:*:native/unzip", + "*:*:native/xz", + "*:*:native/zlib" ], "build": { "env": [ - "x86_64-linux-gnu:TOOL_TARGET=x86_64-linux-gnu", - "x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", - "aarch64-linux-gnu:TOOL_TARGET=aarch64-linux-gnu", - "x86_64-linux-musl:TOOL_TARGET=x86_64-linux-musl" + "*:x86_64-linux-gnu:TOOL_TARGET=x86_64-linux-gnu", + "*:x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", + "*:aarch64-linux-gnu:TOOL_TARGET=aarch64-linux-gnu", + "*:x86_64-linux-musl:TOOL_TARGET=x86_64-linux-musl" ], "steps": [ - "*:./bootstrap", - "*:ln -s $TOOL_TARGET-objcopy $PREFIX/native/bin/objcopy", - "*:ln -s $TOOL_TARGET-readelf $PREFIX/native/bin/readelf", - "*:./configure --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make install DESTDIR=$STAGING_DIR" + "*:*:./bootstrap", + "*:*:ln -s $TOOL_TARGET-objcopy $PREFIX/native/bin/objcopy", + "*:*:ln -s $TOOL_TARGET-readelf $PREFIX/native/bin/readelf", + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 66fdf02..310f4fc 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -113,111 +113,111 @@ } ], "dependencies": [ - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/autoconf", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/automake", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bash", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/binutils@2.42", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bison", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bzip2", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/crosstool-ng", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/file", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/flex", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gawk", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gettext", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/help2man", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/libtool", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/m4", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/make", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/perl", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/python@3.11.13", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/rsync", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/sed", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/texinfo", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/xz", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/zlib" + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/autoconf", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/automake", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bash", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/binutils@2.42", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bison", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bzip2", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/crosstool-ng", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/file", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/flex", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gawk", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gettext", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/help2man", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/libtool", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/m4", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/make", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/perl", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/python@3.11", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/rsync", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/sed", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/texinfo", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/xz", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/zlib" ], "build": { "env": [ - "x86_64-linux-gnu:TOOL_TARGET=x86_64-multilib-linux-gnu", - "x86_64-linux-gnu:TOOL_TARGET_ALT=x86_64-linux-gnu", - "aarch64-linux-gnu:TOOL_TARGET=aarch64-unknown-linux-gnu", - "aarch64-linux-gnu:TOOL_TARGET_ALT=aarch64-linux-gnu", - "x86_64-linux-musl:TOOL_TARGET=x86_64-multilib-linux-musl", - "x86_64-linux-musl:TOOL_TARGET_ALT=x86_64-linux-musl", - "x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", - "x86_64-w64-mingw32:TOOL_TARGET_ALT=x86_64-w64-mingw32" + "*:x86_64-linux-gnu:TOOL_TARGET=x86_64-multilib-linux-gnu", + "*:x86_64-linux-gnu:TOOL_TARGET_ALT=x86_64-linux-gnu", + "*:aarch64-linux-gnu:TOOL_TARGET=aarch64-unknown-linux-gnu", + "*:aarch64-linux-gnu:TOOL_TARGET_ALT=aarch64-linux-gnu", + "*:x86_64-linux-musl:TOOL_TARGET=x86_64-multilib-linux-musl", + "*:x86_64-linux-musl:TOOL_TARGET_ALT=x86_64-linux-musl", + "*:x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", + "*:x86_64-w64-mingw32:TOOL_TARGET_ALT=x86_64-w64-mingw32" ], "steps": [ - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ct-ng $TOOL_TARGET", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_EXPERIMENTAL=y' >> .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_FORBID_DOWNLOAD=y' >> .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_LANG_CXX=y' >> .config", - "none:echo 'CT_CC_LANG_FORTRAN=y' >> .config", - "none:echo 'CT_CC_LANG_D=y' >> .config", - "none:echo 'CT_CC_LANG_OBJC=y' >> .config", - "none:echo 'CT_CC_LANG_OBJCXX=y' >> .config", - "none:echo 'CT_CC_LANG_GOLANG=y' >> .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_BINUTILS_EXTRA_CONFIG_ARRAY=\"--with-system-zlib\"' >> .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_GCC_SYSTEM_ZLIB=y' >> .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_DEBUG_CT_SAVE_STEPS=y' >> .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GDB_CROSS=y/CT_GDB_CROSS=n/g' .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GLIBC_VERSION=\"2.42\"/CT_GLIBC_VERSION=\"2.38\"/g' .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GDB_GDBSERVER=y/CT_GDB_GDBSERVER=n/g' .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_GDB=n' >> .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_GDB_NATIVE=n' >> .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_PREFIX_DIR_RO=n' >> .config", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET_ALT-objcopy $PREFIX/native/bin/objcopy", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET_ALT-readelf $PREFIX/native/bin/readelf", - "x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ar $PREFIX/native/bin/ar", - "x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ranlib $PREFIX/native/bin/ranlib", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:unset LD_LIBRARY_PATH LIBRARY_PATH CC CXX CFLAGS; ct-ng build", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:mkdir -p $STAGING_DIR$PREFIX/native", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/bin $STAGING_DIR$PREFIX/native", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/include $STAGING_DIR$PREFIX/native", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/lib $STAGING_DIR$PREFIX/native", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/libexec $STAGING_DIR$PREFIX/native", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/share $STAGING_DIR$PREFIX/native", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/etc $STAGING_DIR$PREFIX/", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib $STAGING_DIR$PREFIX/", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib64 $STAGING_DIR$PREFIX/", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/sbin $STAGING_DIR$PREFIX/", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr $STAGING_DIR$PREFIX/", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:mkdir -p $STAGING_DIR$PREFIX/include", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/$TOOL_TARGET/include/c++/15.2.0/* $STAGING_DIR$PREFIX/include", - "x86_64-linux-gnu:cp -a $STAGING_DIR$PREFIX/include/x86_64-multilib-linux-gnu/. $STAGING_DIR$PREFIX/include", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-addr2line $STAGING_DIR$PREFIX/native/bin/addr2line", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ar $STAGING_DIR$PREFIX/native/bin/ar", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-as $STAGING_DIR$PREFIX/native/bin/as", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-c++ $STAGING_DIR$PREFIX/native/bin/c++", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-c++filt $STAGING_DIR$PREFIX/native/bin/c++filt", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-cc $STAGING_DIR$PREFIX/native/bin/cc", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-cpp $STAGING_DIR$PREFIX/native/bin/cpp", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-elfedit $STAGING_DIR$PREFIX/native/bin/elfedit", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-g++ $STAGING_DIR$PREFIX/native/bin/g++", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc $STAGING_DIR$PREFIX/native/bin/gcc", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-15.2.0 $STAGING_DIR$PREFIX/native/bin/gcc-15.2.0", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-ar $STAGING_DIR$PREFIX/native/bin/gcc-ar", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-nm $STAGING_DIR$PREFIX/native/bin/gcc-nm", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-ranlib $STAGING_DIR$PREFIX/native/bin/gcc-ranlib", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gccgo $STAGING_DIR$PREFIX/native/bin/gccgo", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcov $STAGING_DIR$PREFIX/native/bin/gcov", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcov-dump $STAGING_DIR$PREFIX/native/bin/gcov-dump", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcov-tool $STAGING_DIR$PREFIX/native/bin/gcov-tool", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gfortran $STAGING_DIR$PREFIX/native/bin/gfortran", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gprof $STAGING_DIR$PREFIX/native/bin/gprof", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ld $STAGING_DIR$PREFIX/native/bin/ld", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ld.bfd $STAGING_DIR$PREFIX/native/bin/ld.bfd", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ldd $STAGING_DIR$PREFIX/native/bin/ldd", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-lto-dump $STAGING_DIR$PREFIX/native/bin/lto-dump", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-nm $STAGING_DIR$PREFIX/native/bin/nm", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-objcopy $STAGING_DIR$PREFIX/native/bin/objcopy", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-objdump $STAGING_DIR$PREFIX/native/bin/objdump", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-populate $STAGING_DIR$PREFIX/native/bin/populate", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ranlib $STAGING_DIR$PREFIX/native/bin/ranlib", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-readelf $STAGING_DIR$PREFIX/native/bin/readelf", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-size $STAGING_DIR$PREFIX/native/bin/size", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-strings $STAGING_DIR$PREFIX/native/bin/strings", - "{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-strip $STAGING_DIR$PREFIX/native/bin/strip" + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ct-ng $TOOL_TARGET", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_EXPERIMENTAL=y' >> .config", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_FORBID_DOWNLOAD=y' >> .config", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_LANG_CXX=y' >> .config", + "*:none:echo 'CT_CC_LANG_FORTRAN=y' >> .config", + "*:none:echo 'CT_CC_LANG_D=y' >> .config", + "*:none:echo 'CT_CC_LANG_OBJC=y' >> .config", + "*:none:echo 'CT_CC_LANG_OBJCXX=y' >> .config", + "*:none:echo 'CT_CC_LANG_GOLANG=y' >> .config", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_BINUTILS_EXTRA_CONFIG_ARRAY=\"--with-system-zlib\"' >> .config", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_GCC_SYSTEM_ZLIB=y' >> .config", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_DEBUG_CT_SAVE_STEPS=y' >> .config", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GDB_CROSS=y/CT_GDB_CROSS=n/g' .config", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GLIBC_VERSION=\"2.42\"/CT_GLIBC_VERSION=\"2.38\"/g' .config", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GDB_GDBSERVER=y/CT_GDB_GDBSERVER=n/g' .config", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_GDB=n' >> .config", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_GDB_NATIVE=n' >> .config", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_PREFIX_DIR_RO=n' >> .config", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET_ALT-objcopy $PREFIX/native/bin/objcopy", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET_ALT-readelf $PREFIX/native/bin/readelf", + "*:x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ar $PREFIX/native/bin/ar", + "*:x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ranlib $PREFIX/native/bin/ranlib", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:unset LD_LIBRARY_PATH LIBRARY_PATH CC CXX CFLAGS; ct-ng build", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:mkdir -p $STAGING_DIR$PREFIX/native", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/bin $STAGING_DIR$PREFIX/native", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/include $STAGING_DIR$PREFIX/native", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/lib $STAGING_DIR$PREFIX/native", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/libexec $STAGING_DIR$PREFIX/native", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/share $STAGING_DIR$PREFIX/native", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/etc $STAGING_DIR$PREFIX/", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib $STAGING_DIR$PREFIX/", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib64 $STAGING_DIR$PREFIX/", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/sbin $STAGING_DIR$PREFIX/", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr $STAGING_DIR$PREFIX/", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:mkdir -p $STAGING_DIR$PREFIX/include", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/$TOOL_TARGET/include/c++/15.2.0/* $STAGING_DIR$PREFIX/include", + "*:x86_64-linux-gnu:cp -a $STAGING_DIR$PREFIX/include/x86_64-multilib-linux-gnu/. $STAGING_DIR$PREFIX/include", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-addr2line $STAGING_DIR$PREFIX/native/bin/addr2line", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ar $STAGING_DIR$PREFIX/native/bin/ar", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-as $STAGING_DIR$PREFIX/native/bin/as", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-c++ $STAGING_DIR$PREFIX/native/bin/c++", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-c++filt $STAGING_DIR$PREFIX/native/bin/c++filt", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-cc $STAGING_DIR$PREFIX/native/bin/cc", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-cpp $STAGING_DIR$PREFIX/native/bin/cpp", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-elfedit $STAGING_DIR$PREFIX/native/bin/elfedit", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-g++ $STAGING_DIR$PREFIX/native/bin/g++", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc $STAGING_DIR$PREFIX/native/bin/gcc", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-15.2.0 $STAGING_DIR$PREFIX/native/bin/gcc-15.2.0", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-ar $STAGING_DIR$PREFIX/native/bin/gcc-ar", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-nm $STAGING_DIR$PREFIX/native/bin/gcc-nm", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-ranlib $STAGING_DIR$PREFIX/native/bin/gcc-ranlib", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gccgo $STAGING_DIR$PREFIX/native/bin/gccgo", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcov $STAGING_DIR$PREFIX/native/bin/gcov", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcov-dump $STAGING_DIR$PREFIX/native/bin/gcov-dump", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcov-tool $STAGING_DIR$PREFIX/native/bin/gcov-tool", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gfortran $STAGING_DIR$PREFIX/native/bin/gfortran", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gprof $STAGING_DIR$PREFIX/native/bin/gprof", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ld $STAGING_DIR$PREFIX/native/bin/ld", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ld.bfd $STAGING_DIR$PREFIX/native/bin/ld.bfd", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ldd $STAGING_DIR$PREFIX/native/bin/ldd", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-lto-dump $STAGING_DIR$PREFIX/native/bin/lto-dump", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-nm $STAGING_DIR$PREFIX/native/bin/nm", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-objcopy $STAGING_DIR$PREFIX/native/bin/objcopy", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-objdump $STAGING_DIR$PREFIX/native/bin/objdump", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-populate $STAGING_DIR$PREFIX/native/bin/populate", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ranlib $STAGING_DIR$PREFIX/native/bin/ranlib", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-readelf $STAGING_DIR$PREFIX/native/bin/readelf", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-size $STAGING_DIR$PREFIX/native/bin/size", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-strings $STAGING_DIR$PREFIX/native/bin/strings", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-strip $STAGING_DIR$PREFIX/native/bin/strip" ] } } \ No newline at end of file diff --git a/packages/native/curl.json b/packages/native/curl.json index ac3094f..78aaf69 100644 --- a/packages/native/curl.json +++ b/packages/native/curl.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "*:native/libpsl", - "*:native/make", - "*:native/openssl" + "*:*:native/libpsl", + "*:*:native/make", + "*:*:native/openssl" ], "build": { "env": [ - "*:config_opts=--with-openssl" + "*:*:config_opts=--with-openssl" ], "steps": [ - "*:./configure $config_opts --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure $config_opts --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/dart-bin@3.4.0-247.0.dev.json b/packages/native/dart-bin@3.4.0-247.0.dev.json index 993bbea..b9313d3 100644 --- a/packages/native/dart-bin@3.4.0-247.0.dev.json +++ b/packages/native/dart-bin@3.4.0-247.0.dev.json @@ -23,17 +23,17 @@ } ], "dependencies": [ - "*:native/p7zip" + "*:*:native/p7zip" ], "build": { "env": [], "steps": [ - "*:mkdir build", - "*:cd build && 7z x ../dartsdk-${BUILDER_GOOS}_${BUILDER_GOARCH}.zip", - "*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:mv build/dart-sdk/lib $STAGING_DIR$PREFIX/native", - "*:mv build/dart-sdk/include $STAGING_DIR$PREFIX/native", - "*:mv build/dart-sdk/bin $STAGING_DIR$PREFIX/native" + "*:*:mkdir build", + "*:*:cd build && 7z x ../dartsdk-${BUILDER_GOOS}_${BUILDER_GOARCH}.zip", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*:mv build/dart-sdk/lib $STAGING_DIR$PREFIX/native", + "*:*:mv build/dart-sdk/include $STAGING_DIR$PREFIX/native", + "*:*:mv build/dart-sdk/bin $STAGING_DIR$PREFIX/native" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.5.0-278.0.dev.json b/packages/native/dart@3.5.0-278.0.dev.json index 5fa0d3b..ba1e4a3 100644 --- a/packages/native/dart@3.5.0-278.0.dev.json +++ b/packages/native/dart@3.5.0-278.0.dev.json @@ -508,53 +508,53 @@ } ], "dependencies": [ - "*:native/dart-bin@3.4.0-247.0.dev", - "*:native/gn", - "*:native/libc++", - "*:native/llvm-ar", - "*:native/llvm-nm", - "*:native/llvm-strip", - "*:native/make", - "*:native/ninja", - "*:native/python@3.11.13", - "*:native/zlib" + "*:*:native/dart-bin@3.4.0-247.0.dev", + "*:*:native/gn", + "*:*:native/libc++", + "*:*:native/llvm-ar", + "*:*:native/llvm-nm", + "*:*:native/llvm-strip", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "*:mkdir -p buildtools/mac-x64/clang/.versions", - "*:mkdir -p buildtools/mac-arm64/clang/.versions", - "*:mkdir -p buildtools/linux-x64/clang/.versions", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", - "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", - "*:ln -s $(which gn) buildtools/gn", - "*:mkdir -p buildtools/ninja", - "*:ln -s $(which ninja) buildtools/ninja/ninja", - "*:mkdir -p buildtools/mac-arm64/clang/bin", - "*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", - "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", - "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", - "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "*:mkdir -p tools/sdks/dart-sdk/bin", - "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", - "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", - "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", - "*:echo 3.5.0-278.0.dev > sdk/version", - "*:mkdir -p third_party/devtools/web", - "*:echo 'no devtools :(' > third_party/devtools/web/index.html", - "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", - "*:python3 ./tools/build.py --mode=product create_sdk", - "*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:*:ln -s $(which gn) buildtools/gn", + "*:*:mkdir -p buildtools/ninja", + "*:*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:*:mkdir -p tools/sdks/dart-sdk/bin", + "*:*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:*:echo 3.5.0-278.0.dev > sdk/version", + "*:*:mkdir -p third_party/devtools/web", + "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:*:python3 ./tools/build.py --mode=product create_sdk", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.5.0-307.0.dev.json b/packages/native/dart@3.5.0-307.0.dev.json index 8a6b1f0..787daeb 100644 --- a/packages/native/dart@3.5.0-307.0.dev.json +++ b/packages/native/dart@3.5.0-307.0.dev.json @@ -514,53 +514,53 @@ } ], "dependencies": [ - "*:native/dart@3.5.0-278.0.dev", - "*:native/gn", - "*:native/libc++", - "*:native/llvm-ar", - "*:native/llvm-nm", - "*:native/llvm-strip", - "*:native/make", - "*:native/ninja", - "*:native/python@3.11.13", - "*:native/zlib" + "*:*:native/dart@3.5.0-278.0.dev", + "*:*:native/gn", + "*:*:native/libc++", + "*:*:native/llvm-ar", + "*:*:native/llvm-nm", + "*:*:native/llvm-strip", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "*:mkdir -p buildtools/mac-x64/clang/.versions", - "*:mkdir -p buildtools/mac-arm64/clang/.versions", - "*:mkdir -p buildtools/linux-x64/clang/.versions", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", - "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", - "*:ln -s $(which gn) buildtools/gn", - "*:mkdir -p buildtools/ninja", - "*:ln -s $(which ninja) buildtools/ninja/ninja", - "*:mkdir -p buildtools/mac-arm64/clang/bin", - "*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", - "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", - "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", - "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "*:mkdir -p tools/sdks/dart-sdk/bin", - "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", - "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", - "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", - "*:echo 3.5.0-307.0.dev > sdk/version", - "*:mkdir -p third_party/devtools/web", - "*:echo 'no devtools :(' > third_party/devtools/web/index.html", - "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", - "*:python3 ./tools/build.py --mode=product create_sdk", - "*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:*:ln -s $(which gn) buildtools/gn", + "*:*:mkdir -p buildtools/ninja", + "*:*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:*:mkdir -p tools/sdks/dart-sdk/bin", + "*:*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:*:echo 3.5.0-307.0.dev > sdk/version", + "*:*:mkdir -p third_party/devtools/web", + "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:*:python3 ./tools/build.py --mode=product create_sdk", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.6.0-2.0.dev.json b/packages/native/dart@3.6.0-2.0.dev.json index d8f13c4..1ff86b5 100644 --- a/packages/native/dart@3.6.0-2.0.dev.json +++ b/packages/native/dart@3.6.0-2.0.dev.json @@ -508,53 +508,53 @@ } ], "dependencies": [ - "*:native/dart@3.5.0-307.0.dev", - "*:native/gn", - "*:native/libc++", - "*:native/llvm-ar", - "*:native/llvm-nm", - "*:native/llvm-strip", - "*:native/make", - "*:native/ninja", - "*:native/python@3.11.13", - "*:native/zlib" + "*:*:native/dart@3.5.0-307.0.dev", + "*:*:native/gn", + "*:*:native/libc++", + "*:*:native/llvm-ar", + "*:*:native/llvm-nm", + "*:*:native/llvm-strip", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "*:mkdir -p buildtools/mac-x64/clang/.versions", - "*:mkdir -p buildtools/mac-arm64/clang/.versions", - "*:mkdir -p buildtools/linux-x64/clang/.versions", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", - "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", - "*:ln -s $(which gn) buildtools/gn", - "*:mkdir -p buildtools/ninja", - "*:ln -s $(which ninja) buildtools/ninja/ninja", - "*:mkdir -p buildtools/mac-arm64/clang/bin", - "*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", - "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", - "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", - "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "*:mkdir -p tools/sdks/dart-sdk/bin", - "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", - "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", - "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", - "*:echo 3.6.0-2.0.dev > sdk/version", - "*:mkdir -p third_party/devtools/web", - "*:echo 'no devtools :(' > third_party/devtools/web/index.html", - "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", - "*:python3 ./tools/build.py --mode=product create_sdk", - "*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:*:ln -s $(which gn) buildtools/gn", + "*:*:mkdir -p buildtools/ninja", + "*:*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:*:mkdir -p tools/sdks/dart-sdk/bin", + "*:*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:*:echo 3.6.0-2.0.dev > sdk/version", + "*:*:mkdir -p third_party/devtools/web", + "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:*:python3 ./tools/build.py --mode=product create_sdk", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.7.0-224.0.dev.json b/packages/native/dart@3.7.0-224.0.dev.json index 0dff3c6..2038385 100644 --- a/packages/native/dart@3.7.0-224.0.dev.json +++ b/packages/native/dart@3.7.0-224.0.dev.json @@ -376,54 +376,54 @@ } ], "dependencies": [ - "*:native/dart@3.7.0-27.0.dev", - "*:native/gn", - "*:native/libc++", - "*:native/llvm-ar", - "*:native/llvm-nm", - "*:native/llvm-strip", - "*:native/make", - "*:native/ninja", - "*:native/python@3.11.13", - "*:native/zlib" + "*:*:native/dart@3.7.0-27.0.dev", + "*:*:native/gn", + "*:*:native/libc++", + "*:*:native/llvm-ar", + "*:*:native/llvm-nm", + "*:*:native/llvm-strip", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "*:mkdir -p buildtools/mac-x64/clang/.versions", - "*:mkdir -p buildtools/mac-arm64/clang/.versions", - "*:mkdir -p buildtools/linux-x64/clang/.versions", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", - "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", - "*:ln -s $(which gn) buildtools/gn", - "*:mkdir -p buildtools/ninja", - "*:ln -s $(which ninja) buildtools/ninja/ninja", - "*:mkdir -p buildtools/mac-arm64/clang/bin", - "*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", - "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", - "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", - "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "*:mkdir -p tools/sdks/dart-sdk/bin", - "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", - "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", - "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", - "*:echo 3.7.0-224.0.dev > sdk/version", - "*:mkdir -p third_party/devtools/web", - "*:echo 'no devtools :(' > third_party/devtools/web/index.html", - "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", - "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", - "*:python3 ./tools/build.py --mode=product create_sdk", - "*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:*:ln -s $(which gn) buildtools/gn", + "*:*:mkdir -p buildtools/ninja", + "*:*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:*:mkdir -p tools/sdks/dart-sdk/bin", + "*:*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:*:echo 3.7.0-224.0.dev > sdk/version", + "*:*:mkdir -p third_party/devtools/web", + "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:*:python3 ./tools/build.py --mode=product create_sdk", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.7.0-232.0.dev.json b/packages/native/dart@3.7.0-232.0.dev.json index bb2408c..08403f1 100644 --- a/packages/native/dart@3.7.0-232.0.dev.json +++ b/packages/native/dart@3.7.0-232.0.dev.json @@ -352,54 +352,54 @@ } ], "dependencies": [ - "*:native/dart@3.7.0-224.0.dev", - "*:native/gn", - "*:native/libc++", - "*:native/llvm-ar", - "*:native/llvm-nm", - "*:native/llvm-strip", - "*:native/make", - "*:native/ninja", - "*:native/python@3.11.13", - "*:native/zlib" + "*:*:native/dart@3.7.0-224.0.dev", + "*:*:native/gn", + "*:*:native/libc++", + "*:*:native/llvm-ar", + "*:*:native/llvm-nm", + "*:*:native/llvm-strip", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "*:mkdir -p buildtools/mac-x64/clang/.versions", - "*:mkdir -p buildtools/mac-arm64/clang/.versions", - "*:mkdir -p buildtools/linux-x64/clang/.versions", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", - "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", - "*:ln -s $(which gn) buildtools/gn", - "*:mkdir -p buildtools/ninja", - "*:ln -s $(which ninja) buildtools/ninja/ninja", - "*:mkdir -p buildtools/mac-arm64/clang/bin", - "*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", - "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", - "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", - "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "*:mkdir -p tools/sdks/dart-sdk/bin", - "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", - "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", - "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", - "*:echo 3.7.0-232.0.dev > sdk/version", - "*:mkdir -p third_party/devtools/web", - "*:echo 'no devtools :(' > third_party/devtools/web/index.html", - "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", - "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", - "*:python3 ./tools/build.py --mode=product create_sdk", - "*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:*:ln -s $(which gn) buildtools/gn", + "*:*:mkdir -p buildtools/ninja", + "*:*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:*:mkdir -p tools/sdks/dart-sdk/bin", + "*:*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:*:echo 3.7.0-232.0.dev > sdk/version", + "*:*:mkdir -p third_party/devtools/web", + "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:*:python3 ./tools/build.py --mode=product create_sdk", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.7.0-27.0.dev.json b/packages/native/dart@3.7.0-27.0.dev.json index dae6691..b350422 100644 --- a/packages/native/dart@3.7.0-27.0.dev.json +++ b/packages/native/dart@3.7.0-27.0.dev.json @@ -496,54 +496,54 @@ } ], "dependencies": [ - "*:native/dart@3.6.0-2.0.dev", - "*:native/gn", - "*:native/libc++", - "*:native/llvm-ar", - "*:native/llvm-nm", - "*:native/llvm-strip", - "*:native/make", - "*:native/ninja", - "*:native/python@3.11.13", - "*:native/zlib" + "*:*:native/dart@3.6.0-2.0.dev", + "*:*:native/gn", + "*:*:native/libc++", + "*:*:native/llvm-ar", + "*:*:native/llvm-nm", + "*:*:native/llvm-strip", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "*:mkdir -p buildtools/mac-x64/clang/.versions", - "*:mkdir -p buildtools/mac-arm64/clang/.versions", - "*:mkdir -p buildtools/linux-x64/clang/.versions", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", - "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", - "*:ln -s $(which gn) buildtools/gn", - "*:mkdir -p buildtools/ninja", - "*:ln -s $(which ninja) buildtools/ninja/ninja", - "*:mkdir -p buildtools/mac-arm64/clang/bin", - "*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", - "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", - "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", - "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "*:mkdir -p tools/sdks/dart-sdk/bin", - "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", - "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", - "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", - "*:echo 3.7.0-27.0.dev > sdk/version", - "*:mkdir -p third_party/devtools/web", - "*:echo 'no devtools :(' > third_party/devtools/web/index.html", - "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", - "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", - "*:python3 ./tools/build.py --mode=product create_sdk", - "*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:*:ln -s $(which gn) buildtools/gn", + "*:*:mkdir -p buildtools/ninja", + "*:*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:*:mkdir -p tools/sdks/dart-sdk/bin", + "*:*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:*:echo 3.7.0-27.0.dev > sdk/version", + "*:*:mkdir -p third_party/devtools/web", + "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:*:python3 ./tools/build.py --mode=product create_sdk", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.7.0.json b/packages/native/dart@3.7.0.json index a3e75ca..0c80b16 100644 --- a/packages/native/dart@3.7.0.json +++ b/packages/native/dart@3.7.0.json @@ -352,54 +352,54 @@ } ], "dependencies": [ - "*:native/dart@3.7.0-232.0.dev", - "*:native/gn", - "*:native/libc++", - "*:native/llvm-ar", - "*:native/llvm-nm", - "*:native/llvm-strip", - "*:native/make", - "*:native/ninja", - "*:native/python@3.11.13", - "*:native/zlib" + "*:*:native/dart@3.7.0-232.0.dev", + "*:*:native/gn", + "*:*:native/libc++", + "*:*:native/llvm-ar", + "*:*:native/llvm-nm", + "*:*:native/llvm-strip", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "*:mkdir -p buildtools/mac-x64/clang/.versions", - "*:mkdir -p buildtools/mac-arm64/clang/.versions", - "*:mkdir -p buildtools/linux-x64/clang/.versions", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", - "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", - "*:ln -s $(which gn) buildtools/gn", - "*:mkdir -p buildtools/ninja", - "*:ln -s $(which ninja) buildtools/ninja/ninja", - "*:mkdir -p buildtools/mac-arm64/clang/bin", - "*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", - "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", - "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", - "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "*:mkdir -p tools/sdks/dart-sdk/bin", - "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", - "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", - "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", - "*:echo 3.7.0 > sdk/version", - "*:mkdir -p third_party/devtools/web", - "*:echo 'no devtools :(' > third_party/devtools/web/index.html", - "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", - "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", - "*:python3 ./tools/build.py --mode=product create_sdk", - "*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:*:ln -s $(which gn) buildtools/gn", + "*:*:mkdir -p buildtools/ninja", + "*:*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:*:mkdir -p tools/sdks/dart-sdk/bin", + "*:*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:*:echo 3.7.0 > sdk/version", + "*:*:mkdir -p third_party/devtools/web", + "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:*:python3 ./tools/build.py --mode=product create_sdk", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.8.0-171.0.dev.json b/packages/native/dart@3.8.0-171.0.dev.json index 1c3e6ae..ab434c0 100644 --- a/packages/native/dart@3.8.0-171.0.dev.json +++ b/packages/native/dart@3.8.0-171.0.dev.json @@ -244,54 +244,54 @@ } ], "dependencies": [ - "*:native/dart@3.7.0", - "*:native/gn", - "*:native/libc++", - "*:native/llvm-ar", - "*:native/llvm-nm", - "*:native/llvm-strip", - "*:native/make", - "*:native/ninja", - "*:native/python@3.11.13", - "*:native/zlib" + "*:*:native/dart@3.7.0", + "*:*:native/gn", + "*:*:native/libc++", + "*:*:native/llvm-ar", + "*:*:native/llvm-nm", + "*:*:native/llvm-strip", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "*:mkdir -p buildtools/mac-x64/clang/.versions", - "*:mkdir -p buildtools/mac-arm64/clang/.versions", - "*:mkdir -p buildtools/linux-x64/clang/.versions", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", - "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", - "*:ln -s $(which gn) buildtools/gn", - "*:mkdir -p buildtools/ninja", - "*:ln -s $(which ninja) buildtools/ninja/ninja", - "*:mkdir -p buildtools/mac-arm64/clang/bin", - "*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", - "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", - "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", - "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "*:mkdir -p tools/sdks/dart-sdk/bin", - "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", - "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", - "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", - "*:echo 3.8.0-171.0.dev > sdk/version", - "*:mkdir -p third_party/devtools/web", - "*:echo 'no devtools :(' > third_party/devtools/web/index.html", - "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", - "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", - "*:python3 ./tools/build.py --mode=product create_sdk", - "*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:*:ln -s $(which gn) buildtools/gn", + "*:*:mkdir -p buildtools/ninja", + "*:*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:*:mkdir -p tools/sdks/dart-sdk/bin", + "*:*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:*:echo 3.8.0-171.0.dev > sdk/version", + "*:*:mkdir -p third_party/devtools/web", + "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:*:python3 ./tools/build.py --mode=product create_sdk", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.8.0-237.0.dev.json b/packages/native/dart@3.8.0-237.0.dev.json index d0ab01c..3b5e01c 100644 --- a/packages/native/dart@3.8.0-237.0.dev.json +++ b/packages/native/dart@3.8.0-237.0.dev.json @@ -244,54 +244,54 @@ } ], "dependencies": [ - "*:native/dart@3.8.0-171.0.dev", - "*:native/gn", - "*:native/libc++", - "*:native/llvm-ar", - "*:native/llvm-nm", - "*:native/llvm-strip", - "*:native/make", - "*:native/ninja", - "*:native/python@3.11.13", - "*:native/zlib" + "*:*:native/dart@3.8.0-171.0.dev", + "*:*:native/gn", + "*:*:native/libc++", + "*:*:native/llvm-ar", + "*:*:native/llvm-nm", + "*:*:native/llvm-strip", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "*:mkdir -p buildtools/mac-x64/clang/.versions", - "*:mkdir -p buildtools/mac-arm64/clang/.versions", - "*:mkdir -p buildtools/linux-x64/clang/.versions", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", - "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", - "*:ln -s $(which gn) buildtools/gn", - "*:mkdir -p buildtools/ninja", - "*:ln -s $(which ninja) buildtools/ninja/ninja", - "*:mkdir -p buildtools/mac-arm64/clang/bin", - "*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", - "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", - "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", - "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "*:mkdir -p tools/sdks/dart-sdk/bin", - "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", - "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", - "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", - "*:echo 3.8.0-237.0.dev > sdk/version", - "*:mkdir -p third_party/devtools/web", - "*:echo 'no devtools :(' > third_party/devtools/web/index.html", - "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", - "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", - "*:python3 ./tools/build.py --mode=product create_sdk", - "*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:*:ln -s $(which gn) buildtools/gn", + "*:*:mkdir -p buildtools/ninja", + "*:*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:*:mkdir -p tools/sdks/dart-sdk/bin", + "*:*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:*:echo 3.8.0-237.0.dev > sdk/version", + "*:*:mkdir -p third_party/devtools/web", + "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:*:python3 ./tools/build.py --mode=product create_sdk", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.9.0-27.0.dev.json b/packages/native/dart@3.9.0-27.0.dev.json index 3af143e..008acc2 100644 --- a/packages/native/dart@3.9.0-27.0.dev.json +++ b/packages/native/dart@3.9.0-27.0.dev.json @@ -250,54 +250,54 @@ } ], "dependencies": [ - "*:native/dart@3.9.0-3.0.dev", - "*:native/gn", - "*:native/libc++", - "*:native/llvm-ar", - "*:native/llvm-nm", - "*:native/llvm-strip", - "*:native/make", - "*:native/ninja", - "*:native/python@3.11.13", - "*:native/zlib" + "*:*:native/dart@3.9.0-3.0.dev", + "*:*:native/gn", + "*:*:native/libc++", + "*:*:native/llvm-ar", + "*:*:native/llvm-nm", + "*:*:native/llvm-strip", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "*:mkdir -p buildtools/mac-x64/clang/.versions", - "*:mkdir -p buildtools/mac-arm64/clang/.versions", - "*:mkdir -p buildtools/linux-x64/clang/.versions", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", - "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", - "*:ln -s $(which gn) buildtools/gn", - "*:mkdir -p buildtools/ninja", - "*:ln -s $(which ninja) buildtools/ninja/ninja", - "*:mkdir -p buildtools/mac-arm64/clang/bin", - "*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", - "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", - "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", - "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "*:mkdir -p tools/sdks/dart-sdk/bin", - "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", - "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", - "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", - "*:echo 3.9.0-27.0.dev > sdk/version", - "*:mkdir -p third_party/devtools/web", - "*:echo 'no devtools :(' > third_party/devtools/web/index.html", - "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", - "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", - "*:python3 ./tools/build.py --mode=product create_sdk", - "*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:*:ln -s $(which gn) buildtools/gn", + "*:*:mkdir -p buildtools/ninja", + "*:*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:*:mkdir -p tools/sdks/dart-sdk/bin", + "*:*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:*:echo 3.9.0-27.0.dev > sdk/version", + "*:*:mkdir -p third_party/devtools/web", + "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:*:python3 ./tools/build.py --mode=product create_sdk", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.9.0-3.0.dev.json b/packages/native/dart@3.9.0-3.0.dev.json index 1b9667e..ca2fd47 100644 --- a/packages/native/dart@3.9.0-3.0.dev.json +++ b/packages/native/dart@3.9.0-3.0.dev.json @@ -250,54 +250,54 @@ } ], "dependencies": [ - "*:native/dart@3.8.0-237.0.dev", - "*:native/gn", - "*:native/libc++", - "*:native/llvm-ar", - "*:native/llvm-nm", - "*:native/llvm-strip", - "*:native/make", - "*:native/ninja", - "*:native/python@3.11.13", - "*:native/zlib" + "*:*:native/dart@3.8.0-237.0.dev", + "*:*:native/gn", + "*:*:native/libc++", + "*:*:native/llvm-ar", + "*:*:native/llvm-nm", + "*:*:native/llvm-strip", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "*:mkdir -p buildtools/mac-x64/clang/.versions", - "*:mkdir -p buildtools/mac-arm64/clang/.versions", - "*:mkdir -p buildtools/linux-x64/clang/.versions", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", - "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", - "*:ln -s $(which gn) buildtools/gn", - "*:mkdir -p buildtools/ninja", - "*:ln -s $(which ninja) buildtools/ninja/ninja", - "*:mkdir -p buildtools/mac-arm64/clang/bin", - "*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", - "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", - "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", - "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "*:mkdir -p tools/sdks/dart-sdk/bin", - "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", - "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", - "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", - "*:echo 3.9.0-3.0.dev > sdk/version", - "*:mkdir -p third_party/devtools/web", - "*:echo 'no devtools :(' > third_party/devtools/web/index.html", - "*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", - "*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", - "*:python3 ./tools/build.py --mode=product create_sdk", - "*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:*:ln -s $(which gn) buildtools/gn", + "*:*:mkdir -p buildtools/ninja", + "*:*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:*:mkdir -p tools/sdks/dart-sdk/bin", + "*:*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:*:echo 3.9.0-3.0.dev > sdk/version", + "*:*:mkdir -p third_party/devtools/web", + "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", + "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", + "*:*:python3 ./tools/build.py --mode=product create_sdk", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.9.4.json b/packages/native/dart@3.9.4.json index 58a65cf..72ffa77 100644 --- a/packages/native/dart@3.9.4.json +++ b/packages/native/dart@3.9.4.json @@ -250,52 +250,52 @@ } ], "dependencies": [ - "*:native/dart@3.9.0-27.0.dev", - "*:native/gn", - "*:native/libc++", - "*:native/llvm-ar", - "*:native/llvm-nm", - "*:native/llvm-strip", - "*:native/make", - "*:native/ninja", - "*:native/python@3.11.13", - "*:native/zlib" + "*:*:native/dart@3.9.0-27.0.dev", + "*:*:native/gn", + "*:*:native/libc++", + "*:*:native/llvm-ar", + "*:*:native/llvm-nm", + "*:*:native/llvm-strip", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "*:mkdir -p buildtools/mac-x64/clang/.versions", - "*:mkdir -p buildtools/mac-arm64/clang/.versions", - "*:mkdir -p buildtools/linux-x64/clang/.versions", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", - "*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", - "*:ln -s $(which gn) buildtools/gn", - "*:mkdir -p buildtools/ninja", - "*:ln -s $(which ninja) buildtools/ninja/ninja", - "*:mkdir -p buildtools/mac-arm64/clang/bin", - "*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", - "*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", - "*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", - "*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", - "*:mkdir -p tools/sdks/dart-sdk/bin", - "*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", - "*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", - "*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", - "*:echo 3.9.4 > sdk/version", - "*:mkdir -p third_party/devtools/web", - "*:echo 'no devtools :(' > third_party/devtools/web/index.html", - "*:python3 ./tools/build.py --mode=product create_sdk", - "*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p buildtools/mac-x64/clang/.versions", + "*:*:mkdir -p buildtools/mac-arm64/clang/.versions", + "*:*:mkdir -p buildtools/linux-x64/clang/.versions", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", + "*:*:ln -s $(which gn) buildtools/gn", + "*:*:mkdir -p buildtools/ninja", + "*:*:ln -s $(which ninja) buildtools/ninja/ninja", + "*:*:mkdir -p buildtools/mac-arm64/clang/bin", + "*:*:mkdir -p buildtools/mac-arm64/clang/lib", + "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", + "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", + "*:*:mkdir -p tools/sdks/dart-sdk/bin", + "*:*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", + "*:*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", + "*:*:echo 3.9.4 > sdk/version", + "*:*:mkdir -p third_party/devtools/web", + "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", + "*:*:python3 ./tools/build.py --mode=product create_sdk", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", + "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/expat.json b/packages/native/expat.json index 07899ea..1e2154c 100644 --- a/packages/native/expat.json +++ b/packages/native/expat.json @@ -10,20 +10,20 @@ } ], "dependencies": [ - "*:native/autoconf", - "*:native/libiconv", - "*:native/make", - "*:native/perl" + "*:*:native/autoconf", + "*:*:native/libiconv", + "*:*:native/make", + "*:*:native/perl" ], "build": { "env": [ - "*:CFLAGS=$CFLAGS -fPIC", - "*:LDFLAGS=$LDFLAGS -fPIC" + "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*:LDFLAGS=$LDFLAGS -fPIC" ], "steps": [ - "*:./configure --prefix=$PREFIX/native --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --prefix=$PREFIX/native --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/file.json b/packages/native/file.json index 43d6fb8..4761894 100644 --- a/packages/native/file.json +++ b/packages/native/file.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "*:native/make" + "*:*:native/make" ], "build": { "steps": [ - "*:./configure --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/flex.json b/packages/native/flex.json index cf951bd..f06ffa6 100644 --- a/packages/native/flex.json +++ b/packages/native/flex.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "*:native/m4", - "*:native/make" + "*:*:native/m4", + "*:*:native/make" ], "build": { "env": [ - "*:CFLAGS=$CFLAGS -fPIC", - "*:LDFLAGS=$LDFLAGS -fPIC" + "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*:LDFLAGS=$LDFLAGS -fPIC" ], "steps": [ - "*:./configure --prefix=$PREFIX/native --with-pic", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --prefix=$PREFIX/native --with-pic", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/gawk.json b/packages/native/gawk.json index d440339..3523120 100644 --- a/packages/native/gawk.json +++ b/packages/native/gawk.json @@ -10,24 +10,24 @@ } ], "dependencies": [ - "*:native/autoconf", - "*:native/automake", - "*:native/gettext", - "*:native/libtool", - "*:native/make", - "*:native/perl", - "*:native/pkgconf" + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/gettext", + "*:*:native/libtool", + "*:*:native/make", + "*:*:native/perl", + "*:*:native/pkgconf" ], "build": { "env": [ - "*:AUTOMAKE=true", - "*:ACLOCAL=true", - "*:MAKEINFO=true" + "*:*:AUTOMAKE=true", + "*:*:ACLOCAL=true", + "*:*:MAKEINFO=true" ], "steps": [ - "*:./configure --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/gawk@5.2.2.json b/packages/native/gawk@5.2.2.json index d2ef89c..5b1ecc2 100644 --- a/packages/native/gawk@5.2.2.json +++ b/packages/native/gawk@5.2.2.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "*:native/make" + "*:*:native/make" ], "build": { "env": [ - "*:AUTOMAKE=true", - "*:ACLOCAL=true", - "*:MAKEINFO=true" + "*:*:AUTOMAKE=true", + "*:*:ACLOCAL=true", + "*:*:MAKEINFO=true" ], "steps": [ - "*:./configure --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/gettext.json b/packages/native/gettext.json index 6d7159c..bda94d7 100644 --- a/packages/native/gettext.json +++ b/packages/native/gettext.json @@ -10,22 +10,22 @@ } ], "dependencies": [ - "*:native/libiconv", - "*:native/make", - "*:native/sed", - "*:native/unistring" + "*:*:native/libiconv", + "*:*:native/make", + "*:*:native/sed", + "*:*:native/unistring" ], "build": { "env": [ - "*:config_opts=--prefix=$PREFIX/native", - "*:config_opts=$config_opts --with-libiconv-prefix=$PREFIX/native", - "*:config_opts=$config_opts --with-libunistring-prefix=$PREFIX/native", - "*:LIBS=-lunistring" + "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --with-libiconv-prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --with-libunistring-prefix=$PREFIX/native", + "*:*:LIBS=-lunistring" ], "steps": [ - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/git.json b/packages/native/git.json index 916fa0e..e14c863 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -10,18 +10,22 @@ } ], "dependencies": [ - "*:native/curl", - "*:native/expat", - "*:native/gettext", - "*:native/make", - "*:native/openssl", - "*:native/zlib" + "*:*:native/curl", + "*:*:native/expat", + "*:*:native/gettext", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR$PREFIX/native install" + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR$PREFIX/native install", + "*:*:mkdir -p $STAGING_DIR$HOME", + "*:*:echo '[user]' >> $STAGING_DIR$HOME/.gitconfig", + "*:*:echo '\tsimplybs' >> $STAGING_DIR$HOME/.gitconfig", + "*:*:echo '\tsimplybs@mrcyjanek.net' >> $STAGING_DIR$HOME/.gitconfig" ] } } \ No newline at end of file diff --git a/packages/native/gmp.json b/packages/native/gmp.json index 038bbb0..b929115 100644 --- a/packages/native/gmp.json +++ b/packages/native/gmp.json @@ -10,21 +10,21 @@ } ], "dependencies": [ - "*:native/m4", - "*:native/make", - "*:native/perl" + "*:*:native/m4", + "*:*:native/make", + "*:*:native/perl" ], "build": { "env": [ - "*:config_opts=--prefix=$PREFIX/native", - "*:config_opts=$config_opts --disable-shared", - "*:config_opts=$config_opts --enable-static" + "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --enable-static" ], "steps": [ - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make check", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make check", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/gn.json b/packages/native/gn.json index 8a967f2..63ff41b 100644 --- a/packages/native/gn.json +++ b/packages/native/gn.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "*:native/git", - "*:native/ninja", - "*:native/python@3.11.13" + "*:*:native/git", + "*:*:native/ninja", + "*:*:native/python@3.11" ], "build": { "env": [], "steps": [ - "*:git tag -a initial-commit -m '0.0.0' 95374957437b818e9addc26c83340b27a1b38202", - "*:python3 build/gen.py", - "*:ninja -C out", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp out/gn $STAGING_DIR$PREFIX/native/bin/gn" + "*:*:git tag -a initial-commit -m '0.0.0' 95374957437b818e9addc26c83340b27a1b38202", + "*:*:python3 build/gen.py", + "*:*:ninja -C out", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp out/gn $STAGING_DIR$PREFIX/native/bin/gn" ] } } \ No newline at end of file diff --git a/packages/native/gperf.json b/packages/native/gperf.json index ed15b8c..dfe1270 100644 --- a/packages/native/gperf.json +++ b/packages/native/gperf.json @@ -10,16 +10,16 @@ } ], "dependencies": [ - "*:native/make" + "*:*:native/make" ], "build": { "env": [ - "*:config_opts=--prefix=$PREFIX/native" + "*:*:config_opts=--prefix=$PREFIX/native" ], "steps": [ - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/help2man.json b/packages/native/help2man.json index 17aa8ab..9838e38 100644 --- a/packages/native/help2man.json +++ b/packages/native/help2man.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "*:native/make" + "*:*:native/make" ], "build": { "env": [ - "*:config_opts=--prefix=$PREFIX/native", - "*:config_opts=$config_opts --disable-shared", - "*:config_opts=$config_opts --enable-static" + "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --enable-static" ], "steps": [ - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/libc++.json b/packages/native/libc++.json index 5a31d02..d1be3c0 100644 --- a/packages/native/libc++.json +++ b/packages/native/libc++.json @@ -10,25 +10,25 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/ninja" + "*:*:native/cmake", + "*:*:native/ninja" ], "build": { "env": [ - "*:config_opts=-DLLVM_ENABLE_RUNTIMES='libunwind;libcxx;libcxxabi'", - "*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", - "*:config_opts=$config_opts -DLIBCXX_ENABLE_SHARED=OFF", - "*:config_opts=$config_opts -DLIBCXX_ENABLE_STATIC=ON", - "*:config_opts=$config_opts -DLIBCXX_INCLUDE_TESTS=OFF", - "*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX/native" + "*:*:config_opts=-DLLVM_ENABLE_RUNTIMES='libunwind;libcxx;libcxxabi'", + "*:*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", + "*:*:config_opts=$config_opts -DLIBCXX_ENABLE_SHARED=OFF", + "*:*:config_opts=$config_opts -DLIBCXX_ENABLE_STATIC=ON", + "*:*:config_opts=$config_opts -DLIBCXX_INCLUDE_TESTS=OFF", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX/native" ], "steps": [ - "*:mkdir build && cd build", - "*:cd build && cmake -G Ninja ../runtimes $config_opts", - "*:cd build && ninja unwind cxx cxxabi", - "*:cd build && DESTDIR=$STAGING_DIR ninja install-unwind", - "*:cd build && DESTDIR=$STAGING_DIR ninja install-cxx", - "*:cd build && DESTDIR=$STAGING_DIR ninja install-cxxabi" + "*:*:mkdir build && cd build", + "*:*:cd build && cmake -G Ninja ../runtimes $config_opts", + "*:*:cd build && ninja unwind cxx cxxabi", + "*:*:cd build && DESTDIR=$STAGING_DIR ninja install-unwind", + "*:*:cd build && DESTDIR=$STAGING_DIR ninja install-cxx", + "*:*:cd build && DESTDIR=$STAGING_DIR ninja install-cxxabi" ] } } \ No newline at end of file diff --git a/packages/native/libiconv.json b/packages/native/libiconv.json index dd958d1..bab0fc6 100644 --- a/packages/native/libiconv.json +++ b/packages/native/libiconv.json @@ -10,22 +10,22 @@ } ], "dependencies": [ - "*:native/config", - "*:native/make" + "*:*:native/config", + "*:*:native/make" ], "build": { "env": [ - "*:CFLAGS=$CFLAGS -fPIC", - "*:config_opts=--prefix=$PREFIX/native --disable-nls --enable-static --disable-shared", - "*:config_opts=$config_opts", - "*linux:config_opts=$config_opts --with-pic" + "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*:config_opts=--prefix=$PREFIX/native --disable-nls --enable-static --disable-shared", + "*:*:config_opts=$config_opts", + "*:*linux:config_opts=$config_opts --with-pic" ], "steps": [ - "*:cp -f $PREFIX/native/share/config/config.guess build-aux/", - "*:cp -f $PREFIX/native/share/config/config.sub build-aux/", - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:cp -f $PREFIX/native/share/config/config.guess build-aux/", + "*:*:cp -f $PREFIX/native/share/config/config.sub build-aux/", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/libpsl.json b/packages/native/libpsl.json index 755aad2..9e88e70 100644 --- a/packages/native/libpsl.json +++ b/packages/native/libpsl.json @@ -10,14 +10,14 @@ } ], "dependencies": [ - "*:native/make" + "*:*:native/make" ], "build": { "env": [], "steps": [ - "*:./configure --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/libtapi.json b/packages/native/libtapi.json index 94b83f2..999d627 100644 --- a/packages/native/libtapi.json +++ b/packages/native/libtapi.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/ninja" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/ninja" ], "build": { "env": [ - "*:config_opts=--prefix=$PREFIX/native --disable-shared", - "*:INSTALLPREFIX=$PREFIX/native" + "*:*:config_opts=--prefix=$PREFIX/native --disable-shared", + "*:*:INSTALLPREFIX=$PREFIX/native" ], "steps": [ - "*:./build.sh", - "*:DESTDIR=$STAGING_DIR ./install.sh" + "*:*:./build.sh", + "*:*:DESTDIR=$STAGING_DIR ./install.sh" ] } } \ No newline at end of file diff --git a/packages/native/libtool.json b/packages/native/libtool.json index 40032ca..95c0fda 100644 --- a/packages/native/libtool.json +++ b/packages/native/libtool.json @@ -10,15 +10,15 @@ } ], "dependencies": [ - "*:native/m4", - "*:native/make" + "*:*:native/m4", + "*:*:native/make" ], "build": { "env": [], "steps": [ - "*:./configure --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/libxml2.json b/packages/native/libxml2.json index ee280b4..4f55ad8 100644 --- a/packages/native/libxml2.json +++ b/packages/native/libxml2.json @@ -10,16 +10,16 @@ } ], "dependencies": [ - "*:native/make", - "*:native/pkgconf", - "*:native/python@3.11.13" + "*:*:native/make", + "*:*:native/pkgconf", + "*:*:native/python@3.11" ], "build": { "env": [], "steps": [ - "*:./configure --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/llvm-ar.json b/packages/native/llvm-ar.json index fd7f2e9..969e738 100644 --- a/packages/native/llvm-ar.json +++ b/packages/native/llvm-ar.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/ninja" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/ninja" ], "build": { "env": [], "steps": [ - "*:mkdir build && cd build", - "*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", - "*:cd build && ninja llvm-ar", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", - "*:cp build/bin/llvm-ar $STAGING_DIR$PREFIX/native/bin/llvm-ar" + "*:*:mkdir build && cd build", + "*:*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", + "*:*:cd build && ninja llvm-ar", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", + "*:*:cp build/bin/llvm-ar $STAGING_DIR$PREFIX/native/bin/llvm-ar" ] } } \ No newline at end of file diff --git a/packages/native/llvm-nm.json b/packages/native/llvm-nm.json index 01ff403..ea04fbe 100644 --- a/packages/native/llvm-nm.json +++ b/packages/native/llvm-nm.json @@ -10,17 +10,17 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/ninja" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/ninja" ], "build": { "steps": [ - "*:mkdir build && cd build", - "*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", - "*:cd build && ninja llvm-nm", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", - "*:cp build/bin/llvm-nm $STAGING_DIR$PREFIX/native/bin/llvm-nm" + "*:*:mkdir build && cd build", + "*:*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", + "*:*:cd build && ninja llvm-nm", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", + "*:*:cp build/bin/llvm-nm $STAGING_DIR$PREFIX/native/bin/llvm-nm" ] } } \ No newline at end of file diff --git a/packages/native/llvm-strip.json b/packages/native/llvm-strip.json index cf69b63..0dd450e 100644 --- a/packages/native/llvm-strip.json +++ b/packages/native/llvm-strip.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/ninja" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/ninja" ], "build": { "env": [], "steps": [ - "*:mkdir build && cd build", - "*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", - "*:cd build && ninja llvm-strip", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", - "*:cp build/bin/llvm-strip $STAGING_DIR$PREFIX/native/bin/llvm-strip" + "*:*:mkdir build && cd build", + "*:*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", + "*:*:cd build && ninja llvm-strip", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", + "*:*:cp build/bin/llvm-strip $STAGING_DIR$PREFIX/native/bin/llvm-strip" ] } } \ No newline at end of file diff --git a/packages/native/llvm@google@18.0.0git.json b/packages/native/llvm@google@18.0.0git.json index 52d2dfa..863f134 100644 --- a/packages/native/llvm@google@18.0.0git.json +++ b/packages/native/llvm@google@18.0.0git.json @@ -10,32 +10,32 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/ninja", - "*:native/python@3.11.13" + "*:*:native/cmake", + "*:*:native/ninja", + "*:*:native/python@3.11" ], "build": { "env": [ - "*:config_opts=-DCMAKE_BUILD_TYPE=Release", - "*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", - "*:config_opts=$config_opts -DLLVM_ENABLE_PROJECTS='clang;lld;libc;openmp;pstl'", - "*:config_opts=$config_opts -DLLVM_ENABLE_RUNTIMES='compiler-rt'", - "*:config_opts=$config_opts -DLLVM_ENABLE_BINDINGS=OFF", - "*:config_opts=$config_opts -DCOMPILER_RT_BAREMETAL_BUILD=ON", - "*:config_opts=$config_opts -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON", - "*:config_opts=$config_opts -DCOMPILER_RT_BUILD_SANITIZERS=OFF", - "*:config_opts=$config_opts -DCOMPILER_RT_BUILD_XRAY=OFF", - "*:config_opts=$config_opts -DCOMPILER_RT_BUILD_LIBFUZZER=OFF", - "*:config_opts=$config_opts -DCOMPILER_RT_BUILD_PROFILE=OFF", - "*:config_opts=$config_opts -DCOMPILER_RT_BUILD_BUILTINS=ON", - "*:config_opts=$config_opts -DCLANG_ENABLE_BOOTSTRAP=ON" + "*:*:config_opts=-DCMAKE_BUILD_TYPE=Release", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:*:config_opts=$config_opts -DLLVM_ENABLE_PROJECTS='clang;lld;libc;openmp;pstl'", + "*:*:config_opts=$config_opts -DLLVM_ENABLE_RUNTIMES='compiler-rt'", + "*:*:config_opts=$config_opts -DLLVM_ENABLE_BINDINGS=OFF", + "*:*:config_opts=$config_opts -DCOMPILER_RT_BAREMETAL_BUILD=ON", + "*:*:config_opts=$config_opts -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON", + "*:*:config_opts=$config_opts -DCOMPILER_RT_BUILD_SANITIZERS=OFF", + "*:*:config_opts=$config_opts -DCOMPILER_RT_BUILD_XRAY=OFF", + "*:*:config_opts=$config_opts -DCOMPILER_RT_BUILD_LIBFUZZER=OFF", + "*:*:config_opts=$config_opts -DCOMPILER_RT_BUILD_PROFILE=OFF", + "*:*:config_opts=$config_opts -DCOMPILER_RT_BUILD_BUILTINS=ON", + "*:*:config_opts=$config_opts -DCLANG_ENABLE_BOOTSTRAP=ON" ], "steps": [ - "*:cmake -S llvm -B build -G Ninja $config_opts", - "*:sed -i.bak 's/(state->ControlWord)/(state->ControlWord \\& 0xFFFFFFFF)/g' ./libc/src/__support/FPUtil/aarch64/fenv_darwin_impl.h", - "*:sed -i.bak 's/(state->StatusWord)/(state->StatusWord \\& 0xFFFFFFFF)/g' ./libc/src/__support/FPUtil/aarch64/fenv_darwin_impl.h", - "*:cd build && ninja -j $NUM_CORES", - "*:cd build && DESTDIR=$STAGING_DIR ninja install" + "*:*:cmake -S llvm -B build -G Ninja $config_opts", + "*:*:sed -i.bak 's/(state->ControlWord)/(state->ControlWord \\& 0xFFFFFFFF)/g' ./libc/src/__support/FPUtil/aarch64/fenv_darwin_impl.h", + "*:*:sed -i.bak 's/(state->StatusWord)/(state->StatusWord \\& 0xFFFFFFFF)/g' ./libc/src/__support/FPUtil/aarch64/fenv_darwin_impl.h", + "*:*:cd build && ninja -j $NUM_CORES", + "*:*:cd build && DESTDIR=$STAGING_DIR ninja install" ] } } \ No newline at end of file diff --git a/packages/native/llvm@google@19.0.1.json b/packages/native/llvm@google@19.0.1.json index c36f3c4..6309d80 100644 --- a/packages/native/llvm@google@19.0.1.json +++ b/packages/native/llvm@google@19.0.1.json @@ -23,37 +23,37 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/gawk", - "*:native/ninja", - "*:native/patch", - "*:native/python@3.11.13" + "*:*:native/cmake", + "*:*:native/gawk", + "*:*:native/ninja", + "*:*:native/patch", + "*:*:native/python@3.11" ], "build": { "env": [ - "*:config_opts=-DCMAKE_BUILD_TYPE=Release", - "*-android*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", - "*-android*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX/native/llvm@google@19.0.1", - "*-android*:config_opts=$config_opts -DLLVM_ENABLE_PROJECTS='clang;lld;libc;openmp;pstl'", - "*-android*:config_opts=$config_opts -DLLVM_ENABLE_BINDINGS=OFF", - "*-android*:config_opts=$config_opts -DCLANG_ENABLE_BOOTSTRAP=ON", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_BUILTINS=ON", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_BAREMETAL_BUILD=ON", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_SANITIZERS=OFF", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_XRAY=OFF", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_LIBFUZZER=OFF", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_PROFILE=OFF", - "aarch64-linux-android:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='AArch64' -DCLANG_DEFAULT_TARGET_TRIPLE='aarch64-linux-android' -DLLVM_DEFAULT_TARGET_TRIPLE='aarch64-linux-android' -DCOMPILER_RT_TARGET_TRIPLE='aarch64-linux-android'", - "x86_64-linux-android:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='X86' -DCLANG_DEFAULT_TARGET_TRIPLE='x86_64-linux-android' -DLLVM_DEFAULT_TARGET_TRIPLE='x86_64-linux-android' -DCOMPILER_RT_TARGET_TRIPLE='x86_64-linux-android'", - "armv7a-linux-androideabi:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='ARM' -DCLANG_DEFAULT_TARGET_TRIPLE='armv7a-linux-androideabi' -DLLVM_DEFAULT_TARGET_TRIPLE='armv7a-linux-androideabi' -DCOMPILER_RT_TARGET_TRIPLE='armv7a-linux-androideabi'", - "*:SVN_REVISION=530567" + "*:*:config_opts=-DCMAKE_BUILD_TYPE=Release", + "*:*-android*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", + "*:*-android*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX/native/llvm@google@19.0.1", + "*:*-android*:config_opts=$config_opts -DLLVM_ENABLE_PROJECTS='clang;lld;libc;openmp;pstl'", + "*:*-android*:config_opts=$config_opts -DLLVM_ENABLE_BINDINGS=OFF", + "*:*-android*:config_opts=$config_opts -DCLANG_ENABLE_BOOTSTRAP=ON", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_BUILTINS=ON", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_BAREMETAL_BUILD=ON", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_SANITIZERS=OFF", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_XRAY=OFF", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_LIBFUZZER=OFF", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_PROFILE=OFF", + "*:aarch64-linux-android:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='AArch64' -DCLANG_DEFAULT_TARGET_TRIPLE='aarch64-linux-android' -DLLVM_DEFAULT_TARGET_TRIPLE='aarch64-linux-android' -DCOMPILER_RT_TARGET_TRIPLE='aarch64-linux-android'", + "*:x86_64-linux-android:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='X86' -DCLANG_DEFAULT_TARGET_TRIPLE='x86_64-linux-android' -DLLVM_DEFAULT_TARGET_TRIPLE='x86_64-linux-android' -DCOMPILER_RT_TARGET_TRIPLE='x86_64-linux-android'", + "*:armv7a-linux-androideabi:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='ARM' -DCLANG_DEFAULT_TARGET_TRIPLE='armv7a-linux-androideabi' -DLLVM_DEFAULT_TARGET_TRIPLE='armv7a-linux-androideabi' -DCOMPILER_RT_TARGET_TRIPLE='armv7a-linux-androideabi'", + "*:*:SVN_REVISION=530567" ], "steps": [ - "*-android*:cd llvm-android && python3 ../toolchain-utils/llvm_tools/patch_manager.py --patch_metadata_file=patches/PATCHES.json --src_path=../llvm --svn_version=$SVN_REVISION", - "*-android*:cd llvm && cmake -S llvm -B build -G Ninja $config_opts", - "*-android*:cd llvm && cd build && ninja -j $NUM_CORES", - "*-android*:cd llvm && cd build && DESTDIR=$STAGING_DIR ninja install" + "*:*-android*:cd llvm-android && python3 ../toolchain-utils/llvm_tools/patch_manager.py --patch_metadata_file=patches/PATCHES.json --src_path=../llvm --svn_version=$SVN_REVISION", + "*:*-android*:cd llvm && cmake -S llvm -B build -G Ninja $config_opts", + "*:*-android*:cd llvm && cd build && ninja -j $NUM_CORES", + "*:*-android*:cd llvm && cd build && DESTDIR=$STAGING_DIR ninja install" ] } } \ No newline at end of file diff --git a/packages/native/llvm@google@r563880.json b/packages/native/llvm@google@r563880.json index 06cd1e7..f8e8bfc 100644 --- a/packages/native/llvm@google@r563880.json +++ b/packages/native/llvm@google@r563880.json @@ -10,33 +10,33 @@ } ], "dependencies": [ - "*-android*:native/cmake", - "*-android*:native/ninja", - "*-android*:native/python@3.11.13" + "*:*-android*:native/cmake", + "*:*-android*:native/ninja", + "*:*-android*:native/python@3.11" ], "build": { "env": [ - "*-android*:config_opts=-DCMAKE_BUILD_TYPE=Release", - "*-android*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", - "*-android*:config_opts=$config_opts -DLLVM_ENABLE_PROJECTS='clang;lld;libc;openmp;pstl'", - "*-android*:config_opts=$config_opts -DLLVM_ENABLE_RUNTIMES='compiler-rt'", - "aarch64-linux-android:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='AArch64' -DLLVM_DEFAULT_TARGET_TRIPLE='aarch64-linux-android' -DCOMPILER_RT_TARGET_TRIPLE='aarch64-linux-android'", - "x86_64-linux-android:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='X86' -DLLVM_DEFAULT_TARGET_TRIPLE='x86_64-linux-android' -DCOMPILER_RT_TARGET_TRIPLE='x86_64-linux-android'", - "armv7a-linux-androideabi:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='ARM' -DLLVM_DEFAULT_TARGET_TRIPLE='armv7a-linux-androideabi' -DCOMPILER_RT_TARGET_TRIPLE='armv7a-linux-androideabi'", - "*-android*:config_opts=$config_opts -DLLVM_ENABLE_BINDINGS=OFF", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_BAREMETAL_BUILD=ON", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_SANITIZERS=OFF", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_XRAY=OFF", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_LIBFUZZER=OFF", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_PROFILE=OFF", - "*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_BUILTINS=ON", - "*-android*:config_opts=$config_opts -DCLANG_ENABLE_BOOTSTRAP=ON" + "*:*-android*:config_opts=-DCMAKE_BUILD_TYPE=Release", + "*:*-android*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:*-android*:config_opts=$config_opts -DLLVM_ENABLE_PROJECTS='clang;lld;libc;openmp;pstl'", + "*:*-android*:config_opts=$config_opts -DLLVM_ENABLE_RUNTIMES='compiler-rt'", + "*:aarch64-linux-android:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='AArch64' -DLLVM_DEFAULT_TARGET_TRIPLE='aarch64-linux-android' -DCOMPILER_RT_TARGET_TRIPLE='aarch64-linux-android'", + "*:x86_64-linux-android:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='X86' -DLLVM_DEFAULT_TARGET_TRIPLE='x86_64-linux-android' -DCOMPILER_RT_TARGET_TRIPLE='x86_64-linux-android'", + "*:armv7a-linux-androideabi:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='ARM' -DLLVM_DEFAULT_TARGET_TRIPLE='armv7a-linux-androideabi' -DCOMPILER_RT_TARGET_TRIPLE='armv7a-linux-androideabi'", + "*:*-android*:config_opts=$config_opts -DLLVM_ENABLE_BINDINGS=OFF", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_BAREMETAL_BUILD=ON", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_SANITIZERS=OFF", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_XRAY=OFF", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_LIBFUZZER=OFF", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_PROFILE=OFF", + "*:*-android*:config_opts=$config_opts -DCOMPILER_RT_BUILD_BUILTINS=ON", + "*:*-android*:config_opts=$config_opts -DCLANG_ENABLE_BOOTSTRAP=ON" ], "steps": [ - "*-android*:cmake -S llvm -B build -G Ninja $config_opts", - "*-android*:cd build && ninja -j $NUM_CORES", - "*-android*:cd build && DESTDIR=$STAGING_DIR ninja install" + "*:*-android*:cmake -S llvm -B build -G Ninja $config_opts", + "*:*-android*:cd build && ninja -j $NUM_CORES", + "*:*-android*:cd build && DESTDIR=$STAGING_DIR ninja install" ] } } \ No newline at end of file diff --git a/packages/native/m4.json b/packages/native/m4.json index d54314e..a0b6042 100644 --- a/packages/native/m4.json +++ b/packages/native/m4.json @@ -10,15 +10,15 @@ } ], "dependencies": [ - "*:native/make" + "*:*:native/make" ], "build": { "env": [], "steps": [ - "*:./configure --prefix=$PREFIX/native --disable-nls", - "*:sed -i.bak 's/^run.*automake.*/exit 0/' build-aux/missing", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --prefix=$PREFIX/native --disable-nls", + "*:*:sed -i.bak 's/^run.*automake.*/exit 0/' build-aux/missing", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/make.json b/packages/native/make.json index 604f8b5..a8b9661 100644 --- a/packages/native/make.json +++ b/packages/native/make.json @@ -12,12 +12,12 @@ "build": { "env": [], "steps": [ - "*:./configure --disable-dependency-tracking", - "*:./build.sh", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp make $STAGING_DIR/$PREFIX/native/bin/make", - "*:ln -s make $STAGING_DIR$PREFIX/native/bin/gmake", - "*:ln -s make $STAGING_DIR$PREFIX/native/bin/gnumake" + "*:*:./configure --disable-dependency-tracking", + "*:*:./build.sh", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp make $STAGING_DIR/$PREFIX/native/bin/make", + "*:*:ln -s make $STAGING_DIR$PREFIX/native/bin/gmake", + "*:*:ln -s make $STAGING_DIR$PREFIX/native/bin/gnumake" ] } } \ No newline at end of file diff --git a/packages/native/meson.json b/packages/native/meson.json index 6275f82..c6fa6ee 100644 --- a/packages/native/meson.json +++ b/packages/native/meson.json @@ -10,14 +10,14 @@ } ], "dependencies": [ - "*:native/python@3.11.13" + "*:*:native/python@3.11" ], "build": { "env": [], "steps": [ - "*:python3 ./packaging/create_zipapp.py --outfile meson.pyz --interpreter \"$(which python3)\" .", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", - "*:mv meson.pyz $STAGING_DIR$PREFIX/native/bin/meson" + "*:*:python3 ./packaging/create_zipapp.py --outfile meson.pyz --interpreter \"$(which python3)\" .", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", + "*:*:mv meson.pyz $STAGING_DIR$PREFIX/native/bin/meson" ] } } \ No newline at end of file diff --git a/packages/native/mpc.json b/packages/native/mpc.json index 5ff8d7f..acd4691 100644 --- a/packages/native/mpc.json +++ b/packages/native/mpc.json @@ -10,20 +10,20 @@ } ], "dependencies": [ - "*:native/gmp", - "*:native/make", - "*:native/mpfr" + "*:*:native/gmp", + "*:*:native/make", + "*:*:native/mpfr" ], "build": { "env": [ - "*:config_opts=--prefix=$PREFIX/native", - "*:config_opts=$config_opts --disable-shared", - "*:config_opts=$config_opts --enable-static" + "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --enable-static" ], "steps": [ - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/mpfr.json b/packages/native/mpfr.json index ff1f0f1..b2b5854 100644 --- a/packages/native/mpfr.json +++ b/packages/native/mpfr.json @@ -10,19 +10,19 @@ } ], "dependencies": [ - "*:native/gmp", - "*:native/make" + "*:*:native/gmp", + "*:*:native/make" ], "build": { "env": [ - "*:config_opts=--prefix=$PREFIX/native", - "*:config_opts=$config_opts --disable-shared", - "*:config_opts=$config_opts --enable-static" + "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --enable-static" ], "steps": [ - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/ncurses.json b/packages/native/ncurses.json index 6ac1da6..c8e937f 100644 --- a/packages/native/ncurses.json +++ b/packages/native/ncurses.json @@ -14,49 +14,45 @@ ], "build": { "env": [ - "*:config_opts=--host=$HOST --prefix=$PREFIX/native", - "*:config_opts=$config_opts --disable-shared", - "*:config_opts=$config_opts --with-build-cc=gcc", - "*:config_opts=$config_opts --without-debug", - "*:config_opts=$config_opts --without-ada", - "*:config_opts=$config_opts --without-cxx-binding", - "*:config_opts=$config_opts --without-cxx", - "*:config_opts=$config_opts --without-ticlib", - "*:config_opts=$config_opts --without-tic", - "*:config_opts=$config_opts --without-progs", - "*:config_opts=$config_opts --without-tests", - "*:config_opts=$config_opts --without-tack", - "*:config_opts=$config_opts --without-manpages", - "*:config_opts=$config_opts --with-termlib", - "*:config_opts=$config_opts --disable-tic-depends", - "*:config_opts=$config_opts --disable-big-strings", - "*:config_opts=$config_opts --disable-ext-colors", - "*:config_opts=$config_opts --enable-pc-files", - "*:config_opts=$config_opts --without-shared", - "*:config_opts=$config_opts --without-pthread", - "*:config_opts=$config_opts --disable-rpath", - "*:config_opts=$config_opts --disable-colorfgbg", - "*:config_opts=$config_opts --disable-ext-mouse", - "*:config_opts=$config_opts --disable-symlinks", - "*:config_opts=$config_opts --enable-warnings", - "*:config_opts=$config_opts --enable-assertions", - "*:config_opts=$config_opts --with-default-terminfo-dir=/etc/_terminfo_", - "*:config_opts=$config_opts --with-terminfo-dirs=/etc/_terminfo_", - "*:config_opts=$config_opts --enable-database", - "*:config_opts=$config_opts --enable-sp-funcs", - "*:config_opts=$config_opts --disable-term-driver", - "*:config_opts=$config_opts --enable-interop", - "*:config_opts=$config_opts --enable-widec", - "*:SHOULD_BUILD=echo", - "*:*-linux-*:SHOULD_BUILD=", - "*:*-w64-mingw32:SHOULD_BUILD=", - "*:*-apple-darwin:SHOULD_BUILD=" + "*:*:config_opts=--host=$HOST --prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --with-build-cc=gcc", + "*:*:config_opts=$config_opts --without-debug", + "*:*:config_opts=$config_opts --without-ada", + "*:*:config_opts=$config_opts --without-cxx-binding", + "*:*:config_opts=$config_opts --without-cxx", + "*:*:config_opts=$config_opts --without-ticlib", + "*:*:config_opts=$config_opts --without-tic", + "*:*:config_opts=$config_opts --without-progs", + "*:*:config_opts=$config_opts --without-tests", + "*:*:config_opts=$config_opts --without-tack", + "*:*:config_opts=$config_opts --without-manpages", + "*:*:config_opts=$config_opts --with-termlib", + "*:*:config_opts=$config_opts --disable-tic-depends", + "*:*:config_opts=$config_opts --disable-big-strings", + "*:*:config_opts=$config_opts --disable-ext-colors", + "*:*:config_opts=$config_opts --enable-pc-files", + "*:*:config_opts=$config_opts --without-shared", + "*:*:config_opts=$config_opts --without-pthread", + "*:*:config_opts=$config_opts --disable-rpath", + "*:*:config_opts=$config_opts --disable-colorfgbg", + "*:*:config_opts=$config_opts --disable-ext-mouse", + "*:*:config_opts=$config_opts --disable-symlinks", + "*:*:config_opts=$config_opts --enable-warnings", + "*:*:config_opts=$config_opts --enable-assertions", + "*:*:config_opts=$config_opts --with-default-terminfo-dir=/etc/_terminfo_", + "*:*:config_opts=$config_opts --with-terminfo-dirs=/etc/_terminfo_", + "*:*:config_opts=$config_opts --enable-database", + "*:*:config_opts=$config_opts --enable-sp-funcs", + "*:*:config_opts=$config_opts --disable-term-driver", + "*:*:config_opts=$config_opts --enable-interop", + "*:*:config_opts=$config_opts --enable-widec" ], "steps": [ - "*:$SHOULD_BUILD cp $PATCH_DIR/ncurses/fallback.c ncurses", - "*:$SHOULD_BUILD ./configure $config_opts", - "*:$SHOULD_BUILD make -j$NUM_CORES $build_opts", - "*:$SHOULD_BUILD make install.libs DESTDIR=$STAGING_DIR" + "*:*:cp $PATCH_DIR/ncurses/fallback.c ncurses", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES $build_opts", + "*:*:make install.libs DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/native/ndk.json b/packages/native/ndk.json index 67c51cd..453502d 100644 --- a/packages/native/ndk.json +++ b/packages/native/ndk.json @@ -119,26 +119,26 @@ } ], "dependencies": [ - "*-android*:native/cmake", - "*-android*:native/llvm@google@19.0.1", - "*-android*:native/make", - "*-android*:native/ninja", - "*-android*:native/python@3.11.13" + "*:*-android*:native/cmake", + "*:*-android*:native/llvm@google@19.0.1", + "*:*-android*:native/make", + "*:*-android*:native/ninja", + "*:*-android*:native/python@3.11" ], "build": { "steps": [ - "*-android*:mkdir -p prebuilts/clang/host/darwin-x86", - "*-android*:mkdir -p prebuilts/clang/host/linux-x86", - "*-android*:mkdir -p prebuilts/clang/host/windows-x86", - "*-android*:cp -a $PREFIX/native/llvm@google@19.0.1 prebuilts/clang/host/darwin-x86/clang-r563880c", - "*-android*:cp -a $PREFIX/native/llvm@google@19.0.1 prebuilts/clang/host/linux-x86/clang-r563880c", - "*-android*:cp -a $PREFIX/native/llvm@google@19.0.1 prebuilts/clang/host/windows-x86/clang-r563880c", - "*-android*:touch prebuilts/clang/host/darwin-x86/clang-r563880c/NOTICE", - "*-android*:touch prebuilts/clang/host/linux-x86/clang-r563880c/NOTICE", - "*-android*:touch prebuilts/clang/host/windows-x86/clang-r563880c/NOTICE", - "*-android*:mkdir -p prebuilts/simpleperf", - "*-android*:touch prebuilts/simpleperf/NOTICE", - "*-android*:cd ndk && python3 checkbuild.py" + "*:*-android*:mkdir -p prebuilts/clang/host/darwin-x86", + "*:*-android*:mkdir -p prebuilts/clang/host/linux-x86", + "*:*-android*:mkdir -p prebuilts/clang/host/windows-x86", + "*:*-android*:cp -a $PREFIX/native/llvm@google@19.0.1 prebuilts/clang/host/darwin-x86/clang-r563880c", + "*:*-android*:cp -a $PREFIX/native/llvm@google@19.0.1 prebuilts/clang/host/linux-x86/clang-r563880c", + "*:*-android*:cp -a $PREFIX/native/llvm@google@19.0.1 prebuilts/clang/host/windows-x86/clang-r563880c", + "*:*-android*:touch prebuilts/clang/host/darwin-x86/clang-r563880c/NOTICE", + "*:*-android*:touch prebuilts/clang/host/linux-x86/clang-r563880c/NOTICE", + "*:*-android*:touch prebuilts/clang/host/windows-x86/clang-r563880c/NOTICE", + "*:*-android*:mkdir -p prebuilts/simpleperf", + "*:*-android*:touch prebuilts/simpleperf/NOTICE", + "*:*-android*:cd ndk && python3 checkbuild.py" ] } } \ No newline at end of file diff --git a/packages/native/ninja.json b/packages/native/ninja.json index 28aaeda..ab27dc9 100644 --- a/packages/native/ninja.json +++ b/packages/native/ninja.json @@ -10,15 +10,15 @@ } ], "dependencies": [ - "*:native/python@3.11.13" + "*:*:native/python@3.11" ], "build": { "env": [], "steps": [ - "*:python3 ./configure.py --bootstrap", - "*:./ninja all", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp ninja $STAGING_DIR$PREFIX/native/bin" + "*:*:python3 ./configure.py --bootstrap", + "*:*:./ninja all", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp ninja $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/nproc.json b/packages/native/nproc.json index f06a19e..8831724 100644 --- a/packages/native/nproc.json +++ b/packages/native/nproc.json @@ -12,9 +12,9 @@ "build": { "env": [], "steps": [ - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp nproc.sh $STAGING_DIR$PREFIX/native/bin/nproc", - "*:chmod +x $STAGING_DIR$PREFIX/native/bin/nproc" + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp nproc.sh $STAGING_DIR$PREFIX/native/bin/nproc", + "*:*:chmod +x $STAGING_DIR$PREFIX/native/bin/nproc" ] } } \ No newline at end of file diff --git a/packages/native/openssl.json b/packages/native/openssl.json index 2de6eaa..9d6c072 100644 --- a/packages/native/openssl.json +++ b/packages/native/openssl.json @@ -10,24 +10,24 @@ } ], "dependencies": [ - "*:native/make", - "*:native/perl", - "*:native/xz" + "*:*:native/make", + "*:*:native/perl", + "*:*:native/xz" ], "build": { "env": [ - "*:config_opts=--prefix=$PREFIX/native --openssldir=$PREFIX/native/etc/openssl --libdir=$PREFIX/native/lib", - "*:config_opts=$config_opts no-ec_nistp_64_gcc_128", - "*:config_opts=$config_opts no-shared", - "*:config_opts=$config_opts no-tests", - "*:config_opts=$config_opts no-unit-test" + "*:*:config_opts=--prefix=$PREFIX/native --openssldir=$PREFIX/native/etc/openssl --libdir=$PREFIX/native/lib", + "*:*:config_opts=$config_opts no-ec_nistp_64_gcc_128", + "*:*:config_opts=$config_opts no-shared", + "*:*:config_opts=$config_opts no-tests", + "*:*:config_opts=$config_opts no-unit-test" ], "steps": [ - "*:sed -i.bak 's/#define DATE \"built on: \\$date\"/#define DATE \"built on: Jan 1 1970 00:00:01\"/' util/mkbuildinf.pl", - "*:sed -i.bak 's|crypto ssl apps util tools fuzz providers doc|crypto ssl util tools providers|' build.info", - "*:./Configure $config_opts", - "*:make -j$NUM_CORES build_libs", - "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install_sw" + "*:*:sed -i.bak 's/#define DATE \"built on: \\$date\"/#define DATE \"built on: Jan 1 1970 00:00:01\"/' util/mkbuildinf.pl", + "*:*:sed -i.bak 's|crypto ssl apps util tools fuzz providers doc|crypto ssl util tools providers|' build.info", + "*:*:./Configure $config_opts", + "*:*:make -j$NUM_CORES build_libs", + "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install_sw" ] } } \ No newline at end of file diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 7b277a1..bfa39e3 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -22,54 +22,54 @@ } ], "dependencies": [ - "*-apple-darwin:native/apple-sdk-macos", - "*-apple-darwin:native/bzip2", - "*-apple-darwin:native/cctools-port", - "*-apple-darwin:native/cmake", - "*-apple-darwin:native/cpio", - "*-apple-darwin:native/gettext", - "*-apple-darwin:native/git", - "*-apple-darwin:native/libtapi", - "*-apple-darwin:native/libxml2", - "*-apple-darwin:native/make", - "*-apple-darwin:native/openssl", - "*-apple-darwin:native/patch", - "*-apple-darwin:native/pbzx", - "*-apple-darwin:native/perl", - "*-apple-darwin:native/pkgconf", - "*-apple-darwin:native/python@3.11.13", - "*-apple-darwin:native/xar", - "*-apple-darwin:native/xz" + "*:*-apple-darwin:native/apple-sdk-macos", + "*:*-apple-darwin:native/bzip2", + "*:*-apple-darwin:native/cctools-port", + "*:*-apple-darwin:native/cmake", + "*:*-apple-darwin:native/cpio", + "*:*-apple-darwin:native/gettext", + "*:*-apple-darwin:native/git", + "*:*-apple-darwin:native/libtapi", + "*:*-apple-darwin:native/libxml2", + "*:*-apple-darwin:native/make", + "*:*-apple-darwin:native/openssl", + "*:*-apple-darwin:native/patch", + "*:*-apple-darwin:native/pbzx", + "*:*-apple-darwin:native/perl", + "*:*-apple-darwin:native/pkgconf", + "*:*-apple-darwin:native/python@3.11", + "*:*-apple-darwin:native/xar", + "*:*-apple-darwin:native/xz" ], "build": { "env": [ - "*-apple-darwin:JOBS=$NUM_CORES", - "*-apple-darwin:PORTABLE=1", - "*-apple-darwin:TARGET_DIR=$PREFIX/native/", - "aarch64-apple-darwin:ENABLE_ARCHS=arm64", - "x86_64-apple-darwin:ENABLE_ARCHS=x86_64", - "*-apple-darwin:UNATTENDED=1", - "*-apple-darwin:SDK_VERSION=26", - "*-apple-darwin:COMPRESSLEVEL=0" + "*:*-apple-darwin:JOBS=$NUM_CORES", + "*:*-apple-darwin:PORTABLE=1", + "*:*-apple-darwin:TARGET_DIR=$PREFIX/native/", + "*:aarch64-apple-darwin:ENABLE_ARCHS=arm64", + "*:x86_64-apple-darwin:ENABLE_ARCHS=x86_64", + "*:*-apple-darwin:UNATTENDED=1", + "*:*-apple-darwin:SDK_VERSION=26", + "*:*-apple-darwin:COMPRESSLEVEL=0" ], "steps": [ - "*-apple-darwin:sed -i.bak 's/build_xar/echo build_xar/g' build.sh", - "*-apple-darwin:sed -i.bak 's/git clone/echo git clone/g' build.sh", - "*-apple-darwin:sed -i.bak 's/--with-libtapi=$TARGET_DIR/--with-libtapi=$PREFIX\\/native/g' build.sh", - "*-apple-darwin:sed -i.bak 's/--with-libxar=$TARGET_DIR/--with-libxar=$PREFIX\\/native/g' build.sh", - "*-apple-darwin:sed -i.bak 's/git /echo git /g' tools/tools.sh", - "*-apple-darwin:sed -i.bak 's/download $CLANG_LLVM_PKG/echo download $CLANG_LLVM_PKG/g' build_clang.sh", - "*-apple-darwin:sed -i.bak 's/rm -f $(basename $CLANG_LLVM_PKG)/echo rm -f $(basename $CLANG_LLVM_PKG)/g' build_clang.sh", - "*-apple-darwin:sed -i.bak 's/get_sources/echo get_sources/g' build.sh", - "*-apple-darwin:sed -i.bak 's/-DCMAKE_BUILD_TYPE=Release/& -DCLANG_ENABLE_BOOTSTRAP=ON/g' build.sh", - "*-apple-darwin:sed -i.bak '135,145d' build.sh", - "*-apple-darwin:sed -i.bak '145,160d' build.sh", - "*-apple-darwin:mv $PREFIX/native/share/MacOSX26.* tarballs", - "none:yes | INSTALLPREFIX=$PREFIX/native ./build_clang.sh", - "none:cd build/clang-20.1.8/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", - "*-apple-darwin:yes | INSTALLPREFIX=$PREFIX/native ./build_apple_clang.sh", - "*-apple-darwin:cd build/clang-21/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", - "*-apple-darwin:TARGET_DIR=$STAGING_DIR$PREFIX/native ./build.sh" + "*:*-apple-darwin:sed -i.bak 's/build_xar/echo build_xar/g' build.sh", + "*:*-apple-darwin:sed -i.bak 's/git clone/echo git clone/g' build.sh", + "*:*-apple-darwin:sed -i.bak 's/--with-libtapi=$TARGET_DIR/--with-libtapi=$PREFIX\\/native/g' build.sh", + "*:*-apple-darwin:sed -i.bak 's/--with-libxar=$TARGET_DIR/--with-libxar=$PREFIX\\/native/g' build.sh", + "*:*-apple-darwin:sed -i.bak 's/git /echo git /g' tools/tools.sh", + "*:*-apple-darwin:sed -i.bak 's/download $CLANG_LLVM_PKG/echo download $CLANG_LLVM_PKG/g' build_clang.sh", + "*:*-apple-darwin:sed -i.bak 's/rm -f $(basename $CLANG_LLVM_PKG)/echo rm -f $(basename $CLANG_LLVM_PKG)/g' build_clang.sh", + "*:*-apple-darwin:sed -i.bak 's/get_sources/echo get_sources/g' build.sh", + "*:*-apple-darwin:sed -i.bak 's/-DCMAKE_BUILD_TYPE=Release/& -DCLANG_ENABLE_BOOTSTRAP=ON/g' build.sh", + "*:*-apple-darwin:sed -i.bak '135,145d' build.sh", + "*:*-apple-darwin:sed -i.bak '145,160d' build.sh", + "*:*-apple-darwin:mv $PREFIX/native/share/MacOSX26.* tarballs", + "*:none:yes | INSTALLPREFIX=$PREFIX/native ./build_clang.sh", + "*:none:cd build/clang-20.1.8/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", + "*:*-apple-darwin:yes | INSTALLPREFIX=$PREFIX/native ./build_apple_clang.sh", + "*:*-apple-darwin:cd build/clang-21/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", + "*:*-apple-darwin:TARGET_DIR=$STAGING_DIR$PREFIX/native ./build.sh" ] } } \ No newline at end of file diff --git a/packages/native/p7zip.json b/packages/native/p7zip.json index 9068a3d..f8a2ebc 100644 --- a/packages/native/p7zip.json +++ b/packages/native/p7zip.json @@ -10,17 +10,17 @@ } ], "dependencies": [ - "*:native/make" + "*:*:native/make" ], "build": { "env": [], "steps": [ - "*:if [ $(uname) = 'Darwin' ]; then cp makefile.macosx_llvm_64bits makefile.machine; else true; fi", - "*:if [ $(uname) = 'Linux' ]; then cp makefile.linux_any_cpu makefile.machine; else true; fi", - "*:sed -i.bak 's/switch(errorCode)/switch(static_cast(errorCode))/' ./CPP/Windows/ErrorMsg.cpp", - "*:make -j$NUM_CORES 7za", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp bin/7za $STAGING_DIR$PREFIX/native/bin/7z" + "*:*:if [ $(uname) = 'Darwin' ]; then cp makefile.macosx_llvm_64bits makefile.machine; else true; fi", + "*:*:if [ $(uname) = 'Linux' ]; then cp makefile.linux_any_cpu makefile.machine; else true; fi", + "*:*:sed -i.bak 's/switch(errorCode)/switch(static_cast(errorCode))/' ./CPP/Windows/ErrorMsg.cpp", + "*:*:make -j$NUM_CORES 7za", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp bin/7za $STAGING_DIR$PREFIX/native/bin/7z" ] } } \ No newline at end of file diff --git a/packages/native/patch.json b/packages/native/patch.json index 33aceae..85bbf42 100644 --- a/packages/native/patch.json +++ b/packages/native/patch.json @@ -10,16 +10,16 @@ } ], "dependencies": [ - "*:native/make" + "*:*:native/make" ], "build": { "env": [ - "*:config_opts=--prefix=$PREFIX/native" + "*:*:config_opts=--prefix=$PREFIX/native" ], "steps": [ - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/pbzx.json b/packages/native/pbzx.json index cb67f05..04f2df4 100644 --- a/packages/native/pbzx.json +++ b/packages/native/pbzx.json @@ -10,15 +10,15 @@ } ], "dependencies": [ - "*:native/make", - "*:native/xar", - "*:native/xz" + "*:*:native/make", + "*:*:native/xar", + "*:*:native/xz" ], "build": { "env": [], "steps": [ - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:$CC -O2 -Wall -I $PREFIX/native/include -L $PREFIX/native/lib pbzx.c -o $STAGING_DIR$PREFIX/native/bin/pbzx -llzma -lxar -Wl,-rpath,$PREFIX/native/lib" + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:$CC -O2 -Wall -I $PREFIX/native/include -L $PREFIX/native/lib pbzx.c -o $STAGING_DIR$PREFIX/native/bin/pbzx -llzma -lxar -Wl,-rpath,$PREFIX/native/lib" ] } } \ No newline at end of file diff --git a/packages/native/perl.json b/packages/native/perl.json index cf5cdc2..7da2ebd 100644 --- a/packages/native/perl.json +++ b/packages/native/perl.json @@ -10,15 +10,15 @@ } ], "dependencies": [ - "*:native/make" + "*:*:native/make" ], "build": { "env": [], "steps": [ - "*:sed -i.bak '/^#ifndef PERL_BUILD_DATE$/,/^#endif$/{/^#ifndef PERL_BUILD_DATE$/!d; s/.*/\\#define PERL_BUILD_DATE \"Jan 1 1970 00:00:01\"/;}' perl.c", - "*:./Configure -des -Dprefix=$PREFIX/native -Duseithreads -Dall_static", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:sed -i.bak '/^#ifndef PERL_BUILD_DATE$/,/^#endif$/{/^#ifndef PERL_BUILD_DATE$/!d; s/.*/\\#define PERL_BUILD_DATE \"Jan 1 1970 00:00:01\"/;}' perl.c", + "*:*:./Configure -des -Dprefix=$PREFIX/native -Duseithreads -Dall_static", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/pkgconf.json b/packages/native/pkgconf.json index cf98cc9..4700890 100644 --- a/packages/native/pkgconf.json +++ b/packages/native/pkgconf.json @@ -10,23 +10,23 @@ } ], "dependencies": [ - "*:native/autoconf", - "*:native/automake", - "*:native/libtool", - "*:native/m4", - "*:native/make", - "*:native/perl" + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/libtool", + "*:*:native/m4", + "*:*:native/make", + "*:*:native/perl" ], "build": { "env": [ - "*:PKGCONFIG_DIR=$PREFIX/native/lib/pkgconfig:$PREFIX/lib/pkgconfig" + "*:*:PKGCONFIG_DIR=$PREFIX/native/lib/pkgconfig:$PREFIX/lib/pkgconfig" ], "steps": [ - "*:sh ./autogen.sh", - "*:./configure --prefix=$PREFIX/native --with-pkg-config-dir=$PKGCONFIG_DIR", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install", - "*:ln -s pkgconf $STAGING_DIR$PREFIX/native/bin/pkg-config" + "*:*:sh ./autogen.sh", + "*:*:./configure --prefix=$PREFIX/native --with-pkg-config-dir=$PKGCONFIG_DIR", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install", + "*:*:ln -s pkgconf $STAGING_DIR$PREFIX/native/bin/pkg-config" ] } } \ No newline at end of file diff --git a/packages/native/protobuf.json b/packages/native/protobuf.json index 5dd5a1b..1447ed8 100644 --- a/packages/native/protobuf.json +++ b/packages/native/protobuf.json @@ -10,35 +10,35 @@ } ], "dependencies": [ - "*:native/autoconf", - "*:native/automake", - "*:native/config", - "*:native/m4", - "*:native/make", - "*:native/perl" + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/config", + "*:*:native/m4", + "*:*:native/make", + "*:*:native/perl" ], "build": { "env": [ - "*:config_opts=--host=$HOST --prefix=$PREFIX/native", - "*:config_opts=$config_opts --disable-shared", - "*-linux-gnu:config_opts=$config_opts --with-pic", - "*-linux-gnu:SHOULD_BUILD=", - "*-w64-mingw32:SHOULD_BUILD=", - "*-apple-darwin:SHOULD_BUILD=" + "*:*:config_opts=--host=$HOST --prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --disable-shared", + "*:*-linux-gnu:config_opts=$config_opts --with-pic", + "*:*-linux-gnu:SHOULD_BUILD=", + "*:*-w64-mingw32:SHOULD_BUILD=", + "*:*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess config.guess", - "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub config.sub", - "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", - "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", - "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", - "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", - "*:$SHOULD_BUILD aclocal", - "*:$SHOULD_BUILD automake --add-missing", - "*:$SHOULD_BUILD ./configure $config_opts", - "*:$SHOULD_BUILD make -j$NUM_CORES", - "*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install", - "*:$SHOULD_BUILD rm $STAGING_DIR$PREFIX/native/lib/libprotoc.a || true" + "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess config.guess", + "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub config.sub", + "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", + "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", + "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", + "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", + "*:*:$SHOULD_BUILD aclocal", + "*:*:$SHOULD_BUILD automake --add-missing", + "*:*:$SHOULD_BUILD ./configure $config_opts", + "*:*:$SHOULD_BUILD make -j$NUM_CORES", + "*:*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install", + "*:*:$SHOULD_BUILD rm $STAGING_DIR$PREFIX/native/lib/libprotoc.a || true" ] } } \ No newline at end of file diff --git a/packages/native/python@3.11.13.json b/packages/native/python@3.11.13.json deleted file mode 100644 index f30ebd2..0000000 --- a/packages/native/python@3.11.13.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "package": "native/python@3.11.13", - "version": "3.11.13", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "0f1a22f4dfd34595a29cf69ee7ea73b9eff8b1cc89d7ab29b3ab0ec04179dad8", - "url": "http://www.python.org/ftp/python/3.11.13/Python-3.11.13.tgz" - } - ], - "dependencies": [ - "*:native/make", - "*:native/patch", - "*:native/zlib" - ], - "build": { - "env": [], - "steps": [ - "*:sed -i.bak '/^#ifndef DATE/i\\\n\\/* Deterministic date and time. *\\/\\\n#define DATE \"Jan 1 1970\"\\\n#define TIME \"00:00:01\"\\\n' Modules/getbuildinfo.c", - "*:sed -i.bak 's/^#\\(zlib[[:space:]]\\+zlibmodule\\.c[[:space:]]\\+-lz\\)/\\1/' Modules/Setup", - "*:./configure --disable-test-modules --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install", - "none:mkdir -p $STAGING_DIR$PREFIX/native/python3.11.13", - "none:cp -r pybuild/* $STAGING_DIR$PREFIX/native/python3.11.13" - ] - } -} \ No newline at end of file diff --git a/packages/native/python@3.11.json b/packages/native/python@3.11.json new file mode 100644 index 0000000..a046529 --- /dev/null +++ b/packages/native/python@3.11.json @@ -0,0 +1,27 @@ +{ + "package": "native/python@3.11", + "version": "3.11.13", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "0f1a22f4dfd34595a29cf69ee7ea73b9eff8b1cc89d7ab29b3ab0ec04179dad8", + "url": "http://www.python.org/ftp/python/3.11.13/Python-3.11.13.tgz" + } + ], + "dependencies": [ + "*:*:native/make", + "*:*:native/patch", + "*:*:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "*:*:sed -i.bak '/^#ifndef DATE/i\\\n\\/* Deterministic date and time. *\\/\\\n#define DATE \"Jan 1 1970\"\\\n#define TIME \"00:00:01\"\\\n' Modules/getbuildinfo.c", + "*:*:sed -i.bak 's/^#\\(zlib[[:space:]]\\+zlibmodule\\.c[[:space:]]\\+-lz\\)/\\1/' Modules/Setup", + "*:*:./configure --disable-test-modules --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/python@3.14.json b/packages/native/python@3.14.json new file mode 100644 index 0000000..74a35ed --- /dev/null +++ b/packages/native/python@3.14.json @@ -0,0 +1,28 @@ +{ + "package": "native/python@3.11", + "version": "3.14.0", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "88d2da4eed42fa9a5f42ff58a8bc8988881bd6c547e297e46682c2687638a851", + "url": "http://www.python.org/ftp/python/3.14.0/Python-3.14.0.tgz" + } + ], + "dependencies": [ + "*:*:native/bzip2", + "*:*:native/make", + "*:*:native/patch", + "*:*:native/zlib" + ], + "build": { + "env": [], + "steps": [ + "*:*:sed -i.bak '/^#ifndef DATE/i\\\n\\/* Deterministic date and time. *\\/\\\n#define DATE \"Jan 1 1970\"\\\n#define TIME \"00:00:01\"\\\n' Modules/getbuildinfo.c", + "*:*:sed -i.bak 's/^#\\(zlib[[:space:]]\\+zlibmodule\\.c[[:space:]]\\+-lz\\)/\\1/' Modules/Setup", + "*:*:./configure --disable-test-modules --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/rsync.json b/packages/native/rsync.json index a24d3bd..cdd894b 100644 --- a/packages/native/rsync.json +++ b/packages/native/rsync.json @@ -10,21 +10,21 @@ } ], "dependencies": [ - "*:native/make", - "*:native/python@3.11.13" + "*:*:native/make", + "*:*:native/python@3.11" ], "build": { "env": [ - "*:config_opts=--prefix=$PREFIX/native", - "*:config_opts=$config_opts --disable-xxhash", - "*:config_opts=$config_opts --disable-openssl", - "*:config_opts=$config_opts --disable-zstd", - "*:config_opts=$config_opts --disable-lz4" + "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --disable-xxhash", + "*:*:config_opts=$config_opts --disable-openssl", + "*:*:config_opts=$config_opts --disable-zstd", + "*:*:config_opts=$config_opts --disable-lz4" ], "steps": [ - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_54_0.json b/packages/native/rust@1_54_0.json index b585b38..4e14cde 100644 --- a/packages/native/rust@1_54_0.json +++ b/packages/native/rust@1_54_0.json @@ -16,34 +16,35 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/patch", - "*:native/perl", - "*:native/zlib" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/patch", + "*:*:native/perl", + "*:*:native/zlib" ], "build": { "env": [ - "*:PARLEVEL=$NUM_CORES" + "*:*:PARLEVEL=$NUM_CORES" ], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/codegen_c.cpp.patch", - "*:if [ $(uname) = 'Darwin' ] && [ $(uname -m) = 'arm64' ]; then sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=aarch64/' script-overrides/stable-1.54.0-macos/build_std.txt; else echo not patching for macos; fi", - "*:if [ $(uname) = 'Linux' ] && [ $(uname -m) = 'aarch64' ]; then sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=arm64/' script-overrides/stable-1.54.0-linux/build_std.txt; else echo not patching for linux; fi", - "*:sed -i.bak 's/^make$/make $@/' build-1.54.0.sh", - "*:if [ $(uname) = 'Darwin' ]; then sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-apple-darwin/RUSTC_TARGET ?= aarch64-apple-darwin/' run_rustc/Makefile; else true; fi", - "*:echo >> build-1.54.0.sh", - "*:echo make -C run_rustc >> build-1.54.0.sh", - "*:env -i CXXFLAGS_EXTRA=\"$CFLAGS\" LINKFLAGS_EXTRA=\"$LDFLAGS\" PATH=$PATH PARLEVEL=$NUM_CORES ./build-1.54.0.sh -j$NUM_CORES", - "none:# FIXME bad dylib paths embedded in the rustc binary, forcing install_name_tool dark magic", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:mkdir -p $STAGING_DIR$PREFIX/native/lib", - "*:cp -a run_rustc/output-1.54.0/prefix/bin/* $STAGING_DIR$PREFIX/native/bin", - "*:if [ $(uname) = 'Linux' ]; then cp -a run_rustc/output-1.54.0/prefix/lib/rustlib/*/lib/*.so $STAGING_DIR$PREFIX/native/lib; else true; fi", - "*:cp -a run_rustc/output-1.54.0/prefix/lib/* $STAGING_DIR$PREFIX/native/lib", - "*:if [ $(uname) = 'Darwin' ]; then install_name_tool -change $PWD/run_rustc/output-1.54.0/build-rustc/aarch64-apple-darwin/release/deps/librustc_driver.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib $STAGING_DIR$PREFIX/native/bin/rustc_binary; else true; fi", - "*:if [ $(uname) = 'Darwin' ]; then install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/libstd.dylib $STAGING_DIR$PREFIX/native/bin/rustc_binary; else true; fi", - "*:if [ $(uname) = 'Darwin' ]; then install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/libstd.dylib $STAGING_DIR$PREFIX/native/lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib; else true; fi" + "*:*:patch -p1 < $PATCH_DIR/rust/codegen_c.cpp.patch", + "darwin_arm64:*:sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=aarch64/' script-overrides/stable-1.54.0-macos/build_std.txt", + "linux_arm64:*:sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=arm64/' script-overrides/stable-1.54.0-linux/build_std.txt", + "*:*:sed -i.bak 's/^make$/make $@/' build-1.54.0.sh", + "darwin_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-apple-darwin/RUSTC_TARGET ?= aarch64-apple-darwin/' run_rustc/Makefile", + "linux_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-unknown-linux-gnu/RUSTC_TARGET ?= aarch64-unknown-linux-gnu/' run_rustc/Makefile", + "*:*:echo >> build-1.54.0.sh", + "*:*:echo make -C run_rustc >> build-1.54.0.sh", + "*:*:env -i CXXFLAGS_EXTRA=\"$CFLAGS\" LINKFLAGS_EXTRA=\"$LDFLAGS\" PATH=$PATH PARLEVEL=$NUM_CORES ./build-1.54.0.sh -j$NUM_CORES", + "*:none:# FIXME bad dylib paths embedded in the rustc binary, forcing install_name_tool dark magic", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/lib", + "*:*:cp -a run_rustc/output-1.54.0/prefix/bin/* $STAGING_DIR$PREFIX/native/bin", + "linux_*:*:cp -a run_rustc/output-1.54.0/prefix/lib/rustlib/*/lib/*.so $STAGING_DIR$PREFIX/native/lib", + "*:*:cp -a run_rustc/output-1.54.0/prefix/lib/* $STAGING_DIR$PREFIX/native/lib", + "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-rustc/aarch64-apple-darwin/release/deps/librustc_driver.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib $STAGING_DIR$PREFIX/native/bin/rustc_binary", + "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/libstd.dylib $STAGING_DIR$PREFIX/native/bin/rustc_binary", + "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/libstd.dylib $STAGING_DIR$PREFIX/native/lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_55_0.json b/packages/native/rust@1_55_0.json index a062f8a..5fcd155 100644 --- a/packages/native/rust@1_55_0.json +++ b/packages/native/rust@1_55_0.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_54_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_54_0" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_55_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:patch -p1 < $PATCH_DIR/rust/1_55_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_56_1.json b/packages/native/rust@1_56_1.json index 5eca2d8..b8d229e 100644 --- a/packages/native/rust@1_56_1.json +++ b/packages/native/rust@1_56_1.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_55_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_55_0" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_57_0.json b/packages/native/rust@1_57_0.json index 465cbe7..37c3dab 100644 --- a/packages/native/rust@1_57_0.json +++ b/packages/native/rust@1_57_0.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_56_1" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_56_1" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_58_1.json b/packages/native/rust@1_58_1.json index 598d3ce..e2f2f2e 100644 --- a/packages/native/rust@1_58_1.json +++ b/packages/native/rust@1_58_1.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_57_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_57_0" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_59_0.json b/packages/native/rust@1_59_0.json index 4ca6e1c..ae052d9 100644 --- a/packages/native/rust@1_59_0.json +++ b/packages/native/rust@1_59_0.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_58_1" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_58_1" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_60_0.json b/packages/native/rust@1_60_0.json index 0b5b80d..48ba322 100644 --- a/packages/native/rust@1_60_0.json +++ b/packages/native/rust@1_60_0.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_59_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_59_0" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_61_0.json b/packages/native/rust@1_61_0.json index c5d5fcf..b869c30 100644 --- a/packages/native/rust@1_61_0.json +++ b/packages/native/rust@1_61_0.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_60_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_60_0" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_62_1.json b/packages/native/rust@1_62_1.json index 3a49b8f..f1367dc 100644 --- a/packages/native/rust@1_62_1.json +++ b/packages/native/rust@1_62_1.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_61_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_61_0" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_63_0.json b/packages/native/rust@1_63_0.json index 62b27af..602887e 100644 --- a/packages/native/rust@1_63_0.json +++ b/packages/native/rust@1_63_0.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_62_1" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_62_1" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_64_0.json b/packages/native/rust@1_64_0.json index 6433fa7..c67ac0b 100644 --- a/packages/native/rust@1_64_0.json +++ b/packages/native/rust@1_64_0.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_63_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_63_0" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_65_0.json b/packages/native/rust@1_65_0.json index d05a0ce..27ecc4a 100644 --- a/packages/native/rust@1_65_0.json +++ b/packages/native/rust@1_65_0.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_64_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_64_0" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_66_1.json b/packages/native/rust@1_66_1.json index 5c64e58..68325c9 100644 --- a/packages/native/rust@1_66_1.json +++ b/packages/native/rust@1_66_1.json @@ -10,37 +10,37 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_65_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_65_0" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'assertions = true' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:echo '[rust]' >> config.toml", - "*:echo 'debug = true' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'assertions = true' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:echo '[rust]' >> config.toml", + "*:*:echo 'debug = true' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_67_1.json b/packages/native/rust@1_67_1.json index b4e3ffc..ecbb789 100644 --- a/packages/native/rust@1_67_1.json +++ b/packages/native/rust@1_67_1.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_66_1" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_66_1" ], "patches": [ "assembly.h.patch", @@ -25,23 +25,23 @@ "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -i PATH=$PATH python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -i PATH=$PATH python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_68_2.json b/packages/native/rust@1_68_2.json index 9cafcdf..7812a14 100644 --- a/packages/native/rust@1_68_2.json +++ b/packages/native/rust@1_68_2.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_67_1" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_67_1" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_69_0.json b/packages/native/rust@1_69_0.json index bdf74dd..cf541cd 100644 --- a/packages/native/rust@1_69_0.json +++ b/packages/native/rust@1_69_0.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_68_2" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_68_2" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_70_0.json b/packages/native/rust@1_70_0.json index de88060..5b6ecaa 100644 --- a/packages/native/rust@1_70_0.json +++ b/packages/native/rust@1_70_0.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_69_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_69_0" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_71_1.json b/packages/native/rust@1_71_1.json index a40552c..3f6c440 100644 --- a/packages/native/rust@1_71_1.json +++ b/packages/native/rust@1_71_1.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_70_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_70_0" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j$NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j$NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_72_1.json b/packages/native/rust@1_72_1.json index e8062e5..8db3c8f 100644 --- a/packages/native/rust@1_72_1.json +++ b/packages/native/rust@1_72_1.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_71_1" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_71_1" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_73_0.json b/packages/native/rust@1_73_0.json index 047d1db..0831e43 100644 --- a/packages/native/rust@1_73_0.json +++ b/packages/native/rust@1_73_0.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_72_1" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_72_1" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_74_1.json b/packages/native/rust@1_74_1.json index 618d48b..82915ca 100644 --- a/packages/native/rust@1_74_1.json +++ b/packages/native/rust@1_74_1.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_73_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_73_0" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_75_0.json b/packages/native/rust@1_75_0.json index 1868dae..fe94693 100644 --- a/packages/native/rust@1_75_0.json +++ b/packages/native/rust@1_75_0.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_74_1" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_74_1" ], "build": { "env": [], "steps": [ - "*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", + "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_76_0.json b/packages/native/rust@1_76_0.json index 5ccd7de..5113e7b 100644 --- a/packages/native/rust@1_76_0.json +++ b/packages/native/rust@1_76_0.json @@ -10,32 +10,32 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_75_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_75_0" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_77_1.json b/packages/native/rust@1_77_1.json index b8e81e6..4bc0336 100644 --- a/packages/native/rust@1_77_1.json +++ b/packages/native/rust@1_77_1.json @@ -10,32 +10,32 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/patch", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_76_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_76_0" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_78_0.json b/packages/native/rust@1_78_0.json index 28d6970..739882c 100644 --- a/packages/native/rust@1_78_0.json +++ b/packages/native/rust@1_78_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_77_1" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_77_1" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_79_0.json b/packages/native/rust@1_79_0.json index beb2c0a..9fc5ced 100644 --- a/packages/native/rust@1_79_0.json +++ b/packages/native/rust@1_79_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_78_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_78_0" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_80_1.json b/packages/native/rust@1_80_1.json index 4cb9f13..75effeb 100644 --- a/packages/native/rust@1_80_1.json +++ b/packages/native/rust@1_80_1.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_79_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_79_0" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_81_0.json b/packages/native/rust@1_81_0.json index 1823cad..d08ab5b 100644 --- a/packages/native/rust@1_81_0.json +++ b/packages/native/rust@1_81_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_80_1" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_80_1" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_82_0.json b/packages/native/rust@1_82_0.json index 19bd49f..49444e7 100644 --- a/packages/native/rust@1_82_0.json +++ b/packages/native/rust@1_82_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_81_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_81_0" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_83_0.json b/packages/native/rust@1_83_0.json index 6fb8b28..345ca01 100644 --- a/packages/native/rust@1_83_0.json +++ b/packages/native/rust@1_83_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_82_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_82_0" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_84_1.json b/packages/native/rust@1_84_1.json index 8480141..7b2e60d 100644 --- a/packages/native/rust@1_84_1.json +++ b/packages/native/rust@1_84_1.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_83_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_83_0" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_85_1.json b/packages/native/rust@1_85_1.json index be320d8..e398809 100644 --- a/packages/native/rust@1_85_1.json +++ b/packages/native/rust@1_85_1.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_84_1" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_84_1" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_86_0.json b/packages/native/rust@1_86_0.json index e4bf651..39cb9d0 100644 --- a/packages/native/rust@1_86_0.json +++ b/packages/native/rust@1_86_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_85_1" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_85_1" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_87_0.json b/packages/native/rust@1_87_0.json index b0cccd2..d1c0160 100644 --- a/packages/native/rust@1_87_0.json +++ b/packages/native/rust@1_87_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_86_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_86_0" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage0-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage0-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_88_0.json b/packages/native/rust@1_88_0.json index 8b5fa4b..fb78c0b 100644 --- a/packages/native/rust@1_88_0.json +++ b/packages/native/rust@1_88_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_87_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_87_0" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_89_0.json b/packages/native/rust@1_89_0.json index 7d27dee..25340b9 100644 --- a/packages/native/rust@1_89_0.json +++ b/packages/native/rust@1_89_0.json @@ -10,31 +10,31 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_88_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_88_0" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_90_0.json b/packages/native/rust@1_90_0.json index d07276b..34b1a39 100644 --- a/packages/native/rust@1_90_0.json +++ b/packages/native/rust@1_90_0.json @@ -10,40 +10,40 @@ } ], "dependencies": [ - "*:native/cmake", - "*:native/make", - "*:native/openssl", - "*:native/pkgconf", - "*:native/python@3.11.13", - "*:native/rust@1_89_0" + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_89_0" ], "build": { "env": [], "steps": [ - "*:echo '[build]' > config.toml", - "aarch64-apple-darwin:echo 'target = [\"aarch64-apple-darwin\"]' >> config.toml", - "x86_64-apple-darwin:echo 'target = [\"x86_64-apple-darwin\"]' >> config.toml", - "aarch64-apple-ios:echo 'target = [\"aarch64-apple-ios\"]' >> config.toml", - "aarch64-apple-ios-simulator:echo 'target = [\"aarch64-apple-ios-sim\"]' >> config.toml", - "x86_64-linux-gnu:echo 'target = [\"x86_64-unknown-linux-gnu\"]' >> config.toml", - "aarch64-linux-gnu:echo 'target = [\"aarch64-unknown-linux-gnu\"]' >> config.toml", - "aarch64-linux-android:echo 'target = [\"aarch64-linux-android\"]' >> config.toml", - "x86_64-linux-android:echo 'target = [\"x86_64-linux-android\"]' >> config.toml", - "armv7a-linux-androideabi:echo 'target = [\"armv7-linux-androideabi\"]' >> config.toml", - "*:echo 'full-bootstrap = true' >> config.toml", - "*:echo 'vendor = true' >> config.toml", - "*:echo 'extended = true' >> config.toml", - "*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", - "*:echo '[llvm]' >> config.toml", - "*:echo 'ninja = false' >> config.toml", - "*:echo 'download-ci-llvm = false' >> config.toml", - "*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:echo '[build]' > config.toml", + "*:aarch64-apple-darwin:echo 'target = [\"aarch64-apple-darwin\"]' >> config.toml", + "*:x86_64-apple-darwin:echo 'target = [\"x86_64-apple-darwin\"]' >> config.toml", + "*:aarch64-apple-ios:echo 'target = [\"aarch64-apple-ios\"]' >> config.toml", + "*:aarch64-apple-ios-simulator:echo 'target = [\"aarch64-apple-ios-sim\"]' >> config.toml", + "*:x86_64-linux-gnu:echo 'target = [\"x86_64-unknown-linux-gnu\"]' >> config.toml", + "*:aarch64-linux-gnu:echo 'target = [\"aarch64-unknown-linux-gnu\"]' >> config.toml", + "*:aarch64-linux-android:echo 'target = [\"aarch64-linux-android\"]' >> config.toml", + "*:x86_64-linux-android:echo 'target = [\"x86_64-linux-android\"]' >> config.toml", + "*:armv7a-linux-androideabi:echo 'target = [\"armv7-linux-androideabi\"]' >> config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/sed.json b/packages/native/sed.json index b3667f7..80c1984 100644 --- a/packages/native/sed.json +++ b/packages/native/sed.json @@ -10,15 +10,15 @@ } ], "dependencies": [ - "*:native/make", - "*:native/perl" + "*:*:native/make", + "*:*:native/perl" ], "build": { "env": [], "steps": [ - "*:./configure --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/texinfo.json b/packages/native/texinfo.json index 2ee89b4..5f4a779 100644 --- a/packages/native/texinfo.json +++ b/packages/native/texinfo.json @@ -10,20 +10,20 @@ } ], "dependencies": [ - "*:native/automake", - "*:native/gawk", - "*:native/gettext", - "*:native/make", - "*:native/perl" + "*:*:native/automake", + "*:*:native/gawk", + "*:*:native/gettext", + "*:*:native/make", + "*:*:native/perl" ], "build": { "env": [ - "*:HELP2MAN=true" + "*:*:HELP2MAN=true" ], "steps": [ - "*:./configure --prefix=$PREFIX/native", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/unistring.json b/packages/native/unistring.json index 07569ea..5b8e7bc 100644 --- a/packages/native/unistring.json +++ b/packages/native/unistring.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "*:native/make", - "*:native/sed" + "*:*:native/make", + "*:*:native/sed" ], "build": { "env": [ - "*:config_opts=--prefix=$PREFIX/native", - "*:config_opts=$config_opts --disable-shared --enable-static" + "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --disable-shared --enable-static" ], "steps": [ - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/unzip.json b/packages/native/unzip.json index 1604805..d68d8e5 100644 --- a/packages/native/unzip.json +++ b/packages/native/unzip.json @@ -16,9 +16,9 @@ ], "build": { "steps": [ - "*:make -f unix/Makefile D_USE_BZ2=-DUSE_BZIP2 L_BZ2=-lbz2 CC=\"$CC\" LF2=\"$LDFLAGS\" CF=\"$CFLAGS $CPPFLAGS -I.\" unzips", - "*:make -f unix/Makefile install prefix=$STAGING_DIR$PREFIX/native", - "*:cd $STAGING_DIR$PREFIX/native/bin && rm -f zipinfo && ln unzip zipinfo" + "*:*:make -f unix/Makefile D_USE_BZ2=-DUSE_BZIP2 L_BZ2=-lbz2 CC=\"$CC\" LF2=\"$LDFLAGS\" CF=\"$CFLAGS $CPPFLAGS -I.\" unzips", + "*:*:make -f unix/Makefile install prefix=$STAGING_DIR$PREFIX/native", + "*:*:cd $STAGING_DIR$PREFIX/native/bin && rm -f zipinfo && ln unzip zipinfo" ] } } \ No newline at end of file diff --git a/packages/native/xar.json b/packages/native/xar.json index d152e7c..430ad04 100644 --- a/packages/native/xar.json +++ b/packages/native/xar.json @@ -10,23 +10,23 @@ } ], "dependencies": [ - "*:native/bzip2", - "*:native/make", - "*:native/openssl", - "*:native/xz", - "*:native/zlib" + "*:*:native/bzip2", + "*:*:native/make", + "*:*:native/openssl", + "*:*:native/xz", + "*:*:native/zlib" ], "build": { "env": [ - "*:CFLAGS=$CFLAGS -w", - "*:config_opts=--with-bzip2", - "*:config_opts=$config_opts --with-lzma=$PREFIX/native" + "*:*:CFLAGS=$CFLAGS -w", + "*:*:config_opts=--with-bzip2", + "*:*:config_opts=$config_opts --with-lzma=$PREFIX/native" ], "steps": [ - "*:cd xar && ./configure --prefix=$PREFIX/native", - "*:cd xar && make -j$NUM_CORES", - "*:cd xar && make DESTDIR=$STAGING_DIR install", - "*:mkdir -p $STAGING_DIR$PREFIX/native/include" + "*:*:cd xar && ./configure --prefix=$PREFIX/native", + "*:*:cd xar && make -j$NUM_CORES", + "*:*:cd xar && make DESTDIR=$STAGING_DIR install", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/include" ] } } \ No newline at end of file diff --git a/packages/native/xmlto.json b/packages/native/xmlto.json index 0b5d58b..fa359aa 100644 --- a/packages/native/xmlto.json +++ b/packages/native/xmlto.json @@ -10,21 +10,21 @@ } ], "dependencies": [ - "*:native/automake", - "*:native/flex", - "*:native/gawk", - "*:native/gettext", - "*:native/libxml2", - "*:native/make", - "*:native/perl" + "*:*:native/automake", + "*:*:native/flex", + "*:*:native/gawk", + "*:*:native/gettext", + "*:*:native/libxml2", + "*:*:native/make", + "*:*:native/perl" ], "build": { "env": [], "steps": [ - "*:autoreconf -f -i", - "*:./configure --prefix=$PREFIX/native", - "*:make xmlto -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install-exec" + "*:*:autoreconf -f -i", + "*:*:./configure --prefix=$PREFIX/native", + "*:*:make xmlto -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install-exec" ] } } \ No newline at end of file diff --git a/packages/native/xz.json b/packages/native/xz.json index 1535d4d..fc8c233 100644 --- a/packages/native/xz.json +++ b/packages/native/xz.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/autoconf", - "*:native/automake", - "*:native/gettext", - "*:native/libtool", - "*:native/m4", - "*:native/make", - "*:native/perl" + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/gettext", + "*:*:native/libtool", + "*:*:native/m4", + "*:*:native/make", + "*:*:native/perl" ], "patches": [ "fix_declaration.patch" ], "build": { "env": [ - "*:HOSTOVERRIDE=$HOST", - "aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "*:config_opts=--prefix=$PREFIX/native --host=$HOSTOVERRIDE", - "*:config_opts=$config_opts --disable-shared", - "*:config_opts=$config_opts --enable-static", - "*:config_opts=$config_opts --disable-doc", - "*:config_opts=$config_opts --disable-scripts" + "*:*:HOSTOVERRIDE=$HOST", + "*:aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", + "*:*:config_opts=--prefix=$PREFIX/native --host=$HOSTOVERRIDE", + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --enable-static", + "*:*:config_opts=$config_opts --disable-doc", + "*:*:config_opts=$config_opts --disable-scripts" ], "steps": [ - "*:pwd", - "*:./autogen.sh --no-po4a", - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install", - "*:rm $STAGING_DIR$PREFIX/native/lib/*.la" + "*:*:pwd", + "*:*:./autogen.sh --no-po4a", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install", + "*:*:rm $STAGING_DIR$PREFIX/native/lib/*.la" ] } } \ No newline at end of file diff --git a/packages/native/zlib.json b/packages/native/zlib.json index ae2e3e4..1f06450 100644 --- a/packages/native/zlib.json +++ b/packages/native/zlib.json @@ -10,20 +10,20 @@ } ], "dependencies": [ - "*:native/libtool", - "*:native/make" + "*:*:native/libtool", + "*:*:native/make" ], "build": { "env": [ - "*:CFLAGS=$CFLAGS -fPIC", - "*:config_opts=--prefix=$PREFIX/native --static", - "*:LIBTOOL=$PREFIX/native/bin/libtool", - "*:CROSS_PREFIX=$HOST-" + "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*:config_opts=--prefix=$PREFIX/native --static", + "*:*:LIBTOOL=$PREFIX/native/bin/libtool", + "*:*:CROSS_PREFIX=$HOST-" ], "steps": [ - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/ncurses.json b/packages/ncurses.json index e426772..68e928b 100644 --- a/packages/ncurses.json +++ b/packages/ncurses.json @@ -10,57 +10,57 @@ } ], "dependencies": [ - "*:native/_" + "*:*:native/_" ], "patches": [ "fallback.c" ], "build": { "env": [ - "*:config_opts=--host=$HOST --prefix=$PREFIX", - "*-linux-gnu:cf_cv_ar_flags=", - "*:config_opts=$config_opts --disable-shared", - "*:config_opts=$config_opts --with-build-cc=gcc", - "*:config_opts=$config_opts --without-debug", - "*:config_opts=$config_opts --without-ada", - "*:config_opts=$config_opts --without-cxx-binding", - "*:config_opts=$config_opts --without-cxx", - "*:config_opts=$config_opts --without-ticlib", - "*:config_opts=$config_opts --without-tic", - "*:config_opts=$config_opts --without-progs", - "*:config_opts=$config_opts --without-tests", - "*:config_opts=$config_opts --without-tack", - "*:config_opts=$config_opts --without-manpages", - "*:config_opts=$config_opts --with-termlib", - "*:config_opts=$config_opts --disable-tic-depends", - "*:config_opts=$config_opts --disable-big-strings", - "*:config_opts=$config_opts --disable-ext-colors", - "*:config_opts=$config_opts --enable-pc-files", - "*:config_opts=$config_opts --without-shared", - "*:config_opts=$config_opts --without-pthread", - "*:config_opts=$config_opts --disable-rpath", - "*:config_opts=$config_opts --disable-colorfgbg", - "*:config_opts=$config_opts --disable-ext-mouse", - "*:config_opts=$config_opts --disable-symlinks", - "*:config_opts=$config_opts --enable-warnings", - "*:config_opts=$config_opts --enable-assertions", - "*:config_opts=$config_opts --with-default-terminfo-dir=/etc/_terminfo_", - "*:config_opts=$config_opts --with-terminfo-dirs=/etc/_terminfo_", - "*:config_opts=$config_opts --enable-database", - "*:config_opts=$config_opts --enable-sp-funcs", - "*:config_opts=$config_opts --disable-term-driver", - "*:config_opts=$config_opts --enable-interop", - "*:config_opts=$config_opts --enable-widec", - "*:SHOULD_BUILD=echo", - "*-linux-*:SHOULD_BUILD=", - "*-w64-mingw32:SHOULD_BUILD=", - "*-apple-darwin:SHOULD_BUILD=" + "*:*:config_opts=--host=$HOST --prefix=$PREFIX", + "*:*-linux-gnu:cf_cv_ar_flags=", + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --with-build-cc=gcc", + "*:*:config_opts=$config_opts --without-debug", + "*:*:config_opts=$config_opts --without-ada", + "*:*:config_opts=$config_opts --without-cxx-binding", + "*:*:config_opts=$config_opts --without-cxx", + "*:*:config_opts=$config_opts --without-ticlib", + "*:*:config_opts=$config_opts --without-tic", + "*:*:config_opts=$config_opts --without-progs", + "*:*:config_opts=$config_opts --without-tests", + "*:*:config_opts=$config_opts --without-tack", + "*:*:config_opts=$config_opts --without-manpages", + "*:*:config_opts=$config_opts --with-termlib", + "*:*:config_opts=$config_opts --disable-tic-depends", + "*:*:config_opts=$config_opts --disable-big-strings", + "*:*:config_opts=$config_opts --disable-ext-colors", + "*:*:config_opts=$config_opts --enable-pc-files", + "*:*:config_opts=$config_opts --without-shared", + "*:*:config_opts=$config_opts --without-pthread", + "*:*:config_opts=$config_opts --disable-rpath", + "*:*:config_opts=$config_opts --disable-colorfgbg", + "*:*:config_opts=$config_opts --disable-ext-mouse", + "*:*:config_opts=$config_opts --disable-symlinks", + "*:*:config_opts=$config_opts --enable-warnings", + "*:*:config_opts=$config_opts --enable-assertions", + "*:*:config_opts=$config_opts --with-default-terminfo-dir=/etc/_terminfo_", + "*:*:config_opts=$config_opts --with-terminfo-dirs=/etc/_terminfo_", + "*:*:config_opts=$config_opts --enable-database", + "*:*:config_opts=$config_opts --enable-sp-funcs", + "*:*:config_opts=$config_opts --disable-term-driver", + "*:*:config_opts=$config_opts --enable-interop", + "*:*:config_opts=$config_opts --enable-widec", + "*:*:SHOULD_BUILD=echo", + "*:*-linux-*:SHOULD_BUILD=", + "*:*-w64-mingw32:SHOULD_BUILD=", + "*:*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "*:$SHOULD_BUILD cp $PATCH_DIR/ncurses/fallback.c ncurses", - "*:$SHOULD_BUILD ./configure $config_opts", - "*:$SHOULD_BUILD make -j$NUM_CORES $build_opts", - "*:$SHOULD_BUILD make install.libs DESTDIR=$STAGING_DIR" + "*:*:$SHOULD_BUILD cp $PATCH_DIR/ncurses/fallback.c ncurses", + "*:*:$SHOULD_BUILD ./configure $config_opts", + "*:*:$SHOULD_BUILD make -j$NUM_CORES $build_opts", + "*:*:$SHOULD_BUILD make install.libs DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/node@25.json b/packages/node@25.json new file mode 100644 index 0000000..84edf28 --- /dev/null +++ b/packages/node@25.json @@ -0,0 +1,30 @@ +{ + "package": "node@25", + "version": "25.1.0", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "1da054d99bb16d35c54d759f36ccc125b90070bd", + "url": "https://github.com/nodejs/node.git" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/ninja", + "*:*:native/python@3.14" + ], + "patches": [ + "fallback.c" + ], + "build": { + "env": [ + "*:*:config_opts=--ninja", + "*:*:config_opts=$config_opts --prefix=$PREFIX" + ], + "steps": [ + "*:*:./configure $config_opts", + "*:*:ninja -j$NUM_CORES" + ] + } +} \ No newline at end of file diff --git a/packages/openssl.json b/packages/openssl.json index e7428ae..545f09b 100644 --- a/packages/openssl.json +++ b/packages/openssl.json @@ -10,53 +10,53 @@ } ], "dependencies": [ - "*:native/_" + "*:*:native/_" ], "build": { "env": [ - "*-android*:ANDROID_NDK_ROOT=$PREFIX/native", - "*-android*:CC=clang", - "*-android*:AR=ar", - "*-android*:RANLIB=ranlib", - "*:config_opts=--prefix=$PREFIX --openssldir=$PREFIX/etc/openssl --libdir=$PREFIX/lib", - "*:config_opts=$config_opts no-capieng", - "*:config_opts=$config_opts no-dso", - "*:config_opts=$config_opts no-dtls1", - "*:config_opts=$config_opts no-ec_nistp_64_gcc_128", - "*:config_opts=$config_opts no-gost", - "*:config_opts=$config_opts no-md2", - "*:config_opts=$config_opts no-rc5", - "*:config_opts=$config_opts no-rdrand", - "*:config_opts=$config_opts no-rfc3779", - "*:config_opts=$config_opts no-sctp", - "*:config_opts=$config_opts no-shared", - "*:config_opts=$config_opts no-ssl-trace", - "*:config_opts=$config_opts no-ssl3", - "*:config_opts=$config_opts no-tests", - "*:config_opts=$config_opts no-unit-test", - "*:config_opts=$config_opts no-weak-ssl-ciphers", - "*:config_opts=$config_opts no-zlib", - "*:config_opts=$config_opts no-zlib-dynamic", - "*linux*:config_opts=$config_opts -fPIC -Wa,--noexecstack", - "x86_64-linux*:config_opts=$config_opts linux-x86_64", - "i686-linux*:config_opts=$config_opts linux-generic32", - "arm-linux*:config_opts=$config_opts linux-generic32", - "aarch64-linux-gnu:config_opts=$config_opts linux-generic64", - "armv7a-linux-androideabi:config_opts=$config_opts --static android-arm", - "aarch64-linux-android:config_opts=$config_opts --static android-arm64", - "aarch64-apple-darwin:config_opts=$config_opts darwin64-arm64-cc", - "aarch64-apple-ios*:config_opts=$config_opts darwin64-arm64-cc", - "x86_64-apple-darwin:config_opts=$config_opts darwin64-x86_64-cc", - "x86_64-w64-mingw32:config_opts=$config_opts mingw64", - "i686-w64-mingw32:config_opts=$config_opts mingw" + "*:*-android*:ANDROID_NDK_ROOT=$PREFIX/native", + "*:*-android*:CC=clang", + "*:*-android*:AR=ar", + "*:*-android*:RANLIB=ranlib", + "*:*:config_opts=--prefix=$PREFIX --openssldir=$PREFIX/etc/openssl --libdir=$PREFIX/lib", + "*:*:config_opts=$config_opts no-capieng", + "*:*:config_opts=$config_opts no-dso", + "*:*:config_opts=$config_opts no-dtls1", + "*:*:config_opts=$config_opts no-ec_nistp_64_gcc_128", + "*:*:config_opts=$config_opts no-gost", + "*:*:config_opts=$config_opts no-md2", + "*:*:config_opts=$config_opts no-rc5", + "*:*:config_opts=$config_opts no-rdrand", + "*:*:config_opts=$config_opts no-rfc3779", + "*:*:config_opts=$config_opts no-sctp", + "*:*:config_opts=$config_opts no-shared", + "*:*:config_opts=$config_opts no-ssl-trace", + "*:*:config_opts=$config_opts no-ssl3", + "*:*:config_opts=$config_opts no-tests", + "*:*:config_opts=$config_opts no-unit-test", + "*:*:config_opts=$config_opts no-weak-ssl-ciphers", + "*:*:config_opts=$config_opts no-zlib", + "*:*:config_opts=$config_opts no-zlib-dynamic", + "*:*linux*:config_opts=$config_opts -fPIC -Wa,--noexecstack", + "*:x86_64-linux*:config_opts=$config_opts linux-x86_64", + "*:i686-linux*:config_opts=$config_opts linux-generic32", + "*:arm-linux*:config_opts=$config_opts linux-generic32", + "*:aarch64-linux-gnu:config_opts=$config_opts linux-generic64", + "*:armv7a-linux-androideabi:config_opts=$config_opts --static android-arm", + "*:aarch64-linux-android:config_opts=$config_opts --static android-arm64", + "*:aarch64-apple-darwin:config_opts=$config_opts darwin64-arm64-cc", + "*:aarch64-apple-ios*:config_opts=$config_opts darwin64-arm64-cc", + "*:x86_64-apple-darwin:config_opts=$config_opts darwin64-x86_64-cc", + "*:x86_64-w64-mingw32:config_opts=$config_opts mingw64", + "*:i686-w64-mingw32:config_opts=$config_opts mingw" ], "steps": [ - "*:sed -i.bak 's/#define DATE \"built on: \\$date\"/#define DATE \"built on: Jan 1 1970 00:00:01\"/' util/mkbuildinf.pl", - "*:sed -i.bak 's|crypto ssl apps util tools fuzz providers doc|crypto ssl util tools providers|' build.info", - "armv7a-linux-androideabi:sed -i.bak s/arm-linux-androideabi/armv7a-linux-androideabi/g ./Configurations/15-android.conf", - "*:./Configure $config_opts", - "*:make -j$NUM_CORES build_libs", - "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install_sw" + "*:*:sed -i.bak 's/#define DATE \"built on: \\$date\"/#define DATE \"built on: Jan 1 1970 00:00:01\"/' util/mkbuildinf.pl", + "*:*:sed -i.bak 's|crypto ssl apps util tools fuzz providers doc|crypto ssl util tools providers|' build.info", + "*:armv7a-linux-androideabi:sed -i.bak s/arm-linux-androideabi/armv7a-linux-androideabi/g ./Configurations/15-android.conf", + "*:*:./Configure $config_opts", + "*:*:make -j$NUM_CORES build_libs", + "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install_sw" ] } } \ No newline at end of file diff --git a/packages/pcre2.json b/packages/pcre2.json index 9e3de29..18b87cc 100644 --- a/packages/pcre2.json +++ b/packages/pcre2.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "*-linux-gnu:native/_" + "*:*-linux-gnu:native/_" ], "build": { "steps": [ - "*-linux-gnu:./configure --host=$HOST --prefix=$PREFIX --enable-static --disable-shared --with-pic", - "*-linux-gnu:make -j$NUM_CORES", - "*-linux-gnu:make install DESTDIR=$STAGING_DIR" + "*:*-linux-gnu:./configure --host=$HOST --prefix=$PREFIX --enable-static --disable-shared --with-pic", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/polyseed.json b/packages/polyseed.json index cc45bf6..d463293 100644 --- a/packages/polyseed.json +++ b/packages/polyseed.json @@ -10,13 +10,13 @@ } ], "dependencies": [ - "*:native/_" + "*:*:native/_" ], "build": { "env": [], "steps": [ - "*:cmake -DCMAKE_INSTALL_PREFIX=$PREFIX -DSTATIC=ON .", - "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install" + "*:*:cmake -DCMAKE_INSTALL_PREFIX=$PREFIX -DSTATIC=ON .", + "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/protobuf.json b/packages/protobuf.json index 49be613..9ba6375 100644 --- a/packages/protobuf.json +++ b/packages/protobuf.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/_" + "*:*:native/_" ], "patches": [ "visibility.patch" ], "build": { "env": [ - "*:CXXFLAGS=$CXXFLAGS -std=c++11", - "*:config_opts=--host=$HOST --prefix=$PREFIX", - "*:config_opts=$config_opts --disable-shared --with-protoc=$PREFIX/native/bin/protoc", - "*-linux-gnu:$config_opts --with-pic", - "*:SHOULD_BUILD=echo", - "*-linux-gnu:SHOULD_BUILD=", - "*-w64-mingw32:SHOULD_BUILD=", - "*-apple-darwin:SHOULD_BUILD=" + "*:*:CXXFLAGS=$CXXFLAGS -std=c++11", + "*:*:config_opts=--host=$HOST --prefix=$PREFIX", + "*:*:config_opts=$config_opts --disable-shared --with-protoc=$PREFIX/native/bin/protoc", + "*:*-linux-gnu:config_opts=$config_opts --with-pic", + "*:*:SHOULD_BUILD=echo", + "*:*-linux-gnu:SHOULD_BUILD=", + "*:*-w64-mingw32:SHOULD_BUILD=", + "*:*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess config.guess", - "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub config.sub", - "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", - "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", - "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", - "*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", - "*:$SHOULD_BUILD patch -p0 < $PATCH_DIR/protobuf/visibility.patch", - "*:$SHOULD_BUILD ./configure $config_opts", - "*:$SHOULD_BUILD make -j$NUM_CORES -C src libprotobuf.la", - "*:$SHOULD_BUILD make -j$NUM_CORES -C src DESTDIR=$STAGING_DIR install-libLTLIBRARIES install-nobase_includeHEADERS", - "*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install-pkgconfigDATA" + "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess config.guess", + "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub config.sub", + "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", + "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", + "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", + "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", + "*:*:$SHOULD_BUILD patch -p0 < $PATCH_DIR/protobuf/visibility.patch", + "*:*:$SHOULD_BUILD ./configure $config_opts", + "*:*:$SHOULD_BUILD make -j$NUM_CORES -C src libprotobuf.la", + "*:*:$SHOULD_BUILD make -j$NUM_CORES -C src DESTDIR=$STAGING_DIR install-libLTLIBRARIES install-nobase_includeHEADERS", + "*:*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install-pkgconfigDATA" ] } } \ No newline at end of file diff --git a/packages/readline.json b/packages/readline.json index c3bce05..275d626 100644 --- a/packages/readline.json +++ b/packages/readline.json @@ -10,21 +10,21 @@ } ], "dependencies": [ - "*:native/_", - "*:ncurses" + "*:*:native/_", + "*:*:ncurses" ], "build": { "env": [ - "*:config_opts=--host=$HOST --prefix=$PREFIX --exec-prefix=$PREFIX", - "*:config_opts=$config_opts --disable-shared --with-curses --disable-debug-mode", - "*:SHOULD_BUILD=echo", - "*-linux-*:SHOULD_BUILD=", - "*-apple-darwin:SHOULD_BUILD=" + "*:*:config_opts=--host=$HOST --prefix=$PREFIX --exec-prefix=$PREFIX", + "*:*:config_opts=$config_opts --disable-shared --with-curses --disable-debug-mode", + "*:*:SHOULD_BUILD=echo", + "*:*-linux-*:SHOULD_BUILD=", + "*:*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "*:$SHOULD_BUILD ./configure $config_opts", - "*:$SHOULD_BUILD make -j$NUM_CORES $build_opts", - "*:$SHOULD_BUILD make -j$NUM_CORES install DESTDIR=$STAGING_DIR prefix=$PREFIX exec-prefix=$PREFIX" + "*:*:$SHOULD_BUILD ./configure $config_opts", + "*:*:$SHOULD_BUILD make -j$NUM_CORES $build_opts", + "*:*:$SHOULD_BUILD make -j$NUM_CORES install DESTDIR=$STAGING_DIR prefix=$PREFIX exec-prefix=$PREFIX" ] } } \ No newline at end of file diff --git a/packages/selinux.json b/packages/selinux.json index f426fce..30eb37c 100644 --- a/packages/selinux.json +++ b/packages/selinux.json @@ -10,30 +10,30 @@ } ], "dependencies": [ - "*:native/_", - "*:native/flex", - "*:native/python@3.11.13", - "*:audit-userspace", - "*:bzip2", - "*:glib", - "*:libcap", - "*:libxcrypt", - "*:pcre2" + "*:*:native/_", + "*:*:native/flex", + "*:*:native/python@3.11", + "*:*:audit-userspace", + "*:*:bzip2", + "*:*:glib", + "*:*:libcap", + "*:*:libxcrypt", + "*:*:pcre2" ], "build": { "env": [ - "*:PANDOC=true" + "*:*:PANDOC=true" ], "steps": [ - "*:cd libsepol && make PREFIX=$PREFIX -j$NUM_CORES", - "*:cd libsepol && make PREFIX=$PREFIX install && make install PREFIX=$PREFIX DESTDIR=$STAGING_DIR", - "*:cd checkpolicy && make y.tab.c", - "*:sed -i.bak 's/void yyerror/int yyerror/g' ./checkpolicy/y.tab.*", - "*:sed -i.bak 's/XMLTO = xmlto/XMLTO = true/g' ./secilc/Makefile", - "*:sed -i.bak 's/$(LIBSELINUX_LDLIBS)/$(LIBSELINUX_LDLIBS) -lsemanage/g' policycoreutils/semodule/Makefile", - "*:sed -i.bak 's/$(LIBSELINUX_LDLIBS)/$(LIBSELINUX_LDLIBS) -lsemanage -lsepol/g' policycoreutils/setsebool/Makefile", - "*:make PREFIX=$PREFIX -j$NUM_CORES", - "*:make PREFIX=$PREFIX install DESTDIR=$STAGING_DIR" + "*:*:cd libsepol && make PREFIX=$PREFIX -j$NUM_CORES", + "*:*:cd libsepol && make PREFIX=$PREFIX install && make install PREFIX=$PREFIX DESTDIR=$STAGING_DIR", + "*:*:cd checkpolicy && make y.tab.c", + "*:*:sed -i.bak 's/void yyerror/int yyerror/g' ./checkpolicy/y.tab.*", + "*:*:sed -i.bak 's/XMLTO = xmlto/XMLTO = true/g' ./secilc/Makefile", + "*:*:sed -i.bak 's/$(LIBSELINUX_LDLIBS)/$(LIBSELINUX_LDLIBS) -lsemanage/g' policycoreutils/semodule/Makefile", + "*:*:sed -i.bak 's/$(LIBSELINUX_LDLIBS)/$(LIBSELINUX_LDLIBS) -lsemanage -lsepol/g' policycoreutils/setsebool/Makefile", + "*:*:make PREFIX=$PREFIX -j$NUM_CORES", + "*:*:make PREFIX=$PREFIX install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/sodium.json b/packages/sodium.json index 02f7776..62a9199 100644 --- a/packages/sodium.json +++ b/packages/sodium.json @@ -10,8 +10,8 @@ } ], "dependencies": [ - "*:native/_", - "*:native/config" + "*:*:native/_", + "*:*:native/config" ], "patches": [ "disable-glibc-getrandom-getentropy.patch", @@ -19,21 +19,21 @@ ], "build": { "env": [ - "*-android*:ANDROID_NDK_ROOT=$PREFIX/native", - "*-android*:CC=clang", - "*-android*:AR=ar", - "*-android*:RANLIB=ranlib", - "*:config_opts=--host=$HOST --prefix=$PREFIX", - "*:config_opts=$config_opts --enable-static --disable-shared --with-pic" + "*:*-android*:ANDROID_NDK_ROOT=$PREFIX/native", + "*:*-android*:CC=clang", + "*:*-android*:AR=ar", + "*:*-android*:RANLIB=ranlib", + "*:*:config_opts=--host=$HOST --prefix=$PREFIX", + "*:*:config_opts=$config_opts --enable-static --disable-shared --with-pic" ], "steps": [ - "*:cp -f $PREFIX/native/share/config/config.guess build-aux/", - "*:cp -f $PREFIX/native/share/config/config.sub build-aux/", - "*:patch -p1 < $PATCH_DIR/sodium/disable-glibc-getrandom-getentropy.patch", - "*:patch -p1 < $PATCH_DIR/sodium/fix-whitespace.patch", - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:cp -f $PREFIX/native/share/config/config.guess build-aux/", + "*:*:cp -f $PREFIX/native/share/config/config.sub build-aux/", + "*:*:patch -p1 < $PATCH_DIR/sodium/disable-glibc-getrandom-getentropy.patch", + "*:*:patch -p1 < $PATCH_DIR/sodium/fix-whitespace.patch", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/tor.json b/packages/tor.json index a9c79d2..bbb1311 100644 --- a/packages/tor.json +++ b/packages/tor.json @@ -10,48 +10,48 @@ } ], "dependencies": [ - "*:native/_", - "*:libevent", - "*:openssl", - "*:xz", - "*:zlib", - "*:zstd" + "*:*:native/_", + "*:*:libevent", + "*:*:openssl", + "*:*:xz", + "*:*:zlib", + "*:*:zstd" ], "build": { "env": [ - "*:HOSTOVERRIDE=$HOST", - "aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "*:config_opts=--host=$HOSTOVERRIDE --prefix=$PREFIX", - "*:config_opts=$config_opts --disable-asciidoc", - "*:config_opts=$config_opts --disable-system-torrc", - "*:config_opts=$config_opts --disable-manpage", - "*:config_opts=$config_opts --disable-html-manual", - "*:config_opts=$config_opts --disable-tool-name-check", - "*-linux-android*:config_opts=$config_opts --enable-android", - "*-linux-android*:config_opts=$config_opts ac_cv_member_struct_tcp_info_tcpi_snd_mss=no", - "*:config_opts=$config_opts --enable-pic", - "*:config_opts=$config_opts --enable-static-openssl", - "*:config_opts=$config_opts --enable-static-libevent", - "*:config_opts=$config_opts --enable-static-zlib", - "*:config_opts=$config_opts --enable-static-tor", - "*:config_opts=$config_opts --disable-lzma", - "*:config_opts=$config_opts --disable-zstd", - "*:config_opts=$config_opts --with-openssl-dir=$PREFIX/lib", - "*:config_opts=$config_opts --with-libevent-dir=$PREFIX/lib", - "*:config_opts=$config_opts --with-zlib-dir=$PREFIX/lib", - "*:config_opts=$config_opts tor_cv_library_libevent_dir=$PREFIX" + "*:*:HOSTOVERRIDE=$HOST", + "*:aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", + "*:*:config_opts=--host=$HOSTOVERRIDE --prefix=$PREFIX", + "*:*:config_opts=$config_opts --disable-asciidoc", + "*:*:config_opts=$config_opts --disable-system-torrc", + "*:*:config_opts=$config_opts --disable-manpage", + "*:*:config_opts=$config_opts --disable-html-manual", + "*:*:config_opts=$config_opts --disable-tool-name-check", + "*:*-linux-android*:config_opts=$config_opts --enable-android", + "*:*-linux-android*:config_opts=$config_opts ac_cv_member_struct_tcp_info_tcpi_snd_mss=no", + "*:*:config_opts=$config_opts --enable-pic", + "*:*:config_opts=$config_opts --enable-static-openssl", + "*:*:config_opts=$config_opts --enable-static-libevent", + "*:*:config_opts=$config_opts --enable-static-zlib", + "*:*:config_opts=$config_opts --enable-static-tor", + "*:*:config_opts=$config_opts --disable-lzma", + "*:*:config_opts=$config_opts --disable-zstd", + "*:*:config_opts=$config_opts --with-openssl-dir=$PREFIX/lib", + "*:*:config_opts=$config_opts --with-libevent-dir=$PREFIX/lib", + "*:*:config_opts=$config_opts --with-zlib-dir=$PREFIX/lib", + "*:*:config_opts=$config_opts tor_cv_library_libevent_dir=$PREFIX" ], "steps": [ - "*:./autogen.sh", - "*:./configure $config_opts", - "*:make -j$NUM_CORES libtor.a", - "*:mkdir -p $STAGING_DIR$PREFIX/lib", - "*:cp libtor.a $STAGING_DIR$PREFIX/lib/libtor.a", - "*:mkdir -p $STAGING_DIR$PREFIX/share/tor", - "*:cp src/config/geoip $STAGING_DIR$PREFIX/share/tor", - "*:cp src/config/geoip6 $STAGING_DIR$PREFIX/share/tor", - "*:mkdir -p $STAGING_DIR$PREFIX/include/tor", - "*:cd src && find . -name '*.h' -exec sh -c 'mkdir -p \"$STAGING_DIR$PREFIX/include/tor/$(dirname \"$1\")\" && cp \"$1\" \"$STAGING_DIR$PREFIX/include/tor/$1\"' _ {} \\;" + "*:*:./autogen.sh", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES libtor.a", + "*:*:mkdir -p $STAGING_DIR$PREFIX/lib", + "*:*:cp libtor.a $STAGING_DIR$PREFIX/lib/libtor.a", + "*:*:mkdir -p $STAGING_DIR$PREFIX/share/tor", + "*:*:cp src/config/geoip $STAGING_DIR$PREFIX/share/tor", + "*:*:cp src/config/geoip6 $STAGING_DIR$PREFIX/share/tor", + "*:*:mkdir -p $STAGING_DIR$PREFIX/include/tor", + "*:*:cd src && find . -name '*.h' -exec sh -c 'mkdir -p \"$STAGING_DIR$PREFIX/include/tor/$(dirname \"$1\")\" && cp \"$1\" \"$STAGING_DIR$PREFIX/include/tor/$1\"' _ {} \\;" ] } } \ No newline at end of file diff --git a/packages/torch.json b/packages/torch.json index af57f88..125f473 100644 --- a/packages/torch.json +++ b/packages/torch.json @@ -10,25 +10,25 @@ } ], "dependencies": [ - "*:native/_", - "*:libevent", - "*:openssl", - "*:tor", - "*:xz", - "*:zlib", - "*:zstd" + "*:*:native/_", + "*:*:libevent", + "*:*:openssl", + "*:*:tor", + "*:*:xz", + "*:*:zlib", + "*:*:zstd" ], "build": { "env": [ - "*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", - "*:config_opts=$config_opts -DTOR_BUILD_DIR=$PREFIX", - "*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", + "*:*:config_opts=$config_opts -DTOR_BUILD_DIR=$PREFIX", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" ], "steps": [ - "*:mkdir build", - "*:cd build && cmake .. $config_opts", - "*:cd build && make -j$NUM_CORES", - "*:cd build && make install DESTDIR=$STAGING_DIR" + "*:*:mkdir build", + "*:*:cd build && cmake .. $config_opts", + "*:*:cd build && make -j$NUM_CORES", + "*:*:cd build && make install DESTDIR=$STAGING_DIR" ] } } \ No newline at end of file diff --git a/packages/unbound.json b/packages/unbound.json index 7de1884..a32b24b 100644 --- a/packages/unbound.json +++ b/packages/unbound.json @@ -10,34 +10,34 @@ } ], "dependencies": [ - "*:native/_", - "*:expat", - "*:openssl" + "*:*:native/_", + "*:*:expat", + "*:*:openssl" ], "patches": [ "disable-glibc-reallocarray.patch" ], "build": { "env": [ - "*:BUILD_HOST=$HOST", - "aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios", - "*:config_opts=--disable-shared --enable-static --without-pyunbound --prefix=$PREFIX --host=$BUILD_HOST", - "*:config_opts=$config_opts --with-libexpat=$PREFIX --with-ssl=$PREFIX --with-libevent=no", - "*:config_opts=$config_opts --without-pythonmodule --disable-flto --with-pthreads --with-libunbound-only", - "*-linux-*:config_opts=$config_opts --with-pic", - "*-w64-*:config_opts=$config_opts --enable-static-exe --sysconfdir=/etc --prefix=$PREFIX --target=$PREFIX", - "x86_64-apple-darwin:config_opts=$config_opts ac_cv_func_SHA384_Init=yes", - "*-linux-android*:config_opts=$config_opts ac_cv_type_pthread_spinlock_t=no", - "*-w64-mingw32:build_opts=$build_opts LDFLAGS=\"$LDFLAGS -lpthread\"", - "*-w64-mingw32:CFLAGS=$CFLAGS -D_WIN32_WINNT=0x600", - "*:config_opts=$config_opts ac_cv_func_getentropy=no" + "*:*:BUILD_HOST=$HOST", + "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios", + "*:*:config_opts=--disable-shared --enable-static --without-pyunbound --prefix=$PREFIX --host=$BUILD_HOST", + "*:*:config_opts=$config_opts --with-libexpat=$PREFIX --with-ssl=$PREFIX --with-libevent=no", + "*:*:config_opts=$config_opts --without-pythonmodule --disable-flto --with-pthreads --with-libunbound-only", + "*:*-linux-*:config_opts=$config_opts --with-pic", + "*:*-w64-*:config_opts=$config_opts --enable-static-exe --sysconfdir=/etc --prefix=$PREFIX --target=$PREFIX", + "*:x86_64-apple-darwin:config_opts=$config_opts ac_cv_func_SHA384_Init=yes", + "*:*-linux-android*:config_opts=$config_opts ac_cv_type_pthread_spinlock_t=no", + "*:*-w64-mingw32:build_opts=$build_opts LDFLAGS=\"$LDFLAGS -lpthread\"", + "*:*-w64-mingw32:CFLAGS=$CFLAGS -D_WIN32_WINNT=0x600", + "*:*:config_opts=$config_opts ac_cv_func_getentropy=no" ], "steps": [ - "*:patch -p1 < $PATCH_DIR/unbound/disable-glibc-reallocarray.patch", - "*:autoconf", - "*:./configure $config_opts", - "*:make -j$NUM_CORES $build_opts", - "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install" + "*:*:patch -p1 < $PATCH_DIR/unbound/disable-glibc-reallocarray.patch", + "*:*:autoconf", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES $build_opts", + "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/unwind.json b/packages/unwind.json index eefc6a6..05aef38 100644 --- a/packages/unwind.json +++ b/packages/unwind.json @@ -10,25 +10,25 @@ } ], "dependencies": [ - "*:native/_", - "*:native/config", - "*:native/gettext" + "*:*:native/_", + "*:*:native/config", + "*:*:native/gettext" ], "patches": [ "fix_obj_order.patch" ], "build": { "env": [ - "*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX", - "*-linux-gnu:config_opts=$config_opts --disable-shared --enable-static --disable-tests --disable-documentation" + "*:*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX", + "*:*-linux-gnu:config_opts=$config_opts --disable-shared --enable-static --disable-tests --disable-documentation" ], "steps": [ - "*:cp -f $PREFIX/native/share/config/config.guess config/config.guess", - "*:cp -f $PREFIX/native/share/config/config.sub config/config.sub", - "*-linux-gnu:patch -p0 < $PATCH_DIR/unwind/fix_obj_order.patch", - "*-linux-gnu:./configure $config_opts", - "*-linux-gnu:make -j$NUM_CORES", - "*-linux-gnu:make -j$NUM_CORES DESTDIR=$STAGING_DIR install" + "*:*:cp -f $PREFIX/native/share/config/config.guess config/config.guess", + "*:*:cp -f $PREFIX/native/share/config/config.sub config/config.sub", + "*:*-linux-gnu:patch -p0 < $PATCH_DIR/unwind/fix_obj_order.patch", + "*:*-linux-gnu:./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make -j$NUM_CORES DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/xz.json b/packages/xz.json index 46ba7a6..4508618 100644 --- a/packages/xz.json +++ b/packages/xz.json @@ -10,36 +10,36 @@ } ], "dependencies": [ - "*:native/_", - "*:native/m4", - "*:native/make", - "*:native/perl" + "*:*:native/_", + "*:*:native/m4", + "*:*:native/make", + "*:*:native/perl" ], "patches": [ "fix_declaration.patch" ], "build": { "env": [ - "*:HOSTOVERRIDE=$HOST", - "aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "*:config_opts=--prefix=$PREFIX --host=$HOSTOVERRIDE", - "*:config_opts=$config_opts --disable-shared", - "*:config_opts=$config_opts --enable-static", - "*:config_opts=$config_opts --disable-doc", - "*:config_opts=$config_opts --disable-scripts", - "*:config_opts=$config_opts --disable-xz", - "*:config_opts=$config_opts --disable-xzdec", - "*:config_opts=$config_opts --disable-lzmadec", - "*:config_opts=$config_opts --disable-lzmainfo", - "*:config_opts=$config_opts --disable-lzma-links" + "*:*:HOSTOVERRIDE=$HOST", + "*:aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", + "*:*:config_opts=--prefix=$PREFIX --host=$HOSTOVERRIDE", + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --enable-static", + "*:*:config_opts=$config_opts --disable-doc", + "*:*:config_opts=$config_opts --disable-scripts", + "*:*:config_opts=$config_opts --disable-xz", + "*:*:config_opts=$config_opts --disable-xzdec", + "*:*:config_opts=$config_opts --disable-lzmadec", + "*:*:config_opts=$config_opts --disable-lzmainfo", + "*:*:config_opts=$config_opts --disable-lzma-links" ], "steps": [ - "*:pwd", - "*:./autogen.sh --no-po4a", - "*:./configure $config_opts", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install", - "*:rm $STAGING_DIR$PREFIX/lib/*.la" + "*:*:pwd", + "*:*:./autogen.sh --no-po4a", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install", + "*:*:rm $STAGING_DIR$PREFIX/lib/*.la" ] } } \ No newline at end of file diff --git a/packages/zeromq.json b/packages/zeromq.json index 3277460..3c5081e 100644 --- a/packages/zeromq.json +++ b/packages/zeromq.json @@ -10,25 +10,25 @@ } ], "dependencies": [ - "*:native/_" + "*:*:native/_" ], "patches": [ "fix_declaration.patch" ], "build": { "env": [ - "aarch64-apple-ios*:HOST=aarch64-apple-darwin", - "*:config_opts=--prefix=$PREFIX --host=$HOST --without-documentation --disable-shared --without-libsodium --disable-curve", - "*-linux-gnu:config_opts=$config_opts --with-pic", - "*:cxxflags=-std=c++11" + "*:aarch64-apple-ios*:HOST=aarch64-apple-darwin", + "*:*:config_opts=--prefix=$PREFIX --host=$HOST --without-documentation --disable-shared --without-libsodium --disable-curve", + "*:*-linux-gnu:config_opts=$config_opts --with-pic", + "*:*:cxxflags=-std=c++11" ], "steps": [ - "*:patch -p1 < $PATCH_DIR/zeromq/fix_declaration.patch", - "*:./configure $config_opts", - "*:make -j$NUM_CORES src/libzmq.la", - "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-pkgconfigDATA VERBOSE=1", - "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-libLTLIBRARIES VERBOSE=1", - "*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-includeHEADERS VERBOSE=1" + "*:*:patch -p1 < $PATCH_DIR/zeromq/fix_declaration.patch", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES src/libzmq.la", + "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-pkgconfigDATA VERBOSE=1", + "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-libLTLIBRARIES VERBOSE=1", + "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-includeHEADERS VERBOSE=1" ] } } \ No newline at end of file diff --git a/packages/zlib.json b/packages/zlib.json index da681ed..aae5eb1 100644 --- a/packages/zlib.json +++ b/packages/zlib.json @@ -10,23 +10,23 @@ } ], "dependencies": [ - "*:native/_", - "*:native/libtool" + "*:*:native/_", + "*:*:native/libtool" ], "build": { "env": [ - "*:CFLAGS=$CFLAGS -fPIC", - "*:config_opts=--prefix=$PREFIX --static", - "*:CROSS_PREFIX=$HOST-" + "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*:config_opts=--prefix=$PREFIX --static", + "*:*:CROSS_PREFIX=$HOST-" ], "steps": [ - "*:./configure $config_opts", - "*-android*:sed -i.bak s/^AR=.\\*$/AR=\"llvm-ar\"/ Makefile", - "*-android*:sed -i.bak s/^ARFLAGS=.\\*$/ARFLAGS=\"rcs\"/ Makefile", - "*-linux-gnu:sed -i.bak s/^AR=.\\*$/AR=\"$AR\"/ Makefile", - "*-linux-gnu:sed -i.bak s/^ARFLAGS=.\\*$/ARFLAGS=\"rcs\"/ Makefile", - "*:make -j$NUM_CORES", - "*:make DESTDIR=$STAGING_DIR install" + "*:*:./configure $config_opts", + "*:*-android*:sed -i.bak s/^AR=.\\*$/AR=\"llvm-ar\"/ Makefile", + "*:*-android*:sed -i.bak s/^ARFLAGS=.\\*$/ARFLAGS=\"rcs\"/ Makefile", + "*:*-linux-gnu:sed -i.bak s/^AR=.\\*$/AR=\"$AR\"/ Makefile", + "*:*-linux-gnu:sed -i.bak s/^ARFLAGS=.\\*$/ARFLAGS=\"rcs\"/ Makefile", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/zstd.json b/packages/zstd.json index cba0337..bd88dcd 100644 --- a/packages/zstd.json +++ b/packages/zstd.json @@ -10,23 +10,23 @@ } ], "dependencies": [ - "*:native/_" + "*:*:native/_" ], "build": { "env": [ - "*:LIBTOOL=$PREFIX/native/bin/libtool", - "armv7a-linux-androideabi:CFLAGS=$CFLAGS -DLIBC_NO_FSEEKO", - "armv7a-linux-androideabi:CXXFLAGS=$CXXFLAGS -DLIBC_NO_FSEEKO", - "*-linux-*:TARGET_SYSTEM=Linux", - "*-apple-*:TARGET_SYSTEM=Darwin", - "*-mingw32:TARGET_SYSTEM=Windows", - "*:UNAME_TARGET_SYSTEM=$TARGET_SYSTEM", - "*:OS=$TARGET_SYSTEM" + "*:*:LIBTOOL=$PREFIX/native/bin/libtool", + "*:armv7a-linux-androideabi:CFLAGS=$CFLAGS -DLIBC_NO_FSEEKO", + "*:armv7a-linux-androideabi:CXXFLAGS=$CXXFLAGS -DLIBC_NO_FSEEKO", + "*:*-linux-*:TARGET_SYSTEM=Linux", + "*:*-apple-*:TARGET_SYSTEM=Darwin", + "*:*-mingw32:TARGET_SYSTEM=Windows", + "*:*:UNAME_TARGET_SYSTEM=$TARGET_SYSTEM", + "*:*:OS=$TARGET_SYSTEM" ], "steps": [ - "*:make -j$NUM_CORES", - "*:mkdir -p $STAGING_DIR$PREFIX/lib", - "*:cp ./lib/libzstd.a $STAGING_DIR$PREFIX/lib/libzstd.a" + "*:*:make -j$NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/lib", + "*:*:cp ./lib/libzstd.a $STAGING_DIR$PREFIX/lib/libzstd.a" ] } } \ No newline at end of file diff --git a/sources.json b/sources.json index e86e9a9..6e6e35b 100644 --- a/sources.json +++ b/sources.json @@ -883,6 +883,11 @@ "751b09390996163348612f0b106114256305ee40" ] }, + "https://github.com/nodejs/node.git": { + "refs": [ + "1da054d99bb16d35c54d759f36ccc125b90070bd" + ] + }, "https://github.com/tpoechtrager/apple-libtapi.git": { "refs": [ "640b4623929c923c0468143ff2a363a48665fa54" @@ -939,6 +944,11 @@ "refs": [ "13a831d76467c88f9e79f9804e2471137ec05331" ] + }, + "https://salsa.debian.org/sanvila/unzip.git": { + "refs": [ + "e811196e79092a387e6ff0b345780710acfab1c4" + ] } } } \ No newline at end of file diff --git a/utils/env.go b/utils/env.go index 4d487a9..9ec2820 100644 --- a/utils/env.go +++ b/utils/env.go @@ -5,33 +5,37 @@ import ( "os" "strings" + "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/host" - "github.com/ryanuber/go-glob" + "github.com/mrcyjanek/simplybs/utils/ifstring" ) func ExpandEnvFromMap(s string, envMap map[string]string) string { - return os.Expand(s, func(key string) string { + ret := os.Expand(s, func(key string) string { if val, ok := envMap[key]; ok { return val } return "" }) + return ret } func AppendEnv(env map[string]string, newEnv []string, host *host.Host) map[string]string { for _, envVar := range newEnv { - exp := ExpandEnvFromMap(envVar, env) - colonIndex := strings.Index(exp, ":") - equalIndex := strings.Index(exp, "=") - if colonIndex == -1 || equalIndex == -1 { - log.Fatalf("Invalid env var: %s. Vars needs to be in the form of *:KEY=VALUE", exp) + is := ifstring.ParseIfString(envVar) + is.Content = ExpandEnvFromMap(is.Content, env) + equalIndex := strings.Index(is.Content, "=") + if equalIndex == -1 { + log.Fatalf("Invalid env var: %s. Vars needs to be in the form of *:KEY=VALUE", envVar) } - prefix := exp[0:colonIndex] - if !glob.Glob(prefix, host.Triplet) && prefix != "all" { + if !is.HostGlob().Match(host.Triplet) { continue } - k := exp[colonIndex+1 : equalIndex] - v := exp[equalIndex+1:] + if !is.BuilderGlob().Match(builder.GetName()) { + continue + } + k := is.Content[:equalIndex] + v := is.Content[equalIndex+1:] env[k] = v } return env diff --git a/utils/ifstring.go b/utils/ifstring/ifstring.go similarity index 73% rename from utils/ifstring.go rename to utils/ifstring/ifstring.go index 2810b9a..20515dd 100644 --- a/utils/ifstring.go +++ b/utils/ifstring/ifstring.go @@ -1,6 +1,7 @@ -package utils +package ifstring import ( + "log" "strings" "github.com/gobwas/glob" @@ -23,6 +24,10 @@ func ParseIfString(str string) *IfString { is := &IfString{} is.Builder = strings.Split(str, ":")[0] is.Host = strings.Split(str, ":")[1] - is.Content = str[len(is.Builder)+len(is.Host)+2:] + offset := len(is.Builder) + len(is.Host) + 2 + if len(str) < offset { + log.Fatalln("failed to parse:", str) + } + is.Content = str[offset:] return is } From c5cb851e0615f36604a30786f0c71b9495e14781 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 17 Nov 2025 10:03:01 +0100 Subject: [PATCH 028/200] wip --- builder/builder_linux_arm64.go | 4 ++-- packages/native/git.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/builder/builder_linux_arm64.go b/builder/builder_linux_arm64.go index 625601d..0b726cc 100644 --- a/builder/builder_linux_arm64.go +++ b/builder/builder_linux_arm64.go @@ -6,8 +6,8 @@ var HostBuilder = Builder{ GlobalEnv: []string{ "*:*:HOST=aarch64-linux-gnu", "*:*:TARGET=aarch64-linux-gnu", - "*:*:CC=aarch64-linux-gnu-gcc", - "*:*:CXX=aarch64-linux-gnu-g++", + "*:*:CC=clang", + "*:*:CXX=clang++", "*:*:AR=ar", "*:*:RANLIB=ranlib", "*:*:STRIP=strip", diff --git a/packages/native/git.json b/packages/native/git.json index e14c863..268add2 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -24,8 +24,8 @@ "*:*:make DESTDIR=$STAGING_DIR$PREFIX/native install", "*:*:mkdir -p $STAGING_DIR$HOME", "*:*:echo '[user]' >> $STAGING_DIR$HOME/.gitconfig", - "*:*:echo '\tsimplybs' >> $STAGING_DIR$HOME/.gitconfig", - "*:*:echo '\tsimplybs@mrcyjanek.net' >> $STAGING_DIR$HOME/.gitconfig" + "*:*:echo '\tname = simplybs' >> $STAGING_DIR$HOME/.gitconfig", + "*:*:echo '\temail = simplybs@mrcyjanek.net' >> $STAGING_DIR$HOME/.gitconfig" ] } } \ No newline at end of file From 91b3240a81ff2eff7b0436a84362bb966f504d82 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 17 Nov 2025 10:10:52 +0100 Subject: [PATCH 029/200] wip --- pack/main.go | 4 ++-- packages/native/android_ndk.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pack/main.go b/pack/main.go index f4853ee..4160d57 100644 --- a/pack/main.go +++ b/pack/main.go @@ -48,7 +48,7 @@ type PackageWithBuilds struct { } var bootstrapPackages = []string{ - "native/bootstrap/strip-nondeterminism", + "*:*:native/bootstrap/strip-nondeterminism", } func FindPackage(name string) (*Package, error) { @@ -65,7 +65,7 @@ func FindPackage(name string) (*Package, error) { if !strings.Contains(pkg.Package, "/bootstrap/") { for _, pkgName := range bootstrapPackages { - pkg.Dependencies = append(pkg.Dependencies, "*:*:"+pkgName) + pkg.Dependencies = append(pkg.Dependencies, pkgName) } // pkg.Build.Steps = append(pkg.Build.Steps, "*:$PREFIX/native/bootstrap/bin/perl $PREFIX/native/bootstrap/bin/strip-nondeterminism-recursive --directory $STAGING_DIR") } diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index 4931417..549532a 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -3,8 +3,8 @@ "version": "r28c", "type": "native", "dependencies": [ - "*:*:native/python@3.11.13" - "*:*:native/p7zip" + "*:*:native/p7zip", + "*:*:native/python@3.11" ], "build": { "env": [ From 3449cd75e67f4d5b79c9f5be4d08bf6d01f44043 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 18 Nov 2025 20:02:19 +0100 Subject: [PATCH 030/200] fix: android torch builds --- host/main.go | 24 +++---- pack/info.go | 2 + pack/main.go | 2 +- packages/libevent.json | 7 ++- packages/native/android_ndk.json | 32 +++++++--- .../bootstrap/strip-nondeterminism.json | 9 --- packages/tor.json | 4 ++ packages/torch.json | 2 + packages/xz.json | 4 ++ patches/android_ndk/symlink_same.py | 63 +++++++++++++++++++ utils/extract.go | 21 ++----- 11 files changed, 125 insertions(+), 45 deletions(-) delete mode 100644 packages/native/bootstrap/strip-nondeterminism.json create mode 100644 patches/android_ndk/symlink_same.py diff --git a/host/main.go b/host/main.go index 77425e1..c2bcc4b 100644 --- a/host/main.go +++ b/host/main.go @@ -218,14 +218,14 @@ var SupportedHosts = map[string]*Host{ "*:*:CC_target=aarch64-linux-android", "*:*:CC=aarch64-linux-android21-clang", "*:*:CXX=aarch64-linux-android21-clang++", - "*:*:CFLAGS=", - "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", + "*:*:CFLAGS=$CFLAGS", + "*:*:CXXFLAGS=$CXXFLAGS -stdlib=libc++", "*:*:RANLIB=llvm-ranlib", "*:*:AR=llvm-ar", "*:*:AS=llvm-as", "*:*:LIBTOOL=libtool", "*:*:ANDROID_NDK_HOME=$PREFIX/native/", - "*:*:LDFLAGS=$PREFIX/usr/lib/libc++_static.a $PREFIX/usr/lib/libc++abi.a -lm -lc -llog", + "*:*:LDFLAGS=$LDFLAGS -lc -lc++_static -lc++abi -lm -llog", }, }, "x86_64-linux-android": { @@ -236,13 +236,14 @@ var SupportedHosts = map[string]*Host{ "*:*:CC_target=x86_64-linux-android", "*:*:CC=x86_64-linux-android21-clang", "*:*:CXX=x86_64-linux-android21-clang++", - "*:*:CFLAGS=", - "*:*:CXXFLAGS=$CFLAGS", + "*:*:CFLAGS=$CFLAGS", + "*:*:CXXFLAGS=$CXXFLAGS -stdlib=libc++", "*:*:RANLIB=llvm-ranlib", "*:*:AR=llvm-ar", - "*:*:LIBTOOL=llvm-libtool", + "*:*:AS=llvm-as", + "*:*:LIBTOOL=libtool", "*:*:ANDROID_NDK_HOME=$PREFIX/native/", - }, + "*:*:LDFLAGS=$LDFLAGS -lc -lc++_static -lc++abi -lm -llog"}, }, "armv7a-linux-androideabi": { Triplet: "armv7a-linux-androideabi", @@ -252,13 +253,14 @@ var SupportedHosts = map[string]*Host{ "*:*:CC_target=armv7a-linux-androideabi", "*:*:CC=armv7a-linux-androideabi21-clang", "*:*:CXX=armv7a-linux-androideabi21-clang++", - "*:*:CFLAGS=", - "*:*:CXXFLAGS=$CFLAGS", + "*:*:CFLAGS=$CFLAGS", + "*:*:CXXFLAGS=$CXXFLAGS -stdlib=libc++", "*:*:RANLIB=llvm-ranlib", "*:*:AR=llvm-ar", - "*:*:LIBTOOL=llvm-libtool", + "*:*:AS=llvm-as", + "*:*:LIBTOOL=libtool", "*:*:ANDROID_NDK_HOME=$PREFIX/native/", - }, + "*:*:LDFLAGS=$LDFLAGS -lc -lc++_static -lc++abi -lm -llog"}, }, } diff --git a/pack/info.go b/pack/info.go index a33c589..4ba39bf 100644 --- a/pack/info.go +++ b/pack/info.go @@ -164,6 +164,8 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { "*:*:CXX_FOR_BUILD=" + builder.HostBuilder.GetCXX(), "*:*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/include", "*:*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/usr/include", + "*:*:CXXFLAGS=$CXXFLAGS -I" + h.GetEnvPath() + "/include", + "*:*:CXXFLAGS=$CXXFLAGS -I" + h.GetEnvPath() + "/usr/include", "*:*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/lib", "*:*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/usr/lib", "*:*:LD_LIBRARY_PATH=" + h.GetEnvPath() + "/native/lib", diff --git a/pack/main.go b/pack/main.go index 4160d57..0085117 100644 --- a/pack/main.go +++ b/pack/main.go @@ -48,7 +48,7 @@ type PackageWithBuilds struct { } var bootstrapPackages = []string{ - "*:*:native/bootstrap/strip-nondeterminism", + // "*:*:native/bootstrap/strip-nondeterminism", } func FindPackage(name string) (*Package, error) { diff --git a/packages/libevent.json b/packages/libevent.json index 05c2d0d..70b03d3 100644 --- a/packages/libevent.json +++ b/packages/libevent.json @@ -10,7 +10,12 @@ } ], "dependencies": [ - "*:*:native/_" + "*:*:native/_", + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/libtool", + "*:*:native/m4", + "*:*:native/perl" ], "build": { "env": [ diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index 549532a..ad47992 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -2,6 +2,20 @@ "package": "native/android_ndk", "version": "r28c", "type": "native", + "download": [ + { + "kind": "blob", + "path": "android-ndk-r28c-darwin.zip", + "sha256": "0d4599e8bbf1a1668a0d51a541729b2246360f350018a2081d0b302dbb594f2a", + "url": "https://dl.google.com/android/repository/android-ndk-r28c-darwin.zip" + }, + { + "kind": "blob", + "path": "android-ndk-r28c-linux.zip", + "sha256": "dfb20d396df28ca02a8c708314b814a4d961dc9074f9a161932746f815aa552f", + "url": "https://dl.google.com/android/repository/android-ndk-r28c-linux.zip" + } + ], "dependencies": [ "*:*:native/p7zip", "*:*:native/python@3.11" @@ -19,11 +33,8 @@ "*:*-android*:API_LEVEL=21" ], "steps": [ - "*:*-android*:if [ $(uname) = 'Darwin' ]; then curl -o android-ndk-r28c-darwin.zip https://dl.google.com/android/repository/android-ndk-r28c-darwin.zip; else true; fi", - "*:*-android*:if [ $(uname) = 'Darwin' ]; then echo '0d4599e8bbf1a1668a0d51a541729b2246360f350018a2081d0b302dbb594f2a android-ndk-r28c-darwin.zip' | shasum -a 256 -c -; else true; fi", - "*:*-android*:if [ $(uname) = 'Linux' ]; then curl -o android-ndk-r28c-linux.zip https://dl.google.com/android/repository/android-ndk-r28c-linux.zip; else true; fi", - "*:*-android*:if [ $(uname) = 'Linux' ]; then echo 'dfb20d396df28ca02a8c708314b814a4d961dc9074f9a161932746f815aa552f android-ndk-r28c-linux.zip' | sha256sum -c -; else true; fi", - "*:*-android*:7z x $PWD/android-ndk-r28c-*.zip", + "darwin_*:*-android*:7z x $PWD/android-ndk-r28c-darwin.zip", + "linux_*:*-android*:7z x $PWD/android-ndk-r28c-linux.zip", "*:*-android*:android-ndk-r28c/build/tools/make_standalone_toolchain.py --api $API_LEVEL --install-dir $PWD/toolchain --stl=libc++ $config_opts", "*:*-android*:mkdir -p $STAGING_DIR$PREFIX/native", "*:*-android*:mv $PWD/toolchain/* $STAGING_DIR$PREFIX/native", @@ -36,8 +47,15 @@ "*:aarch64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/aarch64-linux-android/*.a $STAGING_DIR$PREFIX/lib", "*:x86_64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/x86_64-linux-android/*.a $STAGING_DIR$PREFIX/lib", "*:armv7a-linux-androideabi:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/arm-linux-androideabi/*.a $STAGING_DIR$PREFIX/lib", - "*:*-android*:mkdir -p $STAGING_DIR$PREFIX/usr/lib", - "*:*-android*:ln -s ../lib $STAGING_DIR$PREFIX/usr/lib" + "*:aarch64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/aarch64-linux-android/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", + "*:x86_64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/x86_64-linux-android/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", + "*:armv7a-linux-androideabi:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/arm-linux-androideabi/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", + "*:*-android:cp -r $STAGING_DIR$PREFIX/native/sysroot/usr/include $STAGING_DIR$PREFIX/include", + "*:aarch64-linux-android:cp -r $STAGING_DIR$PREFIX/native/sysroot/usr/include/aarch64-linux-android/* $STAGING_DIR$PREFIX/include", + "*:x86_64-linux-android:cp -r $STAGING_DIR$PREFIX/native/sysroot/usr/include/x86_64-linux-android/* $STAGING_DIR$PREFIX/include", + "*:armv7a-linux-androideabi:cp -r $STAGING_DIR$PREFIX/native/sysroot/usr/include/arm-linux-androideabi/* $STAGING_DIR$PREFIX/include", + "*:*-android:rm -rf $STAGING_DIR$PREFIX/native/python3", + "*:*-android*:python3 $PATCH_DIR/android_ndk/symlink_same.py $STAGING_DIR$PREFIX" ] } } \ No newline at end of file diff --git a/packages/native/bootstrap/strip-nondeterminism.json b/packages/native/bootstrap/strip-nondeterminism.json deleted file mode 100644 index d076072..0000000 --- a/packages/native/bootstrap/strip-nondeterminism.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "package": "native/bootstrap/strip-nondeterminism", - "version": "0.0.0", - "type": "native", - "build": { - "env": [], - "steps": [] - } -} \ No newline at end of file diff --git a/packages/tor.json b/packages/tor.json index bbb1311..5b2f248 100644 --- a/packages/tor.json +++ b/packages/tor.json @@ -11,6 +11,10 @@ ], "dependencies": [ "*:*:native/_", + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/m4", + "*:*:native/perl", "*:*:libevent", "*:*:openssl", "*:*:xz", diff --git a/packages/torch.json b/packages/torch.json index 125f473..bd97ea5 100644 --- a/packages/torch.json +++ b/packages/torch.json @@ -11,6 +11,8 @@ ], "dependencies": [ "*:*:native/_", + "*:*:native/cmake", + "*:*:native/cmake-toolchain", "*:*:libevent", "*:*:openssl", "*:*:tor", diff --git a/packages/xz.json b/packages/xz.json index 4508618..3ffccc8 100644 --- a/packages/xz.json +++ b/packages/xz.json @@ -11,6 +11,10 @@ ], "dependencies": [ "*:*:native/_", + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/gettext", + "*:*:native/libtool", "*:*:native/m4", "*:*:native/make", "*:*:native/perl" diff --git a/patches/android_ndk/symlink_same.py b/patches/android_ndk/symlink_same.py new file mode 100644 index 0000000..2a7e822 --- /dev/null +++ b/patches/android_ndk/symlink_same.py @@ -0,0 +1,63 @@ +#!/usr/bin/env python3 +import os +import hashlib + +def sha256sum(path, blocksize=65536): + """Return SHA-256 checksum of a file.""" + h = hashlib.sha256() + with open(path, "rb") as f: + while True: + data = f.read(blocksize) + if not data: + break + h.update(data) + return h.hexdigest() + +def dedupe(root): + seen = {} + + for dirpath, dirnames, filenames in os.walk(root): + for name in filenames: + path = os.path.join(dirpath, name) + + if os.path.islink(path): + continue + + if not os.path.isfile(path): + continue + + try: + checksum = sha256sum(path) + except Exception as e: + print(f"Cannot read {path}: {e}") + continue + + if checksum not in seen: + seen[checksum] = path + print(f"[KEEP] {path}") + else: + original = seen[checksum] + print(f"[DUPLICATE] {path} → symlink to {original}") + + try: + os.remove(path) + except Exception as e: + print(f"Cannot delete {path}: {e}") + continue + + try: + os.symlink(os.path.relpath(original, os.path.dirname(path)), path) + except Exception as e: + print(f"Cannot create symlink at {path}: {e}") + +def main(): + import sys + if len(sys.argv) != 2: + print(f"Usage: {sys.argv[0]} ") + sys.exit(1) + + root = sys.argv[1] + dedupe(root) + +if __name__ == "__main__": + main() diff --git a/utils/extract.go b/utils/extract.go index 80c7154..4d40232 100644 --- a/utils/extract.go +++ b/utils/extract.go @@ -124,8 +124,8 @@ func extractTar(tr *tar.Reader, destPath, commonPrefix string) error { } dirMode |= 0700 - if err := os.MkdirAll(target, dirMode); err != nil { - panic(err) + if err := os.MkdirAll(target, dirMode); err != nil && !os.IsExist(err) { + log.Fatalln(err) return err } @@ -133,8 +133,8 @@ func extractTar(tr *tar.Reader, destPath, commonPrefix string) error { log.Printf("Warning: Failed to set timestamps for directory %s: %v", target, err) } case tar.TypeReg: - if err := os.MkdirAll(filepath.Dir(target), 0755); err != nil { - panic(err) + if err := os.MkdirAll(filepath.Dir(target), 0755); err != nil && !os.IsExist(err) { + log.Fatalln(err) return err } @@ -426,19 +426,8 @@ func CreateTarGz(sourcePath, archivePath string) error { } if info.Mode().IsRegular() { - var filePath string - var cleanup func() - - if strings.HasSuffix(strings.ToLower(relPath), ".a") { - // TODO: repack static libraries - filePath = path - cleanup = func() {} - } else { - filePath = path - cleanup = func() {} - } + var filePath = path - defer cleanup() if err := writeFileToTar(tw, header, filePath); err != nil { return err } From 8b6dcb6e815403bdae14f98975dc10a018d6bd84 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 18 Nov 2025 23:29:33 +0100 Subject: [PATCH 031/200] fix: android sysroot fix: add triplet to env unless override by ENV --- host/main.go | 2 +- packages/native/android_ndk.json | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/host/main.go b/host/main.go index c2bcc4b..cef2857 100644 --- a/host/main.go +++ b/host/main.go @@ -48,7 +48,7 @@ func (h *Host) GetEnvPath() string { return os.Getenv("SIMPLYBS_ENV_DIR") } dir := DataDirRoot() - return filepath.Join(dir, "env") + return filepath.Join(dir, "env", h.Triplet) } var SupportedHosts = map[string]*Host{ diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index ad47992..d6bf8e1 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -50,10 +50,6 @@ "*:aarch64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/aarch64-linux-android/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", "*:x86_64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/x86_64-linux-android/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", "*:armv7a-linux-androideabi:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/arm-linux-androideabi/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", - "*:*-android:cp -r $STAGING_DIR$PREFIX/native/sysroot/usr/include $STAGING_DIR$PREFIX/include", - "*:aarch64-linux-android:cp -r $STAGING_DIR$PREFIX/native/sysroot/usr/include/aarch64-linux-android/* $STAGING_DIR$PREFIX/include", - "*:x86_64-linux-android:cp -r $STAGING_DIR$PREFIX/native/sysroot/usr/include/x86_64-linux-android/* $STAGING_DIR$PREFIX/include", - "*:armv7a-linux-androideabi:cp -r $STAGING_DIR$PREFIX/native/sysroot/usr/include/arm-linux-androideabi/* $STAGING_DIR$PREFIX/include", "*:*-android:rm -rf $STAGING_DIR$PREFIX/native/python3", "*:*-android*:python3 $PATCH_DIR/android_ndk/symlink_same.py $STAGING_DIR$PREFIX" ] From c91e7fe2a5346871d099e3de67b339203c58a4b2 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 18 Nov 2025 23:31:33 +0100 Subject: [PATCH 032/200] fix: only include osx-cross on darwin targets --- packages/native/_.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/native/_.json b/packages/native/_.json index 4dabdb4..e0bb670 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -4,8 +4,8 @@ "type": "native", "dependencies": [ "*:*-android*:native/android_ndk", - "*:*-apple-*:native/cctools-port", - "*:*-apple-*:native/osx-cross", + "*:*-apple-darwin:native/cctools-port", + "*:*-apple-darwin:native/osx-cross", "*:*-linux-*:native/bash", "*:*-linux-gnu:native/ct-tools", "*:*-linux-musl:native/ct-tools", @@ -17,8 +17,9 @@ "*:none:B_=All packages included as dependencies (other than bootstrap packages) are copied over to staging dir" ], "steps": [ - "*:*:mkdir -p $STAGING_DIR$PREFIX ", - "*:*:cp -a $PREFIX/* $STAGING_DIR$PREFIX", + "*:*:mkdir -p $STAGING_DIR$PREFIX", + "*:*:rm -rf $STAGING_DIR$PREFIX", + "*:*:cp -a $PREFIX $STAGING_DIR$PREFIX", "*:*:rm -rf $STAGING_DIR$PREFIX/native/bootstrap" ] } From 75b88cbdf1675b4170001e0b103d7ce294ae6109 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 20 Nov 2025 06:54:36 -0300 Subject: [PATCH 033/200] macos fixes --- host/main.go | 12 ++++++------ packages/native/_.json | 1 + 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/host/main.go b/host/main.go index cef2857..4178d7f 100644 --- a/host/main.go +++ b/host/main.go @@ -60,14 +60,14 @@ var SupportedHosts = map[string]*Host{ "*:*:OSX_MIN_VERSION=10.16", "*:*:LD64_VERSION=609", "*:*:CC_target=arm64-apple-darwin", - "*:*:CC=aarch64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", - "*:*:CXX=aarch64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:*:CC=aarch64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:*:CXX=aarch64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", "*:*:CFLAGS=", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", "*:*:RANLIB=llvm-ranlib", "*:*:AR=llvm-ar", "*:*:LIBTOOL=llvm-libtool-darwin", - "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX26.0.sdk", + "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX26.sdk", "*:*:LDFLAGS=-lc++ -lc++abi", }, }, @@ -79,14 +79,14 @@ var SupportedHosts = map[string]*Host{ "*:*:OSX_MIN_VERSION=10.16", "*:*:LD64_VERSION=609", "*:*:CC_target=x86_64-apple-darwin", - "*:*:CC=x86_64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", - "*:*:CXX=x86_64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.0.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:*:CC=x86_64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:*:CXX=x86_64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", "*:*:CFLAGS=", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", "*:*:RANLIB=llvm-ranlib", "*:*:AR=llvm-ar", "*:*:LIBTOOL=llvm-libtool-darwin", - "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX26.0.sdk", + "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX26.sdk", "*:*:LDFLAGS=-lc++ -lc++abi", }, }, diff --git a/packages/native/_.json b/packages/native/_.json index e0bb670..20c426a 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -5,6 +5,7 @@ "dependencies": [ "*:*-android*:native/android_ndk", "*:*-apple-darwin:native/cctools-port", + "*:*-apple-darwin:native/libtapi", "*:*-apple-darwin:native/osx-cross", "*:*-linux-*:native/bash", "*:*-linux-gnu:native/ct-tools", From 2714fc694c2618b0689a823911f2f3698638e2ce Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 20 Nov 2025 11:47:56 -0300 Subject: [PATCH 034/200] update python dependency in libxml2 --- packages/native/libxml2.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/native/libxml2.json b/packages/native/libxml2.json index 4f55ad8..31180a1 100644 --- a/packages/native/libxml2.json +++ b/packages/native/libxml2.json @@ -12,7 +12,7 @@ "dependencies": [ "*:*:native/make", "*:*:native/pkgconf", - "*:*:native/python@3.11" + "*:*:native/python@3.14" ], "build": { "env": [], From a2752affbf1df6a024d40aac0a80cbe05eeebda5 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 20 Nov 2025 13:46:37 -0300 Subject: [PATCH 035/200] fix: missing imports, python3 symlinks --- packages/native/libpsl.json | 3 ++- packages/native/python@3.11.json | 3 ++- packages/native/python@3.14.json | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/native/libpsl.json b/packages/native/libpsl.json index 9e88e70..d1d5a3b 100644 --- a/packages/native/libpsl.json +++ b/packages/native/libpsl.json @@ -10,7 +10,8 @@ } ], "dependencies": [ - "*:*:native/make" + "*:*:native/make", + "*:*:native/unistring" ], "build": { "env": [], diff --git a/packages/native/python@3.11.json b/packages/native/python@3.11.json index a046529..8ec2f04 100644 --- a/packages/native/python@3.11.json +++ b/packages/native/python@3.11.json @@ -21,7 +21,8 @@ "*:*:sed -i.bak 's/^#\\(zlib[[:space:]]\\+zlibmodule\\.c[[:space:]]\\+-lz\\)/\\1/' Modules/Setup", "*:*:./configure --disable-test-modules --prefix=$PREFIX/native", "*:*:make -j$NUM_CORES", - "*:*:make DESTDIR=$STAGING_DIR install" + "*:*:make DESTDIR=$STAGING_DIR install", + "*:*:cd $STAGING_DIR$PREFIX/native/bin && ln -s python3 python" ] } } \ No newline at end of file diff --git a/packages/native/python@3.14.json b/packages/native/python@3.14.json index 74a35ed..2ee595e 100644 --- a/packages/native/python@3.14.json +++ b/packages/native/python@3.14.json @@ -22,7 +22,8 @@ "*:*:sed -i.bak 's/^#\\(zlib[[:space:]]\\+zlibmodule\\.c[[:space:]]\\+-lz\\)/\\1/' Modules/Setup", "*:*:./configure --disable-test-modules --prefix=$PREFIX/native", "*:*:make -j$NUM_CORES", - "*:*:make DESTDIR=$STAGING_DIR install" + "*:*:make DESTDIR=$STAGING_DIR install", + "*:*:cd $STAGING_DIR$PREFIX/native/bin && ln -s python3 python" ] } } \ No newline at end of file From 4be941acdf7fe85ca011f6ab356fb211b5aeb69c Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 20 Nov 2025 17:38:20 -0300 Subject: [PATCH 036/200] fix sdk checksum --- packages/native/apple-sdk-macos.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/native/apple-sdk-macos.json b/packages/native/apple-sdk-macos.json index 680620b..22eed7d 100644 --- a/packages/native/apple-sdk-macos.json +++ b/packages/native/apple-sdk-macos.json @@ -11,7 +11,7 @@ { "kind": "blob", "path": "Xcode_26.1.xip", - "sha256": "9881c457068c86ac91e94cca2d7116dfd01cb7179c22b0863b63c7f3bb7e7695", + "sha256": "434287e1e4c6ecbd6d5ea07e9f408fffcad2b82916b0a3fdfefa7fe60db4de93", "url": "https://download.developer.apple.com/Developer_Tools/Xcode_26.1/XcodeXIP_26.1_Universal.xip" } ], From 36d70ab157af1ed51b60a01c771b9f92794afd78 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 21 Nov 2025 04:41:33 -0300 Subject: [PATCH 037/200] fix -list --- pack/main.go | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/pack/main.go b/pack/main.go index 0085117..b0f132e 100644 --- a/pack/main.go +++ b/pack/main.go @@ -74,7 +74,6 @@ func FindPackage(name string) (*Package, error) { func PrintPackage(pkgName string, host string) { depsByLevel := collectDependenciesByLevel(pkgName, host) - userPkg, err := FindPackage(pkgName) crash.Handle(err) fmt.Printf("0: %s (version: %s)\n", pkgName, userPkg.Version) @@ -85,7 +84,7 @@ func PrintPackage(pkgName string, host string) { continue } - for i := 0; i < len(deps); i++ { + for i := range deps { for j := i + 1; j < len(deps); j++ { if deps[i] > deps[j] { deps[i], deps[j] = deps[j], deps[i] @@ -309,10 +308,8 @@ func collectDependenciesByLevel(pkgName string, host string) [][]string { currentLevel := []string{pkgName} visited[pkgName] = true levels = append(levels, []string{}) - for len(currentLevel) > 0 { nextLevel := []string{} - for _, currentPkg := range currentLevel { pkg, err := FindPackage(currentPkg) if err != nil { @@ -320,7 +317,6 @@ func collectDependenciesByLevel(pkgName string, host string) [][]string { } for _, dep := range pkg.Dependencies { - var actualDep string is := ifstring.ParseIfString(dep) if !is.HostGlob().Match(host) { continue @@ -329,9 +325,9 @@ func collectDependenciesByLevel(pkgName string, host string) [][]string { continue } - if !visited[actualDep] { - visited[actualDep] = true - nextLevel = append(nextLevel, actualDep) + if !visited[is.Content] { + visited[is.Content] = true + nextLevel = append(nextLevel, is.Content) } } } From cf90b2860f1946b2c13cf4f44226fb3bb67c1569 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 21 Nov 2025 06:46:04 -0300 Subject: [PATCH 038/200] add libxar --- packages/native/_.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/native/_.json b/packages/native/_.json index 20c426a..d5ef33b 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -7,6 +7,7 @@ "*:*-apple-darwin:native/cctools-port", "*:*-apple-darwin:native/libtapi", "*:*-apple-darwin:native/osx-cross", + "*:*-apple-darwin:native/xar", "*:*-linux-*:native/bash", "*:*-linux-gnu:native/ct-tools", "*:*-linux-musl:native/ct-tools", From cc4d9fc32c7ec929fddd62ec7fa1f80a03020f6f Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 24 Nov 2025 06:23:58 -0300 Subject: [PATCH 039/200] chore: update p7zip 16 to 7zip 25 --- packages/native/7zip.json | 33 +++++++++++++++++++ packages/native/android_ndk.json | 6 ++-- packages/native/dart-bin@3.4.0-247.0.dev.json | 4 +-- packages/native/p7zip.json | 26 --------------- sources.json | 5 +++ 5 files changed, 43 insertions(+), 31 deletions(-) create mode 100644 packages/native/7zip.json delete mode 100644 packages/native/p7zip.json diff --git a/packages/native/7zip.json b/packages/native/7zip.json new file mode 100644 index 0000000..75431f9 --- /dev/null +++ b/packages/native/7zip.json @@ -0,0 +1,33 @@ +{ + "package": "native/7zip", + "version": "25.01", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "5e96a8279489832924056b1fa82f29d5837c9469", + "url": "https://github.com/ip7z/7zip.git" + } + ], + "dependencies": [ + "*:*:native/make", + "*:*:native/sed" + ], + "build": { + "env": [], + "steps": [ + "*:*:sed -i.bak 's/-Werror //g' CPP/7zip/7zip_gcc.mak", + "darwin_arm64:*:cd CPP/7zip/Bundles/Format7zF && make -f ../../cmpl_mac_arm64.mak -j$NUM_CORES", + "darwin_amd64:*:cd CPP/7zip/Bundles/Format7zF && make -f ../../cmpl_mac_x64.mak -j$NUM_CORES", + "linux_amd64:*:cd CPP/7zip/Bundles/Format7zF && make -f ../../cmpl_clang_x64.mak -j$NUM_CORES", + "darwin_arm64:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_mac_arm64.mak -j$NUM_CORES", + "darwin_amd64:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_mac_x64.mak -j$NUM_CORES", + "linux_amd64:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_clang_x64.mak -j$NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/lib", + "*:*:cp ./CPP/7zip/Bundles/Alone2/b/*/7zz $STAGING_DIR$PREFIX/native/bin/7zz", + "darwin_*:*:cp ./CPP/7zip/Bundles/Format7zF/b/*/7z.so $STAGING_DIR$PREFIX/native/bin/7z.dylib", + "linux_:*:cp ./CPP/7zip/Bundles/Format7zF/b/*/7z.so $STAGING_DIR$PREFIX/native/bin/7z.so" + ] + } +} \ No newline at end of file diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index d6bf8e1..68071c9 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -17,7 +17,7 @@ } ], "dependencies": [ - "*:*:native/p7zip", + "*:*:native/7zip", "*:*:native/python@3.11" ], "build": { @@ -33,8 +33,8 @@ "*:*-android*:API_LEVEL=21" ], "steps": [ - "darwin_*:*-android*:7z x $PWD/android-ndk-r28c-darwin.zip", - "linux_*:*-android*:7z x $PWD/android-ndk-r28c-linux.zip", + "darwin_*:*-android*:7zz x $PWD/android-ndk-r28c-darwin.zip", + "linux_*:*-android*:7zz x $PWD/android-ndk-r28c-linux.zip", "*:*-android*:android-ndk-r28c/build/tools/make_standalone_toolchain.py --api $API_LEVEL --install-dir $PWD/toolchain --stl=libc++ $config_opts", "*:*-android*:mkdir -p $STAGING_DIR$PREFIX/native", "*:*-android*:mv $PWD/toolchain/* $STAGING_DIR$PREFIX/native", diff --git a/packages/native/dart-bin@3.4.0-247.0.dev.json b/packages/native/dart-bin@3.4.0-247.0.dev.json index b9313d3..76850a9 100644 --- a/packages/native/dart-bin@3.4.0-247.0.dev.json +++ b/packages/native/dart-bin@3.4.0-247.0.dev.json @@ -23,13 +23,13 @@ } ], "dependencies": [ - "*:*:native/p7zip" + "*:*:native/7zip" ], "build": { "env": [], "steps": [ "*:*:mkdir build", - "*:*:cd build && 7z x ../dartsdk-${BUILDER_GOOS}_${BUILDER_GOARCH}.zip", + "*:*:cd build && 7zz x ../dartsdk-${BUILDER_GOOS}_${BUILDER_GOARCH}.zip", "*:*:mkdir -p $STAGING_DIR$PREFIX/native", "*:*:mv build/dart-sdk/lib $STAGING_DIR$PREFIX/native", "*:*:mv build/dart-sdk/include $STAGING_DIR$PREFIX/native", diff --git a/packages/native/p7zip.json b/packages/native/p7zip.json deleted file mode 100644 index f8a2ebc..0000000 --- a/packages/native/p7zip.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "package": "native/p7zip", - "version": "1_36_1", - "type": "native", - "download": [ - { - "kind": "tar.bz2", - "sha256": "5eb20ac0e2944f6cb9c2d51dd6c4518941c185347d4089ea89087ffdd6e2341f", - "url": "http://downloads.sourceforge.net/project/p7zip/p7zip/16.02/p7zip_16.02_src_all.tar.bz2" - } - ], - "dependencies": [ - "*:*:native/make" - ], - "build": { - "env": [], - "steps": [ - "*:*:if [ $(uname) = 'Darwin' ]; then cp makefile.macosx_llvm_64bits makefile.machine; else true; fi", - "*:*:if [ $(uname) = 'Linux' ]; then cp makefile.linux_any_cpu makefile.machine; else true; fi", - "*:*:sed -i.bak 's/switch(errorCode)/switch(static_cast(errorCode))/' ./CPP/Windows/ErrorMsg.cpp", - "*:*:make -j$NUM_CORES 7za", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp bin/7za $STAGING_DIR$PREFIX/native/bin/7z" - ] - } -} \ No newline at end of file diff --git a/sources.json b/sources.json index 6e6e35b..fa4048a 100644 --- a/sources.json +++ b/sources.json @@ -863,6 +863,11 @@ "55ea777e8d567e5e86ffac917c28815ac54cc341" ] }, + "https://github.com/ip7z/7zip.git": { + "refs": [ + "5e96a8279489832924056b1fa82f29d5837c9469" + ] + }, "https://github.com/libffi/libffi.git": { "refs": [ "e2eda0cf72a0598b44278cc91860ea402273fa29" From b844a600639686e94a9077316c6a32aaa2cd6cbf Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 24 Nov 2025 06:40:43 -0300 Subject: [PATCH 040/200] fix: ndk --- packages/native/7zip.json | 4 ++-- packages/native/android_ndk.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/native/7zip.json b/packages/native/7zip.json index 75431f9..61b3b26 100644 --- a/packages/native/7zip.json +++ b/packages/native/7zip.json @@ -19,10 +19,10 @@ "*:*:sed -i.bak 's/-Werror //g' CPP/7zip/7zip_gcc.mak", "darwin_arm64:*:cd CPP/7zip/Bundles/Format7zF && make -f ../../cmpl_mac_arm64.mak -j$NUM_CORES", "darwin_amd64:*:cd CPP/7zip/Bundles/Format7zF && make -f ../../cmpl_mac_x64.mak -j$NUM_CORES", - "linux_amd64:*:cd CPP/7zip/Bundles/Format7zF && make -f ../../cmpl_clang_x64.mak -j$NUM_CORES", + "linux_*:*:cd CPP/7zip/Bundles/Format7zF && make -f ../../cmpl_clang.mak -j$NUM_CORES", "darwin_arm64:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_mac_arm64.mak -j$NUM_CORES", "darwin_amd64:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_mac_x64.mak -j$NUM_CORES", - "linux_amd64:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_clang_x64.mak -j$NUM_CORES", + "linux_*:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_clang.mak -j$NUM_CORES", "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", "*:*:mkdir -p $STAGING_DIR$PREFIX/native/lib", "*:*:cp ./CPP/7zip/Bundles/Alone2/b/*/7zz $STAGING_DIR$PREFIX/native/bin/7zz", diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index 68071c9..b2c3b0c 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -33,8 +33,8 @@ "*:*-android*:API_LEVEL=21" ], "steps": [ - "darwin_*:*-android*:7zz x $PWD/android-ndk-r28c-darwin.zip", - "linux_*:*-android*:7zz x $PWD/android-ndk-r28c-linux.zip", + "darwin_*:*-android*:7zz x $PWD/android-ndk-r28c-darwin.zip -snld || true", + "linux_*:*-android*:7zz x $PWD/android-ndk-r28c-linux.zip -snld || true", "*:*-android*:android-ndk-r28c/build/tools/make_standalone_toolchain.py --api $API_LEVEL --install-dir $PWD/toolchain --stl=libc++ $config_opts", "*:*-android*:mkdir -p $STAGING_DIR$PREFIX/native", "*:*-android*:mv $PWD/toolchain/* $STAGING_DIR$PREFIX/native", From 5a503ac308ff741c1c17057ce30ca79f288f55d7 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 24 Nov 2025 08:28:33 -0300 Subject: [PATCH 041/200] fix: libevent c mode --- packages/libevent.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/libevent.json b/packages/libevent.json index 70b03d3..22c4ba7 100644 --- a/packages/libevent.json +++ b/packages/libevent.json @@ -30,7 +30,9 @@ "*:*:config_opts=$config_opts --enable-static", "*:*:config_opts=$config_opts --enable-gcc-hardening", "*:*:config_opts=$config_opts --with-pic", + "*:*:config_opts=$config_opts --disable-samples", "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*-linux-android:CFLAGS=$CFLAGS -xc", "*:*:CXXFLAGS=$CXXFLAGS -fPIC" ], "steps": [ From 797572a54d72729f83555d319864d28876abf5d1 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 24 Nov 2025 09:21:51 -0300 Subject: [PATCH 042/200] fix: symlinking clang to clang++ by accident --- packages/libevent.json | 1 - packages/native/android_ndk.json | 1 + packages/native/apple-sdk-macos.json | 68 ++++++++++++++-------------- packages/native/openssl.json | 43 +++++++++++++++--- 4 files changed, 71 insertions(+), 42 deletions(-) diff --git a/packages/libevent.json b/packages/libevent.json index 22c4ba7..ba3c0cc 100644 --- a/packages/libevent.json +++ b/packages/libevent.json @@ -32,7 +32,6 @@ "*:*:config_opts=$config_opts --with-pic", "*:*:config_opts=$config_opts --disable-samples", "*:*:CFLAGS=$CFLAGS -fPIC", - "*:*-linux-android:CFLAGS=$CFLAGS -xc", "*:*:CXXFLAGS=$CXXFLAGS -fPIC" ], "steps": [ diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index b2c3b0c..130b32b 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -51,6 +51,7 @@ "*:x86_64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/x86_64-linux-android/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", "*:armv7a-linux-androideabi:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/arm-linux-androideabi/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", "*:*-android:rm -rf $STAGING_DIR$PREFIX/native/python3", + "*:*:cd $STAGING_DIR$PREFIX/native/bin && rm clang190++ && ln -s clang190 clang190++", "*:*-android*:python3 $PATCH_DIR/android_ndk/symlink_same.py $STAGING_DIR$PREFIX" ] } diff --git a/packages/native/apple-sdk-macos.json b/packages/native/apple-sdk-macos.json index 22eed7d..68b028a 100644 --- a/packages/native/apple-sdk-macos.json +++ b/packages/native/apple-sdk-macos.json @@ -16,45 +16,45 @@ } ], "dependencies": [ - "*:*-apple-darwin:native/bzip2", - "*:*-apple-darwin:native/cctools-port", - "*:*-apple-darwin:native/cmake", - "*:*-apple-darwin:native/cpio", - "*:*-apple-darwin:native/gettext", - "*:*-apple-darwin:native/git", - "*:*-apple-darwin:native/libtapi", - "*:*-apple-darwin:native/libxml2", - "*:*-apple-darwin:native/make", - "*:*-apple-darwin:native/openssl", - "*:*-apple-darwin:native/patch", - "*:*-apple-darwin:native/pbzx", - "*:*-apple-darwin:native/perl", - "*:*-apple-darwin:native/pkgconf", - "*:*-apple-darwin:native/python@3.11", - "*:*-apple-darwin:native/xar", - "*:*-apple-darwin:native/xz" + "*:*-apple-*:native/bzip2", + "*:*-apple-*:native/cctools-port", + "*:*-apple-*:native/cmake", + "*:*-apple-*:native/cpio", + "*:*-apple-*:native/gettext", + "*:*-apple-*:native/git", + "*:*-apple-*:native/libtapi", + "*:*-apple-*:native/libxml2", + "*:*-apple-*:native/make", + "*:*-apple-*:native/openssl", + "*:*-apple-*:native/patch", + "*:*-apple-*:native/pbzx", + "*:*-apple-*:native/perl", + "*:*-apple-*:native/pkgconf", + "*:*-apple-*:native/python@3.11", + "*:*-apple-*:native/xar", + "*:*-apple-*:native/xz" ], "build": { "env": [ - "*:*-apple-darwin:JOBS=$NUM_CORES", - "*:*-apple-darwin:PORTABLE=1", - "*:*-apple-darwin:TARGET_DIR=$PREFIX/native/", - "*:aarch64-apple-darwin:ENABLE_ARCHS=arm64", - "*:x86_64-apple-darwin:ENABLE_ARCHS=x86_64", - "*:*-apple-darwin:UNATTENDED=1", - "*:*-apple-darwin:SDK_VERSION=26.0", - "*:*-apple-darwin:COMPRESSLEVEL=9 -e" + "*:*-apple-*:JOBS=$NUM_CORES", + "*:*-apple-*:PORTABLE=1", + "*:*-apple-*:TARGET_DIR=$PREFIX/native/", + "*:aarch64-apple-*:ENABLE_ARCHS=arm64", + "*:x86_64-apple-*:ENABLE_ARCHS=x86_64", + "*:*-apple-*:UNATTENDED=1", + "*:*-apple-*:SDK_VERSION=26.0", + "*:*-apple-*:COMPRESSLEVEL=9 -e" ], "steps": [ - "*:*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", - "*:*-apple-darwin:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", - "*:*-apple-darwin:sed -i.bak 's/build_xar/echo build_xar/g' tools/gen_sdk_package_pbzx.sh", - "*:*-apple-darwin:sed -i.bak 's/build_pbxz/echo build_pbxz/g' tools/gen_sdk_package_pbzx.sh", - "*:*-apple-darwin:sed -i.bak 's/git /echo git /g' tools/tools.sh", - "*:*-apple-darwin:sed -i.bak '8,11d' tools/gen_sdk_package_pbzx.sh", - "*:*-apple-darwin:./tools/gen_sdk_package_pbzx.sh ./Xcode_*.xip", - "*:*-apple-darwin:mkdir -p $STAGING_DIR$PREFIX/native/share", - "*:*-apple-darwin:mv MacOSX26.sdk.tar.xz $STAGING_DIR$PREFIX/native/share" + "*:*-apple-*:sed -i.bak 's/$TARGET_DIR\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", + "*:*-apple-*:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", + "*:*-apple-*:sed -i.bak 's/build_xar/echo build_xar/g' tools/gen_sdk_package_pbzx.sh", + "*:*-apple-*:sed -i.bak 's/build_pbxz/echo build_pbxz/g' tools/gen_sdk_package_pbzx.sh", + "*:*-apple-*:sed -i.bak 's/git /echo git /g' tools/tools.sh", + "*:*-apple-*:sed -i.bak '8,11d' tools/gen_sdk_package_pbzx.sh", + "*:*-apple-*:./tools/gen_sdk_package_pbzx.sh ./Xcode_*.xip", + "*:*-apple-*:mkdir -p $STAGING_DIR$PREFIX/native/share", + "*:*-apple-*:mv MacOSX26.sdk.tar.xz $STAGING_DIR$PREFIX/native/share" ] } } \ No newline at end of file diff --git a/packages/native/openssl.json b/packages/native/openssl.json index 9d6c072..545f09b 100644 --- a/packages/native/openssl.json +++ b/packages/native/openssl.json @@ -1,7 +1,7 @@ { - "package": "native/openssl", + "package": "openssl", "version": "3.5.1", - "type": "native", + "type": "host", "download": [ { "kind": "tar.gz", @@ -10,21 +10,50 @@ } ], "dependencies": [ - "*:*:native/make", - "*:*:native/perl", - "*:*:native/xz" + "*:*:native/_" ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native --openssldir=$PREFIX/native/etc/openssl --libdir=$PREFIX/native/lib", + "*:*-android*:ANDROID_NDK_ROOT=$PREFIX/native", + "*:*-android*:CC=clang", + "*:*-android*:AR=ar", + "*:*-android*:RANLIB=ranlib", + "*:*:config_opts=--prefix=$PREFIX --openssldir=$PREFIX/etc/openssl --libdir=$PREFIX/lib", + "*:*:config_opts=$config_opts no-capieng", + "*:*:config_opts=$config_opts no-dso", + "*:*:config_opts=$config_opts no-dtls1", "*:*:config_opts=$config_opts no-ec_nistp_64_gcc_128", + "*:*:config_opts=$config_opts no-gost", + "*:*:config_opts=$config_opts no-md2", + "*:*:config_opts=$config_opts no-rc5", + "*:*:config_opts=$config_opts no-rdrand", + "*:*:config_opts=$config_opts no-rfc3779", + "*:*:config_opts=$config_opts no-sctp", "*:*:config_opts=$config_opts no-shared", + "*:*:config_opts=$config_opts no-ssl-trace", + "*:*:config_opts=$config_opts no-ssl3", "*:*:config_opts=$config_opts no-tests", - "*:*:config_opts=$config_opts no-unit-test" + "*:*:config_opts=$config_opts no-unit-test", + "*:*:config_opts=$config_opts no-weak-ssl-ciphers", + "*:*:config_opts=$config_opts no-zlib", + "*:*:config_opts=$config_opts no-zlib-dynamic", + "*:*linux*:config_opts=$config_opts -fPIC -Wa,--noexecstack", + "*:x86_64-linux*:config_opts=$config_opts linux-x86_64", + "*:i686-linux*:config_opts=$config_opts linux-generic32", + "*:arm-linux*:config_opts=$config_opts linux-generic32", + "*:aarch64-linux-gnu:config_opts=$config_opts linux-generic64", + "*:armv7a-linux-androideabi:config_opts=$config_opts --static android-arm", + "*:aarch64-linux-android:config_opts=$config_opts --static android-arm64", + "*:aarch64-apple-darwin:config_opts=$config_opts darwin64-arm64-cc", + "*:aarch64-apple-ios*:config_opts=$config_opts darwin64-arm64-cc", + "*:x86_64-apple-darwin:config_opts=$config_opts darwin64-x86_64-cc", + "*:x86_64-w64-mingw32:config_opts=$config_opts mingw64", + "*:i686-w64-mingw32:config_opts=$config_opts mingw" ], "steps": [ "*:*:sed -i.bak 's/#define DATE \"built on: \\$date\"/#define DATE \"built on: Jan 1 1970 00:00:01\"/' util/mkbuildinf.pl", "*:*:sed -i.bak 's|crypto ssl apps util tools fuzz providers doc|crypto ssl util tools providers|' build.info", + "*:armv7a-linux-androideabi:sed -i.bak s/arm-linux-androideabi/armv7a-linux-androideabi/g ./Configurations/15-android.conf", "*:*:./Configure $config_opts", "*:*:make -j$NUM_CORES build_libs", "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install_sw" From b9796dfaf485599f2ae2013c89a320fe7f9f179b Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 27 Nov 2025 20:04:43 +0100 Subject: [PATCH 043/200] update to forked osx-cross --- host/main.go | 46 +++++---- pack/build.go | 51 ++++++++++ pack/info.go | 5 - packages/boost.json | 6 +- packages/native/_.json | 8 +- .../{apple-sdk-macos.json => apple-sdk.json} | 35 ++++--- packages/native/gettext.json | 2 + packages/native/openssl.json | 30 ++---- packages/native/osx-cross.json | 99 ++++++++++--------- packages/native/python@3.11.json | 14 ++- packages/native/unistring.json | 3 +- packages/native/unzip.json | 1 + packages/openssl.json | 4 +- sources.json | 5 + 14 files changed, 193 insertions(+), 116 deletions(-) rename packages/native/{apple-sdk-macos.json => apple-sdk.json} (59%) diff --git a/host/main.go b/host/main.go index 4178d7f..6b471c5 100644 --- a/host/main.go +++ b/host/main.go @@ -55,19 +55,20 @@ var SupportedHosts = map[string]*Host{ "aarch64-apple-darwin": { Triplet: "aarch64-apple-darwin", Env: []string{ - "*:*:HOST=aarch64-apple-darwin25", - "*:*:TARGET=aarch64-apple-darwin25", + "*:*:HOST=aarch64-apple-darwin", + "*:*:TARGET=aarch64-apple-darwin", + "*:*:SDK_VERSION=26.1", + "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX$SDK_VERSION.sdk", "*:*:OSX_MIN_VERSION=10.16", "*:*:LD64_VERSION=609", "*:*:CC_target=arm64-apple-darwin", - "*:*:CC=aarch64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", - "*:*:CXX=aarch64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:*:CC=aarch64-apple-darwin-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:*:CXX=aarch64-apple-darwin-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CFLAGS=", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", "*:*:RANLIB=llvm-ranlib", "*:*:AR=llvm-ar", "*:*:LIBTOOL=llvm-libtool-darwin", - "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX26.sdk", "*:*:LDFLAGS=-lc++ -lc++abi", }, }, @@ -76,17 +77,18 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=x86_64-apple-darwin", "*:*:TARGET=x86_64-apple-darwin", + "*:*:SDK_VERSION=26.1", + "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX$SDK_VERSION.sdk", "*:*:OSX_MIN_VERSION=10.16", "*:*:LD64_VERSION=609", "*:*:CC_target=x86_64-apple-darwin", - "*:*:CC=x86_64-apple-darwin25-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", - "*:*:CXX=x86_64-apple-darwin25-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $PREFIX/native/SDK/MacOSX26.sdk -I$PREFIX/native/SDK/MacOSX26.0.sdk/usr/include -I$PREFIX/include", + "*:*:CC=x86_64-apple-darwin-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:*:CXX=x86_64-apple-darwin-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CFLAGS=", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", "*:*:RANLIB=llvm-ranlib", "*:*:AR=llvm-ar", "*:*:LIBTOOL=llvm-libtool-darwin", - "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX26.sdk", "*:*:LDFLAGS=-lc++ -lc++abi", }, }, @@ -97,15 +99,17 @@ var SupportedHosts = map[string]*Host{ "*:*:TARGET=aarch64-apple-ios", "*:*:IOS_MIN_VERSION=12", "*:*:LD64_VERSION=609", + "*:*:SDK_VERSION=26.1", + "*:*:SDK_PATH=$PREFIX/native/SDK/iPhoneOS$SDK_VERSION.sdk", "*:*:CC_target=aarch64-apple-ios", - "*:*:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + "/usr/include -I$PREFIX/include", - "*:*:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphoneos --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:*:CC=clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:*:CXX=clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CFLAGS=", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:*:RANLIB=" + shellOutput("xcrun -f ranlib"), - "*:*:AR=" + shellOutput("xcrun -f ar"), - "*:*:LIBTOOL=" + shellOutput("xcrun -f libtool"), - "*:*:SDK_PATH=" + shellOutput("xcrun --sdk iphoneos --show-sdk-path"), + "*:*:RANLIB=ranlib", + "*:*:AR=ar", + "*:*:LIBTOOL=libtool", + "*:*:LDFLAGS=-lc++ -lc++abi", }, }, "aarch64-apple-ios-simulator": { @@ -115,15 +119,17 @@ var SupportedHosts = map[string]*Host{ "*:*:TARGET=aarch64-apple-ios-simulator", "*:*:IOS_MIN_VERSION=12", "*:*:LD64_VERSION=609", + "*:*:SDK_VERSION=26.1", + "*:*:SDK_PATH=$PREFIX/native/SDK/iPhoneSimulator$SDK_VERSION.sdk", "*:*:CC_target=aarch64-apple-ios-simulator", - "*:*:CC=" + shellOutput("xcrun -f clang") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + "/usr/include -I$PREFIX/include", - "*:*:CXX=" + shellOutput("xcrun -f clang++") + " -target $CC_target -mios-version-min=$IOS_MIN_VERSION --sysroot " + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + " -I" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path") + "/usr/include -I$PREFIX/include", + "*:*:CC=clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:*:CXX=clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CFLAGS=", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:*:RANLIB=" + shellOutput("xcrun -f ranlib"), - "*:*:AR=" + shellOutput("xcrun -f ar"), - "*:*:LIBTOOL=" + shellOutput("xcrun -f libtool"), - "*:*:SDK_PATH=" + shellOutput("xcrun --sdk iphonesimulator --show-sdk-path"), + "*:*:RANLIB=ranlib", + "*:*:AR=ar", + "*:*:LIBTOOL=libtool", + "*:*:LDFLAGS=-lc++ -lc++abi", }, }, // "x86_64-linux-musl": { diff --git a/pack/build.go b/pack/build.go index ec83cb6..8bac02c 100644 --- a/pack/build.go +++ b/pack/build.go @@ -5,9 +5,12 @@ import ( "log" "os" "os/exec" + "path" "path/filepath" + "strings" "github.com/mrcyjanek/simplybs/builder" + "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/utils" "github.com/mrcyjanek/simplybs/utils/ifstring" @@ -168,6 +171,8 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { cmd.Env = append(cmd.Env, k+"="+v) } + writeDotEnv(path.Join(buildPath, "_source_me"), cmd.Env) + log.Printf("Executing step: %s", step) cmd.Stderr = os.Stderr cmd.Stdout = os.Stdout @@ -193,6 +198,51 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { log.Printf("Package built successfully: %s", builtArchivePath) } +func writeDotEnv(path string, env []string) { + f, err := os.Create(path) + if err != nil { + crash.Handle(err) + } + defer f.Close() + + var b strings.Builder + b.WriteString("#!/bin/bash\n") + + for _, kv := range env { + if kv == "" { + continue + } + + parts := strings.SplitN(kv, "=", 2) + key := parts[0] + val := "" + if len(parts) > 1 { + val = parts[1] + } + + escapedVal := shellEscape(val) + + b.WriteString(fmt.Sprintf("export %s=%s\n", key, escapedVal)) + } + + f.WriteString(b.String()) +} +func shellEscape(value string) string { + if value == "" { + return "\"\"" + } + + replacer := strings.NewReplacer( + `\`, `\\`, + `"`, `\"`, + "`", "\\`", + `$`, `\$`, + ) + escaped := replacer.Replace(value) + + return "\"" + escaped + "\"" +} + func (p *Package) StartShell(h *host.Host) { log.Printf("Starting shell for package: %s for host %s", p.Package, h.Triplet) @@ -267,6 +317,7 @@ func (p *Package) StartShell(h *host.Host) { for k, v := range env { cmd.Env = append(cmd.Env, k+"="+v) } + writeDotEnv(path.Join(buildPath, "_source_me"), cmd.Env) err := cmd.Run() if err != nil { diff --git a/pack/info.go b/pack/info.go index 4ba39bf..154693d 100644 --- a/pack/info.go +++ b/pack/info.go @@ -151,9 +151,7 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { if p.Type == "native" { env = utils.AppendEnv(env, []string{ "*:*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/native/include", - "*:*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/native/usr/include", "*:*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/native/lib", - "*:*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/native/usr/lib", "*:*:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:" + h.GetEnvPath() + "/native/lib", "*:*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/native/lib/pkgconfig", "*:*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/native/lib", @@ -167,12 +165,9 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { "*:*:CXXFLAGS=$CXXFLAGS -I" + h.GetEnvPath() + "/include", "*:*:CXXFLAGS=$CXXFLAGS -I" + h.GetEnvPath() + "/usr/include", "*:*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/lib", - "*:*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/usr/lib", "*:*:LD_LIBRARY_PATH=" + h.GetEnvPath() + "/native/lib", "*:*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/lib/pkgconfig", - "*:*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/usr/lib/pkgconfig", "*:*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/lib", - "*:*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/usr/lib", }, h) } if p.Type != "native" { diff --git a/packages/boost.json b/packages/boost.json index 7f2ff78..0d2a315 100644 --- a/packages/boost.json +++ b/packages/boost.json @@ -47,9 +47,9 @@ "*:*-ios-simulator*:toolset2=~iphone", "*:*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log", "*:*:CXXFLAGS=-fPIC -std=c++17", - "*:*-darwin*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", - "*:*-ios*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", - "*:*-ios-simulator*:LDFLAGS=-L$PREFIX/lib -L$SDK_PATH/usr/lib", + "*:*-darwin*:LDFLAGS=-L$PREFIX/lib", + "*:*-ios*:LDFLAGS=-L$PREFIX/lib", + "*:*-ios-simulator*:LDFLAGS=-L$PREFIX/lib", "*:*-apple-*:AR=libtool", "*:*-linux-*:ARFLAGS=rcs" ], diff --git a/packages/native/_.json b/packages/native/_.json index d5ef33b..6c83fcf 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -4,10 +4,10 @@ "type": "native", "dependencies": [ "*:*-android*:native/android_ndk", - "*:*-apple-darwin:native/cctools-port", - "*:*-apple-darwin:native/libtapi", - "*:*-apple-darwin:native/osx-cross", - "*:*-apple-darwin:native/xar", + "*:*-apple-*:native/cctools-port", + "*:*-apple-*:native/libtapi", + "*:*-apple-*:native/osx-cross", + "*:*-apple-*:native/xar", "*:*-linux-*:native/bash", "*:*-linux-gnu:native/ct-tools", "*:*-linux-musl:native/ct-tools", diff --git a/packages/native/apple-sdk-macos.json b/packages/native/apple-sdk.json similarity index 59% rename from packages/native/apple-sdk-macos.json rename to packages/native/apple-sdk.json index 68b028a..842d9a0 100644 --- a/packages/native/apple-sdk-macos.json +++ b/packages/native/apple-sdk.json @@ -1,12 +1,12 @@ { - "package": "native/apple-sdk-macos", + "package": "native/apple-sdk", "version": "master@f873f53", "type": "native", "download": [ { - "kind": "tar.gz", - "sha256": "7ff7657a435e709dfc81e79965bf2d0544d71bea26432991db8837b797290c28", - "url": "https://github.com/tpoechtrager/osxcross/archive/f873f534c6cdb0776e457af8c7513da1e02abe59.tar.gz" + "kind": "git", + "sha256": "a3e46b026467f0e37ff3c79a015f6c9331190180", + "url": "https://github.com/MrCyjaneK/osxcross.git" }, { "kind": "blob", @@ -36,25 +36,34 @@ ], "build": { "env": [ + "*:*-apple-*:SKIP_BUILD_XAR=yes", + "*:*-apple-*:SKIP_GIT=yes", + "*:*-apple-*:SKIP_BUILD_PBXZ=yes", "*:*-apple-*:JOBS=$NUM_CORES", "*:*-apple-*:PORTABLE=1", "*:*-apple-*:TARGET_DIR=$PREFIX/native/", "*:aarch64-apple-*:ENABLE_ARCHS=arm64", "*:x86_64-apple-*:ENABLE_ARCHS=x86_64", "*:*-apple-*:UNATTENDED=1", - "*:*-apple-*:SDK_VERSION=26.0", - "*:*-apple-*:COMPRESSLEVEL=9 -e" + "*:*-apple-*:SDK_VERSION=26.1", + "*:*-apple-*:COMPRESSLEVEL=9 -e", + "*:*-apple-darwin:SDKNAME=MacOSX", + "*:*-apple-ios:SDKNAME=iPhoneOS", + "*:*-apple-ios-simulator:SDKNAME=iPhoneSimulator", + "*:*-apple-watchos:SDKNAME=WatchOS", + "*:*-apple-watchos-simulator:SDKNAME=WatchSimulator", + "*:*-apple-tvos:SDKNAME=AppleTVOS", + "*:*-apple-tvos-simulator:SDKNAME=AppleTVSimulator", + "*:*-apple-xros:SDKNAME=XROS", + "*:*-apple-xros-simulator:SDKNAME=XRSimulator", + "*:*-apple-driverkit:SDKNAME=DriverKit" ], "steps": [ "*:*-apple-*:sed -i.bak 's/$TARGET_DIR\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", "*:*-apple-*:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", - "*:*-apple-*:sed -i.bak 's/build_xar/echo build_xar/g' tools/gen_sdk_package_pbzx.sh", - "*:*-apple-*:sed -i.bak 's/build_pbxz/echo build_pbxz/g' tools/gen_sdk_package_pbzx.sh", - "*:*-apple-*:sed -i.bak 's/git /echo git /g' tools/tools.sh", - "*:*-apple-*:sed -i.bak '8,11d' tools/gen_sdk_package_pbzx.sh", - "*:*-apple-*:./tools/gen_sdk_package_pbzx.sh ./Xcode_*.xip", - "*:*-apple-*:mkdir -p $STAGING_DIR$PREFIX/native/share", - "*:*-apple-*:mv MacOSX26.sdk.tar.xz $STAGING_DIR$PREFIX/native/share" + "*:*-apple-*:bash -x ./tools/gen_sdk_package_pbzx.sh ./Xcode_*.xip", + "*:*-apple-*:mkdir -p $STAGING_DIR$PREFIX/native/share/xcode-sdk", + "*:*-apple-*:mv *.sdk.tar.xz $STAGING_DIR$PREFIX/native/share/xcode-sdk" ] } } \ No newline at end of file diff --git a/packages/native/gettext.json b/packages/native/gettext.json index bda94d7..794ee37 100644 --- a/packages/native/gettext.json +++ b/packages/native/gettext.json @@ -20,6 +20,8 @@ "*:*:config_opts=--prefix=$PREFIX/native", "*:*:config_opts=$config_opts --with-libiconv-prefix=$PREFIX/native", "*:*:config_opts=$config_opts --with-libunistring-prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --enable-static", "*:*:LIBS=-lunistring" ], "steps": [ diff --git a/packages/native/openssl.json b/packages/native/openssl.json index 545f09b..990c586 100644 --- a/packages/native/openssl.json +++ b/packages/native/openssl.json @@ -1,7 +1,7 @@ { "package": "openssl", "version": "3.5.1", - "type": "host", + "type": "native", "download": [ { "kind": "tar.gz", @@ -10,15 +10,12 @@ } ], "dependencies": [ - "*:*:native/_" + "*:*:native/make", + "*:*:native/perl" ], "build": { "env": [ - "*:*-android*:ANDROID_NDK_ROOT=$PREFIX/native", - "*:*-android*:CC=clang", - "*:*-android*:AR=ar", - "*:*-android*:RANLIB=ranlib", - "*:*:config_opts=--prefix=$PREFIX --openssldir=$PREFIX/etc/openssl --libdir=$PREFIX/lib", + "*:*:config_opts=--prefix=$PREFIX/native --openssldir=$PREFIX/native/etc/openssl --libdir=$PREFIX/native/lib", "*:*:config_opts=$config_opts no-capieng", "*:*:config_opts=$config_opts no-dso", "*:*:config_opts=$config_opts no-dtls1", @@ -37,23 +34,16 @@ "*:*:config_opts=$config_opts no-weak-ssl-ciphers", "*:*:config_opts=$config_opts no-zlib", "*:*:config_opts=$config_opts no-zlib-dynamic", - "*:*linux*:config_opts=$config_opts -fPIC -Wa,--noexecstack", - "*:x86_64-linux*:config_opts=$config_opts linux-x86_64", - "*:i686-linux*:config_opts=$config_opts linux-generic32", - "*:arm-linux*:config_opts=$config_opts linux-generic32", - "*:aarch64-linux-gnu:config_opts=$config_opts linux-generic64", - "*:armv7a-linux-androideabi:config_opts=$config_opts --static android-arm", - "*:aarch64-linux-android:config_opts=$config_opts --static android-arm64", - "*:aarch64-apple-darwin:config_opts=$config_opts darwin64-arm64-cc", - "*:aarch64-apple-ios*:config_opts=$config_opts darwin64-arm64-cc", - "*:x86_64-apple-darwin:config_opts=$config_opts darwin64-x86_64-cc", - "*:x86_64-w64-mingw32:config_opts=$config_opts mingw64", - "*:i686-w64-mingw32:config_opts=$config_opts mingw" + "linux_*:*:config_opts=$config_opts -fPIC -Wa,--noexecstack", + "linux_amd64:*:config_opts=$config_opts linux-x86_64", + "linux_arm64:*:config_opts=$config_opts linux-generic64", + "darwin_arm64:*:config_opts=$config_opts darwin64-arm64-cc", + "darwin_amd64:*:config_opts=$config_opts darwin64-x86_64-cc", + "windows_amd64:*:config_opts=$config_opts mingw64" ], "steps": [ "*:*:sed -i.bak 's/#define DATE \"built on: \\$date\"/#define DATE \"built on: Jan 1 1970 00:00:01\"/' util/mkbuildinf.pl", "*:*:sed -i.bak 's|crypto ssl apps util tools fuzz providers doc|crypto ssl util tools providers|' build.info", - "*:armv7a-linux-androideabi:sed -i.bak s/arm-linux-androideabi/armv7a-linux-androideabi/g ./Configurations/15-android.conf", "*:*:./Configure $config_opts", "*:*:make -j$NUM_CORES build_libs", "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install_sw" diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index bfa39e3..48c16fe 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -4,9 +4,9 @@ "type": "native", "download": [ { - "kind": "tar.gz", - "sha256": "7ff7657a435e709dfc81e79965bf2d0544d71bea26432991db8837b797290c28", - "url": "https://github.com/tpoechtrager/osxcross/archive/f873f534c6cdb0776e457af8c7513da1e02abe59.tar.gz" + "kind": "git", + "sha256": "a3e46b026467f0e37ff3c79a015f6c9331190180", + "url": "https://github.com/MrCyjaneK/osxcross.git" }, { "kind": "blob", @@ -22,54 +22,61 @@ } ], "dependencies": [ - "*:*-apple-darwin:native/apple-sdk-macos", - "*:*-apple-darwin:native/bzip2", - "*:*-apple-darwin:native/cctools-port", - "*:*-apple-darwin:native/cmake", - "*:*-apple-darwin:native/cpio", - "*:*-apple-darwin:native/gettext", - "*:*-apple-darwin:native/git", - "*:*-apple-darwin:native/libtapi", - "*:*-apple-darwin:native/libxml2", - "*:*-apple-darwin:native/make", - "*:*-apple-darwin:native/openssl", - "*:*-apple-darwin:native/patch", - "*:*-apple-darwin:native/pbzx", - "*:*-apple-darwin:native/perl", - "*:*-apple-darwin:native/pkgconf", - "*:*-apple-darwin:native/python@3.11", - "*:*-apple-darwin:native/xar", - "*:*-apple-darwin:native/xz" + "*:*-apple-*:native/apple-sdk", + "*:*-apple-*:native/bzip2", + "*:*-apple-*:native/cctools-port", + "*:*-apple-*:native/cmake", + "*:*-apple-*:native/cpio", + "*:*-apple-*:native/gettext", + "*:*-apple-*:native/git", + "*:*-apple-*:native/libtapi", + "*:*-apple-*:native/libxml2", + "*:*-apple-*:native/make", + "*:*-apple-*:native/openssl", + "*:*-apple-*:native/patch", + "*:*-apple-*:native/pbzx", + "*:*-apple-*:native/perl", + "*:*-apple-*:native/pkgconf", + "*:*-apple-*:native/python@3.11", + "*:*-apple-*:native/xar", + "*:*-apple-*:native/xz" ], "build": { "env": [ - "*:*-apple-darwin:JOBS=$NUM_CORES", - "*:*-apple-darwin:PORTABLE=1", - "*:*-apple-darwin:TARGET_DIR=$PREFIX/native/", - "*:aarch64-apple-darwin:ENABLE_ARCHS=arm64", - "*:x86_64-apple-darwin:ENABLE_ARCHS=x86_64", - "*:*-apple-darwin:UNATTENDED=1", - "*:*-apple-darwin:SDK_VERSION=26", - "*:*-apple-darwin:COMPRESSLEVEL=0" + "*:*-apple-*:SKIP_BUILD_XAR=yes", + "*:*-apple-*:SKIP_BUILD_P7ZIP=yes", + "*:*-apple-*:SKIP_BUILD_PBXZ=yes", + "*:*-apple-*:SKIP_GIT=yes", + "*:*-apple-*:SKIP_DOWNLOAD=yes", + "*:*-apple-*:ENABLE_FULL_BOOTSTRAP=yes", + "*:*-apple-*:SKIP_TAPI_BUILD=yes", + "*:*-apple-*:SKIP_CCTOOLS_BUILD=yes", + "*:*-apple-*:JOBS=$NUM_CORES", + "*:*-apple-*:PORTABLE=1", + "*:*-apple-*:TARGET_DIR=$PREFIX/native/", + "*:aarch64-apple-*:ENABLE_ARCHS=arm64", + "*:x86_64-apple-*:ENABLE_ARCHS=x86_64", + "*:*-apple-*:UNATTENDED=1", + "*:*-apple-*:SDK_VERSION=26.1", + "*:*-apple-*:COMPRESSLEVEL=0", + "*:*-apple-darwin:SDKNAME=MacOSX", + "*:*-apple-ios:SDKNAME=iPhoneOS", + "*:*-apple-ios-simulator:SDKNAME=iPhoneSimulator", + "*:*-apple-watchos:SDKNAME=WatchOS", + "*:*-apple-watchos-simulator:SDKNAME=WatchSimulator", + "*:*-apple-tvos:SDKNAME=AppleTVOS", + "*:*-apple-tvos-simulator:SDKNAME=AppleTVSimulator", + "*:*-apple-xros:SDKNAME=XROS", + "*:*-apple-xros-simulator:SDKNAME=XRSimulator", + "*:*-apple-driverkit:SDKNAME=DriverKit" ], "steps": [ - "*:*-apple-darwin:sed -i.bak 's/build_xar/echo build_xar/g' build.sh", - "*:*-apple-darwin:sed -i.bak 's/git clone/echo git clone/g' build.sh", - "*:*-apple-darwin:sed -i.bak 's/--with-libtapi=$TARGET_DIR/--with-libtapi=$PREFIX\\/native/g' build.sh", - "*:*-apple-darwin:sed -i.bak 's/--with-libxar=$TARGET_DIR/--with-libxar=$PREFIX\\/native/g' build.sh", - "*:*-apple-darwin:sed -i.bak 's/git /echo git /g' tools/tools.sh", - "*:*-apple-darwin:sed -i.bak 's/download $CLANG_LLVM_PKG/echo download $CLANG_LLVM_PKG/g' build_clang.sh", - "*:*-apple-darwin:sed -i.bak 's/rm -f $(basename $CLANG_LLVM_PKG)/echo rm -f $(basename $CLANG_LLVM_PKG)/g' build_clang.sh", - "*:*-apple-darwin:sed -i.bak 's/get_sources/echo get_sources/g' build.sh", - "*:*-apple-darwin:sed -i.bak 's/-DCMAKE_BUILD_TYPE=Release/& -DCLANG_ENABLE_BOOTSTRAP=ON/g' build.sh", - "*:*-apple-darwin:sed -i.bak '135,145d' build.sh", - "*:*-apple-darwin:sed -i.bak '145,160d' build.sh", - "*:*-apple-darwin:mv $PREFIX/native/share/MacOSX26.* tarballs", - "*:none:yes | INSTALLPREFIX=$PREFIX/native ./build_clang.sh", - "*:none:cd build/clang-20.1.8/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", - "*:*-apple-darwin:yes | INSTALLPREFIX=$PREFIX/native ./build_apple_clang.sh", - "*:*-apple-darwin:cd build/clang-21/build_stage2 && make install DESTDIR=$STAGING_DIR && make install", - "*:*-apple-darwin:TARGET_DIR=$STAGING_DIR$PREFIX/native ./build.sh" + "*:*-apple-*:sed -i.bak 's/--with-libtapi=$TARGET_DIR/--with-libtapi=$PREFIX\\/native/g' build.sh", + "*:*-apple-*:sed -i.bak 's/--with-libxar=$TARGET_DIR/--with-libxar=$PREFIX\\/native/g' build.sh", + "*:*-apple-*:mv $PREFIX/native/share/xcode-sdk/*${SDK_VERSION}* tarballs", + "*:*-apple-*:yes | INSTALLPREFIX=$PREFIX/native ./build_apple_clang.sh", + "*:*-apple-*:cd build/clang-21/build_stage3 && make install DESTDIR=$STAGING_DIR && make install", + "*:*-apple-*:OCDEBUG=1 TARGET_DIR=$STAGING_DIR$PREFIX/native bash -x ./build.sh" ] } } \ No newline at end of file diff --git a/packages/native/python@3.11.json b/packages/native/python@3.11.json index 8ec2f04..93fcb12 100644 --- a/packages/native/python@3.11.json +++ b/packages/native/python@3.11.json @@ -10,16 +10,24 @@ } ], "dependencies": [ + "*:*:native/gettext", + "*:*:native/libiconv", "*:*:native/make", "*:*:native/patch", + "*:*:native/pkgconf", "*:*:native/zlib" ], "build": { - "env": [], + "env": [ + "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --disable-test-modules", + "*:*:config_opts=$config_opts --enable-static", + "*:*:config_opts=$config_opts --enable-optimizations", + "*:*:LIBS=-lintl -liconv" + ], "steps": [ "*:*:sed -i.bak '/^#ifndef DATE/i\\\n\\/* Deterministic date and time. *\\/\\\n#define DATE \"Jan 1 1970\"\\\n#define TIME \"00:00:01\"\\\n' Modules/getbuildinfo.c", - "*:*:sed -i.bak 's/^#\\(zlib[[:space:]]\\+zlibmodule\\.c[[:space:]]\\+-lz\\)/\\1/' Modules/Setup", - "*:*:./configure --disable-test-modules --prefix=$PREFIX/native", + "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", "*:*:cd $STAGING_DIR$PREFIX/native/bin && ln -s python3 python" diff --git a/packages/native/unistring.json b/packages/native/unistring.json index 5b8e7bc..5d06d4e 100644 --- a/packages/native/unistring.json +++ b/packages/native/unistring.json @@ -16,7 +16,8 @@ "build": { "env": [ "*:*:config_opts=--prefix=$PREFIX/native", - "*:*:config_opts=$config_opts --disable-shared --enable-static" + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --enable-static" ], "steps": [ "*:*:./configure $config_opts", diff --git a/packages/native/unzip.json b/packages/native/unzip.json index d68d8e5..f57c576 100644 --- a/packages/native/unzip.json +++ b/packages/native/unzip.json @@ -16,6 +16,7 @@ ], "build": { "steps": [ + "*:*:sed -i '1i #include ' ./unzpriv.h", "*:*:make -f unix/Makefile D_USE_BZ2=-DUSE_BZIP2 L_BZ2=-lbz2 CC=\"$CC\" LF2=\"$LDFLAGS\" CF=\"$CFLAGS $CPPFLAGS -I.\" unzips", "*:*:make -f unix/Makefile install prefix=$STAGING_DIR$PREFIX/native", "*:*:cd $STAGING_DIR$PREFIX/native/bin && rm -f zipinfo && ln unzip zipinfo" diff --git a/packages/openssl.json b/packages/openssl.json index 545f09b..388a788 100644 --- a/packages/openssl.json +++ b/packages/openssl.json @@ -10,7 +10,9 @@ } ], "dependencies": [ - "*:*:native/_" + "*:*:native/_", + "*:*:native/make", + "*:*:native/perl" ], "build": { "env": [ diff --git a/sources.json b/sources.json index fa4048a..2357db4 100644 --- a/sources.json +++ b/sources.json @@ -848,6 +848,11 @@ "c4e7b0e5f437121d1b9c05bc5c43dac75371d799" ] }, + "https://github.com/MrCyjaneK/osxcross.git": { + "refs": [ + "a3e46b026467f0e37ff3c79a015f6c9331190180" + ] + }, "https://github.com/MrCyjaneK/torch.git": { "refs": [ "b7a785a538a31ab0cf5baf62d936e3e41182e0b7" From 1d205c4765d8de3ecf974b20214845d5fbb91680 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 30 Nov 2025 22:31:58 +0100 Subject: [PATCH 044/200] minor fixes --- go.mod | 1 - go.sum | 2 -- host/main.go | 6 +++--- packages/native/apple-sdk.json | 4 ++-- packages/native/osx-cross.json | 22 ++++++---------------- packages/native/python@3.11.json | 2 +- 6 files changed, 12 insertions(+), 25 deletions(-) diff --git a/go.mod b/go.mod index 00fa836..9b70cbc 100644 --- a/go.mod +++ b/go.mod @@ -4,6 +4,5 @@ go 1.24.5 require ( github.com/gobwas/glob v0.2.3 - github.com/ryanuber/go-glob v1.0.0 github.com/ulikunitz/xz v0.5.15 ) diff --git a/go.sum b/go.sum index 909ff52..42101c9 100644 --- a/go.sum +++ b/go.sum @@ -1,6 +1,4 @@ github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y= github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= -github.com/ryanuber/go-glob v1.0.0 h1:iQh3xXAumdQ+4Ufa5b25cRpC5TYKlno6hsv6Cb3pkBk= -github.com/ryanuber/go-glob v1.0.0/go.mod h1:807d1WSdnB0XRJzKNil9Om6lcp/3a0v4qIHxIXzX/Yc= github.com/ulikunitz/xz v0.5.15 h1:9DNdB5s+SgV3bQ2ApL10xRc35ck0DuIX/isZvIk+ubY= github.com/ulikunitz/xz v0.5.15/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= diff --git a/host/main.go b/host/main.go index 6b471c5..d6e38d6 100644 --- a/host/main.go +++ b/host/main.go @@ -89,7 +89,7 @@ var SupportedHosts = map[string]*Host{ "*:*:RANLIB=llvm-ranlib", "*:*:AR=llvm-ar", "*:*:LIBTOOL=llvm-libtool-darwin", - "*:*:LDFLAGS=-lc++ -lc++abi", + "*:*:LDFLAGS=-lc++ -lc++abi -fuse-ld=$PREFIX/native/bin/ld", }, }, "aarch64-apple-ios": { @@ -102,8 +102,8 @@ var SupportedHosts = map[string]*Host{ "*:*:SDK_VERSION=26.1", "*:*:SDK_PATH=$PREFIX/native/SDK/iPhoneOS$SDK_VERSION.sdk", "*:*:CC_target=aarch64-apple-ios", - "*:*:CC=clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXX=clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:*:CC=aarch64-apple-ios-clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:*:CXX=aarch64-apple-ios-clang++ -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CFLAGS=", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", "*:*:RANLIB=ranlib", diff --git a/packages/native/apple-sdk.json b/packages/native/apple-sdk.json index 842d9a0..447e62e 100644 --- a/packages/native/apple-sdk.json +++ b/packages/native/apple-sdk.json @@ -1,11 +1,11 @@ { "package": "native/apple-sdk", - "version": "master@f873f53", + "version": "master", "type": "native", "download": [ { "kind": "git", - "sha256": "a3e46b026467f0e37ff3c79a015f6c9331190180", + "sha256": "c2b3d1e9ed841474b04671f06b0f005d03dede82", "url": "https://github.com/MrCyjaneK/osxcross.git" }, { diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 48c16fe..1eae90e 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -1,11 +1,11 @@ { "package": "native/osx-cross", - "version": "master@f873f53", + "version": "master", "type": "native", "download": [ { "kind": "git", - "sha256": "a3e46b026467f0e37ff3c79a015f6c9331190180", + "sha256": "c2b3d1e9ed841474b04671f06b0f005d03dede82", "url": "https://github.com/MrCyjaneK/osxcross.git" }, { @@ -54,21 +54,9 @@ "*:*-apple-*:JOBS=$NUM_CORES", "*:*-apple-*:PORTABLE=1", "*:*-apple-*:TARGET_DIR=$PREFIX/native/", - "*:aarch64-apple-*:ENABLE_ARCHS=arm64", - "*:x86_64-apple-*:ENABLE_ARCHS=x86_64", "*:*-apple-*:UNATTENDED=1", "*:*-apple-*:SDK_VERSION=26.1", - "*:*-apple-*:COMPRESSLEVEL=0", - "*:*-apple-darwin:SDKNAME=MacOSX", - "*:*-apple-ios:SDKNAME=iPhoneOS", - "*:*-apple-ios-simulator:SDKNAME=iPhoneSimulator", - "*:*-apple-watchos:SDKNAME=WatchOS", - "*:*-apple-watchos-simulator:SDKNAME=WatchSimulator", - "*:*-apple-tvos:SDKNAME=AppleTVOS", - "*:*-apple-tvos-simulator:SDKNAME=AppleTVSimulator", - "*:*-apple-xros:SDKNAME=XROS", - "*:*-apple-xros-simulator:SDKNAME=XRSimulator", - "*:*-apple-driverkit:SDKNAME=DriverKit" + "*:*-apple-*:COMPRESSLEVEL=9 -e" ], "steps": [ "*:*-apple-*:sed -i.bak 's/--with-libtapi=$TARGET_DIR/--with-libtapi=$PREFIX\\/native/g' build.sh", @@ -76,7 +64,9 @@ "*:*-apple-*:mv $PREFIX/native/share/xcode-sdk/*${SDK_VERSION}* tarballs", "*:*-apple-*:yes | INSTALLPREFIX=$PREFIX/native ./build_apple_clang.sh", "*:*-apple-*:cd build/clang-21/build_stage3 && make install DESTDIR=$STAGING_DIR && make install", - "*:*-apple-*:OCDEBUG=1 TARGET_DIR=$STAGING_DIR$PREFIX/native bash -x ./build.sh" + "*:*-apple-*:sed -i.bak 's/## Compiler test ##/exit 0/g' build.sh", + "*:*-apple-*:OCDEBUG=1 TARGET_DIR=$STAGING_DIR$PREFIX/native bash -x ./build.sh", + "*:*-apple-*:cd $STAGING_DIR$PREFIX/native/bin && ln -s arm64-apple-darwin25-ld ld" ] } } \ No newline at end of file diff --git a/packages/native/python@3.11.json b/packages/native/python@3.11.json index 93fcb12..a2e5bb8 100644 --- a/packages/native/python@3.11.json +++ b/packages/native/python@3.11.json @@ -23,7 +23,7 @@ "*:*:config_opts=$config_opts --disable-test-modules", "*:*:config_opts=$config_opts --enable-static", "*:*:config_opts=$config_opts --enable-optimizations", - "*:*:LIBS=-lintl -liconv" + "darwin_*:*:LIBS=-lintl -liconv" ], "steps": [ "*:*:sed -i.bak '/^#ifndef DATE/i\\\n\\/* Deterministic date and time. *\\/\\\n#define DATE \"Jan 1 1970\"\\\n#define TIME \"00:00:01\"\\\n' Modules/getbuildinfo.c", From d3cc5af79fe7b52c4c0091fc622ab03cf97b9ae1 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 30 Nov 2025 22:36:26 +0100 Subject: [PATCH 045/200] fix --- packages/native/apple-sdk.json | 2 +- packages/native/osx-cross.json | 2 +- sources.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/native/apple-sdk.json b/packages/native/apple-sdk.json index 447e62e..6723637 100644 --- a/packages/native/apple-sdk.json +++ b/packages/native/apple-sdk.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "c2b3d1e9ed841474b04671f06b0f005d03dede82", + "sha256": "504e4711cee972ff751ab20ac8c259bbcaa22bb3", "url": "https://github.com/MrCyjaneK/osxcross.git" }, { diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 1eae90e..5703452 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "c2b3d1e9ed841474b04671f06b0f005d03dede82", + "sha256": "504e4711cee972ff751ab20ac8c259bbcaa22bb3", "url": "https://github.com/MrCyjaneK/osxcross.git" }, { diff --git a/sources.json b/sources.json index 2357db4..a2bffb3 100644 --- a/sources.json +++ b/sources.json @@ -850,7 +850,7 @@ }, "https://github.com/MrCyjaneK/osxcross.git": { "refs": [ - "a3e46b026467f0e37ff3c79a015f6c9331190180" + "504e4711cee972ff751ab20ac8c259bbcaa22bb3" ] }, "https://github.com/MrCyjaneK/torch.git": { From 1f77eb6b7dd1ca9d838957a5b25b7951b0d54169 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 30 Nov 2025 22:47:00 +0100 Subject: [PATCH 046/200] reduce ram usage --- packages/native/apple-sdk.json | 2 +- packages/native/osx-cross.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/native/apple-sdk.json b/packages/native/apple-sdk.json index 6723637..18cdec5 100644 --- a/packages/native/apple-sdk.json +++ b/packages/native/apple-sdk.json @@ -46,7 +46,7 @@ "*:x86_64-apple-*:ENABLE_ARCHS=x86_64", "*:*-apple-*:UNATTENDED=1", "*:*-apple-*:SDK_VERSION=26.1", - "*:*-apple-*:COMPRESSLEVEL=9 -e", + "*:*-apple-*:COMPRESSLEVEL=6", "*:*-apple-darwin:SDKNAME=MacOSX", "*:*-apple-ios:SDKNAME=iPhoneOS", "*:*-apple-ios-simulator:SDKNAME=iPhoneSimulator", diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 5703452..2e6daf0 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -56,7 +56,7 @@ "*:*-apple-*:TARGET_DIR=$PREFIX/native/", "*:*-apple-*:UNATTENDED=1", "*:*-apple-*:SDK_VERSION=26.1", - "*:*-apple-*:COMPRESSLEVEL=9 -e" + "*:*-apple-*:COMPRESSLEVEL=6" ], "steps": [ "*:*-apple-*:sed -i.bak 's/--with-libtapi=$TARGET_DIR/--with-libtapi=$PREFIX\\/native/g' build.sh", From 109b0a35f458520c99a5b8c6203ebbfe0b6b0f80 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 30 Nov 2025 22:58:06 +0100 Subject: [PATCH 047/200] bump --- packages/native/apple-sdk.json | 2 +- packages/native/osx-cross.json | 2 +- sources.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/native/apple-sdk.json b/packages/native/apple-sdk.json index 18cdec5..730f860 100644 --- a/packages/native/apple-sdk.json +++ b/packages/native/apple-sdk.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "504e4711cee972ff751ab20ac8c259bbcaa22bb3", + "sha256": "643bea6efcfd54769eaaa645dae5037dd7148c94", "url": "https://github.com/MrCyjaneK/osxcross.git" }, { diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 2e6daf0..cb0fae2 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "504e4711cee972ff751ab20ac8c259bbcaa22bb3", + "sha256": "643bea6efcfd54769eaaa645dae5037dd7148c94", "url": "https://github.com/MrCyjaneK/osxcross.git" }, { diff --git a/sources.json b/sources.json index a2bffb3..0eedd39 100644 --- a/sources.json +++ b/sources.json @@ -850,7 +850,7 @@ }, "https://github.com/MrCyjaneK/osxcross.git": { "refs": [ - "504e4711cee972ff751ab20ac8c259bbcaa22bb3" + "643bea6efcfd54769eaaa645dae5037dd7148c94" ] }, "https://github.com/MrCyjaneK/torch.git": { From f844112448c1f6d59abc6a01956ba96871815135 Mon Sep 17 00:00:00 2001 From: Parallels Date: Mon, 1 Dec 2025 23:55:25 +0100 Subject: [PATCH 048/200] ios cross builds from linux --- host/main.go | 3 ++- packages/native/_.json | 1 + packages/native/cctools-port.json | 39 +++++++++++++++++-------------- packages/native/libtapi.json | 1 - packages/native/osx-cross.json | 4 +--- 5 files changed, 25 insertions(+), 23 deletions(-) diff --git a/host/main.go b/host/main.go index d6e38d6..9fed982 100644 --- a/host/main.go +++ b/host/main.go @@ -89,7 +89,7 @@ var SupportedHosts = map[string]*Host{ "*:*:RANLIB=llvm-ranlib", "*:*:AR=llvm-ar", "*:*:LIBTOOL=llvm-libtool-darwin", - "*:*:LDFLAGS=-lc++ -lc++abi -fuse-ld=$PREFIX/native/bin/ld", + "*:*:LDFLAGS=-lc++ -lc++abi", }, }, "aarch64-apple-ios": { @@ -110,6 +110,7 @@ var SupportedHosts = map[string]*Host{ "*:*:AR=ar", "*:*:LIBTOOL=libtool", "*:*:LDFLAGS=-lc++ -lc++abi", + "*:*:LD=lld", }, }, "aarch64-apple-ios-simulator": { diff --git a/packages/native/_.json b/packages/native/_.json index 6c83fcf..c67897a 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -6,6 +6,7 @@ "*:*-android*:native/android_ndk", "*:*-apple-*:native/cctools-port", "*:*-apple-*:native/libtapi", + "*:*-apple-*:native/libxml2", "*:*-apple-*:native/osx-cross", "*:*-apple-*:native/xar", "*:*-linux-*:native/bash", diff --git a/packages/native/cctools-port.json b/packages/native/cctools-port.json index 6c6f9b5..7389fb9 100644 --- a/packages/native/cctools-port.json +++ b/packages/native/cctools-port.json @@ -10,29 +10,32 @@ } ], "dependencies": [ - "*:*-apple-darwin:native/bzip2", - "*:*-apple-darwin:native/libtapi", - "*:*-apple-darwin:native/make", - "*:*-apple-darwin:native/openssl", - "*:*-apple-darwin:native/xar", - "*:*-apple-darwin:native/xz", - "*:*-apple-darwin:native/zlib" + "*:*-apple-*:native/bzip2", + "*:*-apple-*:native/libtapi", + "*:*-apple-*:native/make", + "*:*-apple-*:native/openssl", + "*:*-apple-*:native/xar", + "*:*-apple-*:native/xz", + "*:*-apple-*:native/zlib" ], "build": { "env": [ - "*:*-apple-darwin:config_opts=--prefix=$PREFIX/native", - "*:aarch64-apple-darwin:config_opts=$config_opts --target=arm64-apple-darwin25", - "*:x86_64-apple-darwin:config_opts=$config_opts --target=x86_64-apple-darwin25", - "*:*-apple-darwin:config_opts=$config_opts --with-libtapi=$PREFIX/native", - "*:*-apple-darwin:config_opts=$config_opts --with-libxar=$PREFIX/native", - "*:*-apple-darwin:CC=clang", - "*:*-apple-darwin:CXX=clang++" + "*:*-apple-*:config_opts=--prefix=$PREFIX/native", + "*:aarch64-apple-darwin:BUILD_TARGET=aarch64-apple-darwin", + "*:x86_64-apple-darwin:BUILD_TARGET=x86_64-apple-darwin", + "*:aarch64-apple-ios*:BUILD_TARGET=aarch64-apple-ios", + "*:*-apple*:config_opts=$config_opts --target=$BUILD_TARGET", + "*:*-apple-*:config_opts=$config_opts --with-libtapi=$PREFIX/native", + "*:*-apple-*:config_opts=$config_opts --with-libxar=$PREFIX/native", + "*:*-apple-*:CC=clang", + "*:*-apple-*:CXX=clang++" ], "steps": [ - "*:*-apple-darwin:sed -i.bak '3182d' cctools/configure", - "*:*-apple-darwin:cd cctools && ./configure $config_opts", - "*:*-apple-darwin:cd cctools && make -j$NUM_CORES", - "*:*-apple-darwin:cd cctools && DESTDIR=$STAGING_DIR make -j$NUM_CORES install" + "*:*-apple-*:sed -i.bak '3182d' cctools/configure", + "*:*-apple-*:cd cctools && ./configure $config_opts", + "*:*-apple-*:cd cctools && make -j$NUM_CORES", + "*:*-apple-*:cd cctools && DESTDIR=$STAGING_DIR make -j$NUM_CORES install", + "*:*-apple-*:cd $STAGING_DIR$PREFIX/native/bin; for f in *-*; do ln -s \"$f\" \"${f##*-}\"; done" ] } } \ No newline at end of file diff --git a/packages/native/libtapi.json b/packages/native/libtapi.json index 999d627..4172cce 100644 --- a/packages/native/libtapi.json +++ b/packages/native/libtapi.json @@ -16,7 +16,6 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native --disable-shared", "*:*:INSTALLPREFIX=$PREFIX/native" ], "steps": [ diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index cb0fae2..3db9f0b 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -24,7 +24,6 @@ "dependencies": [ "*:*-apple-*:native/apple-sdk", "*:*-apple-*:native/bzip2", - "*:*-apple-*:native/cctools-port", "*:*-apple-*:native/cmake", "*:*-apple-*:native/cpio", "*:*-apple-*:native/gettext", @@ -65,8 +64,7 @@ "*:*-apple-*:yes | INSTALLPREFIX=$PREFIX/native ./build_apple_clang.sh", "*:*-apple-*:cd build/clang-21/build_stage3 && make install DESTDIR=$STAGING_DIR && make install", "*:*-apple-*:sed -i.bak 's/## Compiler test ##/exit 0/g' build.sh", - "*:*-apple-*:OCDEBUG=1 TARGET_DIR=$STAGING_DIR$PREFIX/native bash -x ./build.sh", - "*:*-apple-*:cd $STAGING_DIR$PREFIX/native/bin && ln -s arm64-apple-darwin25-ld ld" + "*:*-apple-*:OCDEBUG=1 TARGET_DIR=$STAGING_DIR$PREFIX/native bash -x ./build.sh" ] } } \ No newline at end of file From ec5f7421a53cde30cd8e52598f7edbb18925083c Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 2 Dec 2025 12:01:54 +0100 Subject: [PATCH 049/200] fix ios/ios-simulator builds on linux/arm64 --- pack/build.go | 3 +- pack/info.go | 5 +- packages/xz.json | 3 +- utils/{ => download}/download.go | 117 ++++++++++++++++++++++++------- utils/git.go | 8 ++- 5 files changed, 105 insertions(+), 31 deletions(-) rename utils/{ => download}/download.go (53%) diff --git a/pack/build.go b/pack/build.go index 8bac02c..d2c72e1 100644 --- a/pack/build.go +++ b/pack/build.go @@ -13,6 +13,7 @@ import ( "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/utils" + downloadpkg "github.com/mrcyjanek/simplybs/utils/download" "github.com/mrcyjanek/simplybs/utils/ifstring" ) @@ -51,7 +52,7 @@ func (p *Package) DownloadSource(download *Download) { if download.Kind == "git" { err = utils.DownloadGit(p.Package, sourcePath, download.URL) } else { - err = utils.DownloadFile(p.Package, sourcePath, download.URL, download.Sha256, false) + err = downloadpkg.DownloadFile(p.Package, sourcePath, download.URL, download.Sha256, false) } if err != nil { log.Fatalf("Failed to download source: %v", err) diff --git a/pack/info.go b/pack/info.go index 154693d..dcddbd1 100644 --- a/pack/info.go +++ b/pack/info.go @@ -15,6 +15,7 @@ import ( "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/utils" + downloadpkg "github.com/mrcyjanek/simplybs/utils/download" "github.com/mrcyjanek/simplybs/utils/ifstring" ) @@ -103,14 +104,14 @@ func (p *Package) ShortName(h *host.Host) string { func (p *Package) GenerateSourceBuildPath(download *Download) string { if download.Kind == "git" { - urlPath, err := utils.URLToPath(download.URL) + urlPath, err := downloadpkg.URLToPath(download.URL) crash.Handle(err) urlPath = strings.TrimSuffix(urlPath, ".git") name := urlPath + ".bundle" return filepath.Join(host.DataDirRoot(), "source", name) } - urlPath, err := utils.URLToPath(download.URL) + urlPath, err := downloadpkg.URLToPath(download.URL) if err != nil { return filepath.Join(host.DataDirRoot(), "source", filepath.Base(download.URL)) } diff --git a/packages/xz.json b/packages/xz.json index 3ffccc8..b86f3c2 100644 --- a/packages/xz.json +++ b/packages/xz.json @@ -35,7 +35,8 @@ "*:*:config_opts=$config_opts --disable-xzdec", "*:*:config_opts=$config_opts --disable-lzmadec", "*:*:config_opts=$config_opts --disable-lzmainfo", - "*:*:config_opts=$config_opts --disable-lzma-links" + "*:*:config_opts=$config_opts --disable-lzma-links", + "*:*:SKIP_WERROR_CHECK=yes" ], "steps": [ "*:*:pwd", diff --git a/utils/download.go b/utils/download/download.go similarity index 53% rename from utils/download.go rename to utils/download/download.go index 06885a4..0cfe501 100644 --- a/utils/download.go +++ b/utils/download/download.go @@ -1,4 +1,4 @@ -package utils +package download import ( "crypto/sha256" @@ -119,52 +119,121 @@ func DownloadFile(packageName, path, url, expectedSha256 string, isMirror bool) os.MkdirAll(filepath.Dir(path), 0755) - resp, err := http.Get(url) + maxRetries := 15 + for attempt := 0; attempt <= maxRetries; attempt++ { + if attempt > 0 { + log.Printf("Retry attempt %d/%d for %s", attempt, maxRetries, url) + time.Sleep(5 * time.Second) + } + + bytesReceived, err := downloadWithResume(path, url, expectedSha256) + if err != nil { + // If no data was received on first try, give up immediately + if bytesReceived == 0 && attempt == 0 { + return fmt.Errorf("no data received from server: %v", err) + } + if attempt == maxRetries { + return fmt.Errorf("failed after %d retries: %v", maxRetries, err) + } + log.Printf("Download failed: %v", err) + continue + } + + log.Printf("Successfully downloaded and verified %s", path) + return nil + } + + return fmt.Errorf("download failed after all retries") +} + +func downloadWithResume(path, url, expectedSha256 string) (int64, error) { + var fileSize int64 + var out *os.File + var err error + + // Check if partial file exists + if info, err := os.Stat(path); err == nil { + fileSize = info.Size() + out, err = os.OpenFile(path, os.O_APPEND|os.O_WRONLY, 0644) + if err != nil { + return 0, fmt.Errorf("failed to open file for append: %v", err) + } + } else { + out, err = os.Create(path) + if err != nil { + return 0, fmt.Errorf("failed to create file: %v", err) + } + } + defer out.Close() + + // Create request with Range header for resume + req, err := http.NewRequest("GET", url, nil) if err != nil { - return fmt.Errorf("failed to download file from %s: %v", url, err) + return 0, fmt.Errorf("failed to create request: %v", err) + } + + if fileSize > 0 { + req.Header.Set("Range", fmt.Sprintf("bytes=%d-", fileSize)) + log.Printf("Resuming download from byte %d", fileSize) + } + + client := &http.Client{} + resp, err := client.Do(req) + if err != nil { + return 0, fmt.Errorf("failed to download file: %v", err) } defer resp.Body.Close() - if resp.StatusCode != http.StatusOK { - return fmt.Errorf("failed to download file: HTTP %d %s", resp.StatusCode, resp.Status) + // Accept both 200 (full content) and 206 (partial content) + if resp.StatusCode != http.StatusOK && resp.StatusCode != http.StatusPartialContent { + return 0, fmt.Errorf("HTTP %d %s", resp.StatusCode, resp.Status) + } + + // If server doesn't support resume (200 instead of 206), start over + if resp.StatusCode == http.StatusOK && fileSize > 0 { + out.Close() + out, err = os.Create(path) + if err != nil { + return 0, fmt.Errorf("failed to recreate file: %v", err) + } + fileSize = 0 + log.Printf("Server doesn't support resume, starting from beginning") } var totalSize int64 if contentLength := resp.Header.Get("Content-Length"); contentLength != "" { if size, err := strconv.ParseInt(contentLength, 10, 64); err == nil { - totalSize = size + totalSize = fileSize + size } } - out, err := os.Create(path) - if err != nil { - return fmt.Errorf("failed to create file %s: %v", path, err) - } - defer out.Close() - - hasher := sha256.New() + filename := filepath.Base(path) + progressWriter := NewProgressWriter(out, totalSize, filename) - filename := path - if idx := strings.LastIndex(path, "/"); idx >= 0 { - filename = path[idx+1:] + bytesRead, err := io.Copy(progressWriter, resp.Body) + if err != nil { + return bytesRead, fmt.Errorf("failed to write file: %v", err) } - progressWriter := NewProgressWriter(out, totalSize, filename) - multiWriter := io.MultiWriter(progressWriter, hasher) + progressWriter.finish() - _, err = io.Copy(multiWriter, resp.Body) + // Verify hash only if download is complete + file, err := os.Open(path) if err != nil { - return fmt.Errorf("failed to write file %s: %v", path, err) + return bytesRead, fmt.Errorf("failed to open file for verification: %v", err) } + defer file.Close() - progressWriter.finish() + hasher := sha256.New() + if _, err := io.Copy(hasher, file); err != nil { + return bytesRead, fmt.Errorf("failed to calculate hash: %v", err) + } actualHash := hex.EncodeToString(hasher.Sum(nil)) if actualHash != expectedSha256 { os.Remove(path) - return fmt.Errorf("SHA256 hash mismatch for %s: expected %s, got %s", path, expectedSha256, actualHash) + return bytesRead, fmt.Errorf("SHA256 hash mismatch: expected %s, got %s", expectedSha256, actualHash) } - log.Printf("Successfully downloaded and verified %s", path) - return nil + return bytesRead, nil } diff --git a/utils/git.go b/utils/git.go index c469e31..3794618 100644 --- a/utils/git.go +++ b/utils/git.go @@ -9,6 +9,8 @@ import ( "os/exec" "path/filepath" "strings" + + "github.com/mrcyjanek/simplybs/utils/download" ) func verifyBundleHasRef(bundlePath string, refs []string) bool { @@ -38,7 +40,7 @@ func verifyBundleHasRef(bundlePath string, refs []string) bool { } func downloadBundleFromMirrors(bundlePath, originalURL string, refs []string) error { - urlPath, err := URLToPath(originalURL) + urlPath, err := download.URLToPath(originalURL) if err != nil { return fmt.Errorf("failed to convert URL to path: %w", err) } @@ -46,7 +48,7 @@ func downloadBundleFromMirrors(bundlePath, originalURL string, refs []string) er bundleFilename := filepath.Base(bundlePath) mirrorPath := filepath.Join(filepath.Dir(urlPath), bundleFilename) - mirrors := GetMirrors() + mirrors := download.GetMirrors() for _, mirror := range mirrors { mirrorURL := mirror + mirrorPath log.Printf("Trying to download bundle from mirror: %s", mirrorURL) @@ -269,7 +271,7 @@ func getRepoURLFromBundlePath(bundlePath string) (string, error) { // Try to match against known repositories for url := range sources.Repositories { - urlPath, err := URLToPath(url) + urlPath, err := download.URLToPath(url) if err != nil { continue } From e3d3e9d18f29500686dcc5d4c077902e97e1bad4 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 8 Dec 2025 04:22:13 +0100 Subject: [PATCH 050/200] suffix builddir with h.Triplet --- host/main.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/host/main.go b/host/main.go index 9fed982..9fd05ad 100644 --- a/host/main.go +++ b/host/main.go @@ -45,7 +45,7 @@ func DataDir() string { func (h *Host) GetEnvPath() string { if os.Getenv("SIMPLYBS_ENV_DIR") != "" { - return os.Getenv("SIMPLYBS_ENV_DIR") + return filepath.Join(os.Getenv("SIMPLYBS_ENV_DIR"), h.Triplet) } dir := DataDirRoot() return filepath.Join(dir, "env", h.Triplet) From 6d117628ed2e5ae017cab47c3ddd9cf95913c86b Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 8 Dec 2025 04:47:16 +0100 Subject: [PATCH 051/200] disable systemd --- packages/tor.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/tor.json b/packages/tor.json index 5b2f248..f8a1abc 100644 --- a/packages/tor.json +++ b/packages/tor.json @@ -40,6 +40,7 @@ "*:*:config_opts=$config_opts --enable-static-tor", "*:*:config_opts=$config_opts --disable-lzma", "*:*:config_opts=$config_opts --disable-zstd", + "*:*:config_opts=$config_opts --disable-systemd", "*:*:config_opts=$config_opts --with-openssl-dir=$PREFIX/lib", "*:*:config_opts=$config_opts --with-libevent-dir=$PREFIX/lib", "*:*:config_opts=$config_opts --with-zlib-dir=$PREFIX/lib", From 1969df525db08b32f3848298225168dc0d7a9581 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 8 Dec 2025 09:06:09 +0100 Subject: [PATCH 052/200] fix python3 build --- packages/native/python@3.11.json | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/native/python@3.11.json b/packages/native/python@3.11.json index a2e5bb8..f10c772 100644 --- a/packages/native/python@3.11.json +++ b/packages/native/python@3.11.json @@ -22,7 +22,6 @@ "*:*:config_opts=--prefix=$PREFIX/native", "*:*:config_opts=$config_opts --disable-test-modules", "*:*:config_opts=$config_opts --enable-static", - "*:*:config_opts=$config_opts --enable-optimizations", "darwin_*:*:LIBS=-lintl -liconv" ], "steps": [ From f8688cc4d3ab8c8119cb644357af5bafe09f2da2 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 21 Dec 2025 23:36:59 -0500 Subject: [PATCH 053/200] update to caching --- pack/info.go | 3 ++- pack/main.go | 3 ++- packages/native/llvm-profdata.json | 26 ++++++++++++++++++++++++++ 3 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 packages/native/llvm-profdata.json diff --git a/pack/info.go b/pack/info.go index dcddbd1..703384b 100644 --- a/pack/info.go +++ b/pack/info.go @@ -122,7 +122,8 @@ func (p *Package) GenerateBuildPath(h *host.Host, kind string) string { if kind == "source" { log.Fatalf("Source build path is not supported") } - return filepath.Join(host.DataDir(), kind, h.Triplet, p.ShortName(h)) + safeName := strings.ReplaceAll(p.ShortName(h), "/", "@") + return filepath.Join(host.DataDir(), kind, h.Triplet, safeName) } func getNumCores() int { diff --git a/pack/main.go b/pack/main.go index b0f132e..1059819 100644 --- a/pack/main.go +++ b/pack/main.go @@ -114,7 +114,8 @@ func ScanBuiltFiles(packageName string, packageVersion string) []BuiltFile { for _, builder := range builder.Builders { for _, target := range targets { - buildOutputDir := filepath.Join(buildlibDir, builder, "built", target, packageName) + safePackageName := strings.ReplaceAll(packageName, "/", "@") + buildOutputDir := filepath.Join(buildlibDir, builder, "built", target, safePackageName) buildOutputDir = filepath.Dir(buildOutputDir) if _, err := os.Stat(buildOutputDir); os.IsNotExist(err) { diff --git a/packages/native/llvm-profdata.json b/packages/native/llvm-profdata.json new file mode 100644 index 0000000..f730c89 --- /dev/null +++ b/packages/native/llvm-profdata.json @@ -0,0 +1,26 @@ +{ + "package": "native/llvm-profdata", + "version": "21.1.3", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "450f52eec88f728c89a9efd667dbeaf2dad93826", + "url": "https://github.com/llvm/llvm-project" + } + ], + "dependencies": [ + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/ninja" + ], + "build": { + "steps": [ + "*:*:mkdir build && cd build", + "*:*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", + "*:*:cd build && ninja llvm-profdata", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", + "*:*:cp build/bin/llvm-profdata $STAGING_DIR$PREFIX/native/bin/llvm-profdata" + ] + } +} \ No newline at end of file From ecddd26a9b42467ee3373ce95e0f60d672d11d24 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 22 Dec 2025 00:14:51 -0500 Subject: [PATCH 054/200] fix -cleanup, package names fix --- pack/main.go | 1 + packages/native/openssl.json | 2 +- packages/native/xz.json | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pack/main.go b/pack/main.go index 1059819..4c09c8f 100644 --- a/pack/main.go +++ b/pack/main.go @@ -192,6 +192,7 @@ func Cleanup() { currentBuildID := pkg.GeneratePackageInfoShortHash(host.SupportedHosts[target]) currentFileName := fmt.Sprintf("%s-%s-%s", pkg.Package, pkg.Version, currentBuildID) + currentFileName = strings.ReplaceAll(currentFileName, "/", "@") archPath := filepath.Join(builder, "built", target, currentFileName+".tar.gz") infoPath := filepath.Join(builder, "built", target, currentFileName+".info.txt") diff --git a/packages/native/openssl.json b/packages/native/openssl.json index 990c586..15395b0 100644 --- a/packages/native/openssl.json +++ b/packages/native/openssl.json @@ -1,5 +1,5 @@ { - "package": "openssl", + "package": "native/openssl", "version": "3.5.1", "type": "native", "download": [ diff --git a/packages/native/xz.json b/packages/native/xz.json index fc8c233..11ebe76 100644 --- a/packages/native/xz.json +++ b/packages/native/xz.json @@ -1,5 +1,5 @@ { - "package": "xz", + "package": "native/xz", "version": "5.8.1", "type": "native", "download": [ From 2d0cde82bd7dd1e16bdf0932780f2ca59d256155 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 22 Dec 2025 11:13:19 -0500 Subject: [PATCH 055/200] deb creation, add go bootstrap --- deb/convert.go | 410 +++++++++++++++++++++++++++++++ main.go | 6 +- pack/build.go | 28 +++ packages/native/go-bin@1.25.json | 44 ++++ packages/native/go.json | 31 +++ packages/native/go@1.25.json | 31 +++ patches/go_wrapper.sh | 12 + 7 files changed, 560 insertions(+), 2 deletions(-) create mode 100644 deb/convert.go create mode 100644 packages/native/go-bin@1.25.json create mode 100644 packages/native/go.json create mode 100644 packages/native/go@1.25.json create mode 100644 patches/go_wrapper.sh diff --git a/deb/convert.go b/deb/convert.go new file mode 100644 index 0000000..409aab1 --- /dev/null +++ b/deb/convert.go @@ -0,0 +1,410 @@ +package deb + +import ( + "archive/tar" + "compress/gzip" + "fmt" + "io" + "os" + "path/filepath" + "strings" + "time" + + "github.com/mrcyjanek/simplybs/host" +) + +func ConvertTarGzToDeb(tarGzPath, debPath, packageName, version string, h *host.Host) error { + return ConvertTarGzToDebWithSources(tarGzPath, debPath, packageName, version, nil, h) +} + +func ConvertTarGzToDebWithSources(tarGzPath, debPath, packageName, version string, sources []SourceInfo, h *host.Host) error { + tmpDir, err := os.MkdirTemp("", "deb-build-*") + if err != nil { + return fmt.Errorf("failed to create temp directory: %w", err) + } + defer os.RemoveAll(tmpDir) + + debRoot := filepath.Join(tmpDir, "deb") + dataDir := filepath.Join(debRoot, "data") + controlDir := filepath.Join(debRoot, "control") + + if err := os.MkdirAll(dataDir, 0755); err != nil { + return fmt.Errorf("failed to create data directory: %w", err) + } + if err := os.MkdirAll(controlDir, 0755); err != nil { + return fmt.Errorf("failed to create control directory: %w", err) + } + + installPrefix := h.GetEnvPath() + if err := extractTarGzToDebData(tarGzPath, dataDir, installPrefix); err != nil { + return fmt.Errorf("failed to extract tar.gz: %w", err) + } + + if err := createControlFiles(controlDir, packageName, version, sources, h.Triplet); err != nil { + return fmt.Errorf("failed to create control files: %w", err) + } + + if err := createDebArchive(debRoot, debPath); err != nil { + return fmt.Errorf("failed to create deb archive: %w", err) + } + + return nil +} + +type SourceInfo struct { + Kind string + URL string +} + +func extractTarGzToDebData(tarGzPath, dataDir, installPrefix string) error { + file, err := os.Open(tarGzPath) + if err != nil { + return err + } + defer file.Close() + + gzr, err := gzip.NewReader(file) + if err != nil { + return err + } + defer gzr.Close() + + tr := tar.NewReader(gzr) + + for { + header, err := tr.Next() + if err == io.EOF { + break + } + if err != nil { + return err + } + + if header.Name == "." || header.Name == "" { + continue + } + + targetPath := filepath.Join(dataDir, installPrefix, header.Name) + + if header.Typeflag == tar.TypeDir { + if err := os.MkdirAll(targetPath, os.FileMode(header.Mode)); err != nil { + return err + } + continue + } + + if header.Typeflag == tar.TypeSymlink { + if err := os.MkdirAll(filepath.Dir(targetPath), 0755); err != nil { + return err + } + if err := os.Symlink(header.Linkname, targetPath); err != nil { + return err + } + continue + } + + if header.Typeflag == tar.TypeReg || header.Typeflag == tar.TypeRegA { + if err := os.MkdirAll(filepath.Dir(targetPath), 0755); err != nil { + return err + } + + outFile, err := os.OpenFile(targetPath, os.O_CREATE|os.O_WRONLY|os.O_TRUNC, os.FileMode(header.Mode)) + if err != nil { + return err + } + + if _, err := io.Copy(outFile, tr); err != nil { + outFile.Close() + return err + } + outFile.Close() + } + } + + return nil +} + +func createControlFiles(controlDir, packageName, version string, sources []SourceInfo, triplet string) error { + safePackageName := strings.ReplaceAll(packageName, "/", "-") + safePackageName = strings.ReplaceAll(safePackageName, "@", "-") + safePackageName = "sbs-" + safePackageName + + debVersion := sanitizeDebVersion(version) + + description := buildDescription(packageName, triplet, sources) + + controlContent := fmt.Sprintf(`Package: %s +Version: %s +Architecture: %s +Maintainer: simplybs +Description: %s +Section: devel +Priority: optional +`, + safePackageName, + debVersion, + getDebArchitecture(triplet), + description, + ) + + controlPath := filepath.Join(controlDir, "control") + if err := os.WriteFile(controlPath, []byte(controlContent), 0644); err != nil { + return err + } + + return nil +} + +func sanitizeDebVersion(version string) string { + version = strings.TrimSpace(version) + if version == "" { + return "1.0" + } + + if idx := strings.Index(version, ":"); idx != -1 { + upstream := version[idx+1:] + if len(upstream) > 0 && !(upstream[0] >= '0' && upstream[0] <= '9') { + return version[:idx+1] + "0" + upstream + } + return version + } + + if !(version[0] >= '0' && version[0] <= '9') { + return "0:0" + version + } + return version +} + +func isAlphanumeric(r rune) bool { + return (r >= '0' && r <= '9') || (r >= 'a' && r <= 'z') || (r >= 'A' && r <= 'Z') +} + +func buildDescription(packageName, triplet string, sources []SourceInfo) string { + var desc strings.Builder + + desc.WriteString(fmt.Sprintf("%s built for %s", packageName, triplet)) + + if len(sources) > 0 { + desc.WriteString("\n") + desc.WriteString(" Built from sources:") + for _, src := range sources { + desc.WriteString("\n") + switch src.Kind { + case "git": + desc.WriteString(fmt.Sprintf(" - Git repository: %s", src.URL)) + case "tar.gz", "tar.bz2", "tar.xz": + desc.WriteString(fmt.Sprintf(" - Archive: %s", src.URL)) + case "blob": + desc.WriteString(fmt.Sprintf(" - File: %s", src.URL)) + default: + if src.Kind != "" { + desc.WriteString(fmt.Sprintf(" - %s: %s", src.Kind, src.URL)) + } else { + desc.WriteString(fmt.Sprintf(" - %s", src.URL)) + } + } + } + } + + desc.WriteString("\n") + desc.WriteString(" This package was automatically generated by simplybs.") + + return desc.String() +} + +func getDebArchitecture(triplet string) string { + if strings.Contains(triplet, "aarch64") { + if strings.Contains(triplet, "apple") { + return "arm64" + } + return "arm64" + } + if strings.Contains(triplet, "x86_64") { + return "amd64" + } + if strings.Contains(triplet, "armv7") { + return "armhf" + } + return "all" +} + +func createDebArchive(debRoot, debPath string) error { + if err := os.MkdirAll(filepath.Dir(debPath), 0755); err != nil { + return err + } + + outFile, err := os.Create(debPath) + if err != nil { + return err + } + defer outFile.Close() + + if _, err := outFile.WriteString("!\n"); err != nil { + return err + } + + debianBinary := "2.0\n" + if err := writeArEntryString(outFile, "debian-binary", debianBinary); err != nil { + return err + } + + controlTarPath := filepath.Join(debRoot, "control.tar.gz") + if err := createTarGz(filepath.Join(debRoot, "control"), controlTarPath); err != nil { + return err + } + if err := writeArEntry(outFile, "control.tar.gz", controlTarPath); err != nil { + return err + } + + dataTarPath := filepath.Join(debRoot, "data.tar.gz") + if err := createTarGz(filepath.Join(debRoot, "data"), dataTarPath); err != nil { + return err + } + if err := writeArEntry(outFile, "data.tar.gz", dataTarPath); err != nil { + return err + } + + return nil +} + +func writeArEntry(outFile *os.File, name, filePath string) error { + info, err := os.Stat(filePath) + if err != nil { + return err + } + + file, err := os.Open(filePath) + if err != nil { + return err + } + defer file.Close() + + return writeArEntryFromReader(outFile, name, file, info.Size()) +} + +func writeArEntryString(outFile *os.File, name, content string) error { + return writeArEntryFromReader(outFile, name, strings.NewReader(content), int64(len(content))) +} + +func writeArEntryFromReader(outFile *os.File, name string, reader io.Reader, size int64) error { + // AR header format: name (16 bytes), timestamp (12 bytes), owner/group (6+6 bytes), mode (8 bytes), size (10 bytes), magic (2 bytes) + header := make([]byte, 60) + + // Name (16 bytes, space-padded on the right) + nameBytes := []byte(name) + if len(nameBytes) > 16 { + nameBytes = nameBytes[:16] + } + copy(header[0:16], nameBytes) + + // Pad with spaces + for i := len(nameBytes); i < 16; i++ { + header[i] = ' ' + } + + // Timestamp (12 bytes) + timestamp := fmt.Sprintf("%-12d", time.Now().Unix()) + copy(header[16:28], []byte(timestamp)) + + // Owner/Group (6+6 bytes, default to 0) + copy(header[28:34], []byte("0 ")) + copy(header[34:40], []byte("0 ")) + + // Mode (8 bytes, default to 644) + copy(header[40:48], []byte("644 ")) + + // Size (10 bytes) + sizeStr := fmt.Sprintf("%-10d", size) + copy(header[48:58], []byte(sizeStr)) + + // Magic (2 bytes) + copy(header[58:60], []byte("`\n")) + + if _, err := outFile.Write(header); err != nil { + return err + } + + if _, err := io.Copy(outFile, reader); err != nil { + return err + } + + if size%2 != 0 { + if _, err := outFile.Write([]byte("\n")); err != nil { + return err + } + } + + return nil +} + +func createTarGz(sourceDir, archivePath string) error { + file, err := os.Create(archivePath) + if err != nil { + return err + } + defer file.Close() + + gzw, err := gzip.NewWriterLevel(file, gzip.BestCompression) + if err != nil { + return err + } + defer gzw.Close() + + tw := tar.NewWriter(gzw) + defer tw.Close() + + fixedTime := time.Unix(1, 0) + + return filepath.Walk(sourceDir, func(path string, info os.FileInfo, err error) error { + if err != nil { + return err + } + + if path == sourceDir { + return nil + } + + relPath, err := filepath.Rel(sourceDir, path) + if err != nil { + return err + } + + header, err := tar.FileInfoHeader(info, "") + if err != nil { + return err + } + + header.Name = filepath.ToSlash(relPath) + header.ModTime = fixedTime + header.AccessTime = fixedTime + header.ChangeTime = fixedTime + + if info.Mode()&os.ModeSymlink != 0 { + linkTarget, err := os.Readlink(path) + if err != nil { + return err + } + header.Typeflag = tar.TypeSymlink + header.Linkname = linkTarget + header.Size = 0 + } + + if err := tw.WriteHeader(header); err != nil { + return err + } + + if info.Mode().IsRegular() { + file, err := os.Open(path) + if err != nil { + return err + } + defer file.Close() + + if _, err := io.Copy(tw, file); err != nil { + return err + } + } + + return nil + }) +} diff --git a/main.go b/main.go index d8ca79b..b394f40 100644 --- a/main.go +++ b/main.go @@ -25,6 +25,7 @@ func main() { argVersion := flag.Bool("v", false, "Show version") argShell := flag.Bool("shell", false, "Extract source and start shell with build environment") argCleanup := flag.Bool("cleanup", false, "Remove everything except current built archives") + argDeb := flag.Bool("deb", true, "Create .deb packages") flag.Parse() if *argVersion { fmt.Println("simplybs version 0.0.0") @@ -65,11 +66,11 @@ func main() { if host == nil { crash.Handle(fmt.Errorf("host %s not supported", h)) } - buildForHost(host, packageNames, *argList, *argExtract, *argBuild, *argShell) + buildForHost(host, packageNames, *argList, *argExtract, *argBuild, *argShell, *argDeb) } } -func buildForHost(host *host.Host, packageNames []*pack.Package, list bool, extract bool, build bool, shell bool) { +func buildForHost(host *host.Host, packageNames []*pack.Package, list bool, extract bool, build bool, shell bool, createDeb bool) { if list { for _, pkg := range packageNames { pack.PrintPackage(pkg.Package, host.Triplet) @@ -84,6 +85,7 @@ func buildForHost(host *host.Host, packageNames []*pack.Package, list bool, extr } if build { + pack.CreateDebPackages = createDeb for _, pkg := range packageNames { pkg.EnsureBuilt(host, true) } diff --git a/pack/build.go b/pack/build.go index d2c72e1..8a26eed 100644 --- a/pack/build.go +++ b/pack/build.go @@ -11,12 +11,15 @@ import ( "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/crash" + "github.com/mrcyjanek/simplybs/deb" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/utils" downloadpkg "github.com/mrcyjanek/simplybs/utils/download" "github.com/mrcyjanek/simplybs/utils/ifstring" ) +var CreateDebPackages = true + func (p *Package) EnsureBuilt(h *host.Host, buildDependencies bool) { buildPath := p.GenerateBuildPath(h, "built") + ".info.txt" info, err := os.ReadFile(buildPath) @@ -197,6 +200,31 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { } log.Printf("Package built successfully: %s", builtArchivePath) + + if CreateDebPackages && !strings.HasPrefix(p.Package, "native/") { + debPath := p.GenerateBuildPath(h, "deb") + ".deb" + os.MkdirAll(filepath.Dir(debPath), 0755) + + packageName := p.Package + hash := p.GeneratePackageInfoShortHash(h) + debVersion := fmt.Sprintf("%s-%s", p.Version, hash) + + sources := make([]deb.SourceInfo, 0, len(p.Download)) + for _, dl := range p.Download { + if dl.Kind != "none" { + sources = append(sources, deb.SourceInfo{ + Kind: dl.Kind, + URL: dl.URL, + }) + } + } + + log.Printf("Converting to .deb: %s", debPath) + err = deb.ConvertTarGzToDebWithSources(builtArchivePath, debPath, packageName, debVersion, sources, h) + if err != nil { + log.Fatalln("Failed to convert to .deb: %v", err) + } + } } func writeDotEnv(path string, env []string) { diff --git a/packages/native/go-bin@1.25.json b/packages/native/go-bin@1.25.json new file mode 100644 index 0000000..9b4f6f7 --- /dev/null +++ b/packages/native/go-bin@1.25.json @@ -0,0 +1,44 @@ +{ + "package": "native/go-bin@1.25", + "version": "1.25", + "type": "native", + "download": [ + { + "kind": "blob", + "path": "./go-darwin_arm64.tar.gz", + "sha256": "544932844156d8172f7a28f77f2ac9c15a23046698b6243f633b0a0b00c0749c", + "url": "https://go.dev/dl/go1.25.0.darwin-arm64.tar.gz" + }, + { + "kind": "blob", + "path": "./go-linux_amd64.tar.gz", + "sha256": "2852af0cb20a13139b3448992e69b868e50ed0f8a1e5940ee1de9e19a123b613", + "url": "https://go.dev/dl/go1.25.0.linux-amd64.tar.gz" + }, + { + "kind": "blob", + "path": "./go-linux_arm64.tar.gz", + "sha256": "05de75d6994a2783699815ee553bd5a9327d8b79991de36e38b66862782f54ae", + "url": "https://go.dev/dl/go1.25.0.linux-arm64.tar.gz" + } + ], + "dependencies": [ + "*:*:native/7zip", + "*:*:native/sed" + ], + "build": { + "env": [ + "*:*:GO_VERSION=1.25" + ], + "steps": [ + "*:*:7zz x ./go-${BUILDER_GOOS}_${BUILDER_GOARCH}.tar.gz", + "*:*:mkdir build", + "*:*:cd build && 7zz x ../go-${BUILDER_GOOS}_${BUILDER_GOARCH}.tar", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:mv build/go $STAGING_DIR$PREFIX/native/go$GO_VERSION", + "*:*:cat $PATCH_DIR/go_wrapper.sh | sed \"s/@GO_VERSION@/$GO_VERSION/g\" > $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION", + "*:*:chmod +x $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION", + "*:*:cp $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION $STAGING_DIR$PREFIX/native/bin/go" + ] + } +} \ No newline at end of file diff --git a/packages/native/go.json b/packages/native/go.json new file mode 100644 index 0000000..cfec61e --- /dev/null +++ b/packages/native/go.json @@ -0,0 +1,31 @@ +{ + "package": "native/go", + "version": "1.25.5", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "22a5fd0a91efcd28a1b0537106b9959b2804b61f59c3758b51e8e5429c1a954f", + "url": "https://go.dev/dl/go1.25.5.src.tar.gz" + } + ], + "dependencies": [ + "*:*:native/7zip", + "*:*:native/go@1.25", + "*:*:native/sed" + ], + "build": { + "env": [ + "*:*:GO_VERSION=1.25.5" + ], + "steps": [ + "*:*:cd src && ./make.bash", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/go$GO_VERSION", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:mv * $STAGING_DIR$PREFIX/native/go$GO_VERSION", + "*:*:cat $PATCH_DIR/go_wrapper.sh | sed \"s/@GO_VERSION@/$GO_VERSION/g\" > $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION", + "*:*:chmod +x $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION", + "*:*:cp $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION $STAGING_DIR$PREFIX/native/bin/go" + ] + } +} \ No newline at end of file diff --git a/packages/native/go@1.25.json b/packages/native/go@1.25.json new file mode 100644 index 0000000..1c3810b --- /dev/null +++ b/packages/native/go@1.25.json @@ -0,0 +1,31 @@ +{ + "package": "native/go@1.25", + "version": "1.25", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "4bd01e91297207bfa450ea40d4d5a93b1b531a5e438473b2a06e18e077227225", + "url": "https://go.dev/dl/go1.25.0.src.tar.gz" + } + ], + "dependencies": [ + "*:*:native/7zip", + "darwin_arm64:*:native/go-bin@1.25", + "*:*:native/sed" + ], + "build": { + "env": [ + "*:*:GO_VERSION=1.25" + ], + "steps": [ + "*:*:cd src && ./make.bash", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/go$GO_VERSION", + "*:*:mv * $STAGING_DIR$PREFIX/native/go$GO_VERSION", + "*:*:cat $PATCH_DIR/go_wrapper.sh | sed \"s/@GO_VERSION@/$GO_VERSION/g\" > $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION", + "*:*:chmod +x $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION", + "*:*:cp $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION $STAGING_DIR$PREFIX/native/bin/go" + ] + } +} \ No newline at end of file diff --git a/patches/go_wrapper.sh b/patches/go_wrapper.sh new file mode 100644 index 0000000..a4d5ff8 --- /dev/null +++ b/patches/go_wrapper.sh @@ -0,0 +1,12 @@ +#!/bin/bash +export GOCACHE=$HOME/.cache/go@GO_VERSION@-build +export GOMODCACHE=$HOME/go@GO_VERSION@/pkg/mod +export GOPATH=$HOME/go@GO_VERSION@ +export GOPROXY='https://proxy.golang.org,direct' +export GOROOT=$PREFIX/native/go@GO_VERSION@ +export GOSUMDB='sum.golang.org' +export GOTELEMETRY='local' +export GOTELEMETRYDIR='/Users/user/Library/Application Support/go/telemetry' +export GOTOOLDIR=$GOROOT/pkg/tool/${BUILDER_GOOS}_${BUILDER_GOARCH} + +exec $PREFIX/native/go@GO_VERSION@/bin/go $@ From 8e060702ffdc3c248985dc16950cbc12cbcb548c Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 29 Dec 2025 00:04:28 -0500 Subject: [PATCH 056/200] package apt --- packages/apt.json | 42 +++++++++++++++++++++++++ packages/berkeleydb@5.json | 58 +++++++++++++++++++++++++++++++++++ packages/dpkg.json | 40 ++++++++++++++++++++++++ packages/gettext.json | 34 ++++++++++++++++++++ packages/gtest.json | 4 ++- packages/libmd.json | 34 ++++++++++++++++++++ packages/lz4.json | 33 ++++++++++++++++++++ packages/native/dpkg.json | 37 ++++++++++++++++++++++ packages/native/go@1.25.json | 4 +-- packages/native/libmd.json | 33 ++++++++++++++++++++ packages/native/tar.json | 27 ++++++++++++++++ packages/native/triehash.json | 24 +++++++++++++++ packages/native/xar.json | 6 ++-- packages/unistring.json | 29 ++++++++++++++++++ packages/xxhash.json | 29 ++++++++++++++++++ packages/xz.json | 7 ----- sources.json | 35 +++++++++++++++++++++ 17 files changed, 463 insertions(+), 13 deletions(-) create mode 100644 packages/apt.json create mode 100644 packages/berkeleydb@5.json create mode 100644 packages/dpkg.json create mode 100644 packages/gettext.json create mode 100644 packages/libmd.json create mode 100644 packages/lz4.json create mode 100644 packages/native/dpkg.json create mode 100644 packages/native/libmd.json create mode 100644 packages/native/tar.json create mode 100644 packages/native/triehash.json create mode 100644 packages/unistring.json create mode 100644 packages/xxhash.json diff --git a/packages/apt.json b/packages/apt.json new file mode 100644 index 0000000..102fbf9 --- /dev/null +++ b/packages/apt.json @@ -0,0 +1,42 @@ +{ + "package": "apt", + "version": "2.86.0", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "6b128124271e94bdb0f4e7850d9286170d712b04", + "url": "https://salsa.debian.org/apt-team/apt.git" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/cmake", + "*:*:native/cmake-toolchain", + "*:*:native/dpkg", + "*:*:native/make", + "*:*:native/perl", + "*:*:native/pkgconf", + "*:*:native/triehash", + "*:*:berkeleydb@5", + "*:*:gettext", + "*:*:gtest", + "*:*:lz4", + "*:*:openssl", + "*:*:xxhash", + "*:*:xz", + "*:*:zlib" + ], + "build": { + "env": [ + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:*:config_opts=$config_opts -DWITH_DOC=NO" + ], + "steps": [ + "*:*:mkdir build", + "*:*:cd build && cmake $config_opts ..", + "*:*:cd build && make install DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/berkeleydb@5.json b/packages/berkeleydb@5.json new file mode 100644 index 0000000..51e414b --- /dev/null +++ b/packages/berkeleydb@5.json @@ -0,0 +1,58 @@ +{ + "package": "berkeleydb@5", + "version": "5.3.28", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "e0a992d740709892e81f9d93f06daf305cf73fb81b545afe72478043172c3628", + "url": "https://download.oracle.com/berkeley-db/db-5.3.28.tar.gz" + }, + { + "kind": "blob", + "path": "patch/clang.diff", + "sha256": "86111b0965762f2c2611b302e4a95ac8df46ad24925bbb95a1961542a1542e40", + "url": "https://raw.githubusercontent.com/Homebrew/homebrew-core/1cf441a0/Patches/berkeley-db@4/clang.diff" + }, + { + "kind": "blob", + "path": "patch/patch-src_dbinc_db.in", + "sha256": "302b78f3e1f131cfbf91b24e53a5c79e1d9234c143443ab936b9e5ad08dea5b6", + "url": "https://raw.githubusercontent.com/NetBSD/pkgsrc/6034096dc85159a02116524692545cf5752c8f33/databases/db5/patches/patch-src_dbinc_db.in" + }, + { + "kind": "blob", + "path": "patch/configure-pre-0.4.2.418-big_sur.diff", + "sha256": "83af02f2aa2b746bb7225872cab29a253264be49db0ecebb12f841562d9a2923", + "url": "https://raw.githubusercontent.com/Homebrew/homebrew-core/1cf441a0/Patches/libtool/configure-pre-0.4.2.418-big_sur.diff" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/make", + "*:*:native/patch" + ], + "build": { + "env": [ + "*:*:config_opts=--prefix=$PREFIX", + "*:*:config_opts=$config_opts --mandir=$PREFIX/share/man", + "*:*:config_opts=$config_opts --localstatedir=$HOME/.berkeley5.3", + "*:*:config_opts=$config_opts --sysconfdir=$PREFIX/etc", + "*:*:config_opts=$config_opts --libexecdir=$PREFIX/lib", + "*:*:config_opts=$config_opts --enable-cxx", + "*:*:config_opts=$config_opts --enable-static", + "*:*:config_opts=$config_opts --disable-java", + "*:*:config_opts=$config_opts --disable-sql", + "*:*:config_opts=$config_opts --disable-mutexsupport", + "*:*:config_opts=$config_opts --enable-dbm" + ], + "steps": [ + "*:*:cd src && patch -p1 < ../patch/clang.diff", + "*:*:patch -p0 < ./patch/patch-src_dbinc_db.in", + "*:*:cd dist && patch -p1 < ../patch/configure-pre-0.4.2.418-big_sur.diff", + "*:*:cd build_unix && ../dist/configure $config_opts", + "*:*:cd build_unix && make -j$NUM_CORES", + "*:*:cd build_unix && make install DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/dpkg.json b/packages/dpkg.json new file mode 100644 index 0000000..750cd59 --- /dev/null +++ b/packages/dpkg.json @@ -0,0 +1,40 @@ +{ + "package": "dpkg", + "version": "1.23.3", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "f3ad53337eaee92cbeb1a7c73e98d552c3a8186f", + "url": "https://git.dpkg.org/git/dpkg/dpkg.git" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/dpkg", + "*:*:native/gettext", + "*:*:native/libtool", + "*:*:native/m4", + "*:*:native/make", + "*:*:native/patch", + "*:*:native/perl", + "*:*:native/pkgconf", + "*:*:native/tar", + "*:*:libmd" + ], + "build": { + "env": [ + "*:*:OSXCROSS_PKG_CONFIG_USE_NATIVE_VARIABLES=1", + "*:*:config_opts=--host=$HOST --prefix=$PREFIX", + "*:*:PERL_LIBDIR=$PREFIX/lib/perl5/site_perl/5.42.0" + ], + "steps": [ + "*:*:autoreconf --force --install", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make install DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/gettext.json b/packages/gettext.json new file mode 100644 index 0000000..20b9fe1 --- /dev/null +++ b/packages/gettext.json @@ -0,0 +1,34 @@ +{ + "package": "native/gettext", + "version": "0.26", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "39acf4b0371e9b110b60005562aace5b3631fed9b1bb9ecccfc7f56e58bb1d7f", + "url": "http://ftpmirror.gnu.org/gnu/gettext/gettext-0.26.tar.gz" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/make", + "*:*:native/sed", + "*:*:libiconv", + "*:*:unistring" + ], + "build": { + "env": [ + "*:*:config_opts=--prefix=$PREFIX", + "*:*:config_opts=$config_opts --with-libiconv-prefix=$PREFIX", + "*:*:config_opts=$config_opts --with-libunistring-prefix=$PREFIX", + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --enable-static", + "*:*:LIBS=-lunistring" + ], + "steps": [ + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/gtest.json b/packages/gtest.json index 1424d96..52fee2d 100644 --- a/packages/gtest.json +++ b/packages/gtest.json @@ -10,7 +10,9 @@ } ], "dependencies": [ - "*:*:native/_" + "*:*:native/_", + "*:*:native/cmake", + "*:*:native/cmake-toolchain" ], "build": { "env": [ diff --git a/packages/libmd.json b/packages/libmd.json new file mode 100644 index 0000000..d8143d1 --- /dev/null +++ b/packages/libmd.json @@ -0,0 +1,34 @@ +{ + "package": "libmd", + "version": "1.1.0", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "d5b8e853989a73f8fff9dc4e00dccd0b691b84f9", + "url": "https://github.com/guillemj/libmd.git" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/gettext", + "*:*:native/libtool", + "*:*:native/m4", + "*:*:native/make", + "*:*:native/perl" + ], + "build": { + "env": [ + "*:*:config_opts=--host=$HOST --prefix=$PREFIX", + "*:*:config_opts=$config_opts --disable-shared" + ], + "steps": [ + "*:*:autoreconf --force --install", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make install DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/lz4.json b/packages/lz4.json new file mode 100644 index 0000000..f5f1e7f --- /dev/null +++ b/packages/lz4.json @@ -0,0 +1,33 @@ +{ + "package": "lz4", + "version": "v1.10.0", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "ebb370ca83af193212df4dcbadcc5d87bc0de2f0", + "url": "https://github.com/lz4/lz4.git" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/cmake", + "*:*:native/cmake-toolchain", + "*:*:native/make" + ], + "patches": [ + "fix_declaration.patch" + ], + "build": { + "env": [ + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" + ], + "steps": [ + "*:*:mkdir -p build/cmake/build", + "*:*:cd build/cmake/build && cmake .. $config_opts", + "*:*:cd build/cmake/build && make -j$NUM_CORES", + "*:*:cd build/cmake/build && make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/dpkg.json b/packages/native/dpkg.json new file mode 100644 index 0000000..5632f6a --- /dev/null +++ b/packages/native/dpkg.json @@ -0,0 +1,37 @@ +{ + "package": "native/dpkg", + "version": "1.23.3", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "f3ad53337eaee92cbeb1a7c73e98d552c3a8186f", + "url": "https://git.dpkg.org/git/dpkg/dpkg.git" + } + ], + "dependencies": [ + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/gettext", + "*:*:native/libmd", + "*:*:native/libtool", + "*:*:native/m4", + "*:*:native/make", + "*:*:native/patch", + "*:*:native/perl", + "*:*:native/pkgconf", + "*:*:native/tar" + ], + "build": { + "env": [ + "*:*:config_opts=--host=$HOST --prefix=$PREFIX/native", + "*:*:PERL_LIBDIR=$PREFIX/native/lib/perl5/site_perl/5.42.0" + ], + "steps": [ + "*:*:autoreconf --force --install", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make install DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/native/go@1.25.json b/packages/native/go@1.25.json index 1c3810b..8eef747 100644 --- a/packages/native/go@1.25.json +++ b/packages/native/go@1.25.json @@ -11,8 +11,8 @@ ], "dependencies": [ "*:*:native/7zip", - "darwin_arm64:*:native/go-bin@1.25", - "*:*:native/sed" + "*:*:native/sed", + "darwin_arm64:*:native/go-bin@1.25" ], "build": { "env": [ diff --git a/packages/native/libmd.json b/packages/native/libmd.json new file mode 100644 index 0000000..8a73ed4 --- /dev/null +++ b/packages/native/libmd.json @@ -0,0 +1,33 @@ +{ + "package": "native/libmd", + "version": "1.1.0", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "d5b8e853989a73f8fff9dc4e00dccd0b691b84f9", + "url": "https://github.com/guillemj/libmd.git" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/gettext", + "*:*:native/libtool", + "*:*:native/m4", + "*:*:native/make", + "*:*:native/perl" + ], + "build": { + "env": [ + "*:*:config_opts=--host=$HOST --prefix=$PREFIX/native" + ], + "steps": [ + "*:*:autoreconf --force --install", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make install DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/native/tar.json b/packages/native/tar.json new file mode 100644 index 0000000..b86ad2e --- /dev/null +++ b/packages/native/tar.json @@ -0,0 +1,27 @@ +{ + "package": "native/tar", + "version": "1.35", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "4d62ff37342ec7aed748535323930c7cf94acf71c3591882b26a7ea50f3edc16", + "url": "http://ftpmirror.gnu.org/gnu/tar/tar-1.35.tar.xz" + } + ], + "dependencies": [ + "*:*:native/libiconv", + "*:*:native/make" + ], + "build": { + "env": [ + "*:*:config_opts=--prefix=$PREFIX/native", + "darwin_*:*:LIBS=-liconv" + ], + "steps": [ + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/triehash.json b/packages/native/triehash.json new file mode 100644 index 0000000..7571faf --- /dev/null +++ b/packages/native/triehash.json @@ -0,0 +1,24 @@ +{ + "package": "native/triehash", + "version": "1.6.1-patch", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "e0bd5e08395bcd5ae105ad279d8d3ba67e8b738b", + "url": "https://github.com/julian-klode/triehash.git" + } + ], + "dependencies": [ + "*:*:native/perl", + "*:*:native/sed" + ], + "build": { + "env": [], + "steps": [ + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:sed -i.bak '1s|^#!/usr/bin/perl -w|#!'\"$PREFIX\"'/native/bin/perl|' triehash.pl", + "*:*:cp triehash.pl $STAGING_DIR$PREFIX/native/bin/triehash" + ] + } +} \ No newline at end of file diff --git a/packages/native/xar.json b/packages/native/xar.json index 430ad04..ea30d42 100644 --- a/packages/native/xar.json +++ b/packages/native/xar.json @@ -4,9 +4,9 @@ "type": "native", "download": [ { - "kind": "tar.gz", - "sha256": "0ef6618d4b841c16d16ff6c9b0f1cd908f5f785ba08bef50178b293a7d170ff4", - "url": "https://github.com/tpoechtrager/xar/archive/5fa4675419cfec60ac19a9c7f7c2d0e7c831a497.tar.gz" + "kind": "git", + "sha256": "5fa4675419cfec60ac19a9c7f7c2d0e7c831a497", + "url": "https://github.com/tpoechtrager/xar.git" } ], "dependencies": [ diff --git a/packages/unistring.json b/packages/unistring.json new file mode 100644 index 0000000..8772c2b --- /dev/null +++ b/packages/unistring.json @@ -0,0 +1,29 @@ +{ + "package": "unistring", + "version": "1.4.1", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "12542ad7619470efd95a623174dcd4b364f2483caf708c6bee837cb53a54cb9d", + "url": "http://ftpmirror.gnu.org/gnu/libunistring/libunistring-1.4.1.tar.gz" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/make", + "*:*:native/sed" + ], + "build": { + "env": [ + "*:*:config_opts=--prefix=$PREFIX", + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --enable-static" + ], + "steps": [ + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/xxhash.json b/packages/xxhash.json new file mode 100644 index 0000000..d0183c2 --- /dev/null +++ b/packages/xxhash.json @@ -0,0 +1,29 @@ +{ + "package": "xxhash", + "version": "v0.8.3-dev", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "66979328cf3f15cecdc61ea58c9f81e6071f8983", + "url": "https://github.com/Cyan4973/xxHash.git" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/cmake", + "*:*:native/cmake-toolchain", + "*:*:native/make" + ], + "build": { + "env": [ + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" + ], + "steps": [ + "*:*:cmake -S build/cmake -B cmake_build $config_opts", + "*:*:cd cmake_build && make -j$NUM_CORES", + "*:*:cd cmake_build && make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/xz.json b/packages/xz.json index b86f3c2..2d9fb26 100644 --- a/packages/xz.json +++ b/packages/xz.json @@ -30,16 +30,9 @@ "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --enable-static", "*:*:config_opts=$config_opts --disable-doc", - "*:*:config_opts=$config_opts --disable-scripts", - "*:*:config_opts=$config_opts --disable-xz", - "*:*:config_opts=$config_opts --disable-xzdec", - "*:*:config_opts=$config_opts --disable-lzmadec", - "*:*:config_opts=$config_opts --disable-lzmainfo", - "*:*:config_opts=$config_opts --disable-lzma-links", "*:*:SKIP_WERROR_CHECK=yes" ], "steps": [ - "*:*:pwd", "*:*:./autogen.sh --no-po4a", "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES", diff --git a/sources.json b/sources.json index 0eedd39..ee6e03f 100644 --- a/sources.json +++ b/sources.json @@ -838,11 +838,21 @@ "38d2fe11b9df521727fcca23c9dac086ce8378d3" ] }, + "https://git.dpkg.org/git/dpkg/dpkg.git": { + "refs": [ + "f3ad53337eaee92cbeb1a7c73e98d552c3a8186f" + ] + }, "https://git.kernel.org/pub/scm/libs/libcap/libcap.git": { "refs": [ "413789501269f0f258a6716c6fa3edae178ba4a3" ] }, + "https://github.com/Cyan4973/xxHash.git": { + "refs": [ + "66979328cf3f15cecdc61ea58c9f81e6071f8983" + ] + }, "https://github.com/MrCyjaneK/cmake-toolchain.git": { "refs": [ "c4e7b0e5f437121d1b9c05bc5c43dac75371d799" @@ -868,11 +878,21 @@ "55ea777e8d567e5e86ffac917c28815ac54cc341" ] }, + "https://github.com/guillemj/libmd.git": { + "refs": [ + "d5b8e853989a73f8fff9dc4e00dccd0b691b84f9" + ] + }, "https://github.com/ip7z/7zip.git": { "refs": [ "5e96a8279489832924056b1fa82f29d5837c9469" ] }, + "https://github.com/julian-klode/triehash.git": { + "refs": [ + "e0bd5e08395bcd5ae105ad279d8d3ba67e8b738b" + ] + }, "https://github.com/libffi/libffi.git": { "refs": [ "e2eda0cf72a0598b44278cc91860ea402273fa29" @@ -888,6 +908,11 @@ "450f52eec88f728c89a9efd667dbeaf2dad93826" ] }, + "https://github.com/lz4/lz4.git": { + "refs": [ + "ebb370ca83af193212df4dcbadcc5d87bc0de2f0" + ] + }, "https://github.com/mesonbuild/meson.git": { "refs": [ "751b09390996163348612f0b106114256305ee40" @@ -908,6 +933,11 @@ "6e31355ca5babc708681bd906eaaef86c3ac93be" ] }, + "https://github.com/tpoechtrager/xar.git": { + "refs": [ + "5fa4675419cfec60ac19a9c7f7c2d0e7c831a497" + ] + }, "https://gitlab.gnome.org/GNOME/glib.git": { "refs": [ "e33be08bda99f453e497064e9e021d6306bbeb7d" @@ -955,6 +985,11 @@ "13a831d76467c88f9e79f9804e2471137ec05331" ] }, + "https://salsa.debian.org/apt-team/apt.git": { + "refs": [ + "6b128124271e94bdb0f4e7850d9286170d712b04" + ] + }, "https://salsa.debian.org/sanvila/unzip.git": { "refs": [ "e811196e79092a387e6ff0b345780710acfab1c4" From 9a48f2e54df95f5e4d5566502116d5c18b0b75e3 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 31 Dec 2025 23:03:07 -0500 Subject: [PATCH 057/200] disable deb by default --- main.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main.go b/main.go index b394f40..6f996c5 100644 --- a/main.go +++ b/main.go @@ -25,7 +25,7 @@ func main() { argVersion := flag.Bool("v", false, "Show version") argShell := flag.Bool("shell", false, "Extract source and start shell with build environment") argCleanup := flag.Bool("cleanup", false, "Remove everything except current built archives") - argDeb := flag.Bool("deb", true, "Create .deb packages") + argDeb := flag.Bool("deb", false, "Create .deb packages") flag.Parse() if *argVersion { fmt.Println("simplybs version 0.0.0") From b3884e2fab5af931f7e88a2bcf9a646684485223 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 12 Jan 2026 21:54:24 -0500 Subject: [PATCH 058/200] minor fixes --- packages/native/crosstool-ng.json | 8 ++++---- packages/native/ct-tools.json | 7 +++---- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index d4956dd..d380361 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -1,12 +1,12 @@ { "package": "native/crosstool-ng", - "version": "1.28.0", + "version": "1.28.0-dirty", "type": "native", "download": [ { - "kind": "tar.xz", - "sha256": "5750e29a2bda5cd8d67900592576b1670a1987a4dcd5e4f6beae09138a1f5699", - "url": "http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.28.0.tar.xz" + "kind": "git", + "sha256": "a3fef85781d3cda0b27388916f3287826aeec177", + "url": "https://github.com/crosstool-ng/crosstool-ng" } ], "dependencies": [ diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 310f4fc..443f6e5 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -41,9 +41,9 @@ }, { "kind": "blob", - "path": ".build/tarballs/glibc-2.38.tar.xz", - "sha256": "fb82998998b2b29965467bc1b69d152e9c307d2cf301c9eafb4555b770ef3fd2", - "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.38.tar.xz" + "path": ".build/tarballs/glibc-2.42.tar.xz", + "sha256": "d1775e32e4628e64ef930f435b67bb63af7599acb6be2b335b9f19f16509f17f", + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.42.tar.xz" }, { "kind": "blob", @@ -161,7 +161,6 @@ "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_GCC_SYSTEM_ZLIB=y' >> .config", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_DEBUG_CT_SAVE_STEPS=y' >> .config", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GDB_CROSS=y/CT_GDB_CROSS=n/g' .config", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GLIBC_VERSION=\"2.42\"/CT_GLIBC_VERSION=\"2.38\"/g' .config", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GDB_GDBSERVER=y/CT_GDB_GDBSERVER=n/g' .config", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_GDB=n' >> .config", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_GDB_NATIVE=n' >> .config", From 483f1d3e26208ffbc1e6ef770fec6a11999ad71d Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 12 Jan 2026 21:55:14 -0500 Subject: [PATCH 059/200] lint --- sources.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sources.json b/sources.json index ee6e03f..0b2a90a 100644 --- a/sources.json +++ b/sources.json @@ -878,6 +878,11 @@ "55ea777e8d567e5e86ffac917c28815ac54cc341" ] }, + "https://github.com/crosstool-ng/crosstool-ng": { + "refs": [ + "a3fef85781d3cda0b27388916f3287826aeec177" + ] + }, "https://github.com/guillemj/libmd.git": { "refs": [ "d5b8e853989a73f8fff9dc4e00dccd0b691b84f9" From be149c3f2e4a1f8ccee25d773c91e092c7a16ba8 Mon Sep 17 00:00:00 2001 From: Parallels Date: Wed, 21 Jan 2026 20:32:41 +0100 Subject: [PATCH 060/200] wip --- deb/convert.go | 410 ------------------------------ main.go | 6 +- pack/build.go | 28 -- pack/info.go | 2 +- pack/main.go | 4 +- packages/apt.json | 42 --- packages/audit-userspace.json | 39 --- packages/berkeleydb@5.json | 58 ----- packages/bzip2.json | 5 +- packages/dpkg.json | 40 --- packages/eudev.json | 31 --- packages/glib.json | 42 --- packages/libcap.json | 22 -- packages/libffi.json | 7 +- packages/libiconv.json | 3 + packages/native/_.json | 4 +- packages/native/crosstool-ng.json | 2 +- packages/native/ct-tools.json | 2 + packages/native/dpkg.json | 3 +- packages/native/rust@1_54_0.json | 9 +- packages/native/rust@1_67_1.json | 2 +- packages/native/rust@1_87_0.json | 2 +- packages/native/rust@1_88_0.json | 2 +- packages/native/rust@1_89_0.json | 2 +- packages/native/rust@1_90_0.json | 2 +- packages/native/tar.json | 2 +- packages/selinux.json | 39 --- sources.json | 37 +-- 28 files changed, 39 insertions(+), 808 deletions(-) delete mode 100644 deb/convert.go delete mode 100644 packages/apt.json delete mode 100644 packages/audit-userspace.json delete mode 100644 packages/berkeleydb@5.json delete mode 100644 packages/dpkg.json delete mode 100644 packages/eudev.json delete mode 100644 packages/glib.json delete mode 100644 packages/libcap.json delete mode 100644 packages/selinux.json diff --git a/deb/convert.go b/deb/convert.go deleted file mode 100644 index 409aab1..0000000 --- a/deb/convert.go +++ /dev/null @@ -1,410 +0,0 @@ -package deb - -import ( - "archive/tar" - "compress/gzip" - "fmt" - "io" - "os" - "path/filepath" - "strings" - "time" - - "github.com/mrcyjanek/simplybs/host" -) - -func ConvertTarGzToDeb(tarGzPath, debPath, packageName, version string, h *host.Host) error { - return ConvertTarGzToDebWithSources(tarGzPath, debPath, packageName, version, nil, h) -} - -func ConvertTarGzToDebWithSources(tarGzPath, debPath, packageName, version string, sources []SourceInfo, h *host.Host) error { - tmpDir, err := os.MkdirTemp("", "deb-build-*") - if err != nil { - return fmt.Errorf("failed to create temp directory: %w", err) - } - defer os.RemoveAll(tmpDir) - - debRoot := filepath.Join(tmpDir, "deb") - dataDir := filepath.Join(debRoot, "data") - controlDir := filepath.Join(debRoot, "control") - - if err := os.MkdirAll(dataDir, 0755); err != nil { - return fmt.Errorf("failed to create data directory: %w", err) - } - if err := os.MkdirAll(controlDir, 0755); err != nil { - return fmt.Errorf("failed to create control directory: %w", err) - } - - installPrefix := h.GetEnvPath() - if err := extractTarGzToDebData(tarGzPath, dataDir, installPrefix); err != nil { - return fmt.Errorf("failed to extract tar.gz: %w", err) - } - - if err := createControlFiles(controlDir, packageName, version, sources, h.Triplet); err != nil { - return fmt.Errorf("failed to create control files: %w", err) - } - - if err := createDebArchive(debRoot, debPath); err != nil { - return fmt.Errorf("failed to create deb archive: %w", err) - } - - return nil -} - -type SourceInfo struct { - Kind string - URL string -} - -func extractTarGzToDebData(tarGzPath, dataDir, installPrefix string) error { - file, err := os.Open(tarGzPath) - if err != nil { - return err - } - defer file.Close() - - gzr, err := gzip.NewReader(file) - if err != nil { - return err - } - defer gzr.Close() - - tr := tar.NewReader(gzr) - - for { - header, err := tr.Next() - if err == io.EOF { - break - } - if err != nil { - return err - } - - if header.Name == "." || header.Name == "" { - continue - } - - targetPath := filepath.Join(dataDir, installPrefix, header.Name) - - if header.Typeflag == tar.TypeDir { - if err := os.MkdirAll(targetPath, os.FileMode(header.Mode)); err != nil { - return err - } - continue - } - - if header.Typeflag == tar.TypeSymlink { - if err := os.MkdirAll(filepath.Dir(targetPath), 0755); err != nil { - return err - } - if err := os.Symlink(header.Linkname, targetPath); err != nil { - return err - } - continue - } - - if header.Typeflag == tar.TypeReg || header.Typeflag == tar.TypeRegA { - if err := os.MkdirAll(filepath.Dir(targetPath), 0755); err != nil { - return err - } - - outFile, err := os.OpenFile(targetPath, os.O_CREATE|os.O_WRONLY|os.O_TRUNC, os.FileMode(header.Mode)) - if err != nil { - return err - } - - if _, err := io.Copy(outFile, tr); err != nil { - outFile.Close() - return err - } - outFile.Close() - } - } - - return nil -} - -func createControlFiles(controlDir, packageName, version string, sources []SourceInfo, triplet string) error { - safePackageName := strings.ReplaceAll(packageName, "/", "-") - safePackageName = strings.ReplaceAll(safePackageName, "@", "-") - safePackageName = "sbs-" + safePackageName - - debVersion := sanitizeDebVersion(version) - - description := buildDescription(packageName, triplet, sources) - - controlContent := fmt.Sprintf(`Package: %s -Version: %s -Architecture: %s -Maintainer: simplybs -Description: %s -Section: devel -Priority: optional -`, - safePackageName, - debVersion, - getDebArchitecture(triplet), - description, - ) - - controlPath := filepath.Join(controlDir, "control") - if err := os.WriteFile(controlPath, []byte(controlContent), 0644); err != nil { - return err - } - - return nil -} - -func sanitizeDebVersion(version string) string { - version = strings.TrimSpace(version) - if version == "" { - return "1.0" - } - - if idx := strings.Index(version, ":"); idx != -1 { - upstream := version[idx+1:] - if len(upstream) > 0 && !(upstream[0] >= '0' && upstream[0] <= '9') { - return version[:idx+1] + "0" + upstream - } - return version - } - - if !(version[0] >= '0' && version[0] <= '9') { - return "0:0" + version - } - return version -} - -func isAlphanumeric(r rune) bool { - return (r >= '0' && r <= '9') || (r >= 'a' && r <= 'z') || (r >= 'A' && r <= 'Z') -} - -func buildDescription(packageName, triplet string, sources []SourceInfo) string { - var desc strings.Builder - - desc.WriteString(fmt.Sprintf("%s built for %s", packageName, triplet)) - - if len(sources) > 0 { - desc.WriteString("\n") - desc.WriteString(" Built from sources:") - for _, src := range sources { - desc.WriteString("\n") - switch src.Kind { - case "git": - desc.WriteString(fmt.Sprintf(" - Git repository: %s", src.URL)) - case "tar.gz", "tar.bz2", "tar.xz": - desc.WriteString(fmt.Sprintf(" - Archive: %s", src.URL)) - case "blob": - desc.WriteString(fmt.Sprintf(" - File: %s", src.URL)) - default: - if src.Kind != "" { - desc.WriteString(fmt.Sprintf(" - %s: %s", src.Kind, src.URL)) - } else { - desc.WriteString(fmt.Sprintf(" - %s", src.URL)) - } - } - } - } - - desc.WriteString("\n") - desc.WriteString(" This package was automatically generated by simplybs.") - - return desc.String() -} - -func getDebArchitecture(triplet string) string { - if strings.Contains(triplet, "aarch64") { - if strings.Contains(triplet, "apple") { - return "arm64" - } - return "arm64" - } - if strings.Contains(triplet, "x86_64") { - return "amd64" - } - if strings.Contains(triplet, "armv7") { - return "armhf" - } - return "all" -} - -func createDebArchive(debRoot, debPath string) error { - if err := os.MkdirAll(filepath.Dir(debPath), 0755); err != nil { - return err - } - - outFile, err := os.Create(debPath) - if err != nil { - return err - } - defer outFile.Close() - - if _, err := outFile.WriteString("!\n"); err != nil { - return err - } - - debianBinary := "2.0\n" - if err := writeArEntryString(outFile, "debian-binary", debianBinary); err != nil { - return err - } - - controlTarPath := filepath.Join(debRoot, "control.tar.gz") - if err := createTarGz(filepath.Join(debRoot, "control"), controlTarPath); err != nil { - return err - } - if err := writeArEntry(outFile, "control.tar.gz", controlTarPath); err != nil { - return err - } - - dataTarPath := filepath.Join(debRoot, "data.tar.gz") - if err := createTarGz(filepath.Join(debRoot, "data"), dataTarPath); err != nil { - return err - } - if err := writeArEntry(outFile, "data.tar.gz", dataTarPath); err != nil { - return err - } - - return nil -} - -func writeArEntry(outFile *os.File, name, filePath string) error { - info, err := os.Stat(filePath) - if err != nil { - return err - } - - file, err := os.Open(filePath) - if err != nil { - return err - } - defer file.Close() - - return writeArEntryFromReader(outFile, name, file, info.Size()) -} - -func writeArEntryString(outFile *os.File, name, content string) error { - return writeArEntryFromReader(outFile, name, strings.NewReader(content), int64(len(content))) -} - -func writeArEntryFromReader(outFile *os.File, name string, reader io.Reader, size int64) error { - // AR header format: name (16 bytes), timestamp (12 bytes), owner/group (6+6 bytes), mode (8 bytes), size (10 bytes), magic (2 bytes) - header := make([]byte, 60) - - // Name (16 bytes, space-padded on the right) - nameBytes := []byte(name) - if len(nameBytes) > 16 { - nameBytes = nameBytes[:16] - } - copy(header[0:16], nameBytes) - - // Pad with spaces - for i := len(nameBytes); i < 16; i++ { - header[i] = ' ' - } - - // Timestamp (12 bytes) - timestamp := fmt.Sprintf("%-12d", time.Now().Unix()) - copy(header[16:28], []byte(timestamp)) - - // Owner/Group (6+6 bytes, default to 0) - copy(header[28:34], []byte("0 ")) - copy(header[34:40], []byte("0 ")) - - // Mode (8 bytes, default to 644) - copy(header[40:48], []byte("644 ")) - - // Size (10 bytes) - sizeStr := fmt.Sprintf("%-10d", size) - copy(header[48:58], []byte(sizeStr)) - - // Magic (2 bytes) - copy(header[58:60], []byte("`\n")) - - if _, err := outFile.Write(header); err != nil { - return err - } - - if _, err := io.Copy(outFile, reader); err != nil { - return err - } - - if size%2 != 0 { - if _, err := outFile.Write([]byte("\n")); err != nil { - return err - } - } - - return nil -} - -func createTarGz(sourceDir, archivePath string) error { - file, err := os.Create(archivePath) - if err != nil { - return err - } - defer file.Close() - - gzw, err := gzip.NewWriterLevel(file, gzip.BestCompression) - if err != nil { - return err - } - defer gzw.Close() - - tw := tar.NewWriter(gzw) - defer tw.Close() - - fixedTime := time.Unix(1, 0) - - return filepath.Walk(sourceDir, func(path string, info os.FileInfo, err error) error { - if err != nil { - return err - } - - if path == sourceDir { - return nil - } - - relPath, err := filepath.Rel(sourceDir, path) - if err != nil { - return err - } - - header, err := tar.FileInfoHeader(info, "") - if err != nil { - return err - } - - header.Name = filepath.ToSlash(relPath) - header.ModTime = fixedTime - header.AccessTime = fixedTime - header.ChangeTime = fixedTime - - if info.Mode()&os.ModeSymlink != 0 { - linkTarget, err := os.Readlink(path) - if err != nil { - return err - } - header.Typeflag = tar.TypeSymlink - header.Linkname = linkTarget - header.Size = 0 - } - - if err := tw.WriteHeader(header); err != nil { - return err - } - - if info.Mode().IsRegular() { - file, err := os.Open(path) - if err != nil { - return err - } - defer file.Close() - - if _, err := io.Copy(tw, file); err != nil { - return err - } - } - - return nil - }) -} diff --git a/main.go b/main.go index 6f996c5..d8ca79b 100644 --- a/main.go +++ b/main.go @@ -25,7 +25,6 @@ func main() { argVersion := flag.Bool("v", false, "Show version") argShell := flag.Bool("shell", false, "Extract source and start shell with build environment") argCleanup := flag.Bool("cleanup", false, "Remove everything except current built archives") - argDeb := flag.Bool("deb", false, "Create .deb packages") flag.Parse() if *argVersion { fmt.Println("simplybs version 0.0.0") @@ -66,11 +65,11 @@ func main() { if host == nil { crash.Handle(fmt.Errorf("host %s not supported", h)) } - buildForHost(host, packageNames, *argList, *argExtract, *argBuild, *argShell, *argDeb) + buildForHost(host, packageNames, *argList, *argExtract, *argBuild, *argShell) } } -func buildForHost(host *host.Host, packageNames []*pack.Package, list bool, extract bool, build bool, shell bool, createDeb bool) { +func buildForHost(host *host.Host, packageNames []*pack.Package, list bool, extract bool, build bool, shell bool) { if list { for _, pkg := range packageNames { pack.PrintPackage(pkg.Package, host.Triplet) @@ -85,7 +84,6 @@ func buildForHost(host *host.Host, packageNames []*pack.Package, list bool, extr } if build { - pack.CreateDebPackages = createDeb for _, pkg := range packageNames { pkg.EnsureBuilt(host, true) } diff --git a/pack/build.go b/pack/build.go index 8a26eed..d2c72e1 100644 --- a/pack/build.go +++ b/pack/build.go @@ -11,15 +11,12 @@ import ( "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/crash" - "github.com/mrcyjanek/simplybs/deb" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/utils" downloadpkg "github.com/mrcyjanek/simplybs/utils/download" "github.com/mrcyjanek/simplybs/utils/ifstring" ) -var CreateDebPackages = true - func (p *Package) EnsureBuilt(h *host.Host, buildDependencies bool) { buildPath := p.GenerateBuildPath(h, "built") + ".info.txt" info, err := os.ReadFile(buildPath) @@ -200,31 +197,6 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { } log.Printf("Package built successfully: %s", builtArchivePath) - - if CreateDebPackages && !strings.HasPrefix(p.Package, "native/") { - debPath := p.GenerateBuildPath(h, "deb") + ".deb" - os.MkdirAll(filepath.Dir(debPath), 0755) - - packageName := p.Package - hash := p.GeneratePackageInfoShortHash(h) - debVersion := fmt.Sprintf("%s-%s", p.Version, hash) - - sources := make([]deb.SourceInfo, 0, len(p.Download)) - for _, dl := range p.Download { - if dl.Kind != "none" { - sources = append(sources, deb.SourceInfo{ - Kind: dl.Kind, - URL: dl.URL, - }) - } - } - - log.Printf("Converting to .deb: %s", debPath) - err = deb.ConvertTarGzToDebWithSources(builtArchivePath, debPath, packageName, debVersion, sources, h) - if err != nil { - log.Fatalln("Failed to convert to .deb: %v", err) - } - } } func writeDotEnv(path string, env []string) { diff --git a/pack/info.go b/pack/info.go index 703384b..5232a9b 100644 --- a/pack/info.go +++ b/pack/info.go @@ -122,7 +122,7 @@ func (p *Package) GenerateBuildPath(h *host.Host, kind string) string { if kind == "source" { log.Fatalf("Source build path is not supported") } - safeName := strings.ReplaceAll(p.ShortName(h), "/", "@") + safeName := strings.ReplaceAll(p.ShortName(h), "/", "_") return filepath.Join(host.DataDir(), kind, h.Triplet, safeName) } diff --git a/pack/main.go b/pack/main.go index 4c09c8f..78b2fa7 100644 --- a/pack/main.go +++ b/pack/main.go @@ -114,7 +114,7 @@ func ScanBuiltFiles(packageName string, packageVersion string) []BuiltFile { for _, builder := range builder.Builders { for _, target := range targets { - safePackageName := strings.ReplaceAll(packageName, "/", "@") + safePackageName := strings.ReplaceAll(packageName, "/", "_") buildOutputDir := filepath.Join(buildlibDir, builder, "built", target, safePackageName) buildOutputDir = filepath.Dir(buildOutputDir) @@ -192,7 +192,7 @@ func Cleanup() { currentBuildID := pkg.GeneratePackageInfoShortHash(host.SupportedHosts[target]) currentFileName := fmt.Sprintf("%s-%s-%s", pkg.Package, pkg.Version, currentBuildID) - currentFileName = strings.ReplaceAll(currentFileName, "/", "@") + currentFileName = strings.ReplaceAll(currentFileName, "/", "_") archPath := filepath.Join(builder, "built", target, currentFileName+".tar.gz") infoPath := filepath.Join(builder, "built", target, currentFileName+".info.txt") diff --git a/packages/apt.json b/packages/apt.json deleted file mode 100644 index 102fbf9..0000000 --- a/packages/apt.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "package": "apt", - "version": "2.86.0", - "type": "host", - "download": [ - { - "kind": "git", - "sha256": "6b128124271e94bdb0f4e7850d9286170d712b04", - "url": "https://salsa.debian.org/apt-team/apt.git" - } - ], - "dependencies": [ - "*:*:native/_", - "*:*:native/cmake", - "*:*:native/cmake-toolchain", - "*:*:native/dpkg", - "*:*:native/make", - "*:*:native/perl", - "*:*:native/pkgconf", - "*:*:native/triehash", - "*:*:berkeleydb@5", - "*:*:gettext", - "*:*:gtest", - "*:*:lz4", - "*:*:openssl", - "*:*:xxhash", - "*:*:xz", - "*:*:zlib" - ], - "build": { - "env": [ - "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", - "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", - "*:*:config_opts=$config_opts -DWITH_DOC=NO" - ], - "steps": [ - "*:*:mkdir build", - "*:*:cd build && cmake $config_opts ..", - "*:*:cd build && make install DESTDIR=$STAGING_DIR" - ] - } -} \ No newline at end of file diff --git a/packages/audit-userspace.json b/packages/audit-userspace.json deleted file mode 100644 index 6b5789e..0000000 --- a/packages/audit-userspace.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "package": "audit-userspace", - "version": "4.1.2", - "type": "host", - "download": [ - { - "kind": "git", - "sha256": "4db9c700b0c8b24a8113bc00d98101228e7d0212", - "url": "https://github.com/linux-audit/audit-userspace" - } - ], - "dependencies": [ - "*:*-linux-gnu:native/_", - "*:*-linux-gnu:native/autoconf", - "*:*-linux-gnu:native/automake", - "*:*-linux-gnu:native/libtool", - "*:*-linux-gnu:native/m4", - "*:*-linux-gnu:native/make", - "*:*-linux-gnu:native/perl" - ], - "build": { - "env": [ - "*:*-linux-gnu:config_opts=--prefix=$PREFIX --host=$HOST --disable-shared --enable-static", - "*:*-linux-gnu:config_opts=$config_opts --with-python3=no", - "*:*-linux-gnu:config_opts=$config_opts --enable-gssapi-krb5=no", - "*:arm*:config_opts=$config_opts --with-arm=no", - "*:aarch64-*:config_opts=$config_opts --with-aarch64=no", - "*:*-linux-gnu:config_opts=$config_opts --with-libcap-ng=no", - "*:*-linux-gnu:config_opts=$config_opts --with-io_uring=no", - "*:*-linux-gnu:config_opts=$config_opts --disable-zos-remote" - ], - "steps": [ - "*:*-linux-gnu:autoreconf -f --install", - "*:*-linux-gnu:./configure $config_opts", - "*:*-linux-gnu:make -j$NUM_CORES", - "*:*-linux-gnu:make install DESTDIR=$STAGING_DIR" - ] - } -} \ No newline at end of file diff --git a/packages/berkeleydb@5.json b/packages/berkeleydb@5.json deleted file mode 100644 index 51e414b..0000000 --- a/packages/berkeleydb@5.json +++ /dev/null @@ -1,58 +0,0 @@ -{ - "package": "berkeleydb@5", - "version": "5.3.28", - "type": "host", - "download": [ - { - "kind": "tar.gz", - "sha256": "e0a992d740709892e81f9d93f06daf305cf73fb81b545afe72478043172c3628", - "url": "https://download.oracle.com/berkeley-db/db-5.3.28.tar.gz" - }, - { - "kind": "blob", - "path": "patch/clang.diff", - "sha256": "86111b0965762f2c2611b302e4a95ac8df46ad24925bbb95a1961542a1542e40", - "url": "https://raw.githubusercontent.com/Homebrew/homebrew-core/1cf441a0/Patches/berkeley-db@4/clang.diff" - }, - { - "kind": "blob", - "path": "patch/patch-src_dbinc_db.in", - "sha256": "302b78f3e1f131cfbf91b24e53a5c79e1d9234c143443ab936b9e5ad08dea5b6", - "url": "https://raw.githubusercontent.com/NetBSD/pkgsrc/6034096dc85159a02116524692545cf5752c8f33/databases/db5/patches/patch-src_dbinc_db.in" - }, - { - "kind": "blob", - "path": "patch/configure-pre-0.4.2.418-big_sur.diff", - "sha256": "83af02f2aa2b746bb7225872cab29a253264be49db0ecebb12f841562d9a2923", - "url": "https://raw.githubusercontent.com/Homebrew/homebrew-core/1cf441a0/Patches/libtool/configure-pre-0.4.2.418-big_sur.diff" - } - ], - "dependencies": [ - "*:*:native/_", - "*:*:native/make", - "*:*:native/patch" - ], - "build": { - "env": [ - "*:*:config_opts=--prefix=$PREFIX", - "*:*:config_opts=$config_opts --mandir=$PREFIX/share/man", - "*:*:config_opts=$config_opts --localstatedir=$HOME/.berkeley5.3", - "*:*:config_opts=$config_opts --sysconfdir=$PREFIX/etc", - "*:*:config_opts=$config_opts --libexecdir=$PREFIX/lib", - "*:*:config_opts=$config_opts --enable-cxx", - "*:*:config_opts=$config_opts --enable-static", - "*:*:config_opts=$config_opts --disable-java", - "*:*:config_opts=$config_opts --disable-sql", - "*:*:config_opts=$config_opts --disable-mutexsupport", - "*:*:config_opts=$config_opts --enable-dbm" - ], - "steps": [ - "*:*:cd src && patch -p1 < ../patch/clang.diff", - "*:*:patch -p0 < ./patch/patch-src_dbinc_db.in", - "*:*:cd dist && patch -p1 < ../patch/configure-pre-0.4.2.418-big_sur.diff", - "*:*:cd build_unix && ../dist/configure $config_opts", - "*:*:cd build_unix && make -j$NUM_CORES", - "*:*:cd build_unix && make install DESTDIR=$STAGING_DIR" - ] - } -} \ No newline at end of file diff --git a/packages/bzip2.json b/packages/bzip2.json index db1bc22..95dbd18 100644 --- a/packages/bzip2.json +++ b/packages/bzip2.json @@ -15,7 +15,10 @@ ], "build": { "steps": [ - "*:*:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", + "*:*:sed -i.bak 's|^CC=.*|CC ?= $CC|' Makefile", + "*:*:sed -i.bak 's|^AR=.*|AR ?= $AR|' Makefile", + "*:*:sed -i.bak 's|^RANLIB=.*|RANLIB ?= $RANLIB|' Makefile", + "*:*:sed -i.bak 's|^CFLAGS=.*|CFLAGS ?= $CFLAGS $BIGFILES|' Makefile", "*:*:make -j$NUM_CORES", "*:*:make install PREFIX=$STAGING_DIR$PREFIX" ] diff --git a/packages/dpkg.json b/packages/dpkg.json deleted file mode 100644 index 750cd59..0000000 --- a/packages/dpkg.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "package": "dpkg", - "version": "1.23.3", - "type": "host", - "download": [ - { - "kind": "git", - "sha256": "f3ad53337eaee92cbeb1a7c73e98d552c3a8186f", - "url": "https://git.dpkg.org/git/dpkg/dpkg.git" - } - ], - "dependencies": [ - "*:*:native/_", - "*:*:native/autoconf", - "*:*:native/automake", - "*:*:native/dpkg", - "*:*:native/gettext", - "*:*:native/libtool", - "*:*:native/m4", - "*:*:native/make", - "*:*:native/patch", - "*:*:native/perl", - "*:*:native/pkgconf", - "*:*:native/tar", - "*:*:libmd" - ], - "build": { - "env": [ - "*:*:OSXCROSS_PKG_CONFIG_USE_NATIVE_VARIABLES=1", - "*:*:config_opts=--host=$HOST --prefix=$PREFIX", - "*:*:PERL_LIBDIR=$PREFIX/lib/perl5/site_perl/5.42.0" - ], - "steps": [ - "*:*:autoreconf --force --install", - "*:*:./configure $config_opts", - "*:*:make -j$NUM_CORES", - "*:*:make install DESTDIR=$STAGING_DIR" - ] - } -} \ No newline at end of file diff --git a/packages/eudev.json b/packages/eudev.json deleted file mode 100644 index 0255e19..0000000 --- a/packages/eudev.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "package": "eudev", - "version": "v3.2.14", - "type": "host", - "download": [ - { - "kind": "tar.gz", - "sha256": "8da4319102f24abbf7fff5ce9c416af848df163b29590e666d334cc1927f006f", - "url": "http://github.com/eudev-project/eudev/releases/download/v3.2.14/eudev-3.2.14.tar.gz" - } - ], - "dependencies": [ - "*:*-linux-gnu:native/_", - "*:*-linux-gnu:selinux" - ], - "build": { - "env": [ - "*:*:config_opts=--host=$HOST --prefix=$PREFIX", - "*:*:config_opts=$config_opts --disable-gudev --disable-introspection --disable-hwdb --disable-manpages --disable-shared", - "*:*-linux-gnu:ARFLAGS=rcs", - "*:*:config_opts=$config_opts AR_FLAGS=$ARFLAGS", - "*:*:SHOULD_BUILD=echo", - "*:*-linux-gnu:SHOULD_BUILD=" - ], - "steps": [ - "*:*:$SHOULD_BUILD ./configure $config_opts", - "*:*:$SHOULD_BUILD make -j$NUM_CORES", - "*:*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install" - ] - } -} \ No newline at end of file diff --git a/packages/glib.json b/packages/glib.json deleted file mode 100644 index fafda30..0000000 --- a/packages/glib.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "package": "glib", - "version": "2.86.0", - "type": "host", - "download": [ - { - "kind": "git", - "sha256": "e33be08bda99f453e497064e9e021d6306bbeb7d", - "url": "https://gitlab.gnome.org/GNOME/glib.git" - }, - { - "kind": "git", - "path": "subprojects/gvdb", - "sha256": "2b42fc75f09dbe1cd1057580b5782b08f2dcb400", - "url": "https://gitlab.gnome.org/GNOME/gvdb" - }, - { - "kind": "git", - "path": "subprojects/sysprof", - "sha256": "02e50efa49885a5a20a84a8cd7feda10ae7e7e98", - "url": "https://gitlab.gnome.org/GNOME/sysprof" - } - ], - "dependencies": [ - "*:*:native/_", - "*:*:native/meson", - "*:*:native/ninja", - "*:*:native/python@3.11", - "*:*:libffi", - "*:*:libiconv", - "*:*:pcre2", - "*:*:unwind", - "*:*:zlib" - ], - "build": { - "steps": [ - "*:*:meson setup --prefix $PREFIX _build", - "*:*:meson compile -C _build -j$NUM_CORES", - "*:*:meson install -C _build DESTDIR=$STAGING_DIR" - ] - } -} \ No newline at end of file diff --git a/packages/libcap.json b/packages/libcap.json deleted file mode 100644 index a000622..0000000 --- a/packages/libcap.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "package": "libcap", - "version": "v1.2.76", - "type": "host", - "download": [ - { - "kind": "git", - "sha256": "413789501269f0f258a6716c6fa3edae178ba4a3", - "url": "https://git.kernel.org/pub/scm/libs/libcap/libcap.git" - } - ], - "dependencies": [ - "*:*:native/_" - ], - "build": { - "steps": [ - "*:*:make prefix=$PREFIX -j$NUM_CORES", - "*:*:make prefix=$PREFIX DESTDIR=$STAGING_DIR install", - "*:x86_64-linux-gnu:mv $STAGING_DIR$PREFIX/lib64 $STAGING_DIR$PREFIX/lib" - ] - } -} \ No newline at end of file diff --git a/packages/libffi.json b/packages/libffi.json index 34d3876..e54e830 100644 --- a/packages/libffi.json +++ b/packages/libffi.json @@ -10,7 +10,12 @@ } ], "dependencies": [ - "*:*-linux-gnu:native/_" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/autoconf", + "*:*-linux-gnu:native/automake", + "*:*-linux-gnu:native/libtool", + "*:*-linux-gnu:native/m4", + "*:*-linux-gnu:native/perl" ], "build": { "steps": [ diff --git a/packages/libiconv.json b/packages/libiconv.json index 208fed1..58ba040 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -17,15 +17,18 @@ "build": { "env": [ "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*:CPPFLAGS=$CPPFLAGS -fPIC", "*:*:BUILD_HOST=$HOST", "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios", "*:*:config_opts=--host=$BUILD_HOST --prefix=$PREFIX --disable-nls --enable-static --disable-shared", + "*:*:config_opts=$config_opts --disable-malloca", "*:*:config_opts=$config_opts", "*:*linux:config_opts=$config_opts --with-pic" ], "steps": [ "*:*:cp -f $PREFIX/native/share/config/config.guess build-aux/", "*:*:cp -f $PREFIX/native/share/config/config.sub build-aux/", + "*:*:sed -i.bak 's|#include |#include \"stdckdint.in.h\"|' ./srclib/malloca.c", "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" diff --git a/packages/native/_.json b/packages/native/_.json index c67897a..90ef9fe 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -23,7 +23,9 @@ "*:*:mkdir -p $STAGING_DIR$PREFIX", "*:*:rm -rf $STAGING_DIR$PREFIX", "*:*:cp -a $PREFIX $STAGING_DIR$PREFIX", - "*:*:rm -rf $STAGING_DIR$PREFIX/native/bootstrap" + "*:*:rm -rf $STAGING_DIR$PREFIX/native/bootstrap", + "*:*:mkdir -p $STAGING_DIR$HOME", + "*:*:touch $STAGING_DIR$HOME/.zshrc" ] } } \ No newline at end of file diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index d380361..19c7b6d 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "a3fef85781d3cda0b27388916f3287826aeec177", + "sha256": "620b909cd0713f68084378b63cf61b5232757b90", "url": "https://github.com/crosstool-ng/crosstool-ng" } ], diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 443f6e5..cd3fd29 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -165,6 +165,7 @@ "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_GDB=n' >> .config", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_GDB_NATIVE=n' >> .config", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_PREFIX_DIR_RO=n' >> .config", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_MULTILIB=y' >> .config", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET_ALT-objcopy $PREFIX/native/bin/objcopy", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET_ALT-readelf $PREFIX/native/bin/readelf", "*:x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ar $PREFIX/native/bin/ar", @@ -184,6 +185,7 @@ "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:mkdir -p $STAGING_DIR$PREFIX/include", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/$TOOL_TARGET/include/c++/15.2.0/* $STAGING_DIR$PREFIX/include", "*:x86_64-linux-gnu:cp -a $STAGING_DIR$PREFIX/include/x86_64-multilib-linux-gnu/. $STAGING_DIR$PREFIX/include", + "*:aarch64-linux-gnu:cp -a $STAGING_DIR$PREFIX/include/aarch64-unknown-linux-gnu/. $STAGING_DIR$PREFIX/include", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-addr2line $STAGING_DIR$PREFIX/native/bin/addr2line", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ar $STAGING_DIR$PREFIX/native/bin/ar", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-as $STAGING_DIR$PREFIX/native/bin/as", diff --git a/packages/native/dpkg.json b/packages/native/dpkg.json index 5632f6a..12dd971 100644 --- a/packages/native/dpkg.json +++ b/packages/native/dpkg.json @@ -28,7 +28,8 @@ "*:*:PERL_LIBDIR=$PREFIX/native/lib/perl5/site_perl/5.42.0" ], "steps": [ - "*:*:autoreconf --force --install", + "*:*:git tag -a 1.23.3 -m 'Release 1.23.3'", + "*:*:./autogen", "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make install DESTDIR=$STAGING_DIR" diff --git a/packages/native/rust@1_54_0.json b/packages/native/rust@1_54_0.json index 4e14cde..0a1b1a6 100644 --- a/packages/native/rust@1_54_0.json +++ b/packages/native/rust@1_54_0.json @@ -24,24 +24,27 @@ ], "build": { "env": [ - "*:*:PARLEVEL=$NUM_CORES" + "*:*:PARLEVEL=$NUM_CORES", + "linux_arm64:*:RUSTC_TARGET=aarch64-unknown-linux-gnu" ], "steps": [ "*:*:patch -p1 < $PATCH_DIR/rust/codegen_c.cpp.patch", "darwin_arm64:*:sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=aarch64/' script-overrides/stable-1.54.0-macos/build_std.txt", - "linux_arm64:*:sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=arm64/' script-overrides/stable-1.54.0-linux/build_std.txt", + "linux_arm64:*:sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=aarch64/' script-overrides/stable-1.54.0-linux/build_std.txt", + "*:*:rm script-overrides/stable-1.54.0-*/*.bak", "*:*:sed -i.bak 's/^make$/make $@/' build-1.54.0.sh", "darwin_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-apple-darwin/RUSTC_TARGET ?= aarch64-apple-darwin/' run_rustc/Makefile", "linux_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-unknown-linux-gnu/RUSTC_TARGET ?= aarch64-unknown-linux-gnu/' run_rustc/Makefile", + "linux_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-unknown-linux-gnu/RUSTC_TARGET ?= aarch64-unknown-linux-gnu/' ./minicargo.mk", "*:*:echo >> build-1.54.0.sh", "*:*:echo make -C run_rustc >> build-1.54.0.sh", "*:*:env -i CXXFLAGS_EXTRA=\"$CFLAGS\" LINKFLAGS_EXTRA=\"$LDFLAGS\" PATH=$PATH PARLEVEL=$NUM_CORES ./build-1.54.0.sh -j$NUM_CORES", - "*:none:# FIXME bad dylib paths embedded in the rustc binary, forcing install_name_tool dark magic", "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", "*:*:mkdir -p $STAGING_DIR$PREFIX/native/lib", "*:*:cp -a run_rustc/output-1.54.0/prefix/bin/* $STAGING_DIR$PREFIX/native/bin", "linux_*:*:cp -a run_rustc/output-1.54.0/prefix/lib/rustlib/*/lib/*.so $STAGING_DIR$PREFIX/native/lib", "*:*:cp -a run_rustc/output-1.54.0/prefix/lib/* $STAGING_DIR$PREFIX/native/lib", + "*:none:# FIXME bad dylib paths embedded in the rustc binary, forcing install_name_tool dark magic", "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-rustc/aarch64-apple-darwin/release/deps/librustc_driver.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib $STAGING_DIR$PREFIX/native/bin/rustc_binary", "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/libstd.dylib $STAGING_DIR$PREFIX/native/bin/rustc_binary", "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/libstd.dylib $STAGING_DIR$PREFIX/native/lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib" diff --git a/packages/native/rust@1_67_1.json b/packages/native/rust@1_67_1.json index ecbb789..f13cebd 100644 --- a/packages/native/rust@1_67_1.json +++ b/packages/native/rust@1_67_1.json @@ -37,7 +37,7 @@ "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -i PATH=$PATH python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:PATH=$PATH python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", diff --git a/packages/native/rust@1_87_0.json b/packages/native/rust@1_87_0.json index d1c0160..941821d 100644 --- a/packages/native/rust@1_87_0.json +++ b/packages/native/rust@1_87_0.json @@ -34,7 +34,7 @@ "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage0-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_88_0.json b/packages/native/rust@1_88_0.json index fb78c0b..82a9d6e 100644 --- a/packages/native/rust@1_88_0.json +++ b/packages/native/rust@1_88_0.json @@ -34,7 +34,7 @@ "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_89_0.json b/packages/native/rust@1_89_0.json index 25340b9..d8025ac 100644 --- a/packages/native/rust@1_89_0.json +++ b/packages/native/rust@1_89_0.json @@ -34,7 +34,7 @@ "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_90_0.json b/packages/native/rust@1_90_0.json index 34b1a39..22bc5ae 100644 --- a/packages/native/rust@1_90_0.json +++ b/packages/native/rust@1_90_0.json @@ -43,7 +43,7 @@ "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" ] } } \ No newline at end of file diff --git a/packages/native/tar.json b/packages/native/tar.json index b86ad2e..dd0c18a 100644 --- a/packages/native/tar.json +++ b/packages/native/tar.json @@ -16,7 +16,7 @@ "build": { "env": [ "*:*:config_opts=--prefix=$PREFIX/native", - "darwin_*:*:LIBS=-liconv" + "*:*:LIBS=-liconv" ], "steps": [ "*:*:./configure $config_opts", diff --git a/packages/selinux.json b/packages/selinux.json deleted file mode 100644 index 30eb37c..0000000 --- a/packages/selinux.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "package": "selinux", - "version": "3.9", - "type": "host", - "download": [ - { - "kind": "git", - "sha256": "919e9e64cc4b20f5a1e4df1e38cce1bfe15aff09", - "url": "https://github.com/SELinuxProject/selinux" - } - ], - "dependencies": [ - "*:*:native/_", - "*:*:native/flex", - "*:*:native/python@3.11", - "*:*:audit-userspace", - "*:*:bzip2", - "*:*:glib", - "*:*:libcap", - "*:*:libxcrypt", - "*:*:pcre2" - ], - "build": { - "env": [ - "*:*:PANDOC=true" - ], - "steps": [ - "*:*:cd libsepol && make PREFIX=$PREFIX -j$NUM_CORES", - "*:*:cd libsepol && make PREFIX=$PREFIX install && make install PREFIX=$PREFIX DESTDIR=$STAGING_DIR", - "*:*:cd checkpolicy && make y.tab.c", - "*:*:sed -i.bak 's/void yyerror/int yyerror/g' ./checkpolicy/y.tab.*", - "*:*:sed -i.bak 's/XMLTO = xmlto/XMLTO = true/g' ./secilc/Makefile", - "*:*:sed -i.bak 's/$(LIBSELINUX_LDLIBS)/$(LIBSELINUX_LDLIBS) -lsemanage/g' policycoreutils/semodule/Makefile", - "*:*:sed -i.bak 's/$(LIBSELINUX_LDLIBS)/$(LIBSELINUX_LDLIBS) -lsemanage -lsepol/g' policycoreutils/setsebool/Makefile", - "*:*:make PREFIX=$PREFIX -j$NUM_CORES", - "*:*:make PREFIX=$PREFIX install DESTDIR=$STAGING_DIR" - ] - } -} \ No newline at end of file diff --git a/sources.json b/sources.json index 0b2a90a..b63c94c 100644 --- a/sources.json +++ b/sources.json @@ -843,11 +843,6 @@ "f3ad53337eaee92cbeb1a7c73e98d552c3a8186f" ] }, - "https://git.kernel.org/pub/scm/libs/libcap/libcap.git": { - "refs": [ - "413789501269f0f258a6716c6fa3edae178ba4a3" - ] - }, "https://github.com/Cyan4973/xxHash.git": { "refs": [ "66979328cf3f15cecdc61ea58c9f81e6071f8983" @@ -868,11 +863,6 @@ "b7a785a538a31ab0cf5baf62d936e3e41182e0b7" ] }, - "https://github.com/SELinuxProject/selinux": { - "refs": [ - "919e9e64cc4b20f5a1e4df1e38cce1bfe15aff09" - ] - }, "https://github.com/besser82/libxcrypt": { "refs": [ "55ea777e8d567e5e86ffac917c28815ac54cc341" @@ -880,7 +870,7 @@ }, "https://github.com/crosstool-ng/crosstool-ng": { "refs": [ - "a3fef85781d3cda0b27388916f3287826aeec177" + "620b909cd0713f68084378b63cf61b5232757b90" ] }, "https://github.com/guillemj/libmd.git": { @@ -903,11 +893,6 @@ "e2eda0cf72a0598b44278cc91860ea402273fa29" ] }, - "https://github.com/linux-audit/audit-userspace": { - "refs": [ - "4db9c700b0c8b24a8113bc00d98101228e7d0212" - ] - }, "https://github.com/llvm/llvm-project": { "refs": [ "450f52eec88f728c89a9efd667dbeaf2dad93826" @@ -943,21 +928,6 @@ "5fa4675419cfec60ac19a9c7f7c2d0e7c831a497" ] }, - "https://gitlab.gnome.org/GNOME/glib.git": { - "refs": [ - "e33be08bda99f453e497064e9e021d6306bbeb7d" - ] - }, - "https://gitlab.gnome.org/GNOME/gvdb": { - "refs": [ - "2b42fc75f09dbe1cd1057580b5782b08f2dcb400" - ] - }, - "https://gitlab.gnome.org/GNOME/sysprof": { - "refs": [ - "02e50efa49885a5a20a84a8cd7feda10ae7e7e98" - ] - }, "https://gn.googlesource.com/gn.git": { "refs": [ "07d3c6f4dc290fae5ca6152ebcb37d6815c411ab" @@ -990,11 +960,6 @@ "13a831d76467c88f9e79f9804e2471137ec05331" ] }, - "https://salsa.debian.org/apt-team/apt.git": { - "refs": [ - "6b128124271e94bdb0f4e7850d9286170d712b04" - ] - }, "https://salsa.debian.org/sanvila/unzip.git": { "refs": [ "e811196e79092a387e6ff0b345780710acfab1c4" From e800afb3fd4b6d5e362f216d874dad61a1343b67 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 22 Jan 2026 22:16:40 +0100 Subject: [PATCH 061/200] wip --- host/main.go | 26 ++--- pack/build.go | 2 +- packages/hidapi.json | 39 -------- packages/native/android_ndk.json | 2 +- packages/native/ct-tools.json | 117 ++++++---------------- packages/native/dart@3.5.0-278.0.dev.json | 32 +++--- sources.json | 5 + 7 files changed, 64 insertions(+), 159 deletions(-) delete mode 100644 packages/hidapi.json diff --git a/host/main.go b/host/main.go index 9fd05ad..7dee1ef 100644 --- a/host/main.go +++ b/host/main.go @@ -201,20 +201,20 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=aarch64-linux-gnu", "*:*:TARGET=aarch64-linux-gnu", - "*:*:CC_target=x86_64-linux-gnu", - "*:*:CC=aarch64-unknown-linux-gnu-gcc --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CXX=aarch64-unknown-linux-gnu-g++ --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CC_target=aarch64-linux-gnu", + "*:*:CC=aarch64-linux-gnu-gcc --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CXX=aarch64-linux-gnu-g++ --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/aarch64-linux-gnu -I$PREFIX/usr/include", "*:*:CXXFLAGS=$CFLAGS", - "*:*:RANLIB=aarch64-unknown-linux-gnu-ranlib", - "*:*:AR=aarch64-unknown-linux-gnu-ar", - "*:*:AS=aarch64-unknown-linux-gnu-as", - "*:*:LIBTOOL=aarch64-unknown-linux-gnu-libtool", - "*:*:OBJCOPY=aarch64-unknown-linux-gnu-objcopy", - "*:*:OBJDUMP=aarch64-unknown-linux-gnu-objdump", - "*:*:STRIP=aarch64-unknown-linux-gnu-strip", - "*:*:READELF=aarch64-unknown-linux-gnu-readelf", - "*:*:LD=aarch64-unknown-linux-gnu-ld", - "*:*:NM=aarch64-unknown-linux-gnu-nm", + "*:*:RANLIB=aarch64-linux-gnu-ranlib", + "*:*:AR=aarch64-linux-gnu-ar", + "*:*:AS=aarch64-linux-gnu-as", + "*:*:LIBTOOL=aarch64-linux-gnu-libtool", + "*:*:OBJCOPY=aarch64-linux-gnu-objcopy", + "*:*:OBJDUMP=aarch64-linux-gnu-objdump", + "*:*:STRIP=aarch64-linux-gnu-strip", + "*:*:READELF=aarch64-linux-gnu-readelf", + "*:*:LD=aarch64-linux-gnu-ld", + "*:*:NM=aarch64-linux-gnu-nm", }, }, "aarch64-linux-android": { diff --git a/pack/build.go b/pack/build.go index d2c72e1..d9db31b 100644 --- a/pack/build.go +++ b/pack/build.go @@ -166,7 +166,7 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { "STAGING_DIR=" + stagingPath, "HOST=" + h.Triplet, "PREFIX=" + h.GetEnvPath(), - "PATH=" + h.GetEnvPath() + "/native/bin:" + env["PATH"] + ":" + pathEnv, + "PATH=" + h.GetEnvPath() + "/native/bin:" + env["PATH"] + ":" + pathEnv + ":" + h.GetEnvPath() + "/bin", }...) for k, v := range env { cmd.Env = append(cmd.Env, k+"="+v) diff --git a/packages/hidapi.json b/packages/hidapi.json deleted file mode 100644 index e0db143..0000000 --- a/packages/hidapi.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "package": "hidapi", - "version": "0.13.1", - "type": "host", - "download": [ - { - "kind": "tar.gz", - "sha256": "476a2c9a4dc7d1fc97dd223b84338dbea3809a84caea2dcd887d9778725490e3", - "url": "http://github.com/libusb/hidapi/archive/refs/tags/hidapi-0.13.1.tar.gz" - } - ], - "dependencies": [ - "*:*:native/_", - "*:*:eudev", - "*:*:libusb" - ], - "patches": [ - "missing_win_include.patch" - ], - "build": { - "env": [ - "*:*:config_opts=--prefix=$PREFIX --host=$HOST --enable-static --disable-shared", - "*:*-linux-gnu:config_opts=$config_opts libudev_CFLAGS=-I$PREFIX/include", - "*:*-linux-gnu:config_opts=$config_opts libusb_CFLAGS=-I$PREFIX/include/libusb-1.0", - "*:*-linux-gnu:config_opts=$config_opts --with-pic", - "*:*:SHOULD_BUILD=echo", - "*:*-linux-gnu:SHOULD_BUILD=", - "*:*-w64-mingw32:SHOULD_BUILD=", - "*:*-apple-darwin:SHOULD_BUILD=" - ], - "steps": [ - "*:*:$SHOULD_BUILD patch -p1 < $PATCH_DIR/hidapi/missing_win_include.patch", - "*:*:$SHOULD_BUILD ./bootstrap", - "*:*:$SHOULD_BUILD ./configure $config_opts libudev_LIBS=\"-L$PREFIX/lib -ludev\" libusb_LIBS=\"-L$PREFIX/lib -lusb-1.0\"", - "*:*:$SHOULD_BUILD make -j$NUM_CORES", - "*:*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install" - ] - } -} \ No newline at end of file diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index 130b32b..a1893d9 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -51,7 +51,7 @@ "*:x86_64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/x86_64-linux-android/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", "*:armv7a-linux-androideabi:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/arm-linux-androideabi/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", "*:*-android:rm -rf $STAGING_DIR$PREFIX/native/python3", - "*:*:cd $STAGING_DIR$PREFIX/native/bin && rm clang190++ && ln -s clang190 clang190++", + "*:*-android*:cd $STAGING_DIR$PREFIX/native/bin && rm clang190++ && ln -s clang190 clang190++", "*:*-android*:python3 $PATCH_DIR/android_ndk/symlink_same.py $STAGING_DIR$PREFIX" ] } diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index cd3fd29..3300dac 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -3,111 +3,116 @@ "version": "1.0.0", "type": "native", "download": [ + { + "kind": "git", + "sha256": "2683c3d252b2337e7b045ba5add47c9d05436b98", + "url": "https://github.com/MrCyjaneK/ct-ng-configs.git" + }, { "kind": "blob", - "path": ".build/tarballs/binutils-2.45.tar.xz", + "path": "work/.build/tarballs/binutils-2.45.tar.xz", "sha256": "c50c0e7f9cb188980e2cc97e4537626b1672441815587f1eab69d2a1bfbef5d2", "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.45.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/VERSION_2_5_21.tar.gz", + "path": "work/.build/tarballs/VERSION_2_5_21.tar.gz", "sha256": "470aa72e7018f0beadb5fbe3c932a62ba1b0594c29158a744c614bfa42133e59", "url": "https://github.com/johnsonjh/duma/archive/refs/tags/VERSION_2_5_21.tar.gz" }, { "kind": "blob", - "path": ".build/tarballs/expat-2.7.1.tar.xz", + "path": "work/.build/tarballs/expat-2.7.1.tar.xz", "sha256": "354552544b8f99012e5062f7d570ec77f14b412a3ff5c7d8d0dae62c0d217c30", "url": "http://github.com/libexpat/libexpat/releases/download/R_2_7_1/expat-2.7.1.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/gcc-15.2.0.tar.xz", + "path": "work/.build/tarballs/gcc-15.2.0.tar.xz", "sha256": "438fd996826b0c82485a29da03a72d71d6e3541a83ec702df4271f6fe025d24e", "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-15.2.0/gcc-15.2.0.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/gdb-16.3.tar.xz", + "path": "work/.build/tarballs/gdb-16.3.tar.xz", "sha256": "bcfcd095528a987917acf9fff3f1672181694926cc18d609c99d0042c00224c5", "url": "http://ftpmirror.gnu.org/gnu/gdb/gdb-16.3.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/gettext-0.26.tar.xz", + "path": "work/.build/tarballs/gettext-0.26.tar.xz", "sha256": "d1fb86e260cfe7da6031f94d2e44c0da55903dbae0a2fa0fae78c91ae1b56f00", "url": "http://ftpmirror.gnu.org/gnu/gettext/gettext-0.26.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/glibc-2.42.tar.xz", + "path": "work/.build/tarballs/glibc-2.42.tar.xz", "sha256": "d1775e32e4628e64ef930f435b67bb63af7599acb6be2b335b9f19f16509f17f", "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.42.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/gmp-6.3.0.tar.xz", + "path": "work/.build/tarballs/gmp-6.3.0.tar.xz", "sha256": "a3c2b80201b89e68616f4ad30bc66aee4927c3ce50e33929ca819d5c43538898", "url": "http://ftpmirror.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/isl-0.27.tar.xz", + "path": "work/.build/tarballs/isl-0.27.tar.xz", "sha256": "6d8babb59e7b672e8cb7870e874f3f7b813b6e00e6af3f8b04f7579965643d5c", "url": "https://libisl.sourceforge.io/isl-0.27.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/libiconv-1.18.tar.gz", + "path": "work/.build/tarballs/libiconv-1.18.tar.gz", "sha256": "3b08f5f4f9b4eb82f151a7040bfd6fe6c6fb922efe4b1659c66ea933276965e8", "url": "https://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.18.tar.gz" }, { "kind": "blob", - "path": ".build/tarballs/linux-6.16.tar.xz", + "path": "work/.build/tarballs/linux-6.16.tar.xz", "sha256": "1a4be2fe6b5246aa4ac8987a8a4af34c42a8dd7d08b46ab48516bcc1befbcd83", "url": "https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.16.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/mingw-w64-v13.0.0.tar.bz2", + "path": "work/.build/tarballs/mingw-w64-v13.0.0.tar.bz2", "sha256": "5afe822af5c4edbf67daaf45eec61d538f49eef6b19524de64897c6b95828caf", "url": "https://downloads.sourceforge.net/project/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v13.0.0.tar.bz2" }, { "kind": "blob", - "path": ".build/tarballs/musl-1.2.5.tar.gz", + "path": "work/.build/tarballs/musl-1.2.5.tar.gz", "sha256": "a9a118bbe84d8764da0ea0d28b3ab3fae8477fc7e4085d90102b8596fc7c75e4", "url": "https://www.musl-libc.org/releases/musl-1.2.5.tar.gz" }, { "kind": "blob", - "path": ".build/tarballs/mpc-1.3.1.tar.gz", + "path": "work/.build/tarballs/mpc-1.3.1.tar.gz", "sha256": "ab642492f5cf882b74aa0cb730cd410a81edcdbec895183ce930e706c1c759b8", "url": "http://ftpmirror.gnu.org/gnu/mpc/mpc-1.3.1.tar.gz" }, { "kind": "blob", - "path": ".build/tarballs/mpfr-4.2.2.tar.xz", + "path": "work/.build/tarballs/mpfr-4.2.2.tar.xz", "sha256": "b67ba0383ef7e8a8563734e2e889ef5ec3c3b898a01d00fa0a6869ad81c6ce01", "url": "http://ftpmirror.gnu.org/gnu/mpfr/mpfr-4.2.2.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/ncurses-6.5.tar.gz", + "path": "work/.build/tarballs/ncurses-6.5.tar.gz", "sha256": "136d91bc269a9a5785e5f9e980bc76ab57428f604ce3e5a5a90cebc767971cc6", "url": "http://ftpmirror.gnu.org/gnu/ncurses/ncurses-6.5.tar.gz" }, { "kind": "blob", - "path": ".build/tarballs/zlib-1.3.1.tar.xz", + "path": "work/.build/tarballs/zlib-1.3.1.tar.xz", "sha256": "38ef96b8dfe510d42707d9c781877914792541133e1870841463bfa73f883e32", "url": "http://www.zlib.net/zlib-1.3.1.tar.xz" }, { "kind": "blob", - "path": ".build/tarballs/zstd-1.5.7.tar.gz", + "path": "work/.build/tarballs/zstd-1.5.7.tar.gz", "sha256": "eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3", "url": "https://github.com/facebook/zstd/releases/download/v1.5.7/zstd-1.5.7.tar.gz" } @@ -148,77 +153,11 @@ "*:x86_64-w64-mingw32:TOOL_TARGET_ALT=x86_64-w64-mingw32" ], "steps": [ - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ct-ng $TOOL_TARGET", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_EXPERIMENTAL=y' >> .config", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_FORBID_DOWNLOAD=y' >> .config", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_LANG_CXX=y' >> .config", - "*:none:echo 'CT_CC_LANG_FORTRAN=y' >> .config", - "*:none:echo 'CT_CC_LANG_D=y' >> .config", - "*:none:echo 'CT_CC_LANG_OBJC=y' >> .config", - "*:none:echo 'CT_CC_LANG_OBJCXX=y' >> .config", - "*:none:echo 'CT_CC_LANG_GOLANG=y' >> .config", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_BINUTILS_EXTRA_CONFIG_ARRAY=\"--with-system-zlib\"' >> .config", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_CC_GCC_SYSTEM_ZLIB=y' >> .config", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_DEBUG_CT_SAVE_STEPS=y' >> .config", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GDB_CROSS=y/CT_GDB_CROSS=n/g' .config", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak 's/CT_GDB_GDBSERVER=y/CT_GDB_GDBSERVER=n/g' .config", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_GDB=n' >> .config", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_GDB_NATIVE=n' >> .config", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_PREFIX_DIR_RO=n' >> .config", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:echo 'CT_MULTILIB=y' >> .config", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET_ALT-objcopy $PREFIX/native/bin/objcopy", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET_ALT-readelf $PREFIX/native/bin/readelf", - "*:x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ar $PREFIX/native/bin/ar", - "*:x86_64-w64-mingw32:ln -s $TOOL_TARGET_ALT-ranlib $PREFIX/native/bin/ranlib", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:unset LD_LIBRARY_PATH LIBRARY_PATH CC CXX CFLAGS; ct-ng build", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:mkdir -p $STAGING_DIR$PREFIX/native", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/bin $STAGING_DIR$PREFIX/native", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/include $STAGING_DIR$PREFIX/native", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/lib $STAGING_DIR$PREFIX/native", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/libexec $STAGING_DIR$PREFIX/native", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/share $STAGING_DIR$PREFIX/native", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/etc $STAGING_DIR$PREFIX/", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib $STAGING_DIR$PREFIX/", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/lib64 $STAGING_DIR$PREFIX/", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/sbin $STAGING_DIR$PREFIX/", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/*/sysroot/usr $STAGING_DIR$PREFIX/", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:mkdir -p $STAGING_DIR$PREFIX/include", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:cp -a $HOME/x-tools/$TOOL_TARGET/$TOOL_TARGET/include/c++/15.2.0/* $STAGING_DIR$PREFIX/include", - "*:x86_64-linux-gnu:cp -a $STAGING_DIR$PREFIX/include/x86_64-multilib-linux-gnu/. $STAGING_DIR$PREFIX/include", - "*:aarch64-linux-gnu:cp -a $STAGING_DIR$PREFIX/include/aarch64-unknown-linux-gnu/. $STAGING_DIR$PREFIX/include", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-addr2line $STAGING_DIR$PREFIX/native/bin/addr2line", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ar $STAGING_DIR$PREFIX/native/bin/ar", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-as $STAGING_DIR$PREFIX/native/bin/as", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-c++ $STAGING_DIR$PREFIX/native/bin/c++", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-c++filt $STAGING_DIR$PREFIX/native/bin/c++filt", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-cc $STAGING_DIR$PREFIX/native/bin/cc", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-cpp $STAGING_DIR$PREFIX/native/bin/cpp", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-elfedit $STAGING_DIR$PREFIX/native/bin/elfedit", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-g++ $STAGING_DIR$PREFIX/native/bin/g++", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc $STAGING_DIR$PREFIX/native/bin/gcc", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-15.2.0 $STAGING_DIR$PREFIX/native/bin/gcc-15.2.0", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-ar $STAGING_DIR$PREFIX/native/bin/gcc-ar", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-nm $STAGING_DIR$PREFIX/native/bin/gcc-nm", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcc-ranlib $STAGING_DIR$PREFIX/native/bin/gcc-ranlib", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gccgo $STAGING_DIR$PREFIX/native/bin/gccgo", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcov $STAGING_DIR$PREFIX/native/bin/gcov", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcov-dump $STAGING_DIR$PREFIX/native/bin/gcov-dump", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gcov-tool $STAGING_DIR$PREFIX/native/bin/gcov-tool", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gfortran $STAGING_DIR$PREFIX/native/bin/gfortran", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-gprof $STAGING_DIR$PREFIX/native/bin/gprof", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ld $STAGING_DIR$PREFIX/native/bin/ld", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ld.bfd $STAGING_DIR$PREFIX/native/bin/ld.bfd", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ldd $STAGING_DIR$PREFIX/native/bin/ldd", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-lto-dump $STAGING_DIR$PREFIX/native/bin/lto-dump", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-nm $STAGING_DIR$PREFIX/native/bin/nm", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-objcopy $STAGING_DIR$PREFIX/native/bin/objcopy", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-objdump $STAGING_DIR$PREFIX/native/bin/objdump", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-populate $STAGING_DIR$PREFIX/native/bin/populate", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-ranlib $STAGING_DIR$PREFIX/native/bin/ranlib", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-readelf $STAGING_DIR$PREFIX/native/bin/readelf", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-size $STAGING_DIR$PREFIX/native/bin/size", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-strings $STAGING_DIR$PREFIX/native/bin/strings", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:ln -s $TOOL_TARGET-strip $STAGING_DIR$PREFIX/native/bin/strip" + "*:{*-linux-gnu}:unset LIBRARY_PATH CFLAGS CC CXX; PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TARGET", + "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/aarch64-linux-gnu/aarch64-linux-gnu/* $STAGING_DIR/$PREFIX", + "*:{*-linux-gnu}:rm -rf $STAGING_DIR/$PREFIX/aarch64-linux-gnu/aarch64-linux-gnu", + "*:{*-linux-gnu}:mkdir -p $STAGING_DIR/$PREFIX/native", + "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/aarch64-linux-gnu/* $STAGING_DIR/$PREFIX/native" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.5.0-278.0.dev.json b/packages/native/dart@3.5.0-278.0.dev.json index ba1e4a3..564dc36 100644 --- a/packages/native/dart@3.5.0-278.0.dev.json +++ b/packages/native/dart@3.5.0-278.0.dev.json @@ -520,30 +520,30 @@ "*:*:native/zlib" ], "build": { - "env": [], + "env": [ + "darwin_arm64:*:BUILDTARGET=mac-arm64", + "linux_arm64:*:BUILDTARGET=linux-arm64", + "linux_amd64:*:BUILDTARGET=linux-amd64" + ], "steps": [ - "*:*:mkdir -p buildtools/mac-x64/clang/.versions", - "*:*:mkdir -p buildtools/mac-arm64/clang/.versions", - "*:*:mkdir -p buildtools/linux-x64/clang/.versions", - "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-amd64\",\"instance_id\": \"AWO66yebzYxWzasSzjx1wmeozi-xq9r0RnNyEhKtwAIC\"}' > ./buildtools/mac-x64/clang/.versions/clang.cipd_version", - "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/mac-arm64\",\"instance_id\": \"i41U-bFSUAOHPpKs_6lCF-EPqOLaa8LwT48ciXzHK3EC\"}' > ./buildtools/mac-arm64/clang/.versions/clang.cipd_version", - "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/linux-amd64\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/linux-x64/clang/.versions/clang.cipd_version", + "*:*:mkdir -p buildtools/$BUILDTARGET/clang/.versions", + "*:*:echo '{\"package_name\": \"fuchsia/third_party/clang/'$BUILDTARGET'\",\"instance_id\": \"-f7MR6VniTzxeWcp2k9ZkII4oK21j44tQvYuCBaHpqEC\"}' > ./buildtools/$BUILDTARGET/clang/.versions/clang.cipd_version", "*:*:echo build_devtools_from_sources = false > build/config/gclient_args.gni", "*:*:ln -s $(which gn) buildtools/gn", "*:*:mkdir -p buildtools/ninja", "*:*:ln -s $(which ninja) buildtools/ninja/ninja", - "*:*:mkdir -p buildtools/mac-arm64/clang/bin", - "*:*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", - "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", - "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", - "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", + "*:*:mkdir -p buildtools/$BUILDTARGET/clang/bin", + "*:*:mkdir -p buildtools/$BUILDTARGET/clang/lib", + "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/$BUILDTARGET/clang/lib/libc++.a", + "*:*:ln -s $(which clang) buildtools/$BUILDTARGET/clang/bin/clang", + "*:*:ln -s $(which clang++) buildtools/$BUILDTARGET/clang/bin/clang++", + "*:*:ln -s $(which llvm-ar) buildtools/$BUILDTARGET/clang/bin/llvm-ar", + "*:*:ln -s $(which llvm-nm) buildtools/$BUILDTARGET/clang/bin/llvm-nm", + "*:*:ln -s $(which llvm-strip) buildtools/$BUILDTARGET/clang/bin/llvm-strip", "*:*:sed -i.bak 's/\"-Wno-dangling-reference\",/ /g' runtime/BUILD.gn", "*:*:mkdir -p tools/sdks/dart-sdk/bin", "*:*:ln -s $(which dart) tools/sdks/dart-sdk/bin/dart", - "*:*:chmod +x buildtools/mac-arm64/clang/bin/llvm-ar", + "*:*:chmod +x buildtools/$BUILDTARGET/clang/bin/llvm-ar", "*:*:python3 ./tools/generate_package_config.py # HOOK Generate the .dart_tool/package_confg.json file.", "*:*:echo 3.5.0-278.0.dev > sdk/version", "*:*:mkdir -p third_party/devtools/web", diff --git a/sources.json b/sources.json index b63c94c..77f9ccf 100644 --- a/sources.json +++ b/sources.json @@ -853,6 +853,11 @@ "c4e7b0e5f437121d1b9c05bc5c43dac75371d799" ] }, + "https://github.com/MrCyjaneK/ct-ng-configs.git": { + "refs": [ + "2683c3d252b2337e7b045ba5add47c9d05436b98" + ] + }, "https://github.com/MrCyjaneK/osxcross.git": { "refs": [ "643bea6efcfd54769eaaa645dae5037dd7148c94" From 2f3c5a1d0f00898466e95a204cdd40949d6cd0af Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 23 Jan 2026 20:09:03 +0100 Subject: [PATCH 062/200] fix: replace unzip --- packages/native/ct-tools.json | 2 +- packages/native/unzip.json | 12 +++++------- sources.json | 12 ++++++------ 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 3300dac..7830193 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "2683c3d252b2337e7b045ba5add47c9d05436b98", + "sha256": "8e58852806fae75368c61b271c37b8564dbaa943", "url": "https://github.com/MrCyjaneK/ct-ng-configs.git" }, { diff --git a/packages/native/unzip.json b/packages/native/unzip.json index f57c576..6020462 100644 --- a/packages/native/unzip.json +++ b/packages/native/unzip.json @@ -1,12 +1,12 @@ { "package": "native/unzip", - "version": "6.0-29-debian", + "version": "1.0.0", "type": "native", "download": [ { "kind": "git", - "sha256": "e811196e79092a387e6ff0b345780710acfab1c4", - "url": "https://salsa.debian.org/sanvila/unzip.git" + "sha256": "f802bc7b20bf0626d765ff3fe0ef0adb3fd93b26", + "url": "https://github.com/MrCyjaneK/7zz_unzip.git" } ], "dependencies": [ @@ -16,10 +16,8 @@ ], "build": { "steps": [ - "*:*:sed -i '1i #include ' ./unzpriv.h", - "*:*:make -f unix/Makefile D_USE_BZ2=-DUSE_BZIP2 L_BZ2=-lbz2 CC=\"$CC\" LF2=\"$LDFLAGS\" CF=\"$CFLAGS $CPPFLAGS -I.\" unzips", - "*:*:make -f unix/Makefile install prefix=$STAGING_DIR$PREFIX/native", - "*:*:cd $STAGING_DIR$PREFIX/native/bin && rm -f zipinfo && ln unzip zipinfo" + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:$CC main.c -o $STAGING_DIR$PREFIX/native/bin/unzip" ] } } \ No newline at end of file diff --git a/sources.json b/sources.json index 77f9ccf..5becce0 100644 --- a/sources.json +++ b/sources.json @@ -848,6 +848,11 @@ "66979328cf3f15cecdc61ea58c9f81e6071f8983" ] }, + "https://github.com/MrCyjaneK/7zz_unzip.git": { + "refs": [ + "f802bc7b20bf0626d765ff3fe0ef0adb3fd93b26" + ] + }, "https://github.com/MrCyjaneK/cmake-toolchain.git": { "refs": [ "c4e7b0e5f437121d1b9c05bc5c43dac75371d799" @@ -855,7 +860,7 @@ }, "https://github.com/MrCyjaneK/ct-ng-configs.git": { "refs": [ - "2683c3d252b2337e7b045ba5add47c9d05436b98" + "8e58852806fae75368c61b271c37b8564dbaa943" ] }, "https://github.com/MrCyjaneK/osxcross.git": { @@ -964,11 +969,6 @@ "refs": [ "13a831d76467c88f9e79f9804e2471137ec05331" ] - }, - "https://salsa.debian.org/sanvila/unzip.git": { - "refs": [ - "e811196e79092a387e6ff0b345780710acfab1c4" - ] } } } \ No newline at end of file From a8d8832278af64e6e6f588c7afb2ce97abf0f95e Mon Sep 17 00:00:00 2001 From: user Date: Tue, 27 Jan 2026 00:47:28 +0100 Subject: [PATCH 063/200] mac fixes --- main.go | 1 + packages/native/coreutils.json | 25 +++++++++++++++++++++++++ packages/native/ct-tools.json | 24 ++++++++++++------------ packages/native/git.json | 1 + packages/native/llvm-objcopy.json | 26 ++++++++++++++++++++++++++ sources.json | 2 +- 6 files changed, 66 insertions(+), 13 deletions(-) create mode 100644 packages/native/coreutils.json create mode 100644 packages/native/llvm-objcopy.json diff --git a/main.go b/main.go index d8ca79b..0a1e69c 100644 --- a/main.go +++ b/main.go @@ -25,6 +25,7 @@ func main() { argVersion := flag.Bool("v", false, "Show version") argShell := flag.Bool("shell", false, "Extract source and start shell with build environment") argCleanup := flag.Bool("cleanup", false, "Remove everything except current built archives") + // argQuiet := flag.Bool("quiet", false, "Redirect stdout and stderr to /dev/null") flag.Parse() if *argVersion { fmt.Println("simplybs version 0.0.0") diff --git a/packages/native/coreutils.json b/packages/native/coreutils.json new file mode 100644 index 0000000..91d983f --- /dev/null +++ b/packages/native/coreutils.json @@ -0,0 +1,25 @@ +{ + "package": "native/coreutils", + "version": "9.9", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "19bcb6ca867183c57d77155eae946c5eced88183143b45ca51ad7d26c628ca75", + "url": "https://ftpmirror.gnu.org/gnu/coreutils/coreutils-9.9.tar.xz" + } + ], + "dependencies": [ + "*:*-apple-*:native/make" + ], + "build": { + "env": [ + "*:*:config_opts=--prefix=$PREFIX/native" + ], + "steps": [ + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:DESTDIR=$STAGING_DIR make install" + ] + } +} \ No newline at end of file diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 7830193..0fa959e 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "8e58852806fae75368c61b271c37b8564dbaa943", + "sha256": "d6e741a7507f31c5e6e49218a6eb8ff7f2fe2077", "url": "https://github.com/MrCyjaneK/ct-ng-configs.git" }, { @@ -70,9 +70,9 @@ }, { "kind": "blob", - "path": "work/.build/tarballs/linux-6.16.tar.xz", - "sha256": "1a4be2fe6b5246aa4ac8987a8a4af34c42a8dd7d08b46ab48516bcc1befbcd83", - "url": "https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.16.tar.xz" + "path": "work/.build/tarballs/linux-4.20.17.tar.xz", + "sha256": "d011245629b980d4c15febf080b54804aaf215167b514a3577feddb2495f8a3e", + "url": "https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.20.17.tar.xz" }, { "kind": "blob", @@ -124,6 +124,7 @@ "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/binutils@2.42", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bison", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bzip2", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/coreutils", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/crosstool-ng", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/file", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/flex", @@ -131,6 +132,7 @@ "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gettext", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/help2man", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/libtool", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/llvm-objcopy", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/m4", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/make", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/perl", @@ -143,17 +145,15 @@ ], "build": { "env": [ - "*:x86_64-linux-gnu:TOOL_TARGET=x86_64-multilib-linux-gnu", - "*:x86_64-linux-gnu:TOOL_TARGET_ALT=x86_64-linux-gnu", - "*:aarch64-linux-gnu:TOOL_TARGET=aarch64-unknown-linux-gnu", - "*:aarch64-linux-gnu:TOOL_TARGET_ALT=aarch64-linux-gnu", - "*:x86_64-linux-musl:TOOL_TARGET=x86_64-multilib-linux-musl", - "*:x86_64-linux-musl:TOOL_TARGET_ALT=x86_64-linux-musl", + "*:x86_64-linux-gnu:TOOL_TARGET=x86_64-linux-gnu", + "*:aarch64-linux-gnu:TOOL_TARGET=aarch64-linux-gnu", + "*:x86_64-linux-musl:TOOL_TARGET=x86_64-linux-musl", "*:x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", - "*:x86_64-w64-mingw32:TOOL_TARGET_ALT=x86_64-w64-mingw32" + "*:*:INSTALL=$PREFIX/native/bin/install" ], "steps": [ - "*:{*-linux-gnu}:unset LIBRARY_PATH CFLAGS CC CXX; PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TARGET", + "*:{*-linux-gnu}:ln -s $(which llvm-objcopy) $PREFIX/native/bin/objcopy", + "*:{*-linux-gnu}:PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/aarch64-linux-gnu/aarch64-linux-gnu/* $STAGING_DIR/$PREFIX", "*:{*-linux-gnu}:rm -rf $STAGING_DIR/$PREFIX/aarch64-linux-gnu/aarch64-linux-gnu", "*:{*-linux-gnu}:mkdir -p $STAGING_DIR/$PREFIX/native", diff --git a/packages/native/git.json b/packages/native/git.json index 268add2..e806cb8 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -13,6 +13,7 @@ "*:*:native/curl", "*:*:native/expat", "*:*:native/gettext", + "*:*:native/libiconv", "*:*:native/make", "*:*:native/openssl", "*:*:native/zlib" diff --git a/packages/native/llvm-objcopy.json b/packages/native/llvm-objcopy.json new file mode 100644 index 0000000..2142220 --- /dev/null +++ b/packages/native/llvm-objcopy.json @@ -0,0 +1,26 @@ +{ + "package": "native/llvm-objcopy", + "version": "21.1.3", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "450f52eec88f728c89a9efd667dbeaf2dad93826", + "url": "https://github.com/llvm/llvm-project" + } + ], + "dependencies": [ + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/ninja" + ], + "build": { + "steps": [ + "*:*:mkdir build && cd build", + "*:*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", + "*:*:cd build && ninja llvm-objcopy", + "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", + "*:*:cp build/bin/llvm-objcopy $STAGING_DIR$PREFIX/native/bin/llvm-objcopy" + ] + } +} \ No newline at end of file diff --git a/sources.json b/sources.json index 5becce0..cb9ece2 100644 --- a/sources.json +++ b/sources.json @@ -860,7 +860,7 @@ }, "https://github.com/MrCyjaneK/ct-ng-configs.git": { "refs": [ - "8e58852806fae75368c61b271c37b8564dbaa943" + "d6e741a7507f31c5e6e49218a6eb8ff7f2fe2077" ] }, "https://github.com/MrCyjaneK/osxcross.git": { From bc542e67cc664e67553026e42f759206d4109dca Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 27 Jan 2026 22:15:58 +0100 Subject: [PATCH 064/200] feat: x86_64-linux-gnu --- host/main.go | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/host/main.go b/host/main.go index 7dee1ef..84ba136 100644 --- a/host/main.go +++ b/host/main.go @@ -181,19 +181,19 @@ var SupportedHosts = map[string]*Host{ "*:*:HOST=x86_64-linux-gnu", "*:*:TARGET=x86_64-linux-gnu", "*:*:CC_target=x86_64-linux-gnu", - "*:*:CC=x86_64-multilib-linux-gnu-gcc --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CXX=x86_64-multilib-linux-gnu-g++ --sysroot=$PREFIX -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CC=x86_64-linux-gnu-gcc --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CXX=x86_64-linux-gnu-g++ --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-linux-gnu -I$PREFIX/usr/include", "*:*:CXXFLAGS=$CFLAGS", - "*:*:RANLIB=x86_64-multilib-linux-gnu-ranlib", - "*:*:AR=x86_64-multilib-linux-gnu-ar", - "*:*:AS=x86_64-multilib-linux-gnu-as", - "*:*:LIBTOOL=x86_64-multilib-linux-gnu-libtool", - "*:*:OBJCOPY=x86_64-multilib-linux-gnu-objcopy", - "*:*:OBJDUMP=x86_64-multilib-linux-gnu-objdump", - "*:*:STRIP=x86_64-multilib-linux-gnu-strip", - "*:*:READELF=x86_64-multilib-linux-gnu-readelf", - "*:*:LD=x86_64-multilib-linux-gnu-ld", - "*:*:NM=x86_64-multilib-linux-gnu-nm", + "*:*:RANLIB=x86_64-linux-gnu-ranlib", + "*:*:AR=x86_64-linux-gnu-ar", + "*:*:AS=x86_64-linux-gnu-as", + "*:*:LIBTOOL=x86_64-linux-gnu-libtool", + "*:*:OBJCOPY=x86_64-linux-gnu-objcopy", + "*:*:OBJDUMP=x86_64-linux-gnu-objdump", + "*:*:STRIP=x86_64-linux-gnu-strip", + "*:*:READELF=x86_64-linux-gnu-readelf", + "*:*:LD=x86_64-linux-gnu-ld", + "*:*:NM=x86_64-linux-gnu-nm", }, }, "aarch64-linux-gnu": { From a76ea1cdaa09c88a5eb7ab9630181e450bd484f4 Mon Sep 17 00:00:00 2001 From: user Date: Tue, 27 Jan 2026 23:16:37 +0100 Subject: [PATCH 065/200] fix: linux binutils --- packages/native/ct-tools.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 0fa959e..d6de2cb 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -157,7 +157,11 @@ "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/aarch64-linux-gnu/aarch64-linux-gnu/* $STAGING_DIR/$PREFIX", "*:{*-linux-gnu}:rm -rf $STAGING_DIR/$PREFIX/aarch64-linux-gnu/aarch64-linux-gnu", "*:{*-linux-gnu}:mkdir -p $STAGING_DIR/$PREFIX/native", - "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/aarch64-linux-gnu/* $STAGING_DIR/$PREFIX/native" + "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/aarch64-linux-gnu/* $STAGING_DIR/$PREFIX/native", + "*:x86_64-linux-gnu:cd $STAGING_DIR/$PREFIX/native/bin && for f in x86_64-linux-gnu-*; do ln -sf $f ${x86_64-linux-gnu-}; done", + "*:aarch64-linux-gnu:cd $STAGING_DIR/$PREFIX/native/bin && for f in aarch64-linux-gnu-*; do ln -sf $f ${f#aarch64-linux-gnu-}; done", + "*:x86_64-linux-musl:cd $STAGING_DIR/$PREFIX/native/bin && for f in x86_64-linux-musl-*; do ln -sf $f ${f#x86_64-linux-musl-}; done", + "*:x86_64-w64-mingw32:cd $STAGING_DIR/$PREFIX/native/bin && for f in x86_64-w64-mingw32-*; do ln -sf $f ${f#x86_64-w64-mingw32-}; done" ] } } \ No newline at end of file From a916e5ad342ce6844b2d350ac1388d7e66cf3ad4 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 28 Jan 2026 00:29:56 +0100 Subject: [PATCH 066/200] fix: x86_64 and aarch64 linux builds --- packages/native/ct-tools.json | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index d6de2cb..6acce41 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -154,10 +154,11 @@ "steps": [ "*:{*-linux-gnu}:ln -s $(which llvm-objcopy) $PREFIX/native/bin/objcopy", "*:{*-linux-gnu}:PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", - "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/aarch64-linux-gnu/aarch64-linux-gnu/* $STAGING_DIR/$PREFIX", - "*:{*-linux-gnu}:rm -rf $STAGING_DIR/$PREFIX/aarch64-linux-gnu/aarch64-linux-gnu", + "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET/* $STAGING_DIR/$PREFIX", + "*:{*-linux-gnu}:rm -rf $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET", "*:{*-linux-gnu}:mkdir -p $STAGING_DIR/$PREFIX/native", - "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/aarch64-linux-gnu/* $STAGING_DIR/$PREFIX/native", + "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/* $STAGING_DIR/$PREFIX/native", + "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/bin/* $STAGING_DIR/$PREFIX/native/bin", "*:x86_64-linux-gnu:cd $STAGING_DIR/$PREFIX/native/bin && for f in x86_64-linux-gnu-*; do ln -sf $f ${x86_64-linux-gnu-}; done", "*:aarch64-linux-gnu:cd $STAGING_DIR/$PREFIX/native/bin && for f in aarch64-linux-gnu-*; do ln -sf $f ${f#aarch64-linux-gnu-}; done", "*:x86_64-linux-musl:cd $STAGING_DIR/$PREFIX/native/bin && for f in x86_64-linux-musl-*; do ln -sf $f ${f#x86_64-linux-musl-}; done", From 41e07542dc3a321c5f1f4287cce2124addf11858 Mon Sep 17 00:00:00 2001 From: user Date: Wed, 28 Jan 2026 15:12:30 +0100 Subject: [PATCH 067/200] fixes --- packages/bzip2.json | 2 +- packages/expat.json | 2 +- packages/gettext.json | 3 ++- packages/libxcrypt.json | 8 +++++++- packages/unistring.json | 1 + 5 files changed, 12 insertions(+), 4 deletions(-) diff --git a/packages/bzip2.json b/packages/bzip2.json index 95dbd18..1d5ea5b 100644 --- a/packages/bzip2.json +++ b/packages/bzip2.json @@ -19,7 +19,7 @@ "*:*:sed -i.bak 's|^AR=.*|AR ?= $AR|' Makefile", "*:*:sed -i.bak 's|^RANLIB=.*|RANLIB ?= $RANLIB|' Makefile", "*:*:sed -i.bak 's|^CFLAGS=.*|CFLAGS ?= $CFLAGS $BIGFILES|' Makefile", - "*:*:make -j$NUM_CORES", + "*:*:make libbz2.a bzip2 bzip2recover -j$NUM_CORES", "*:*:make install PREFIX=$STAGING_DIR$PREFIX" ] } diff --git a/packages/expat.json b/packages/expat.json index d75317e..f2b7da3 100644 --- a/packages/expat.json +++ b/packages/expat.json @@ -21,7 +21,7 @@ "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios" ], "steps": [ - "*:*:./configure --host=$BUILD_HOST --prefix=$PREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", + "*:*:./configure --host=$HOST --prefix=$PREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/gettext.json b/packages/gettext.json index 20b9fe1..8476e6e 100644 --- a/packages/gettext.json +++ b/packages/gettext.json @@ -1,5 +1,5 @@ { - "package": "native/gettext", + "package": "gettext", "version": "0.26", "type": "host", "download": [ @@ -19,6 +19,7 @@ "build": { "env": [ "*:*:config_opts=--prefix=$PREFIX", + "*:*:config_opts=$config_opts --host=$HOST", "*:*:config_opts=$config_opts --with-libiconv-prefix=$PREFIX", "*:*:config_opts=$config_opts --with-libunistring-prefix=$PREFIX", "*:*:config_opts=$config_opts --disable-shared", diff --git a/packages/libxcrypt.json b/packages/libxcrypt.json index 32b8d7e..16d5526 100644 --- a/packages/libxcrypt.json +++ b/packages/libxcrypt.json @@ -10,7 +10,13 @@ } ], "dependencies": [ - "*:*:native/_" + "*:*:native/_", + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/make", + "*:*:native/libtool", + "*:*:native/m4", + "*:*:native/perl" ], "build": { "env": [ diff --git a/packages/unistring.json b/packages/unistring.json index 8772c2b..d0797f1 100644 --- a/packages/unistring.json +++ b/packages/unistring.json @@ -17,6 +17,7 @@ "build": { "env": [ "*:*:config_opts=--prefix=$PREFIX", + "*:*:config_opts=$config_opts --host=$HOST", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --enable-static" ], From dd81e914bbe08fd1438510c0332ec9beefb3a3d0 Mon Sep 17 00:00:00 2001 From: user Date: Thu, 29 Jan 2026 18:38:43 +0100 Subject: [PATCH 068/200] mingw32 --- host/main.go | 42 +++++++++---------- packages/libxcrypt.json | 2 +- packages/native/binutils@2.42.json | 11 ++--- packages/native/crosstool-ng.json | 4 +- packages/native/ct-tools.json | 18 ++++---- packages/native/flex.json | 8 +++- packages/native/gmp_shared.json | 30 +++++++++++++ packages/native/{gmp.json => gmp_static.json} | 2 +- packages/native/mpc.json | 2 +- packages/native/mpfr.json | 2 +- 10 files changed, 76 insertions(+), 45 deletions(-) create mode 100644 packages/native/gmp_shared.json rename packages/native/{gmp.json => gmp_static.json} (95%) diff --git a/host/main.go b/host/main.go index 84ba136..7c321f4 100644 --- a/host/main.go +++ b/host/main.go @@ -154,27 +154,27 @@ var SupportedHosts = map[string]*Host{ // "*:*:NM=x86_64-linux-musl-nm", // }, // }, - // "x86_64-w64-mingw32": { - // Triplet: "x86_64-w64-mingw32", - // Env: []string{ - // "*:*:HOST=x86_64-w64-mingw32", - // "*:*:TARGET=x86_64-w64-mingw32", - // "*:*:CC_target=x86_64-w64-mingw32", - // "*:*:CC=x86_64-w64-mingw32-gcc", - // "*:*:CXX=x86_64-w64-mingw32-g++", - // "*:*:CXXFLAGS=$CFLAGS", - // "*:*:RANLIB=x86_64-w64-mingw32-ranlib", - // "*:*:AR=x86_64-w64-mingw32-ar", - // "*:*:AS=x86_64-w64-mingw32-as", - // "*:*:LIBTOOL=x86_64-w64-mingw32-libtool", - // "*:*:OBJCOPY=x86_64-w64-mingw32-objcopy", - // "*:*:OBJDUMP=x86_64-w64-mingw32-objdump", - // "*:*:STRIP=x86_64-w64-mingw32-strip", - // "*:*:READELF=x86_64-w64-mingw32-readelf", - // "*:*:LD=x86_64-w64-mingw32-ld", - // "*:*:NM=x86_64-w64-mingw32-nm", - // }, - // }, + "x86_64-w64-mingw32": { + Triplet: "x86_64-w64-mingw32", + Env: []string{ + "*:*:HOST=x86_64-w64-mingw32", + "*:*:TARGET=x86_64-w64-mingw32", + "*:*:CC_target=x86_64-w64-mingw32", + "*:*:CC=x86_64-w64-mingw32-gcc --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CXX=x86_64-w64-mingw32-g++ --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-w64-mingw32 -I$PREFIX/usr/include", + "*:*:CXXFLAGS=$CFLAGS", + "*:*:RANLIB=x86_64-w64-mingw32-ranlib", + "*:*:AR=x86_64-w64-mingw32-ar", + "*:*:AS=x86_64-w64-mingw32-as", + "*:*:LIBTOOL=x86_64-w64-mingw32-libtool", + "*:*:OBJCOPY=x86_64-w64-mingw32-objcopy", + "*:*:OBJDUMP=x86_64-w64-mingw32-objdump", + "*:*:STRIP=x86_64-w64-mingw32-strip", + "*:*:READELF=x86_64-w64-mingw32-readelf", + "*:*:LD=x86_64-w64-mingw32-ld", + "*:*:NM=x86_64-w64-mingw32-nm", + }, + }, "x86_64-linux-gnu": { Triplet: "x86_64-linux-gnu", Env: []string{ diff --git a/packages/libxcrypt.json b/packages/libxcrypt.json index 16d5526..632cf5e 100644 --- a/packages/libxcrypt.json +++ b/packages/libxcrypt.json @@ -13,9 +13,9 @@ "*:*:native/_", "*:*:native/autoconf", "*:*:native/automake", - "*:*:native/make", "*:*:native/libtool", "*:*:native/m4", + "*:*:native/make", "*:*:native/perl" ], "build": { diff --git a/packages/native/binutils@2.42.json b/packages/native/binutils@2.42.json index 036b99d..29d86b1 100644 --- a/packages/native/binutils@2.42.json +++ b/packages/native/binutils@2.42.json @@ -20,18 +20,13 @@ ], "build": { "env": [ - "*:x86_64-linux-gnu:TOOL_TARGET=x86_64-linux-gnu", - "*:aarch64-linux-gnu:TOOL_TARGET=aarch64-linux-gnu", - "*:x86_64-linux-musl:TOOL_TARGET=x86_64-linux-musl", - "*:x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", "*:*:config_opts=--prefix=$PREFIX/native", "*:*:config_opts=$config_opts --disable-nls", "*:*:config_opts=$config_opts --disable-werror", "*:*:config_opts=$config_opts --with-system-zlib", - "*:*:config_opts=$config_opts --enable-targets=$TOOL_TARGET", - "*:*:config_opts=$config_opts --target=$TOOL_TARGET", - "*:*:config_opts=$config_opts --libdir=$PREFIX/native/lib/$TOOL_TARGET", - "*:*:config_opts=$config_opts --infodir=$PREFIX/native/share/info/$TOOL_TARGET", + "*:*:config_opts=$config_opts --enable-targets=all", + "*:*:config_opts=$config_opts --libdir=$PREFIX/native/lib", + "*:*:config_opts=$config_opts --infodir=$PREFIX/native/share/info", "*:*:CPPFLAGS=-I$PREFIX/native/include", "*:*:LDFLAGS=-L$PREFIX/native/lib" ], diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index 19c7b6d..d8443be 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -43,8 +43,8 @@ ], "steps": [ "*:*:./bootstrap", - "*:*:ln -s $TOOL_TARGET-objcopy $PREFIX/native/bin/objcopy", - "*:*:ln -s $TOOL_TARGET-readelf $PREFIX/native/bin/readelf", + "none:*:ln -s $TOOL_TARGET-objcopy $PREFIX/native/bin/objcopy", + "none:*:ln -s $TOOL_TARGET-readelf $PREFIX/native/bin/readelf", "*:*:./configure --prefix=$PREFIX/native", "*:*:make -j$NUM_CORES", "*:*:make install DESTDIR=$STAGING_DIR" diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 6acce41..e434c59 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -130,6 +130,7 @@ "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/flex", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gawk", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gettext", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gmp_shared", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/help2man", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/libtool", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/llvm-objcopy", @@ -149,16 +150,17 @@ "*:aarch64-linux-gnu:TOOL_TARGET=aarch64-linux-gnu", "*:x86_64-linux-musl:TOOL_TARGET=x86_64-linux-musl", "*:x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", - "*:*:INSTALL=$PREFIX/native/bin/install" + "*:*:INSTALL=$PREFIX/native/bin/install", + "*:*:AR=$PREFIX/native/bin/ar" ], "steps": [ - "*:{*-linux-gnu}:ln -s $(which llvm-objcopy) $PREFIX/native/bin/objcopy", - "*:{*-linux-gnu}:PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", - "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET/* $STAGING_DIR/$PREFIX", - "*:{*-linux-gnu}:rm -rf $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET", - "*:{*-linux-gnu}:mkdir -p $STAGING_DIR/$PREFIX/native", - "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/* $STAGING_DIR/$PREFIX/native", - "*:{*-linux-gnu}:mv $STAGING_DIR/$PREFIX/bin/* $STAGING_DIR/$PREFIX/native/bin", + "*:{*-linux-gnu,*-w64-mingw32}:sed -i.bak 's|CT_GMP_EXTRA_CFLAGS=.*|CT_GMP_EXTRA_CFLAGS=\"-std=gnu17 '$PREFIX/native/lib'\"|' platforms/x86_64-w64-mingw32/.config", + "*:{*-linux-gnu,*-w64-mingw32}:PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", + "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET/* $STAGING_DIR/$PREFIX", + "*:{*-linux-gnu,*-w64-mingw32}:rm -rf $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET", + "*:{*-linux-gnu,*-w64-mingw32}:mkdir -p $STAGING_DIR/$PREFIX/native", + "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/* $STAGING_DIR/$PREFIX/native", + "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/bin/* $STAGING_DIR/$PREFIX/native/bin", "*:x86_64-linux-gnu:cd $STAGING_DIR/$PREFIX/native/bin && for f in x86_64-linux-gnu-*; do ln -sf $f ${x86_64-linux-gnu-}; done", "*:aarch64-linux-gnu:cd $STAGING_DIR/$PREFIX/native/bin && for f in aarch64-linux-gnu-*; do ln -sf $f ${f#aarch64-linux-gnu-}; done", "*:x86_64-linux-musl:cd $STAGING_DIR/$PREFIX/native/bin && for f in x86_64-linux-musl-*; do ln -sf $f ${f#x86_64-linux-musl-}; done", diff --git a/packages/native/flex.json b/packages/native/flex.json index f06ffa6..5d786e4 100644 --- a/packages/native/flex.json +++ b/packages/native/flex.json @@ -16,10 +16,14 @@ "build": { "env": [ "*:*:CFLAGS=$CFLAGS -fPIC", - "*:*:LDFLAGS=$LDFLAGS -fPIC" + "*:*:LDFLAGS=$LDFLAGS -fPIC", + "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --with-pic", + "*:*:config_opts=$config_opts --enable-shared", + "*:*:config_opts=$config_opts --enable-static" ], "steps": [ - "*:*:./configure --prefix=$PREFIX/native --with-pic", + "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/gmp_shared.json b/packages/native/gmp_shared.json new file mode 100644 index 0000000..5b8836a --- /dev/null +++ b/packages/native/gmp_shared.json @@ -0,0 +1,30 @@ +{ + "package": "native/gmp_shared", + "version": "6.3.0", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "a3c2b80201b89e68616f4ad30bc66aee4927c3ce50e33929ca819d5c43538898", + "url": "http://ftpmirror.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz" + } + ], + "dependencies": [ + "*:*:native/m4", + "*:*:native/make", + "*:*:native/perl" + ], + "build": { + "env": [ + "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --enable-shared", + "*:*:config_opts=$config_opts --disable-static" + ], + "steps": [ + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make check", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/gmp.json b/packages/native/gmp_static.json similarity index 95% rename from packages/native/gmp.json rename to packages/native/gmp_static.json index b929115..c510f19 100644 --- a/packages/native/gmp.json +++ b/packages/native/gmp_static.json @@ -1,5 +1,5 @@ { - "package": "native/gmp", + "package": "native/gmp_static", "version": "6.3.0", "type": "native", "download": [ diff --git a/packages/native/mpc.json b/packages/native/mpc.json index acd4691..8305309 100644 --- a/packages/native/mpc.json +++ b/packages/native/mpc.json @@ -10,7 +10,7 @@ } ], "dependencies": [ - "*:*:native/gmp", + "*:*:native/gmp_static", "*:*:native/make", "*:*:native/mpfr" ], diff --git a/packages/native/mpfr.json b/packages/native/mpfr.json index b2b5854..62029c1 100644 --- a/packages/native/mpfr.json +++ b/packages/native/mpfr.json @@ -10,7 +10,7 @@ } ], "dependencies": [ - "*:*:native/gmp", + "*:*:native/gmp_static", "*:*:native/make" ], "build": { From 7df862dba0a7475bbb35a5604ded91942e51efe6 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 29 Jan 2026 18:40:56 +0100 Subject: [PATCH 069/200] wip --- packages/native/dart@3.5.0-278.0.dev.json | 2 +- packages/native/git.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/native/dart@3.5.0-278.0.dev.json b/packages/native/dart@3.5.0-278.0.dev.json index 564dc36..20eba9d 100644 --- a/packages/native/dart@3.5.0-278.0.dev.json +++ b/packages/native/dart@3.5.0-278.0.dev.json @@ -549,7 +549,7 @@ "*:*:mkdir -p third_party/devtools/web", "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", - "*:*:python3 ./tools/build.py --mode=product create_sdk", + "*:*:python3 ./tools/build.py --mode=product create_sdk --verbose", "*:*:mkdir -p $STAGING_DIR$PREFIX/native", "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", diff --git a/packages/native/git.json b/packages/native/git.json index e806cb8..97cf8f2 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:*:make -j$NUM_CORES", + "*:*:make -j$NUM_CORES EXTLIBS='-liconv -lz'", "*:*:make DESTDIR=$STAGING_DIR$PREFIX/native install", "*:*:mkdir -p $STAGING_DIR$HOME", "*:*:echo '[user]' >> $STAGING_DIR$HOME/.gitconfig", From afce0f01c24030d6f04bcd1655df788e066f4a68 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 30 Jan 2026 01:01:17 +0100 Subject: [PATCH 070/200] fix: mingw32 builds --- host/main.go | 5 ++-- packages/libevent.json | 8 +++++- packages/native/binutils@2.45.json | 40 ++++++++++++++++++++++++++++++ packages/native/ct-tools.json | 11 +++----- sources.json | 2 +- 5 files changed, 55 insertions(+), 11 deletions(-) create mode 100644 packages/native/binutils@2.45.json diff --git a/host/main.go b/host/main.go index 7c321f4..14bbbce 100644 --- a/host/main.go +++ b/host/main.go @@ -160,8 +160,9 @@ var SupportedHosts = map[string]*Host{ "*:*:HOST=x86_64-w64-mingw32", "*:*:TARGET=x86_64-w64-mingw32", "*:*:CC_target=x86_64-w64-mingw32", - "*:*:CC=x86_64-w64-mingw32-gcc --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CXX=x86_64-w64-mingw32-g++ --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-w64-mingw32 -I$PREFIX/usr/include", + "*:*:RC=x86_64-w64-mingw32-windres -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CC=x86_64-w64-mingw32-gcc --sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CXX=x86_64-w64-mingw32-g++ --sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-w64-mingw32 -I$PREFIX/usr/include", "*:*:CXXFLAGS=$CFLAGS", "*:*:RANLIB=x86_64-w64-mingw32-ranlib", "*:*:AR=x86_64-w64-mingw32-ar", diff --git a/packages/libevent.json b/packages/libevent.json index ba3c0cc..4639ad8 100644 --- a/packages/libevent.json +++ b/packages/libevent.json @@ -13,8 +13,10 @@ "*:*:native/_", "*:*:native/autoconf", "*:*:native/automake", + "*:*:native/cmake", "*:*:native/libtool", "*:*:native/m4", + "*:*:native/ninja", "*:*:native/perl" ], "build": { @@ -24,18 +26,22 @@ "*:*:config_opts=--host=$HOSTOVERRIDE --prefix=$PREFIX ", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --disable-openssl", + "*:*:config_opts=$config_opts --disable-mbedtls", "*:*:config_opts=$config_opts --disable-libevent-regress", "*:*:config_opts=$config_opts --disable-doxygen-html", "*:*:config_opts=$config_opts --disable-debug-mode", "*:*:config_opts=$config_opts --enable-static", - "*:*:config_opts=$config_opts --enable-gcc-hardening", "*:*:config_opts=$config_opts --with-pic", "*:*:config_opts=$config_opts --disable-samples", "*:*:CFLAGS=$CFLAGS -fPIC", "*:*:CXXFLAGS=$CXXFLAGS -fPIC" ], "steps": [ + "*:*-w64-mingw32:sed -i.bak 's|WIN32_WINNT 0x400|WIN32_WINNT 0x700|g' configure.ac", "*:*:./autogen.sh", + "*:*-w64-mingw32:sed -i.bak 's|WIN32_WINNT 0x400|WIN32_WINNT 0x700|g' configure~", + "*:*-w64-mingw32:sed -i.bak 's|_WIN32_WINNT 0x0501|_WIN32_WINNT 0x700|g' evutil.c", + "*:*-w64-mingw32:rm *.bak", "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", diff --git a/packages/native/binutils@2.45.json b/packages/native/binutils@2.45.json new file mode 100644 index 0000000..8ddde27 --- /dev/null +++ b/packages/native/binutils@2.45.json @@ -0,0 +1,40 @@ +{ + "package": "native/binutils@2.45", + "version": "2.45", + "type": "native", + "download": [ + { + "kind": "tar.bz2", + "sha256": "1393f90db70c2ebd785fb434d6127f8888c559d5eeb9c006c354b203bab3473e", + "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.45.tar.bz2" + } + ], + "dependencies": [ + "*:*:native/bison", + "*:*:native/libiconv", + "*:*:native/make", + "*:*:native/perl", + "*:*:native/pkgconf", + "*:*:native/texinfo", + "*:*:native/zlib" + ], + "build": { + "env": [ + "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=$config_opts --disable-nls", + "*:*:config_opts=$config_opts --disable-werror", + "*:*:config_opts=$config_opts --with-system-zlib", + "*:*:config_opts=$config_opts --enable-targets=all", + "*:*:config_opts=$config_opts --libdir=$PREFIX/native/lib", + "*:*:config_opts=$config_opts --infodir=$PREFIX/native/share/info", + "*:*:CPPFLAGS=-I$PREFIX/native/include", + "*:*:LDFLAGS=-L$PREFIX/native/lib" + ], + "steps": [ + "*:*:mkdir -p build", + "*:*:cd build && ../configure $config_opts", + "*:*:cd build && make -j$NUM_CORES", + "*:*:cd build && make install DESTDIR=$STAGING_DIR" + ] + } +} \ No newline at end of file diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index e434c59..4a60247 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "d6e741a7507f31c5e6e49218a6eb8ff7f2fe2077", + "sha256": "50bad5461d320d2ed46f9d672d722b4e668822b4", "url": "https://github.com/MrCyjaneK/ct-ng-configs.git" }, { @@ -121,7 +121,7 @@ "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/autoconf", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/automake", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bash", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/binutils@2.42", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/binutils@2.45", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bison", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bzip2", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/coreutils", @@ -149,13 +149,10 @@ "*:x86_64-linux-gnu:TOOL_TARGET=x86_64-linux-gnu", "*:aarch64-linux-gnu:TOOL_TARGET=aarch64-linux-gnu", "*:x86_64-linux-musl:TOOL_TARGET=x86_64-linux-musl", - "*:x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32", - "*:*:INSTALL=$PREFIX/native/bin/install", - "*:*:AR=$PREFIX/native/bin/ar" + "*:x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32" ], "steps": [ - "*:{*-linux-gnu,*-w64-mingw32}:sed -i.bak 's|CT_GMP_EXTRA_CFLAGS=.*|CT_GMP_EXTRA_CFLAGS=\"-std=gnu17 '$PREFIX/native/lib'\"|' platforms/x86_64-w64-mingw32/.config", - "*:{*-linux-gnu,*-w64-mingw32}:PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", + "*:{*-linux-gnu,*-w64-mingw32}:env -i PATH=$PATH PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET/* $STAGING_DIR/$PREFIX", "*:{*-linux-gnu,*-w64-mingw32}:rm -rf $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET", "*:{*-linux-gnu,*-w64-mingw32}:mkdir -p $STAGING_DIR/$PREFIX/native", diff --git a/sources.json b/sources.json index cb9ece2..18ffa0c 100644 --- a/sources.json +++ b/sources.json @@ -860,7 +860,7 @@ }, "https://github.com/MrCyjaneK/ct-ng-configs.git": { "refs": [ - "d6e741a7507f31c5e6e49218a6eb8ff7f2fe2077" + "50bad5461d320d2ed46f9d672d722b4e668822b4" ] }, "https://github.com/MrCyjaneK/osxcross.git": { From 6833c9f1862bfcee08f774744d9183d1d3878348 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 30 Jan 2026 01:36:10 +0100 Subject: [PATCH 071/200] macos fix --- packages/native/git.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/native/git.json b/packages/native/git.json index 97cf8f2..0debcb6 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -21,7 +21,7 @@ "build": { "env": [], "steps": [ - "*:*:make -j$NUM_CORES EXTLIBS='-liconv -lz'", + "*:*:make -j$NUM_CORES EXTLIBS='-liconv -lz -lgettextpo -lintl'", "*:*:make DESTDIR=$STAGING_DIR$PREFIX/native install", "*:*:mkdir -p $STAGING_DIR$HOME", "*:*:echo '[user]' >> $STAGING_DIR$HOME/.gitconfig", From 9b39402283c9993b8fe6f845d1d8309c675b5cd7 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 5 Feb 2026 13:12:28 +0100 Subject: [PATCH 072/200] add missing env vars --- host/main.go | 75 +++++++++++++++++++++++++++++++++++++++-------- host/main_test.go | 70 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 133 insertions(+), 12 deletions(-) create mode 100644 host/main_test.go diff --git a/host/main.go b/host/main.go index 14bbbce..7b2980b 100644 --- a/host/main.go +++ b/host/main.go @@ -57,6 +57,8 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=aarch64-apple-darwin", "*:*:TARGET=aarch64-apple-darwin", + "*:*:ARCH=aarch64", + "*:*:CMAKE_SYSTEM_NAME=Darwin", "*:*:SDK_VERSION=26.1", "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX$SDK_VERSION.sdk", "*:*:OSX_MIN_VERSION=10.16", @@ -66,8 +68,11 @@ var SupportedHosts = map[string]*Host{ "*:*:CXX=aarch64-apple-darwin-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CFLAGS=", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", + "*:*:CPPFLAGS=", "*:*:RANLIB=llvm-ranlib", + "*:*:STRIP=strip", "*:*:AR=llvm-ar", + "*:*:NM=llvm-nm", "*:*:LIBTOOL=llvm-libtool-darwin", "*:*:LDFLAGS=-lc++ -lc++abi", }, @@ -77,6 +82,8 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=x86_64-apple-darwin", "*:*:TARGET=x86_64-apple-darwin", + "*:*:ARCH=x86_64", + "*:*:CMAKE_SYSTEM_NAME=Darwin", "*:*:SDK_VERSION=26.1", "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX$SDK_VERSION.sdk", "*:*:OSX_MIN_VERSION=10.16", @@ -86,8 +93,11 @@ var SupportedHosts = map[string]*Host{ "*:*:CXX=x86_64-apple-darwin-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CFLAGS=", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:*:RANLIB=llvm-ranlib", - "*:*:AR=llvm-ar", + "*:*:CPPFLAGS=", + "*:*:RANLIB=ranlib", + "*:*:AR=ar", + "*:*:STRIP=strip", + "*:*:NM=nm", "*:*:LIBTOOL=llvm-libtool-darwin", "*:*:LDFLAGS=-lc++ -lc++abi", }, @@ -97,6 +107,8 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=aarch64-apple-ios", "*:*:TARGET=aarch64-apple-ios", + "*:*:ARCH=aarch64", + "*:*:CMAKE_SYSTEM_NAME=iOS", "*:*:IOS_MIN_VERSION=12", "*:*:LD64_VERSION=609", "*:*:SDK_VERSION=26.1", @@ -105,9 +117,12 @@ var SupportedHosts = map[string]*Host{ "*:*:CC=aarch64-apple-ios-clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CXX=aarch64-apple-ios-clang++ -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CFLAGS=", + "*:*:CPPFLAGS=", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", "*:*:RANLIB=ranlib", "*:*:AR=ar", + "*:*:NM=nm", + "*:*:STRIP=strip", "*:*:LIBTOOL=libtool", "*:*:LDFLAGS=-lc++ -lc++abi", "*:*:LD=lld", @@ -118,6 +133,8 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=aarch64-apple-ios-simulator", "*:*:TARGET=aarch64-apple-ios-simulator", + "*:*:ARCH=aarch64", + "*:*:CMAKE_SYSTEM_NAME=iOS", "*:*:IOS_MIN_VERSION=12", "*:*:LD64_VERSION=609", "*:*:SDK_VERSION=26.1", @@ -126,9 +143,12 @@ var SupportedHosts = map[string]*Host{ "*:*:CC=clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CXX=clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CFLAGS=", + "*:*:CPPFLAGS=", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", "*:*:RANLIB=ranlib", "*:*:AR=ar", + "*:*:NM=nm", + "*:*:STRIP=strip", "*:*:LIBTOOL=libtool", "*:*:LDFLAGS=-lc++ -lc++abi", }, @@ -159,11 +179,16 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=x86_64-w64-mingw32", "*:*:TARGET=x86_64-w64-mingw32", + "*:*:ARCH=x86_64", + "*:*:CMAKE_SYSTEM_NAME=Windows", "*:*:CC_target=x86_64-w64-mingw32", - "*:*:RC=x86_64-w64-mingw32-windres -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CC=x86_64-w64-mingw32-gcc --sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CXX=x86_64-w64-mingw32-g++ --sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-w64-mingw32 -I$PREFIX/usr/include", - "*:*:CXXFLAGS=$CFLAGS", + "*:*:RC=x86_64-w64-mingw32-windres", + "*:*:RCFLAGS=-I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CC=x86_64-w64-mingw32-gcc", + "*:*:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CXX=x86_64-w64-mingw32-g++", + "*:*:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-w64-mingw32 -I$PREFIX/usr/include", + "*:*:CPPFLAGS=-I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", "*:*:RANLIB=x86_64-w64-mingw32-ranlib", "*:*:AR=x86_64-w64-mingw32-ar", "*:*:AS=x86_64-w64-mingw32-as", @@ -173,6 +198,7 @@ var SupportedHosts = map[string]*Host{ "*:*:STRIP=x86_64-w64-mingw32-strip", "*:*:READELF=x86_64-w64-mingw32-readelf", "*:*:LD=x86_64-w64-mingw32-ld", + "*:*:LDFLAGS=", "*:*:NM=x86_64-w64-mingw32-nm", }, }, @@ -181,10 +207,14 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=x86_64-linux-gnu", "*:*:TARGET=x86_64-linux-gnu", + "*:*:ARCH=x86_64", + "*:*:CMAKE_SYSTEM_NAME=Linux", "*:*:CC_target=x86_64-linux-gnu", - "*:*:CC=x86_64-linux-gnu-gcc --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CXX=x86_64-linux-gnu-g++ --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-linux-gnu -I$PREFIX/usr/include", - "*:*:CXXFLAGS=$CFLAGS", + "*:*:CC=x86_64-linux-gnu-gcc", + "*:*:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CXX=x86_64-linux-gnu-g++", + "*:*:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-linux-gnu -I$PREFIX/usr/include", + "*:*:CPPFLAGS=-I$PREFIX/include -I$PREFIX/usr/include", "*:*:RANLIB=x86_64-linux-gnu-ranlib", "*:*:AR=x86_64-linux-gnu-ar", "*:*:AS=x86_64-linux-gnu-as", @@ -194,6 +224,7 @@ var SupportedHosts = map[string]*Host{ "*:*:STRIP=x86_64-linux-gnu-strip", "*:*:READELF=x86_64-linux-gnu-readelf", "*:*:LD=x86_64-linux-gnu-ld", + "*:*:LDFLAGS=", "*:*:NM=x86_64-linux-gnu-nm", }, }, @@ -202,10 +233,14 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=aarch64-linux-gnu", "*:*:TARGET=aarch64-linux-gnu", + "*:*:ARCH=aarch64", + "*:*:CMAKE_SYSTEM_NAME=Linux", "*:*:CC_target=aarch64-linux-gnu", - "*:*:CC=aarch64-linux-gnu-gcc --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CXX=aarch64-linux-gnu-g++ --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/aarch64-linux-gnu -I$PREFIX/usr/include", - "*:*:CXXFLAGS=$CFLAGS", + "*:*:CC=aarch64-linux-gnu-gcc", + "*:*:CXX=aarch64-linux-gnu-g++", + "*:*:CXXFLAGS= --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/aarch64-linux-gnu -I$PREFIX/usr/include", + "*:*:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", + "*:*:CPPFLAGS=-I$PREFIX/include -I$PREFIX/usr/include", "*:*:RANLIB=aarch64-linux-gnu-ranlib", "*:*:AR=aarch64-linux-gnu-ar", "*:*:AS=aarch64-linux-gnu-as", @@ -215,6 +250,7 @@ var SupportedHosts = map[string]*Host{ "*:*:STRIP=aarch64-linux-gnu-strip", "*:*:READELF=aarch64-linux-gnu-readelf", "*:*:LD=aarch64-linux-gnu-ld", + "*:*:LDFLAGS=aarch64-linux-gnu-ld", "*:*:NM=aarch64-linux-gnu-nm", }, }, @@ -223,13 +259,18 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=aarch64-linux-android", "*:*:TARGET=aarch64-linux-android", + "*:*:ARCH=aarch64", + "*:*:CMAKE_SYSTEM_NAME=Android", "*:*:CC_target=aarch64-linux-android", "*:*:CC=aarch64-linux-android21-clang", "*:*:CXX=aarch64-linux-android21-clang++", "*:*:CFLAGS=$CFLAGS", + "*:*:CPPFLAGS=", "*:*:CXXFLAGS=$CXXFLAGS -stdlib=libc++", "*:*:RANLIB=llvm-ranlib", "*:*:AR=llvm-ar", + "*:*:STRIP=llvm-strip", + "*:*:NM=llvm-nm", "*:*:AS=llvm-as", "*:*:LIBTOOL=libtool", "*:*:ANDROID_NDK_HOME=$PREFIX/native/", @@ -241,13 +282,18 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=x86_64-linux-android", "*:*:TARGET=x86_64-linux-android", + "*:*:ARCH=x86_64", + "*:*:CMAKE_SYSTEM_NAME=Android", "*:*:CC_target=x86_64-linux-android", "*:*:CC=x86_64-linux-android21-clang", "*:*:CXX=x86_64-linux-android21-clang++", "*:*:CFLAGS=$CFLAGS", + "*:*:CPPFLAGS=", "*:*:CXXFLAGS=$CXXFLAGS -stdlib=libc++", "*:*:RANLIB=llvm-ranlib", "*:*:AR=llvm-ar", + "*:*:NM=llvm-nm", + "*:*:STRIP=llvm-strip", "*:*:AS=llvm-as", "*:*:LIBTOOL=libtool", "*:*:ANDROID_NDK_HOME=$PREFIX/native/", @@ -258,13 +304,18 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=armv7a-linux-androideabi", "*:*:TARGET=armv7a-linux-androideabi", + "*:*:ARCH=armv7a", + "*:*:CMAKE_SYSTEM_NAME=Android", "*:*:CC_target=armv7a-linux-androideabi", "*:*:CC=armv7a-linux-androideabi21-clang", "*:*:CXX=armv7a-linux-androideabi21-clang++", "*:*:CFLAGS=$CFLAGS", + "*:*:CPPFLAGS=", "*:*:CXXFLAGS=$CXXFLAGS -stdlib=libc++", "*:*:RANLIB=llvm-ranlib", "*:*:AR=llvm-ar", + "*:*:NM=llvm-nm", + "*:*:STRIP=llvm-strip", "*:*:AS=llvm-as", "*:*:LIBTOOL=libtool", "*:*:ANDROID_NDK_HOME=$PREFIX/native/", diff --git a/host/main_test.go b/host/main_test.go new file mode 100644 index 0000000..0d55578 --- /dev/null +++ b/host/main_test.go @@ -0,0 +1,70 @@ +package host_test + +import ( + "fmt" + "strings" + "testing" + + "github.com/mrcyjanek/simplybs/host" + "github.com/mrcyjanek/simplybs/utils/ifstring" +) + +func TestHosts(t *testing.T) { + for i := range host.SupportedHosts { + t.Run("Env vars: "+i, func(t *testing.T) { + assertEnv(t, i) + }) + } +} + +func assertEnv(t *testing.T, i string) { + env := host.SupportedHosts[i].Env + keys := []string{} + for _, envVar := range env { + parsed := ifstring.ParseIfString(envVar) + key := strings.Split(parsed.Content, "=")[0] + keys = append(keys, key) + } + var required = []string{ + "TARGET", + "CC", + "CXX", + "CFLAGS", + "AR", + "RANLIB", + "NM", + "STRIP", + "CXXFLAGS", + "CPPFLAGS", + "LDFLAGS", + "CMAKE_SYSTEM_NAME", + "ARCH", + } + for _, req := range required { + exists := false + for _, has := range keys { + if has == req { + exists = true + } + } + if exists == false { + fmt.Println(i, "doesn't have", req) + t.Fail() + } + } + // cat | sed -e "s|@HOST@|$(host)|g" \ <-- $TARGET + // -e "s|@CC@|$(host_CC)|g" \ <--- $CC + // -e "s|@CXX@|$(host_CXX)|g" \ <--- $CXX + // -e "s|@AR@|$(toolchain_path)$(host_AR)|g" \ <--- $AR + // -e "s|@RANLIB@|$(toolchain_path)$(host_RANLIB)|g" \ <--- $RANLIB + // -e "s|@NM@|$(toolchain_path)$(host_NM)|g" \ <--- $NM + // -e "s|@STRIP@|$(toolchain_path)$(host_STRIP)|g" \ <--- $STRIP + // -e "s|@CFLAGS@|$(strip $(host_CFLAGS) $(host_$(release_type)_CFLAGS))|g" \ <--- $CFLAGS + // -e "s|@CXXFLAGS@|$(strip $(host_CXXFLAGS) $(host_$(release_type)_CXXFLAGS))|g" \ <-- $CXXFLAGS + // -e "s|@CPPFLAGS@|$(strip $(host_CPPFLAGS) $(host_$(release_type)_CPPFLAGS))|g" \ <-- $CPPFLAGS + // -e "s|@LDFLAGS@|$(strip $(host_LDFLAGS) $(host_$(release_type)_LDFLAGS))|g" \ <-- $LDFLAGS + // -e "s|@cmake_system_name@|$($(host_os)_cmake_system)|g" \ $CMAKE_SYSTEM_NAME + // -e "s|@prefix@|$($(host_arch)_$(host_os)_prefix)|g"\ ---> $PREFIX + // -e "s|@arch@|$(host_arch)|g"\ ---> aarch64/arm64/x86_64 + // > $outfile < Date: Thu, 5 Feb 2026 16:04:44 +0100 Subject: [PATCH 073/200] fix mingw builds --- packages/boost.json | 8 ++++---- packages/libiconv.json | 6 +++++- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/packages/boost.json b/packages/boost.json index 0d2a315..e8504fc 100644 --- a/packages/boost.json +++ b/packages/boost.json @@ -12,7 +12,6 @@ "dependencies": [ "*:*:native/_", "*:*:native/boost-b2", - "*:*:native/python@3.11", "*:*:libiconv" ], "patches": [ @@ -25,7 +24,7 @@ "*:*-linux-android*:target_os=android", "*:*-mingw32*:target_os=windows", "*:*-linux-gnu*:target_os=linux", - "*:*:config_opts=$config_opts --layout=system --user-config=user-config.jam", + "*:*:config_opts=$config_opts --layout=system --without-python --user-config=user-config.jam", "*:*:config_opts=$config_opts threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1", "*:*-linux-gnu*:config_opts=$config_opts threadapi=pthread runtime-link=static", "*:*-android*:config_opts=$config_opts threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", @@ -46,12 +45,13 @@ "*:*-ios*:toolset2=iphone", "*:*-ios-simulator*:toolset2=~iphone", "*:*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log", - "*:*:CXXFLAGS=-fPIC -std=c++17", + "*:*:CXXFLAGS=$CXXFLAGS -fPIC -std=c++17", "*:*-darwin*:LDFLAGS=-L$PREFIX/lib", "*:*-ios*:LDFLAGS=-L$PREFIX/lib", "*:*-ios-simulator*:LDFLAGS=-L$PREFIX/lib", "*:*-apple-*:AR=libtool", - "*:*-linux-*:ARFLAGS=rcs" + "*:{*-linux-*,*-w64-*}:ARFLAGS=rcs", + "*:*:WINDRES=$RC $RCFLAGS" ], "steps": [ "*:*:echo \"using $toolset : $toolset2 : $CXX $CXXFLAGS : \"$CXXFLAGS\" \"$LDFLAGS\" \"$AR\" \"$ARFLAGS\" \"$STRIP\" \"$RANLIB\" \"$WINDRES\" \"$target_os\" : ;\" > user-config.jam", diff --git a/packages/libiconv.json b/packages/libiconv.json index 58ba040..a93617d 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -23,7 +23,11 @@ "*:*:config_opts=--host=$BUILD_HOST --prefix=$PREFIX --disable-nls --enable-static --disable-shared", "*:*:config_opts=$config_opts --disable-malloca", "*:*:config_opts=$config_opts", - "*:*linux:config_opts=$config_opts --with-pic" + "*:*linux:config_opts=$config_opts --with-pic", + "*:*:CC=$CC $CFLAGS", + "*:*:CXX=$CXX $CXXFLAGS", + "*:*:RC=$RC $RCFLAGS", + "*:*:WINDRES=$RC" ], "steps": [ "*:*:cp -f $PREFIX/native/share/config/config.guess build-aux/", From 842139ec28e1bf74517474ced582ac489859575e Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 5 Feb 2026 22:45:28 +0100 Subject: [PATCH 074/200] boost fix --- host/main.go | 4 +-- packages/boost.json | 48 ++++++++++++++++++----------------- packages/libiconv.json | 6 +++-- packages/native/boost-b2.json | 12 ++++++--- utils/extract.go | 2 +- 5 files changed, 40 insertions(+), 32 deletions(-) diff --git a/host/main.go b/host/main.go index 7b2980b..6121649 100644 --- a/host/main.go +++ b/host/main.go @@ -74,7 +74,7 @@ var SupportedHosts = map[string]*Host{ "*:*:AR=llvm-ar", "*:*:NM=llvm-nm", "*:*:LIBTOOL=llvm-libtool-darwin", - "*:*:LDFLAGS=-lc++ -lc++abi", + "*:*:LDFLAGS=-L$PREFIX/lib -lc++ -lc++abi", }, }, "x86_64-apple-darwin": { @@ -99,7 +99,7 @@ var SupportedHosts = map[string]*Host{ "*:*:STRIP=strip", "*:*:NM=nm", "*:*:LIBTOOL=llvm-libtool-darwin", - "*:*:LDFLAGS=-lc++ -lc++abi", + "*:*:LDFLAGS=-L$PREFIX/lib -lc++ -lc++abi", }, }, "aarch64-apple-ios": { diff --git a/packages/boost.json b/packages/boost.json index e8504fc..3cf3235 100644 --- a/packages/boost.json +++ b/packages/boost.json @@ -1,42 +1,47 @@ { "package": "boost", - "version": "1_89_0", + "version": "1_90_0", "type": "host", "download": [ { "kind": "tar.bz2", - "sha256": "85a33fa22621b4f314f8e85e1a5e2a9363d22e4f4992925d4bb3bc631b5a0c7a", - "url": "http://downloads.sourceforge.net/project/boost/boost/1.89.0/boost_1_89_0.tar.bz2" + "sha256": "49551aff3b22cbc5c5a9ed3dbc92f0e23ea50a0f7325b0d198b705e8ee3fc305", + "url": "http://downloads.sourceforge.net/project/boost/boost/1.90.0/boost_1_90_0.tar.bz2" } ], "dependencies": [ "*:*:native/_", + "*:*:native/cmake", + "*:*:xz", "*:*:native/boost-b2", - "*:*:libiconv" + "*:*:native/python@3.14", + "*:*:libiconv", + "*:*:zstd", + "*:*:openssl" ], "patches": [ "fix_io_control_hpp.patch" ], "build": { "env": [ - "*:*:config_opts=variant=release", "*:*-apple-ios*:target_os=iphone", "*:*-linux-android*:target_os=android", "*:*-mingw32*:target_os=windows", "*:*-linux-gnu*:target_os=linux", - "*:*:config_opts=$config_opts --layout=system --without-python --user-config=user-config.jam", + "*:*:config_opts=variant=release --layout=system --without-python --user-config=user-config.jam", "*:*:config_opts=$config_opts threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1", - "*:*-linux-gnu*:config_opts=$config_opts threadapi=pthread runtime-link=static", - "*:*-android*:config_opts=$config_opts threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", - "*:*64-linux-android*:config_opts=$config_opts address-model=64", - "*:armv7-linux-androideabi*:config_opts=$config_opts address-model=32", - "*:*-darwin*:config_opts=$config_opts --toolset=darwin runtime-link=static", - "*:*-ios*:config_opts=$config_opts --toolset=darwin-iphone runtime-link=static", - "*:*-ios-simulator*:config_opts=$config_opts --toolset=darwin-iphone runtime-link=static", - "*:*mingw32*:config_opts=$config_opts binary-format=pe target-os=$target_os threadapi=win32 runtime-link=static", - "*:*x86_64-*-mingw32*:config_opts=$config_opts address-model=64", - "*:*i686-*-mingw32*:config_opts=$config_opts address-model=32", - "*:*i686-linux-gnu*:config_opts=$config_opts address-model=32 architecture=x86", + "*:aarch64-apple-darwin:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin runtime-link=shared", + "*:x86_64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", + "*:aarch64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", + "*:armv7-linux-androideabi:config_opts=$config_opts address-model=32 architecture=arm threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", + "*:x86_64-apple-darwin:config_opts=$config_opts address-model=64 architecture=x86", + "*:aarch64-apple-ios:config_opts=$config_opts --toolset=darwin-iphone runtime-link=static", + "*:aarch64-apple-ios-simulator:config_opts=$config_opts --toolset=darwin-iphone runtime-link=static", + "*:x86_64-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=64 architecture=x86", + "*:i686-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=32 architecture=x86", + "*:i686-linux-gnu:config_opts=$config_opts address-model=32 architecture=x86 threadapi=pthread runtime-link=static", + "*:x86_64-linux-gnu:config_opts=$config_opts address-model=64 architecture=x86 threadapi=pthread runtime-link=static", + "*:aarch64-linux-gnu:config_opts=$config_opts address-model=64 architecture=arm threadapi=pthread runtime-link=static", "*:*:toolset=gcc", "*:*-apple-*:archiver=$LIBTOOL", "*:*-apple-*:toolset=darwin", @@ -44,18 +49,15 @@ "*:*mingw32*:toolset=gcc", "*:*-ios*:toolset2=iphone", "*:*-ios-simulator*:toolset2=~iphone", - "*:*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log", - "*:*:CXXFLAGS=$CXXFLAGS -fPIC -std=c++17", - "*:*-darwin*:LDFLAGS=-L$PREFIX/lib", - "*:*-ios*:LDFLAGS=-L$PREFIX/lib", - "*:*-ios-simulator*:LDFLAGS=-L$PREFIX/lib", + "*:*:CXXFLAGS=$CXXFLAGS -fPIC", "*:*-apple-*:AR=libtool", "*:{*-linux-*,*-w64-*}:ARFLAGS=rcs", "*:*:WINDRES=$RC $RCFLAGS" ], "steps": [ "*:*:echo \"using $toolset : $toolset2 : $CXX $CXXFLAGS : \"$CXXFLAGS\" \"$LDFLAGS\" \"$AR\" \"$ARFLAGS\" \"$STRIP\" \"$RANLIB\" \"$WINDRES\" \"$target_os\" : ;\" > user-config.jam", - "*:*:b2 -d2 -j$NUM_CORES --prefix=$STAGING_DIR$PREFIX $config_opts stage", + "*:*:b2 -j$NUM_CORES --prefix=$STAGING_DIR$PREFIX $config_opts", + "*:*:b2 -j1 --prefix=$STAGING_DIR$PREFIX $config_opts stage", "*:*:b2 -d0 -j1 --prefix=$STAGING_DIR$PREFIX $config_opts install" ] } diff --git a/packages/libiconv.json b/packages/libiconv.json index a93617d..fbe5d07 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -20,7 +20,7 @@ "*:*:CPPFLAGS=$CPPFLAGS -fPIC", "*:*:BUILD_HOST=$HOST", "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios", - "*:*:config_opts=--host=$BUILD_HOST --prefix=$PREFIX --disable-nls --enable-static --disable-shared", + "*:*:config_opts=--host=$BUILD_HOST --prefix=$PREFIX --disable-nls --enable-static --enable-shared", "*:*:config_opts=$config_opts --disable-malloca", "*:*:config_opts=$config_opts", "*:*linux:config_opts=$config_opts --with-pic", @@ -35,7 +35,9 @@ "*:*:sed -i.bak 's|#include |#include \"stdckdint.in.h\"|' ./srclib/malloca.c", "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES", - "*:*:make DESTDIR=$STAGING_DIR install" + "*:*:make DESTDIR=$STAGING_DIR install", + "*:*:mkdir -p $STAGING_DIR$PREFIX/include", + "*:*:cp include/*.h $STAGING_DIR$PREFIX/include/" ] } } \ No newline at end of file diff --git a/packages/native/boost-b2.json b/packages/native/boost-b2.json index a63a05a..79be4ad 100644 --- a/packages/native/boost-b2.json +++ b/packages/native/boost-b2.json @@ -1,17 +1,21 @@ { "package": "native/boost-b2", - "version": "1_89_0", + "version": "1_90_0", "type": "native", "download": [ { "kind": "tar.bz2", - "sha256": "85a33fa22621b4f314f8e85e1a5e2a9363d22e4f4992925d4bb3bc631b5a0c7a", - "url": "http://downloads.sourceforge.net/project/boost/boost/1.89.0/boost_1_89_0.tar.bz2" + "sha256": "49551aff3b22cbc5c5a9ed3dbc92f0e23ea50a0f7325b0d198b705e8ee3fc305", + "url": "http://downloads.sourceforge.net/project/boost/boost/1.90.0/boost_1_90_0.tar.bz2" } ], "build": { + "env": [ + "*:*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,log", + "*:*-w64-*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log" + ], "steps": [ - "*:*:./bootstrap.sh", + "*:*:./bootstrap.sh --without-icu --with-libraries=$config_libraries", "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", "*:*:cp b2 $STAGING_DIR$PREFIX/native/bin/" ] diff --git a/utils/extract.go b/utils/extract.go index 4d40232..1726bde 100644 --- a/utils/extract.go +++ b/utils/extract.go @@ -173,7 +173,7 @@ func extractTar(tr *tar.Reader, destPath, commonPrefix string) error { log.Printf("Warning: Failed to create symbolic link %s -> %s: %v", target, header.Linkname, err) } else { if err := os.Chtimes(target, header.AccessTime, header.ModTime); err != nil { - log.Printf("Warning: Failed to set timestamps for symlink %s: %v", target, err) + // log.Printf("Warning: Failed to set timestamps for symlink %s: %v", target, err) } } } From eee48c531653354b5d0c2d95aad6ae1a86a76d6d Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 6 Feb 2026 10:28:00 +0100 Subject: [PATCH 075/200] _source_me for extract --- main.go | 6 ------ pack/build.go | 6 ++++++ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/main.go b/main.go index 0a1e69c..ebb1bcb 100644 --- a/main.go +++ b/main.go @@ -78,12 +78,6 @@ func buildForHost(host *host.Host, packageNames []*pack.Package, list bool, extr return } - if extract { - for _, pkg := range packageNames { - pkg.ExtractEnv(host, host.GetEnvPath()) - } - } - if build { for _, pkg := range packageNames { pkg.EnsureBuilt(host, true) diff --git a/pack/build.go b/pack/build.go index d9db31b..059f277 100644 --- a/pack/build.go +++ b/pack/build.go @@ -39,6 +39,12 @@ func (p *Package) ExtractEnv(host *host.Host, envPath string) { if err != nil { log.Panicf("Failed to extract archive %s: %v", archive, err) } + env := p.GetEnv(host) + newEnv := []string{} + for k, v := range env { + newEnv = append(newEnv, k+"="+v) + } + writeDotEnv(envPath+"/_source_me", newEnv) } func (p *Package) DownloadSource(download *Download) { From 0c9d34e9bebd4ed73d90359b8f3276eda4127c1a Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 6 Feb 2026 10:52:12 +0100 Subject: [PATCH 076/200] fix: linux cross, git build --- host/main.go | 2 +- packages/boost.json | 5 ++++- packages/native/git.json | 3 ++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/host/main.go b/host/main.go index 6121649..708e505 100644 --- a/host/main.go +++ b/host/main.go @@ -61,7 +61,7 @@ var SupportedHosts = map[string]*Host{ "*:*:CMAKE_SYSTEM_NAME=Darwin", "*:*:SDK_VERSION=26.1", "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX$SDK_VERSION.sdk", - "*:*:OSX_MIN_VERSION=10.16", + "*:*:OSX_MIN_VERSION=13.0", "*:*:LD64_VERSION=609", "*:*:CC_target=arm64-apple-darwin", "*:*:CC=aarch64-apple-darwin-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", diff --git a/packages/boost.json b/packages/boost.json index 3cf3235..9bdfbe2 100644 --- a/packages/boost.json +++ b/packages/boost.json @@ -52,7 +52,10 @@ "*:*:CXXFLAGS=$CXXFLAGS -fPIC", "*:*-apple-*:AR=libtool", "*:{*-linux-*,*-w64-*}:ARFLAGS=rcs", - "*:*:WINDRES=$RC $RCFLAGS" + "*:*:WINDRES=$RC $RCFLAGS", + "none:*-apple-darwin:config_opts=$config_opts define=BOOST_LOG_WITHOUT_SYSLOG", + "none:*-apple-darwin:config_opts=$config_opts define=BOOST_LOG_WITHOUT_IPC", + "*:*-apple-darwin:config_opts=$config_opts define=_DARWIN_C_SOURCE" ], "steps": [ "*:*:echo \"using $toolset : $toolset2 : $CXX $CXXFLAGS : \"$CXXFLAGS\" \"$LDFLAGS\" \"$AR\" \"$ARFLAGS\" \"$STRIP\" \"$RANLIB\" \"$WINDRES\" \"$target_os\" : ;\" > user-config.jam", diff --git a/packages/native/git.json b/packages/native/git.json index 0debcb6..12c4ba0 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -21,7 +21,8 @@ "build": { "env": [], "steps": [ - "*:*:make -j$NUM_CORES EXTLIBS='-liconv -lz -lgettextpo -lintl'", + "linux_*:*:make -j$NUM_CORES EXTLIBS='-liconv -lz -lgettextpo'", + "darwin_*:*:make -j$NUM_CORES EXTLIBS='-liconv -lz -lgettextpo -lintl'", "*:*:make DESTDIR=$STAGING_DIR$PREFIX/native install", "*:*:mkdir -p $STAGING_DIR$HOME", "*:*:echo '[user]' >> $STAGING_DIR$HOME/.gitconfig", From 7620afdbbc895d74274b649c0c7a38c7c20b3e0a Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 6 Feb 2026 11:30:36 +0100 Subject: [PATCH 077/200] fix: unbound deps --- packages/boost.json | 8 ++++---- packages/native/boost-b2.json | 4 ++-- packages/unbound.json | 5 +++++ 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/packages/boost.json b/packages/boost.json index 9bdfbe2..2383af1 100644 --- a/packages/boost.json +++ b/packages/boost.json @@ -11,13 +11,13 @@ ], "dependencies": [ "*:*:native/_", - "*:*:native/cmake", - "*:*:xz", "*:*:native/boost-b2", + "*:*:native/cmake", "*:*:native/python@3.14", "*:*:libiconv", - "*:*:zstd", - "*:*:openssl" + "*:*:openssl", + "*:*:xz", + "*:*:zstd" ], "patches": [ "fix_io_control_hpp.patch" diff --git a/packages/native/boost-b2.json b/packages/native/boost-b2.json index 79be4ad..f986911 100644 --- a/packages/native/boost-b2.json +++ b/packages/native/boost-b2.json @@ -11,8 +11,8 @@ ], "build": { "env": [ - "*:*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,log", - "*:*-w64-*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log" + "*:*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,log", + "*:*-w64-*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log" ], "steps": [ "*:*:./bootstrap.sh --without-icu --with-libraries=$config_libraries", diff --git a/packages/unbound.json b/packages/unbound.json index a32b24b..e274373 100644 --- a/packages/unbound.json +++ b/packages/unbound.json @@ -11,6 +11,11 @@ ], "dependencies": [ "*:*:native/_", + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/m4", + "*:*:native/make", + "*:*:native/perl", "*:*:expat", "*:*:openssl" ], From a717739e48af567585fd8c755cff46fcd350ad9e Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 6 Feb 2026 14:38:59 +0100 Subject: [PATCH 078/200] fix: osx-cross minver --- packages/native/apple-sdk.json | 2 +- packages/native/osx-cross.json | 2 +- packages/zeromq.json | 11 ++++++----- sources.json | 2 +- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/packages/native/apple-sdk.json b/packages/native/apple-sdk.json index 730f860..a44639d 100644 --- a/packages/native/apple-sdk.json +++ b/packages/native/apple-sdk.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "643bea6efcfd54769eaaa645dae5037dd7148c94", + "sha256": "0d1b14468187636f5a23d4adb4f3e5830570bd49", "url": "https://github.com/MrCyjaneK/osxcross.git" }, { diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 3db9f0b..3079276 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "643bea6efcfd54769eaaa645dae5037dd7148c94", + "sha256": "0d1b14468187636f5a23d4adb4f3e5830570bd49", "url": "https://github.com/MrCyjaneK/osxcross.git" }, { diff --git a/packages/zeromq.json b/packages/zeromq.json index 3c5081e..fdbf626 100644 --- a/packages/zeromq.json +++ b/packages/zeromq.json @@ -10,7 +10,8 @@ } ], "dependencies": [ - "*:*:native/_" + "*:*:native/_", + "*:*:native/make" ], "patches": [ "fix_declaration.patch" @@ -20,15 +21,15 @@ "*:aarch64-apple-ios*:HOST=aarch64-apple-darwin", "*:*:config_opts=--prefix=$PREFIX --host=$HOST --without-documentation --disable-shared --without-libsodium --disable-curve", "*:*-linux-gnu:config_opts=$config_opts --with-pic", - "*:*:cxxflags=-std=c++11" + "*:*:cxxflags=$CXXFLAGS -std=c++17" ], "steps": [ "*:*:patch -p1 < $PATCH_DIR/zeromq/fix_declaration.patch", "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES src/libzmq.la", - "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-pkgconfigDATA VERBOSE=1", - "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-libLTLIBRARIES VERBOSE=1", - "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-includeHEADERS VERBOSE=1" + "*:*:make -j1 DESTDIR=$STAGING_DIR install-pkgconfigDATA VERBOSE=1", + "*:*:make -j1 DESTDIR=$STAGING_DIR install-libLTLIBRARIES VERBOSE=1", + "*:*:make -j1 DESTDIR=$STAGING_DIR install-includeHEADERS VERBOSE=1" ] } } \ No newline at end of file diff --git a/sources.json b/sources.json index 18ffa0c..d752d02 100644 --- a/sources.json +++ b/sources.json @@ -865,7 +865,7 @@ }, "https://github.com/MrCyjaneK/osxcross.git": { "refs": [ - "643bea6efcfd54769eaaa645dae5037dd7148c94" + "0d1b14468187636f5a23d4adb4f3e5830570bd49" ] }, "https://github.com/MrCyjaneK/torch.git": { From 8674271375060baf8b462b6f41e495f2e6dc519c Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 6 Feb 2026 17:14:19 +0100 Subject: [PATCH 079/200] fix: sodium --- packages/sodium.json | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/packages/sodium.json b/packages/sodium.json index 62a9199..4c67023 100644 --- a/packages/sodium.json +++ b/packages/sodium.json @@ -11,7 +11,8 @@ ], "dependencies": [ "*:*:native/_", - "*:*:native/config" + "*:*:native/config", + "*:*:native/make" ], "patches": [ "disable-glibc-getrandom-getentropy.patch", @@ -20,9 +21,6 @@ "build": { "env": [ "*:*-android*:ANDROID_NDK_ROOT=$PREFIX/native", - "*:*-android*:CC=clang", - "*:*-android*:AR=ar", - "*:*-android*:RANLIB=ranlib", "*:*:config_opts=--host=$HOST --prefix=$PREFIX", "*:*:config_opts=$config_opts --enable-static --disable-shared --with-pic" ], From f05e0475fd0ebbbf6b27658dae9f299e3ca8bcc9 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 6 Feb 2026 19:58:55 +0100 Subject: [PATCH 080/200] boost ios fix --- packages/boost.json | 6 +++--- packages/native/python@3.14.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/boost.json b/packages/boost.json index 2383af1..fc4c279 100644 --- a/packages/boost.json +++ b/packages/boost.json @@ -35,8 +35,8 @@ "*:aarch64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:armv7-linux-androideabi:config_opts=$config_opts address-model=32 architecture=arm threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:x86_64-apple-darwin:config_opts=$config_opts address-model=64 architecture=x86", - "*:aarch64-apple-ios:config_opts=$config_opts --toolset=darwin-iphone runtime-link=static", - "*:aarch64-apple-ios-simulator:config_opts=$config_opts --toolset=darwin-iphone runtime-link=static", + "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone runtime-link=shared --without-process", + "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone runtime-link=shared --without-process", "*:x86_64-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=64 architecture=x86", "*:i686-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=32 architecture=x86", "*:i686-linux-gnu:config_opts=$config_opts address-model=32 architecture=x86 threadapi=pthread runtime-link=static", @@ -55,7 +55,7 @@ "*:*:WINDRES=$RC $RCFLAGS", "none:*-apple-darwin:config_opts=$config_opts define=BOOST_LOG_WITHOUT_SYSLOG", "none:*-apple-darwin:config_opts=$config_opts define=BOOST_LOG_WITHOUT_IPC", - "*:*-apple-darwin:config_opts=$config_opts define=_DARWIN_C_SOURCE" + "*:*-apple-*:config_opts=$config_opts define=_DARWIN_C_SOURCE" ], "steps": [ "*:*:echo \"using $toolset : $toolset2 : $CXX $CXXFLAGS : \"$CXXFLAGS\" \"$LDFLAGS\" \"$AR\" \"$ARFLAGS\" \"$STRIP\" \"$RANLIB\" \"$WINDRES\" \"$target_os\" : ;\" > user-config.jam", diff --git a/packages/native/python@3.14.json b/packages/native/python@3.14.json index 2ee595e..2a47c51 100644 --- a/packages/native/python@3.14.json +++ b/packages/native/python@3.14.json @@ -1,5 +1,5 @@ { - "package": "native/python@3.11", + "package": "native/python@3.14", "version": "3.14.0", "type": "native", "download": [ From ce9536d63f7cf95d31e710f0449daf8d776d8d18 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 7 Feb 2026 21:18:13 +0100 Subject: [PATCH 081/200] fix aarch64 linux --- host/main.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/host/main.go b/host/main.go index 708e505..536cc38 100644 --- a/host/main.go +++ b/host/main.go @@ -250,7 +250,7 @@ var SupportedHosts = map[string]*Host{ "*:*:STRIP=aarch64-linux-gnu-strip", "*:*:READELF=aarch64-linux-gnu-readelf", "*:*:LD=aarch64-linux-gnu-ld", - "*:*:LDFLAGS=aarch64-linux-gnu-ld", + "*:*:LDFLAGS=", "*:*:NM=aarch64-linux-gnu-nm", }, }, From 1d94e94529435b189fa8cb832a7c2b5d75f0aa47 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 8 Feb 2026 14:42:57 +0100 Subject: [PATCH 082/200] lniux amd64 fixes --- packages/boost.json | 1 - packages/expat.json | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/boost.json b/packages/boost.json index fc4c279..4d2034d 100644 --- a/packages/boost.json +++ b/packages/boost.json @@ -48,7 +48,6 @@ "*:*-android*:toolset=gcc", "*:*mingw32*:toolset=gcc", "*:*-ios*:toolset2=iphone", - "*:*-ios-simulator*:toolset2=~iphone", "*:*:CXXFLAGS=$CXXFLAGS -fPIC", "*:*-apple-*:AR=libtool", "*:{*-linux-*,*-w64-*}:ARFLAGS=rcs", diff --git a/packages/expat.json b/packages/expat.json index f2b7da3..d75317e 100644 --- a/packages/expat.json +++ b/packages/expat.json @@ -21,7 +21,7 @@ "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios" ], "steps": [ - "*:*:./configure --host=$HOST --prefix=$PREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", + "*:*:./configure --host=$BUILD_HOST --prefix=$PREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] From 4b94ce49194d81f8603af48c102731b943e58b36 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 8 Feb 2026 23:23:26 +0100 Subject: [PATCH 083/200] wip --- pack/info.go | 3 +++ pack/main.go | 7 +++++++ packages/native/rust@1_54_0.json | 2 +- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/pack/info.go b/pack/info.go index 5232a9b..381a10d 100644 --- a/pack/info.go +++ b/pack/info.go @@ -123,6 +123,9 @@ func (p *Package) GenerateBuildPath(h *host.Host, kind string) string { log.Fatalf("Source build path is not supported") } safeName := strings.ReplaceAll(p.ShortName(h), "/", "_") + if p.Type == "native" { + return filepath.Join(host.DataDir(), kind, safeName) + } return filepath.Join(host.DataDir(), kind, h.Triplet, safeName) } diff --git a/pack/main.go b/pack/main.go index 78b2fa7..bc2fbf7 100644 --- a/pack/main.go +++ b/pack/main.go @@ -193,9 +193,16 @@ func Cleanup() { currentFileName := fmt.Sprintf("%s-%s-%s", pkg.Package, pkg.Version, currentBuildID) currentFileName = strings.ReplaceAll(currentFileName, "/", "_") + archPath := filepath.Join(builder, "built", target, currentFileName+".tar.gz") infoPath := filepath.Join(builder, "built", target, currentFileName+".info.txt") + if pkg.Type == "native" { + archPath = filepath.Join(builder, "built", currentFileName+".tar.gz") + infoPath = filepath.Join(builder, "built", currentFileName+".info.txt") + + } + keepFiles[archPath] = true keepFiles[infoPath] = true } diff --git a/packages/native/rust@1_54_0.json b/packages/native/rust@1_54_0.json index 0a1b1a6..ffc0844 100644 --- a/packages/native/rust@1_54_0.json +++ b/packages/native/rust@1_54_0.json @@ -31,7 +31,7 @@ "*:*:patch -p1 < $PATCH_DIR/rust/codegen_c.cpp.patch", "darwin_arm64:*:sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=aarch64/' script-overrides/stable-1.54.0-macos/build_std.txt", "linux_arm64:*:sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=aarch64/' script-overrides/stable-1.54.0-linux/build_std.txt", - "*:*:rm script-overrides/stable-1.54.0-*/*.bak", + "*:*:rm script-overrides/stable-1.54.0-*/*.bak || true", "*:*:sed -i.bak 's/^make$/make $@/' build-1.54.0.sh", "darwin_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-apple-darwin/RUSTC_TARGET ?= aarch64-apple-darwin/' run_rustc/Makefile", "linux_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-unknown-linux-gnu/RUSTC_TARGET ?= aarch64-unknown-linux-gnu/' run_rustc/Makefile", From ee29c677399185d162250aade6b1f97adebee503 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 10 Feb 2026 12:10:30 +0100 Subject: [PATCH 084/200] wip --- host/main.go | 4 ++-- main.go | 9 ++++++++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/host/main.go b/host/main.go index 536cc38..996475b 100644 --- a/host/main.go +++ b/host/main.go @@ -45,10 +45,10 @@ func DataDir() string { func (h *Host) GetEnvPath() string { if os.Getenv("SIMPLYBS_ENV_DIR") != "" { - return filepath.Join(os.Getenv("SIMPLYBS_ENV_DIR"), h.Triplet) + return filepath.Join(os.Getenv("SIMPLYBS_ENV_DIR")) } dir := DataDirRoot() - return filepath.Join(dir, "env", h.Triplet) + return filepath.Join(dir, "env") } var SupportedHosts = map[string]*Host{ diff --git a/main.go b/main.go index ebb1bcb..bba9eff 100644 --- a/main.go +++ b/main.go @@ -4,6 +4,8 @@ import ( "flag" "fmt" "log" + "os" + "path/filepath" "strings" "github.com/mrcyjanek/simplybs/cmd/lint" @@ -86,7 +88,12 @@ func buildForHost(host *host.Host, packageNames []*pack.Package, list bool, extr if extract { for _, pkg := range packageNames { log.Printf("Extracting env for package: %s", pkg.Package) - pkg.ExtractEnv(host, host.GetEnvPath()) + append := os.Getenv("SIMPLYBS_ENV_DIR_APPEND") + if append != "" { + pkg.ExtractEnv(host, filepath.Join(host.GetEnvPath(), append)) + } else { + pkg.ExtractEnv(host, host.GetEnvPath()) + } } } From 0afdf26365278e485de45ccc5e9edc2bbcd2e5d6 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 10 Feb 2026 12:21:23 +0100 Subject: [PATCH 085/200] add .DS_Store to gitignore --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 68dedf8..604ccc1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ .buildlib *.tar.gz .build -ct-config \ No newline at end of file +ct-config +.DS_Store From 61ccf85b404afd86b968b4fb469052ef1ae050e2 Mon Sep 17 00:00:00 2001 From: user Date: Thu, 19 Feb 2026 21:57:46 +0100 Subject: [PATCH 086/200] bump sdk --- packages/native/apple-sdk.json | 2 +- packages/native/osx-cross.json | 2 +- sources.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/native/apple-sdk.json b/packages/native/apple-sdk.json index a44639d..92dbd60 100644 --- a/packages/native/apple-sdk.json +++ b/packages/native/apple-sdk.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "0d1b14468187636f5a23d4adb4f3e5830570bd49", + "sha256": "ea17212e41970b9f602fb30898b5a4013a1fb7af", "url": "https://github.com/MrCyjaneK/osxcross.git" }, { diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 3079276..db5af84 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "0d1b14468187636f5a23d4adb4f3e5830570bd49", + "sha256": "ea17212e41970b9f602fb30898b5a4013a1fb7af", "url": "https://github.com/MrCyjaneK/osxcross.git" }, { diff --git a/sources.json b/sources.json index d752d02..bd3b6ed 100644 --- a/sources.json +++ b/sources.json @@ -865,7 +865,7 @@ }, "https://github.com/MrCyjaneK/osxcross.git": { "refs": [ - "0d1b14468187636f5a23d4adb4f3e5830570bd49" + "ea17212e41970b9f602fb30898b5a4013a1fb7af" ] }, "https://github.com/MrCyjaneK/torch.git": { From 9adf984c68dd37da38d4e9aa905610dda54be7a4 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 20 Feb 2026 09:45:20 +0100 Subject: [PATCH 087/200] fix: compiler for aarch64-apple-ios-simulator --- host/main.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/host/main.go b/host/main.go index 996475b..ceb9607 100644 --- a/host/main.go +++ b/host/main.go @@ -140,8 +140,8 @@ var SupportedHosts = map[string]*Host{ "*:*:SDK_VERSION=26.1", "*:*:SDK_PATH=$PREFIX/native/SDK/iPhoneSimulator$SDK_VERSION.sdk", "*:*:CC_target=aarch64-apple-ios-simulator", - "*:*:CC=clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXX=clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:*:CC=aarch64-apple-ios-simulator-clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:*:CXX=aarch64-apple-ios-simulator-clang++ -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CFLAGS=", "*:*:CPPFLAGS=", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", From b188479e1c481e66b7987230da8f6a965bd8cce4 Mon Sep 17 00:00:00 2001 From: user Date: Sun, 22 Feb 2026 14:47:18 +0100 Subject: [PATCH 088/200] add patch dep --- packages/native/crosstool-ng.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index d8443be..b3f56d1 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -25,6 +25,7 @@ "*:*:native/m4", "*:*:native/make", "*:*:native/ncurses", + "*:*:native/patch", "*:*:native/perl", "*:*:native/python@3.11", "*:*:native/rsync", From 848fb4da042ab01e5aae94a1b5f9cb739a95b25a Mon Sep 17 00:00:00 2001 From: user Date: Sun, 22 Feb 2026 18:59:46 +0100 Subject: [PATCH 089/200] add unzip --- packages/native/osx-cross.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index db5af84..b7f2e7c 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -37,6 +37,7 @@ "*:*-apple-*:native/perl", "*:*-apple-*:native/pkgconf", "*:*-apple-*:native/python@3.11", + "*:*-apple-*:native/unzip", "*:*-apple-*:native/xar", "*:*-apple-*:native/xz" ], From f759303b818725e06314a44f8ad0df201350165c Mon Sep 17 00:00:00 2001 From: user Date: Sun, 22 Feb 2026 20:02:52 +0100 Subject: [PATCH 090/200] add 7zz --- packages/native/osx-cross.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index b7f2e7c..12ba6ff 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -22,6 +22,7 @@ } ], "dependencies": [ + "*:*-apple-*:native/7zip", "*:*-apple-*:native/apple-sdk", "*:*-apple-*:native/bzip2", "*:*-apple-*:native/cmake", From 96f3efe0dbd1f445d30d4d5923c9da84f63938dc Mon Sep 17 00:00:00 2001 From: user Date: Sun, 22 Feb 2026 20:22:42 +0100 Subject: [PATCH 091/200] add patch --- packages/native/crosstool-ng.json | 2 -- packages/native/ct-tools.json | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index b3f56d1..8d6b345 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -44,8 +44,6 @@ ], "steps": [ "*:*:./bootstrap", - "none:*:ln -s $TOOL_TARGET-objcopy $PREFIX/native/bin/objcopy", - "none:*:ln -s $TOOL_TARGET-readelf $PREFIX/native/bin/readelf", "*:*:./configure --prefix=$PREFIX/native", "*:*:make -j$NUM_CORES", "*:*:make install DESTDIR=$STAGING_DIR" diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 4a60247..1e2d2cd 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -136,6 +136,7 @@ "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/llvm-objcopy", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/m4", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/make", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/patch", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/perl", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/python@3.11", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/rsync", From 7def8bcb804aea503bdee05ea5624473addd0369 Mon Sep 17 00:00:00 2001 From: user Date: Mon, 23 Feb 2026 18:37:40 +0100 Subject: [PATCH 092/200] use correct binutils --- packages/native/crosstool-ng.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index 8d6b345..1d32228 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -13,7 +13,7 @@ "*:*:native/autoconf", "*:*:native/automake", "*:*:native/bash", - "*:*:native/binutils@2.42", + "*:*:native/binutils@2.45", "*:*:native/bison", "*:*:native/bzip2", "*:*:native/file", From 70ca89de2de7a0683b43b8a2cf7d95f925edf85c Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 25 Feb 2026 23:11:57 +0100 Subject: [PATCH 093/200] fix: unbound builds --- packages/native/ct-tools.json | 2 +- packages/unbound.json | 8 ++++---- sources.json | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 1e2d2cd..0ccfed4 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "50bad5461d320d2ed46f9d672d722b4e668822b4", + "sha256": "50eb4f2cbf22872af991c1db5d11f32b6a398d6b", "url": "https://github.com/MrCyjaneK/ct-ng-configs.git" }, { diff --git a/packages/unbound.json b/packages/unbound.json index e274373..b2686b1 100644 --- a/packages/unbound.json +++ b/packages/unbound.json @@ -11,11 +11,13 @@ ], "dependencies": [ "*:*:native/_", + "*:*:native/bash", "*:*:native/autoconf", "*:*:native/automake", "*:*:native/m4", "*:*:native/make", "*:*:native/perl", + "*:*:native/libtool", "*:*:expat", "*:*:openssl" ], @@ -33,16 +35,14 @@ "*:*-w64-*:config_opts=$config_opts --enable-static-exe --sysconfdir=/etc --prefix=$PREFIX --target=$PREFIX", "*:x86_64-apple-darwin:config_opts=$config_opts ac_cv_func_SHA384_Init=yes", "*:*-linux-android*:config_opts=$config_opts ac_cv_type_pthread_spinlock_t=no", - "*:*-w64-mingw32:build_opts=$build_opts LDFLAGS=\"$LDFLAGS -lpthread\"", - "*:*-w64-mingw32:CFLAGS=$CFLAGS -D_WIN32_WINNT=0x600", "*:*:config_opts=$config_opts ac_cv_func_getentropy=no" ], "steps": [ "*:*:patch -p1 < $PATCH_DIR/unbound/disable-glibc-reallocarray.patch", "*:*:autoconf", "*:*:./configure $config_opts", - "*:*:make -j$NUM_CORES $build_opts", - "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install" + "*:*:make -j1 $build_opts V=1", + "*:*:make -j1 DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/sources.json b/sources.json index bd3b6ed..82cfe0c 100644 --- a/sources.json +++ b/sources.json @@ -860,7 +860,7 @@ }, "https://github.com/MrCyjaneK/ct-ng-configs.git": { "refs": [ - "50bad5461d320d2ed46f9d672d722b4e668822b4" + "50eb4f2cbf22872af991c1db5d11f32b6a398d6b" ] }, "https://github.com/MrCyjaneK/osxcross.git": { From ec07ce46f2d7fe04c7a405e0faad38c2d9646e5c Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 28 Feb 2026 02:54:03 +0100 Subject: [PATCH 094/200] missing deps --- packages/unbound.json | 4 ++-- packages/zeromq.json | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/unbound.json b/packages/unbound.json index b2686b1..bc93203 100644 --- a/packages/unbound.json +++ b/packages/unbound.json @@ -11,13 +11,13 @@ ], "dependencies": [ "*:*:native/_", - "*:*:native/bash", "*:*:native/autoconf", "*:*:native/automake", + "*:*:native/bash", + "*:*:native/libtool", "*:*:native/m4", "*:*:native/make", "*:*:native/perl", - "*:*:native/libtool", "*:*:expat", "*:*:openssl" ], diff --git a/packages/zeromq.json b/packages/zeromq.json index fdbf626..93bcb62 100644 --- a/packages/zeromq.json +++ b/packages/zeromq.json @@ -11,7 +11,8 @@ ], "dependencies": [ "*:*:native/_", - "*:*:native/make" + "*:*:native/make", + "*:*:native/patch" ], "patches": [ "fix_declaration.patch" From ce28fb775dff3613c2bdc9b8e809495b14255dac Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 28 Feb 2026 02:58:24 +0100 Subject: [PATCH 095/200] missing dep --- packages/unbound.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/unbound.json b/packages/unbound.json index bc93203..20f8a74 100644 --- a/packages/unbound.json +++ b/packages/unbound.json @@ -17,6 +17,7 @@ "*:*:native/libtool", "*:*:native/m4", "*:*:native/make", + "*:*:native/patch", "*:*:native/perl", "*:*:expat", "*:*:openssl" From d1f3c85a5b2dd2e612a4d3e431d8d0bc2cb399fe Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 28 Feb 2026 03:03:56 +0100 Subject: [PATCH 096/200] missing dep --- packages/sodium.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/sodium.json b/packages/sodium.json index 4c67023..c0d80f5 100644 --- a/packages/sodium.json +++ b/packages/sodium.json @@ -12,7 +12,8 @@ "dependencies": [ "*:*:native/_", "*:*:native/config", - "*:*:native/make" + "*:*:native/make", + "*:*:native/patch" ], "patches": [ "disable-glibc-getrandom-getentropy.patch", From 198e8337dda6b1c64503ca9544d5d6cf362e94d3 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 1 Mar 2026 10:27:42 +0100 Subject: [PATCH 097/200] feat: NATIVEPREFIX --- README.md | 4 +- host/main.go | 22 ++++++---- main.go | 9 +---- pack/build.go | 40 +++++++++++++++---- pack/info.go | 33 ++++++++------- pack/main.go | 6 ++- packages/gtest.json | 2 +- packages/libiconv.json | 4 +- packages/libusb.json | 4 +- packages/lz4.json | 2 +- packages/native/7zip.json | 10 ++--- packages/native/_.json | 6 ++- packages/native/android_ndk.json | 30 +++++++------- packages/native/apple-sdk.json | 6 +-- packages/native/autoconf.json | 2 +- packages/native/automake.json | 2 +- packages/native/bash.json | 2 +- packages/native/binutils@2.42.json | 10 ++--- packages/native/binutils@2.45.json | 10 ++--- packages/native/bison.json | 2 +- packages/native/boost-b2.json | 4 +- packages/native/bzip2.json | 2 +- packages/native/cctools-port.json | 8 ++-- packages/native/cmake-toolchain.json | 4 +- packages/native/cmake.json | 4 +- packages/native/config.json | 6 +-- packages/native/coreutils.json | 2 +- packages/native/cpio.json | 2 +- packages/native/crosstool-ng.json | 2 +- packages/native/ct-tools.json | 14 +++---- packages/native/curl.json | 2 +- packages/native/dart-bin@3.4.0-247.0.dev.json | 8 ++-- packages/native/dart@3.5.0-278.0.dev.json | 12 +++--- packages/native/dart@3.5.0-307.0.dev.json | 12 +++--- packages/native/dart@3.6.0-2.0.dev.json | 12 +++--- packages/native/dart@3.7.0-224.0.dev.json | 12 +++--- packages/native/dart@3.7.0-232.0.dev.json | 12 +++--- packages/native/dart@3.7.0-27.0.dev.json | 12 +++--- packages/native/dart@3.7.0.json | 12 +++--- packages/native/dart@3.8.0-171.0.dev.json | 12 +++--- packages/native/dart@3.8.0-237.0.dev.json | 12 +++--- packages/native/dart@3.9.0-27.0.dev.json | 12 +++--- packages/native/dart@3.9.0-3.0.dev.json | 12 +++--- packages/native/dart@3.9.4.json | 12 +++--- packages/native/dpkg.json | 4 +- packages/native/expat.json | 2 +- packages/native/file.json | 2 +- packages/native/flex.json | 2 +- packages/native/gawk.json | 2 +- packages/native/gawk@5.2.2.json | 2 +- packages/native/gettext.json | 6 +-- packages/native/git.json | 2 +- packages/native/gmp_shared.json | 2 +- packages/native/gmp_static.json | 2 +- packages/native/gn.json | 4 +- packages/native/go-bin@1.25.json | 10 ++--- packages/native/go.json | 12 +++--- packages/native/go@1.25.json | 12 +++--- packages/native/gperf.json | 2 +- packages/native/help2man.json | 2 +- packages/native/libc++.json | 2 +- packages/native/libiconv.json | 6 +-- packages/native/libmd.json | 2 +- packages/native/libpsl.json | 2 +- packages/native/libtapi.json | 2 +- packages/native/libtool.json | 2 +- packages/native/libxml2.json | 2 +- packages/native/llvm-ar.json | 4 +- packages/native/llvm-nm.json | 4 +- packages/native/llvm-objcopy.json | 4 +- packages/native/llvm-profdata.json | 4 +- packages/native/llvm-strip.json | 4 +- packages/native/llvm@google@19.0.1.json | 2 +- packages/native/m4.json | 2 +- packages/native/make.json | 8 ++-- packages/native/meson.json | 4 +- packages/native/mpc.json | 2 +- packages/native/mpfr.json | 2 +- packages/native/ncurses.json | 2 +- packages/native/ndk.json | 6 +-- packages/native/ninja.json | 4 +- packages/native/nproc.json | 6 +-- packages/native/openssl.json | 2 +- packages/native/osx-cross.json | 8 ++-- packages/native/patch.json | 2 +- packages/native/pbzx.json | 4 +- packages/native/perl.json | 2 +- packages/native/pkgconf.json | 6 +-- packages/native/protobuf.json | 16 ++++---- packages/native/python@3.11.json | 4 +- packages/native/python@3.14.json | 4 +- packages/native/rsync.json | 2 +- packages/native/rust@1_54_0.json | 16 ++++---- packages/native/rust@1_55_0.json | 12 +++--- packages/native/rust@1_56_1.json | 12 +++--- packages/native/rust@1_57_0.json | 12 +++--- packages/native/rust@1_58_1.json | 12 +++--- packages/native/rust@1_59_0.json | 12 +++--- packages/native/rust@1_60_0.json | 12 +++--- packages/native/rust@1_61_0.json | 12 +++--- packages/native/rust@1_62_1.json | 12 +++--- packages/native/rust@1_63_0.json | 12 +++--- packages/native/rust@1_64_0.json | 12 +++--- packages/native/rust@1_65_0.json | 12 +++--- packages/native/rust@1_66_1.json | 12 +++--- packages/native/rust@1_67_1.json | 12 +++--- packages/native/rust@1_68_2.json | 12 +++--- packages/native/rust@1_69_0.json | 12 +++--- packages/native/rust@1_70_0.json | 12 +++--- packages/native/rust@1_71_1.json | 12 +++--- packages/native/rust@1_72_1.json | 12 +++--- packages/native/rust@1_73_0.json | 12 +++--- packages/native/rust@1_74_1.json | 12 +++--- packages/native/rust@1_75_0.json | 12 +++--- packages/native/rust@1_76_0.json | 12 +++--- packages/native/rust@1_77_1.json | 12 +++--- packages/native/rust@1_78_0.json | 12 +++--- packages/native/rust@1_79_0.json | 12 +++--- packages/native/rust@1_80_1.json | 12 +++--- packages/native/rust@1_81_0.json | 12 +++--- packages/native/rust@1_82_0.json | 12 +++--- packages/native/rust@1_83_0.json | 12 +++--- packages/native/rust@1_84_1.json | 12 +++--- packages/native/rust@1_85_1.json | 12 +++--- packages/native/rust@1_86_0.json | 12 +++--- packages/native/rust@1_87_0.json | 12 +++--- packages/native/rust@1_88_0.json | 12 +++--- packages/native/rust@1_89_0.json | 12 +++--- packages/native/rust@1_90_0.json | 12 +++--- packages/native/sed.json | 2 +- packages/native/tar.json | 2 +- packages/native/texinfo.json | 2 +- packages/native/triehash.json | 4 +- packages/native/unistring.json | 2 +- packages/native/unzip.json | 4 +- packages/native/xar.json | 6 +-- packages/native/xmlto.json | 2 +- packages/native/xz.json | 4 +- packages/native/zlib.json | 4 +- packages/openssl.json | 2 +- packages/protobuf.json | 14 +++---- packages/sodium.json | 6 +-- packages/torch.json | 2 +- packages/unwind.json | 4 +- packages/xxhash.json | 2 +- packages/zstd.json | 2 +- patches/go_wrapper.sh | 4 +- patches/strip-nondeterminism-recursive | 36 ++++++++--------- 148 files changed, 595 insertions(+), 559 deletions(-) diff --git a/README.md b/README.md index 937462e..d7da65e 100644 --- a/README.md +++ b/README.md @@ -58,7 +58,7 @@ All package definitions live inside of this repo (this is going to change soon * // same logic as in dependencies applies, most variables are available during this phase (like $PREFIX or $HOST) "*:CFLAGS=$CFLAGS -fPIC", "*:config_opts=--prefix=$PREFIX --static", - "*:LIBTOOL=$PREFIX/native/bin/libtool", + "*:LIBTOOL=$NATIVEPREFIX/bin/libtool", "*:CROSS_PREFIX=$HOST-" ], "steps": [ @@ -86,4 +86,4 @@ $ go run . -host armv7a-linux-androideabi -package tor -build ```bash SIMPLYBS_ENV_DIR=/opt/_ -``` \ No newline at end of file +``` diff --git a/host/main.go b/host/main.go index ceb9607..a1e917f 100644 --- a/host/main.go +++ b/host/main.go @@ -43,6 +43,14 @@ func DataDir() string { return filepath.Join(DataDirRoot(), runtime.GOOS+"_"+runtime.GOARCH) } +func (h *Host) GetNativeEnvPath() string { + if os.Getenv("SIMPLYBS_NATIVE_ENV_DIR") != "" { + return filepath.Join(os.Getenv("SIMPLYBS_NATIVE_ENV_DIR")) + } + dir := h.GetEnvPath() + return filepath.Join(dir, "native") +} + func (h *Host) GetEnvPath() string { if os.Getenv("SIMPLYBS_ENV_DIR") != "" { return filepath.Join(os.Getenv("SIMPLYBS_ENV_DIR")) @@ -60,7 +68,7 @@ var SupportedHosts = map[string]*Host{ "*:*:ARCH=aarch64", "*:*:CMAKE_SYSTEM_NAME=Darwin", "*:*:SDK_VERSION=26.1", - "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX$SDK_VERSION.sdk", + "*:*:SDK_PATH=$NATIVEPREFIX/SDK/MacOSX$SDK_VERSION.sdk", "*:*:OSX_MIN_VERSION=13.0", "*:*:LD64_VERSION=609", "*:*:CC_target=arm64-apple-darwin", @@ -85,7 +93,7 @@ var SupportedHosts = map[string]*Host{ "*:*:ARCH=x86_64", "*:*:CMAKE_SYSTEM_NAME=Darwin", "*:*:SDK_VERSION=26.1", - "*:*:SDK_PATH=$PREFIX/native/SDK/MacOSX$SDK_VERSION.sdk", + "*:*:SDK_PATH=$NATIVEPREFIX/SDK/MacOSX$SDK_VERSION.sdk", "*:*:OSX_MIN_VERSION=10.16", "*:*:LD64_VERSION=609", "*:*:CC_target=x86_64-apple-darwin", @@ -112,7 +120,7 @@ var SupportedHosts = map[string]*Host{ "*:*:IOS_MIN_VERSION=12", "*:*:LD64_VERSION=609", "*:*:SDK_VERSION=26.1", - "*:*:SDK_PATH=$PREFIX/native/SDK/iPhoneOS$SDK_VERSION.sdk", + "*:*:SDK_PATH=$NATIVEPREFIX/SDK/iPhoneOS$SDK_VERSION.sdk", "*:*:CC_target=aarch64-apple-ios", "*:*:CC=aarch64-apple-ios-clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CXX=aarch64-apple-ios-clang++ -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", @@ -138,7 +146,7 @@ var SupportedHosts = map[string]*Host{ "*:*:IOS_MIN_VERSION=12", "*:*:LD64_VERSION=609", "*:*:SDK_VERSION=26.1", - "*:*:SDK_PATH=$PREFIX/native/SDK/iPhoneSimulator$SDK_VERSION.sdk", + "*:*:SDK_PATH=$NATIVEPREFIX/SDK/iPhoneSimulator$SDK_VERSION.sdk", "*:*:CC_target=aarch64-apple-ios-simulator", "*:*:CC=aarch64-apple-ios-simulator-clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CXX=aarch64-apple-ios-simulator-clang++ -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", @@ -273,7 +281,7 @@ var SupportedHosts = map[string]*Host{ "*:*:NM=llvm-nm", "*:*:AS=llvm-as", "*:*:LIBTOOL=libtool", - "*:*:ANDROID_NDK_HOME=$PREFIX/native/", + "*:*:ANDROID_NDK_HOME=$NATIVEPREFIX/", "*:*:LDFLAGS=$LDFLAGS -lc -lc++_static -lc++abi -lm -llog", }, }, @@ -296,7 +304,7 @@ var SupportedHosts = map[string]*Host{ "*:*:STRIP=llvm-strip", "*:*:AS=llvm-as", "*:*:LIBTOOL=libtool", - "*:*:ANDROID_NDK_HOME=$PREFIX/native/", + "*:*:ANDROID_NDK_HOME=$NATIVEPREFIX/", "*:*:LDFLAGS=$LDFLAGS -lc -lc++_static -lc++abi -lm -llog"}, }, "armv7a-linux-androideabi": { @@ -318,7 +326,7 @@ var SupportedHosts = map[string]*Host{ "*:*:STRIP=llvm-strip", "*:*:AS=llvm-as", "*:*:LIBTOOL=libtool", - "*:*:ANDROID_NDK_HOME=$PREFIX/native/", + "*:*:ANDROID_NDK_HOME=$NATIVEPREFIX/", "*:*:LDFLAGS=$LDFLAGS -lc -lc++_static -lc++abi -lm -llog"}, }, } diff --git a/main.go b/main.go index bba9eff..64d31c9 100644 --- a/main.go +++ b/main.go @@ -4,8 +4,6 @@ import ( "flag" "fmt" "log" - "os" - "path/filepath" "strings" "github.com/mrcyjanek/simplybs/cmd/lint" @@ -88,12 +86,7 @@ func buildForHost(host *host.Host, packageNames []*pack.Package, list bool, extr if extract { for _, pkg := range packageNames { log.Printf("Extracting env for package: %s", pkg.Package) - append := os.Getenv("SIMPLYBS_ENV_DIR_APPEND") - if append != "" { - pkg.ExtractEnv(host, filepath.Join(host.GetEnvPath(), append)) - } else { - pkg.ExtractEnv(host, host.GetEnvPath()) - } + pkg.ExtractEnv(host, host.GetEnvPath(), host.GetNativeEnvPath()) } } diff --git a/pack/build.go b/pack/build.go index 059f277..ccafb92 100644 --- a/pack/build.go +++ b/pack/build.go @@ -33,12 +33,17 @@ func (p *Package) EnsureBuilt(h *host.Host, buildDependencies bool) { p.BuildPackage(h, true) } -func (p *Package) ExtractEnv(host *host.Host, envPath string) { +func (p *Package) ExtractEnv(host *host.Host, envPath string, envNativePath string) { archive := p.GenerateBuildPath(host, "built") + ".tar.gz" + archiveNative := p.GenerateBuildPath(host, "built") + "_native.tar.gz" err := utils.ExtractTarGz(archive, envPath) if err != nil { log.Panicf("Failed to extract archive %s: %v", archive, err) } + err = utils.ExtractTarGz(archiveNative, envNativePath) + if err != nil { + log.Panicf("Failed to extract archive %s: %v", archive, err) + } env := p.GetEnv(host) newEnv := []string{} for k, v := range env { @@ -131,9 +136,15 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { os.RemoveAll(filepath.Join(envPath, entry.Name())) } } + nativeEnvPath := h.GetNativeEnvPath() + if entries, err := os.ReadDir(nativeEnvPath); err == nil { + for _, entry := range entries { + os.RemoveAll(filepath.Join(nativeEnvPath, entry.Name())) + } + } os.MkdirAll(envPath, 0755) for _, dep := range deps { - dep.ExtractEnv(h, envPath) + dep.ExtractEnv(h, envPath, nativeEnvPath) } buildPath := p.GenerateBuildPath(h, "work") stagingPath := p.GenerateBuildPath(h, "staging") @@ -141,12 +152,15 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { os.RemoveAll(stagingPath) os.MkdirAll(buildPath, 0755) os.MkdirAll(stagingPath, 0755) - defer os.RemoveAll(buildPath) - defer os.RemoveAll(stagingPath) + // defer os.RemoveAll(buildPath) + // defer os.RemoveAll(stagingPath) p.ExtractSource(h, buildPath) - infoPath := filepath.Join(stagingPath, h.GetEnvPath(), "share", "buildlib", p.ShortName(h)+".txt") + infoPath := filepath.Join(stagingPath, h.GetEnvPath(), ".buildlib", p.ShortName(h)+".txt") + if p.Type == "native" { + infoPath = filepath.Join(stagingPath, h.GetNativeEnvPath(), ".buildlib", p.ShortName(h)+".txt") + } os.MkdirAll(filepath.Dir(infoPath), 0755) err := os.WriteFile(infoPath, []byte(p.GeneratePackageInfo(h)), 0644) if err != nil { @@ -172,7 +186,8 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { "STAGING_DIR=" + stagingPath, "HOST=" + h.Triplet, "PREFIX=" + h.GetEnvPath(), - "PATH=" + h.GetEnvPath() + "/native/bin:" + env["PATH"] + ":" + pathEnv + ":" + h.GetEnvPath() + "/bin", + "NATIVEPREFIX=" + h.GetNativeEnvPath(), + "PATH=" + h.GetNativeEnvPath() + "/bin:" + env["PATH"] + ":" + pathEnv + ":" + h.GetEnvPath() + "/bin", }...) for k, v := range env { cmd.Env = append(cmd.Env, k+"="+v) @@ -190,7 +205,15 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { } builtArchivePath := p.GenerateBuildPath(h, "built") + ".tar.gz" + builtNativeArchivePath := p.GenerateBuildPath(h, "built") + "_native.tar.gz" os.MkdirAll(filepath.Dir(builtArchivePath), 0755) + os.MkdirAll(filepath.Dir(builtNativeArchivePath), 0755) + os.MkdirAll(filepath.Join(stagingPath, h.GetNativeEnvPath()), 0755) + os.MkdirAll(filepath.Join(stagingPath, h.GetEnvPath()), 0755) + err = utils.CreateTarGz(filepath.Join(stagingPath, h.GetNativeEnvPath()), builtNativeArchivePath) + if err != nil { + log.Fatalf("Failed to create archive %s: %v", builtArchivePath, err) + } err = utils.CreateTarGz(filepath.Join(stagingPath, h.GetEnvPath()), builtArchivePath) if err != nil { log.Fatalf("Failed to create archive %s: %v", builtArchivePath, err) @@ -271,7 +294,7 @@ func (p *Package) StartShell(h *host.Host) { if err != nil { log.Fatalf("Package %s not found in build", depName) } - dep.ExtractEnv(h, h.GetEnvPath()) + dep.ExtractEnv(h, h.GetEnvPath(), h.GetNativeEnvPath()) } p.ExtractSource(h, buildPath) @@ -317,7 +340,8 @@ func (p *Package) StartShell(h *host.Host) { cmd.Env = append(cmd.Env, []string{ "HOST=" + h.Triplet, "PREFIX=" + h.GetEnvPath(), - "PATH=" + h.GetEnvPath() + "/native/bin:" + env["PATH"] + ":" + pathEnv, + "NATIVEPREFIX=" + h.GetNativeEnvPath(), + "PATH=" + h.GetNativeEnvPath() + "//bin:" + env["PATH"] + ":" + pathEnv, "TERM=" + os.Getenv("TERM"), }...) diff --git a/pack/info.go b/pack/info.go index 381a10d..4d89a74 100644 --- a/pack/info.go +++ b/pack/info.go @@ -141,25 +141,30 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { getwd, err := os.Getwd() crash.Handle(err) stagingPath := p.GenerateBuildPath(h, "staging") + home := h.GetEnvPath() + "/home/user" + if p.Type == "native" { + home = h.GetNativeEnvPath() + "/home/user" + } env := map[string]string{ - "PATH": h.GetEnvPath() + "/native/bin:" + utils.GetHostPath(), - "HOST": h.Triplet, - "PREFIX": h.GetEnvPath(), - "HOME": h.GetEnvPath() + "/home/user", - "HOST_PREFIX": h.GetEnvPath(), - "NUM_CORES": strconv.Itoa(getNumCores()), - "PATCH_DIR": filepath.Join(getwd, "patches"), - "STAGING_DIR": stagingPath, + "PATH": h.GetNativeEnvPath() + "/bin:" + utils.GetHostPath(), + "HOST": h.Triplet, + "PREFIX": h.GetEnvPath(), + "NATIVEPREFIX": h.GetNativeEnvPath(), + "HOME": home, + "HOST_PREFIX": h.GetEnvPath(), + "NUM_CORES": strconv.Itoa(getNumCores()), + "PATCH_DIR": filepath.Join(getwd, "patches"), + "STAGING_DIR": stagingPath, } env = utils.AppendEnv(env, builder.HostBuilder.GlobalEnv, h) if p.Type == "native" { env = utils.AppendEnv(env, []string{ - "*:*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/native/include", - "*:*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/native/lib", - "*:*:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:" + h.GetEnvPath() + "/native/lib", - "*:*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/native/lib/pkgconfig", - "*:*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/native/lib", + "*:*:CFLAGS=$CFLAGS -I" + h.GetNativeEnvPath() + "/include", + "*:*:LDFLAGS=$LDFLAGS -L" + h.GetNativeEnvPath() + "/lib", + "*:*:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:" + h.GetNativeEnvPath() + "/lib", + "*:*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetNativeEnvPath() + "/lib/pkgconfig", + "*:*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetNativeEnvPath() + "/lib", }, h) } else { env = utils.AppendEnv(env, []string{ @@ -170,7 +175,7 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { "*:*:CXXFLAGS=$CXXFLAGS -I" + h.GetEnvPath() + "/include", "*:*:CXXFLAGS=$CXXFLAGS -I" + h.GetEnvPath() + "/usr/include", "*:*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/lib", - "*:*:LD_LIBRARY_PATH=" + h.GetEnvPath() + "/native/lib", + "*:*:LD_LIBRARY_PATH=" + h.GetNativeEnvPath() + "/lib", "*:*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/lib/pkgconfig", "*:*:LIBRARY_PATH=$LIBRARY_PATH:" + h.GetEnvPath() + "/lib", }, h) diff --git a/pack/main.go b/pack/main.go index bc2fbf7..846b44d 100644 --- a/pack/main.go +++ b/pack/main.go @@ -67,7 +67,7 @@ func FindPackage(name string) (*Package, error) { for _, pkgName := range bootstrapPackages { pkg.Dependencies = append(pkg.Dependencies, pkgName) } - // pkg.Build.Steps = append(pkg.Build.Steps, "*:$PREFIX/native/bootstrap/bin/perl $PREFIX/native/bootstrap/bin/strip-nondeterminism-recursive --directory $STAGING_DIR") + // pkg.Build.Steps = append(pkg.Build.Steps, "*:$NATIVEPREFIX/bootstrap/bin/perl $NATIVEPREFIX/bootstrap/bin/strip-nondeterminism-recursive --directory $STAGING_DIR") } return &pkg, nil } @@ -195,15 +195,17 @@ func Cleanup() { currentFileName = strings.ReplaceAll(currentFileName, "/", "_") archPath := filepath.Join(builder, "built", target, currentFileName+".tar.gz") + archNativePath := filepath.Join(builder, "built", target, currentFileName+"_native.tar.gz") infoPath := filepath.Join(builder, "built", target, currentFileName+".info.txt") if pkg.Type == "native" { archPath = filepath.Join(builder, "built", currentFileName+".tar.gz") + archNativePath = filepath.Join(builder, "built", target, currentFileName+"_native.tar.gz") infoPath = filepath.Join(builder, "built", currentFileName+".info.txt") - } keepFiles[archPath] = true + keepFiles[archNativePath] = true keepFiles[infoPath] = true } } diff --git a/packages/gtest.json b/packages/gtest.json index 52fee2d..950cab1 100644 --- a/packages/gtest.json +++ b/packages/gtest.json @@ -18,7 +18,7 @@ "env": [ "*:*:CXXFLAGS=$CXXFLAGS -std=c++11", "*:*-linux-gnu:CXXFLAGS=$CXXFLAGS -fPIC", - "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$NATIVEPREFIX/toolchain.cmake", "*:*:config_opts=$config_opts -DGOOGLETEST_VERSION=1.17.0", "*:*:config_opts=$config_opts -DCMAKE_POLICY_VERSION_MINIMUM=3.5", "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", diff --git a/packages/libiconv.json b/packages/libiconv.json index fbe5d07..9661246 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -30,8 +30,8 @@ "*:*:WINDRES=$RC" ], "steps": [ - "*:*:cp -f $PREFIX/native/share/config/config.guess build-aux/", - "*:*:cp -f $PREFIX/native/share/config/config.sub build-aux/", + "*:*:cp -f $NATIVEPREFIX/share/config/config.guess build-aux/", + "*:*:cp -f $NATIVEPREFIX/share/config/config.sub build-aux/", "*:*:sed -i.bak 's|#include |#include \"stdckdint.in.h\"|' ./srclib/malloca.c", "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES", diff --git a/packages/libusb.json b/packages/libusb.json index 9f5421c..3196f2d 100644 --- a/packages/libusb.json +++ b/packages/libusb.json @@ -26,8 +26,8 @@ "*:*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "*:*:cp -f $PREFIX/native/share/config/config.guess config.guess", - "*:*:cp -f $PREFIX/native/share/config/config.sub config.sub", + "*:*:cp -f $NATIVEPREFIX/share/config/config.guess config.guess", + "*:*:cp -f $NATIVEPREFIX/share/config/config.sub config.sub", "*:*:$SHOULD_BUILD ./configure $config_opts", "*:*:$SHOULD_BUILD make -j$NUM_CORES", "*:*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install", diff --git a/packages/lz4.json b/packages/lz4.json index f5f1e7f..cfa9dc2 100644 --- a/packages/lz4.json +++ b/packages/lz4.json @@ -20,7 +20,7 @@ ], "build": { "env": [ - "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$NATIVEPREFIX/toolchain.cmake", "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" ], "steps": [ diff --git a/packages/native/7zip.json b/packages/native/7zip.json index 61b3b26..21d3d1b 100644 --- a/packages/native/7zip.json +++ b/packages/native/7zip.json @@ -23,11 +23,11 @@ "darwin_arm64:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_mac_arm64.mak -j$NUM_CORES", "darwin_amd64:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_mac_x64.mak -j$NUM_CORES", "linux_*:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_clang.mak -j$NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/lib", - "*:*:cp ./CPP/7zip/Bundles/Alone2/b/*/7zz $STAGING_DIR$PREFIX/native/bin/7zz", - "darwin_*:*:cp ./CPP/7zip/Bundles/Format7zF/b/*/7z.so $STAGING_DIR$PREFIX/native/bin/7z.dylib", - "linux_:*:cp ./CPP/7zip/Bundles/Format7zF/b/*/7z.so $STAGING_DIR$PREFIX/native/bin/7z.so" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib", + "*:*:cp ./CPP/7zip/Bundles/Alone2/b/*/7zz $STAGING_DIR$NATIVEPREFIX/bin/7zz", + "darwin_*:*:cp ./CPP/7zip/Bundles/Format7zF/b/*/7z.so $STAGING_DIR$NATIVEPREFIX/bin/7z.dylib", + "linux_:*:cp ./CPP/7zip/Bundles/Format7zF/b/*/7z.so $STAGING_DIR$NATIVEPREFIX/bin/7z.so" ] } } \ No newline at end of file diff --git a/packages/native/_.json b/packages/native/_.json index 90ef9fe..3a74347 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -20,10 +20,14 @@ "*:none:B_=All packages included as dependencies (other than bootstrap packages) are copied over to staging dir" ], "steps": [ + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:rm -rf $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $NATIVEPREFIX $STAGING_DIR$NATIVEPREFIX", + "*:*:rm -rf $STAGING_DIR$NATIVEPREFIX/bootstrap", "*:*:mkdir -p $STAGING_DIR$PREFIX", "*:*:rm -rf $STAGING_DIR$PREFIX", "*:*:cp -a $PREFIX $STAGING_DIR$PREFIX", - "*:*:rm -rf $STAGING_DIR$PREFIX/native/bootstrap", + "*:*:rm -rf $STAGING_DIR$PREFIX/bootstrap", "*:*:mkdir -p $STAGING_DIR$HOME", "*:*:touch $STAGING_DIR$HOME/.zshrc" ] diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index a1893d9..f6d7c09 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -36,22 +36,22 @@ "darwin_*:*-android*:7zz x $PWD/android-ndk-r28c-darwin.zip -snld || true", "linux_*:*-android*:7zz x $PWD/android-ndk-r28c-linux.zip -snld || true", "*:*-android*:android-ndk-r28c/build/tools/make_standalone_toolchain.py --api $API_LEVEL --install-dir $PWD/toolchain --stl=libc++ $config_opts", - "*:*-android*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*-android*:mv $PWD/toolchain/* $STAGING_DIR$PREFIX/native", - "*:*-android*:cp $STAGING_DIR$PREFIX/native/bin/llvm-ar $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-ar", - "*:*-android*:cp $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST$API_LEVEL-clang $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-clang", - "*:*-android*:cp $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST$API_LEVEL-clang++ $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-clang++", - "*:*-android*:cp $STAGING_DIR$PREFIX/native/bin/llvm-ranlib $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-ranlib", - "*:*-android*:cp $STAGING_DIR$PREFIX/native/bin/llvm-ar $STAGING_DIR$PREFIX/native/bin/$BUILDLIB_HOST-ar", + "*:*-android*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*-android*:mv $PWD/toolchain/* $STAGING_DIR$NATIVEPREFIX", + "*:*-android*:cp $STAGING_DIR$NATIVEPREFIX/bin/llvm-ar $STAGING_DIR$NATIVEPREFIX/bin/$BUILDLIB_HOST-ar", + "*:*-android*:cp $STAGING_DIR$NATIVEPREFIX/bin/$BUILDLIB_HOST$API_LEVEL-clang $STAGING_DIR$NATIVEPREFIX/bin/$BUILDLIB_HOST-clang", + "*:*-android*:cp $STAGING_DIR$NATIVEPREFIX/bin/$BUILDLIB_HOST$API_LEVEL-clang++ $STAGING_DIR$NATIVEPREFIX/bin/$BUILDLIB_HOST-clang++", + "*:*-android*:cp $STAGING_DIR$NATIVEPREFIX/bin/llvm-ranlib $STAGING_DIR$NATIVEPREFIX/bin/$BUILDLIB_HOST-ranlib", + "*:*-android*:cp $STAGING_DIR$NATIVEPREFIX/bin/llvm-ar $STAGING_DIR$NATIVEPREFIX/bin/$BUILDLIB_HOST-ar", "*:*-android*:mkdir -p $STAGING_DIR$PREFIX/lib", - "*:aarch64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/aarch64-linux-android/*.a $STAGING_DIR$PREFIX/lib", - "*:x86_64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/x86_64-linux-android/*.a $STAGING_DIR$PREFIX/lib", - "*:armv7a-linux-androideabi:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/arm-linux-androideabi/*.a $STAGING_DIR$PREFIX/lib", - "*:aarch64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/aarch64-linux-android/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", - "*:x86_64-linux-android:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/x86_64-linux-android/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", - "*:armv7a-linux-androideabi:cp $STAGING_DIR$PREFIX/native/sysroot/usr/lib/arm-linux-androideabi/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", - "*:*-android:rm -rf $STAGING_DIR$PREFIX/native/python3", - "*:*-android*:cd $STAGING_DIR$PREFIX/native/bin && rm clang190++ && ln -s clang190 clang190++", + "*:aarch64-linux-android:cp $STAGING_DIR$NATIVEPREFIX/sysroot/usr/lib/aarch64-linux-android/*.a $STAGING_DIR$PREFIX/lib", + "*:x86_64-linux-android:cp $STAGING_DIR$NATIVEPREFIX/sysroot/usr/lib/x86_64-linux-android/*.a $STAGING_DIR$PREFIX/lib", + "*:armv7a-linux-androideabi:cp $STAGING_DIR$NATIVEPREFIX/sysroot/usr/lib/arm-linux-androideabi/*.a $STAGING_DIR$PREFIX/lib", + "*:aarch64-linux-android:cp $STAGING_DIR$NATIVEPREFIX/sysroot/usr/lib/aarch64-linux-android/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", + "*:x86_64-linux-android:cp $STAGING_DIR$NATIVEPREFIX/sysroot/usr/lib/x86_64-linux-android/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", + "*:armv7a-linux-androideabi:cp $STAGING_DIR$NATIVEPREFIX/sysroot/usr/lib/arm-linux-androideabi/$API_LEVEL/*.so $STAGING_DIR$PREFIX/lib", + "*:*-android:rm -rf $STAGING_DIR$NATIVEPREFIX/python3", + "*:*-android*:cd $STAGING_DIR$NATIVEPREFIX/bin && rm clang190++ && ln -s clang190 clang190++", "*:*-android*:python3 $PATCH_DIR/android_ndk/symlink_same.py $STAGING_DIR$PREFIX" ] } diff --git a/packages/native/apple-sdk.json b/packages/native/apple-sdk.json index 92dbd60..ca2a5ba 100644 --- a/packages/native/apple-sdk.json +++ b/packages/native/apple-sdk.json @@ -41,7 +41,7 @@ "*:*-apple-*:SKIP_BUILD_PBXZ=yes", "*:*-apple-*:JOBS=$NUM_CORES", "*:*-apple-*:PORTABLE=1", - "*:*-apple-*:TARGET_DIR=$PREFIX/native/", + "*:*-apple-*:TARGET_DIR=$NATIVEPREFIX/", "*:aarch64-apple-*:ENABLE_ARCHS=arm64", "*:x86_64-apple-*:ENABLE_ARCHS=x86_64", "*:*-apple-*:UNATTENDED=1", @@ -62,8 +62,8 @@ "*:*-apple-*:sed -i.bak 's/$TARGET_DIR\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", "*:*-apple-*:sed -i.bak 's/$TARGET_DIR\\/SDK\\/tools\\/bin\\///g' tools/gen_sdk_package_pbzx.sh", "*:*-apple-*:bash -x ./tools/gen_sdk_package_pbzx.sh ./Xcode_*.xip", - "*:*-apple-*:mkdir -p $STAGING_DIR$PREFIX/native/share/xcode-sdk", - "*:*-apple-*:mv *.sdk.tar.xz $STAGING_DIR$PREFIX/native/share/xcode-sdk" + "*:*-apple-*:mkdir -p $STAGING_DIR$NATIVEPREFIX/share/xcode-sdk", + "*:*-apple-*:mv *.sdk.tar.xz $STAGING_DIR$NATIVEPREFIX/share/xcode-sdk" ] } } \ No newline at end of file diff --git a/packages/native/autoconf.json b/packages/native/autoconf.json index ee88557..17407ac 100644 --- a/packages/native/autoconf.json +++ b/packages/native/autoconf.json @@ -17,7 +17,7 @@ "build": { "env": [], "steps": [ - "*:*:./configure --host=$HOST --prefix=$PREFIX/native", + "*:*:./configure --host=$HOST --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/automake.json b/packages/native/automake.json index e3c1fee..11fc530 100644 --- a/packages/native/automake.json +++ b/packages/native/automake.json @@ -21,7 +21,7 @@ ], "steps": [ "*:*:./bootstrap", - "*:*:./configure --prefix=$PREFIX/native --disable-doc", + "*:*:./configure --prefix=$NATIVEPREFIX --disable-doc", "*:*:make -j$NUM_CORES V=1", "*:*:make install DESTDIR=$STAGING_DIR " ] diff --git a/packages/native/bash.json b/packages/native/bash.json index 7e9c505..c0529b9 100644 --- a/packages/native/bash.json +++ b/packages/native/bash.json @@ -15,7 +15,7 @@ "build": { "env": [], "steps": [ - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES V=1", "*:*:make install DESTDIR=$STAGING_DIR" ] diff --git a/packages/native/binutils@2.42.json b/packages/native/binutils@2.42.json index 29d86b1..5d2ffd2 100644 --- a/packages/native/binutils@2.42.json +++ b/packages/native/binutils@2.42.json @@ -20,15 +20,15 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-nls", "*:*:config_opts=$config_opts --disable-werror", "*:*:config_opts=$config_opts --with-system-zlib", "*:*:config_opts=$config_opts --enable-targets=all", - "*:*:config_opts=$config_opts --libdir=$PREFIX/native/lib", - "*:*:config_opts=$config_opts --infodir=$PREFIX/native/share/info", - "*:*:CPPFLAGS=-I$PREFIX/native/include", - "*:*:LDFLAGS=-L$PREFIX/native/lib" + "*:*:config_opts=$config_opts --libdir=$NATIVEPREFIX/lib", + "*:*:config_opts=$config_opts --infodir=$NATIVEPREFIX/share/info", + "*:*:CPPFLAGS=-I$NATIVEPREFIX/include", + "*:*:LDFLAGS=-L$NATIVEPREFIX/lib" ], "steps": [ "*:*:mkdir -p build", diff --git a/packages/native/binutils@2.45.json b/packages/native/binutils@2.45.json index 8ddde27..addd4be 100644 --- a/packages/native/binutils@2.45.json +++ b/packages/native/binutils@2.45.json @@ -20,15 +20,15 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-nls", "*:*:config_opts=$config_opts --disable-werror", "*:*:config_opts=$config_opts --with-system-zlib", "*:*:config_opts=$config_opts --enable-targets=all", - "*:*:config_opts=$config_opts --libdir=$PREFIX/native/lib", - "*:*:config_opts=$config_opts --infodir=$PREFIX/native/share/info", - "*:*:CPPFLAGS=-I$PREFIX/native/include", - "*:*:LDFLAGS=-L$PREFIX/native/lib" + "*:*:config_opts=$config_opts --libdir=$NATIVEPREFIX/lib", + "*:*:config_opts=$config_opts --infodir=$NATIVEPREFIX/share/info", + "*:*:CPPFLAGS=-I$NATIVEPREFIX/include", + "*:*:LDFLAGS=-L$NATIVEPREFIX/lib" ], "steps": [ "*:*:mkdir -p build", diff --git a/packages/native/bison.json b/packages/native/bison.json index b7a73d1..1988d8b 100644 --- a/packages/native/bison.json +++ b/packages/native/bison.json @@ -20,7 +20,7 @@ "*:*:ACLOCAL=true" ], "steps": [ - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/boost-b2.json b/packages/native/boost-b2.json index f986911..75f6bc5 100644 --- a/packages/native/boost-b2.json +++ b/packages/native/boost-b2.json @@ -16,8 +16,8 @@ ], "steps": [ "*:*:./bootstrap.sh --without-icu --with-libraries=$config_libraries", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp b2 $STAGING_DIR$PREFIX/native/bin/" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp b2 $STAGING_DIR$NATIVEPREFIX/bin/" ] } } \ No newline at end of file diff --git a/packages/native/bzip2.json b/packages/native/bzip2.json index 14fbb73..1ada685 100644 --- a/packages/native/bzip2.json +++ b/packages/native/bzip2.json @@ -17,7 +17,7 @@ "steps": [ "*:*:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", "*:*:make -j$NUM_CORES", - "*:*:make install PREFIX=$STAGING_DIR$PREFIX/native" + "*:*:make install PREFIX=$STAGING_DIR$NATIVEPREFIX" ] } } \ No newline at end of file diff --git a/packages/native/cctools-port.json b/packages/native/cctools-port.json index 7389fb9..225ed64 100644 --- a/packages/native/cctools-port.json +++ b/packages/native/cctools-port.json @@ -20,13 +20,13 @@ ], "build": { "env": [ - "*:*-apple-*:config_opts=--prefix=$PREFIX/native", + "*:*-apple-*:config_opts=--prefix=$NATIVEPREFIX", "*:aarch64-apple-darwin:BUILD_TARGET=aarch64-apple-darwin", "*:x86_64-apple-darwin:BUILD_TARGET=x86_64-apple-darwin", "*:aarch64-apple-ios*:BUILD_TARGET=aarch64-apple-ios", "*:*-apple*:config_opts=$config_opts --target=$BUILD_TARGET", - "*:*-apple-*:config_opts=$config_opts --with-libtapi=$PREFIX/native", - "*:*-apple-*:config_opts=$config_opts --with-libxar=$PREFIX/native", + "*:*-apple-*:config_opts=$config_opts --with-libtapi=$NATIVEPREFIX", + "*:*-apple-*:config_opts=$config_opts --with-libxar=$NATIVEPREFIX", "*:*-apple-*:CC=clang", "*:*-apple-*:CXX=clang++" ], @@ -35,7 +35,7 @@ "*:*-apple-*:cd cctools && ./configure $config_opts", "*:*-apple-*:cd cctools && make -j$NUM_CORES", "*:*-apple-*:cd cctools && DESTDIR=$STAGING_DIR make -j$NUM_CORES install", - "*:*-apple-*:cd $STAGING_DIR$PREFIX/native/bin; for f in *-*; do ln -s \"$f\" \"${f##*-}\"; done" + "*:*-apple-*:cd $STAGING_DIR$NATIVEPREFIX/bin; for f in *-*; do ln -s \"$f\" \"${f##*-}\"; done" ] } } \ No newline at end of file diff --git a/packages/native/cmake-toolchain.json b/packages/native/cmake-toolchain.json index 9d3a797..b41d15b 100644 --- a/packages/native/cmake-toolchain.json +++ b/packages/native/cmake-toolchain.json @@ -12,8 +12,8 @@ "build": { "env": [], "steps": [ - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/", - "*:*:cp toolchain.cmake $STAGING_DIR$PREFIX/native/toolchain.cmake" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp toolchain.cmake $STAGING_DIR$NATIVEPREFIX/toolchain.cmake" ] } } \ No newline at end of file diff --git a/packages/native/cmake.json b/packages/native/cmake.json index d0e9814..8af12f6 100644 --- a/packages/native/cmake.json +++ b/packages/native/cmake.json @@ -15,11 +15,11 @@ ], "build": { "env": [ - "*:*:OPENSSL_ROOT_DIR=$PREFIX/native" + "*:*:OPENSSL_ROOT_DIR=$NATIVEPREFIX" ], "steps": [ "*:*:./bootstrap --parallel=$NUM_CORES", - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/config.json b/packages/native/config.json index 8f84f0d..5c74196 100644 --- a/packages/native/config.json +++ b/packages/native/config.json @@ -12,9 +12,9 @@ "build": { "env": [], "steps": [ - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/share/config", - "*:*:cp config.guess $STAGING_DIR$PREFIX/native/share/config/config.guess", - "*:*:cp config.sub $STAGING_DIR$PREFIX/native/share/config/config.sub" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/share/config", + "*:*:cp config.guess $STAGING_DIR$NATIVEPREFIX/share/config/config.guess", + "*:*:cp config.sub $STAGING_DIR$NATIVEPREFIX/share/config/config.sub" ] } } \ No newline at end of file diff --git a/packages/native/coreutils.json b/packages/native/coreutils.json index 91d983f..857437c 100644 --- a/packages/native/coreutils.json +++ b/packages/native/coreutils.json @@ -14,7 +14,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native" + "*:*:config_opts=--prefix=$NATIVEPREFIX" ], "steps": [ "*:*:./configure $config_opts", diff --git a/packages/native/cpio.json b/packages/native/cpio.json index 2fee4bf..296b9f1 100644 --- a/packages/native/cpio.json +++ b/packages/native/cpio.json @@ -15,7 +15,7 @@ "build": { "env": [], "steps": [ - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index 1d32228..f39f3c8 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -44,7 +44,7 @@ ], "steps": [ "*:*:./bootstrap", - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make install DESTDIR=$STAGING_DIR" ] diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 0ccfed4..a77c5c1 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -156,13 +156,13 @@ "*:{*-linux-gnu,*-w64-mingw32}:env -i PATH=$PATH PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET/* $STAGING_DIR/$PREFIX", "*:{*-linux-gnu,*-w64-mingw32}:rm -rf $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET", - "*:{*-linux-gnu,*-w64-mingw32}:mkdir -p $STAGING_DIR/$PREFIX/native", - "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/* $STAGING_DIR/$PREFIX/native", - "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/bin/* $STAGING_DIR/$PREFIX/native/bin", - "*:x86_64-linux-gnu:cd $STAGING_DIR/$PREFIX/native/bin && for f in x86_64-linux-gnu-*; do ln -sf $f ${x86_64-linux-gnu-}; done", - "*:aarch64-linux-gnu:cd $STAGING_DIR/$PREFIX/native/bin && for f in aarch64-linux-gnu-*; do ln -sf $f ${f#aarch64-linux-gnu-}; done", - "*:x86_64-linux-musl:cd $STAGING_DIR/$PREFIX/native/bin && for f in x86_64-linux-musl-*; do ln -sf $f ${f#x86_64-linux-musl-}; done", - "*:x86_64-w64-mingw32:cd $STAGING_DIR/$PREFIX/native/bin && for f in x86_64-w64-mingw32-*; do ln -sf $f ${f#x86_64-w64-mingw32-}; done" + "*:{*-linux-gnu,*-w64-mingw32}:mkdir -p $STAGING_DIR/$NATIVEPREFIX", + "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/* $STAGING_DIR/$NATIVEPREFIX", + "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/bin/* $STAGING_DIR/$NATIVEPREFIX/bin", + "*:x86_64-linux-gnu:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-linux-gnu-*; do ln -sf $f ${x86_64-linux-gnu-}; done", + "*:aarch64-linux-gnu:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in aarch64-linux-gnu-*; do ln -sf $f ${f#aarch64-linux-gnu-}; done", + "*:x86_64-linux-musl:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-linux-musl-*; do ln -sf $f ${f#x86_64-linux-musl-}; done", + "*:x86_64-w64-mingw32:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-w64-mingw32-*; do ln -sf $f ${f#x86_64-w64-mingw32-}; done" ] } } \ No newline at end of file diff --git a/packages/native/curl.json b/packages/native/curl.json index 78aaf69..65b8833 100644 --- a/packages/native/curl.json +++ b/packages/native/curl.json @@ -19,7 +19,7 @@ "*:*:config_opts=--with-openssl" ], "steps": [ - "*:*:./configure $config_opts --prefix=$PREFIX/native", + "*:*:./configure $config_opts --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/dart-bin@3.4.0-247.0.dev.json b/packages/native/dart-bin@3.4.0-247.0.dev.json index 76850a9..c139653 100644 --- a/packages/native/dart-bin@3.4.0-247.0.dev.json +++ b/packages/native/dart-bin@3.4.0-247.0.dev.json @@ -30,10 +30,10 @@ "steps": [ "*:*:mkdir build", "*:*:cd build && 7zz x ../dartsdk-${BUILDER_GOOS}_${BUILDER_GOARCH}.zip", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*:mv build/dart-sdk/lib $STAGING_DIR$PREFIX/native", - "*:*:mv build/dart-sdk/include $STAGING_DIR$PREFIX/native", - "*:*:mv build/dart-sdk/bin $STAGING_DIR$PREFIX/native" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:mv build/dart-sdk/lib $STAGING_DIR$NATIVEPREFIX", + "*:*:mv build/dart-sdk/include $STAGING_DIR$NATIVEPREFIX", + "*:*:mv build/dart-sdk/bin $STAGING_DIR$NATIVEPREFIX" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.5.0-278.0.dev.json b/packages/native/dart@3.5.0-278.0.dev.json index 20eba9d..202e020 100644 --- a/packages/native/dart@3.5.0-278.0.dev.json +++ b/packages/native/dart@3.5.0-278.0.dev.json @@ -534,7 +534,7 @@ "*:*:ln -s $(which ninja) buildtools/ninja/ninja", "*:*:mkdir -p buildtools/$BUILDTARGET/clang/bin", "*:*:mkdir -p buildtools/$BUILDTARGET/clang/lib", - "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/$BUILDTARGET/clang/lib/libc++.a", + "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/$BUILDTARGET/clang/lib/libc++.a", "*:*:ln -s $(which clang) buildtools/$BUILDTARGET/clang/bin/clang", "*:*:ln -s $(which clang++) buildtools/$BUILDTARGET/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/$BUILDTARGET/clang/bin/llvm-ar", @@ -550,11 +550,11 @@ "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", "*:*:python3 ./tools/build.py --mode=product create_sdk --verbose", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:$STAGING_DIR$NATIVEPREFIX/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.5.0-307.0.dev.json b/packages/native/dart@3.5.0-307.0.dev.json index 787daeb..007e529 100644 --- a/packages/native/dart@3.5.0-307.0.dev.json +++ b/packages/native/dart@3.5.0-307.0.dev.json @@ -540,7 +540,7 @@ "*:*:ln -s $(which ninja) buildtools/ninja/ninja", "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", @@ -556,11 +556,11 @@ "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", "*:*:python3 ./tools/build.py --mode=product create_sdk", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:$STAGING_DIR$NATIVEPREFIX/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.6.0-2.0.dev.json b/packages/native/dart@3.6.0-2.0.dev.json index 1ff86b5..d5e0cb8 100644 --- a/packages/native/dart@3.6.0-2.0.dev.json +++ b/packages/native/dart@3.6.0-2.0.dev.json @@ -534,7 +534,7 @@ "*:*:ln -s $(which ninja) buildtools/ninja/ninja", "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", @@ -550,11 +550,11 @@ "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", "*:*:python3 ./tools/build.py --mode=product create_sdk", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:$STAGING_DIR$NATIVEPREFIX/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.7.0-224.0.dev.json b/packages/native/dart@3.7.0-224.0.dev.json index 2038385..252a6af 100644 --- a/packages/native/dart@3.7.0-224.0.dev.json +++ b/packages/native/dart@3.7.0-224.0.dev.json @@ -402,7 +402,7 @@ "*:*:ln -s $(which ninja) buildtools/ninja/ninja", "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", @@ -419,11 +419,11 @@ "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", "*:*:python3 ./tools/build.py --mode=product create_sdk", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:$STAGING_DIR$NATIVEPREFIX/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.7.0-232.0.dev.json b/packages/native/dart@3.7.0-232.0.dev.json index 08403f1..81856b5 100644 --- a/packages/native/dart@3.7.0-232.0.dev.json +++ b/packages/native/dart@3.7.0-232.0.dev.json @@ -378,7 +378,7 @@ "*:*:ln -s $(which ninja) buildtools/ninja/ninja", "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", @@ -395,11 +395,11 @@ "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", "*:*:python3 ./tools/build.py --mode=product create_sdk", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:$STAGING_DIR$NATIVEPREFIX/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.7.0-27.0.dev.json b/packages/native/dart@3.7.0-27.0.dev.json index b350422..6a0d695 100644 --- a/packages/native/dart@3.7.0-27.0.dev.json +++ b/packages/native/dart@3.7.0-27.0.dev.json @@ -522,7 +522,7 @@ "*:*:ln -s $(which ninja) buildtools/ninja/ninja", "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", @@ -539,11 +539,11 @@ "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", "*:*:python3 ./tools/build.py --mode=product create_sdk", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:$STAGING_DIR$NATIVEPREFIX/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.7.0.json b/packages/native/dart@3.7.0.json index 0c80b16..fd6fdb4 100644 --- a/packages/native/dart@3.7.0.json +++ b/packages/native/dart@3.7.0.json @@ -378,7 +378,7 @@ "*:*:ln -s $(which ninja) buildtools/ninja/ninja", "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", @@ -395,11 +395,11 @@ "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", "*:*:python3 ./tools/build.py --mode=product create_sdk", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:$STAGING_DIR$NATIVEPREFIX/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.8.0-171.0.dev.json b/packages/native/dart@3.8.0-171.0.dev.json index ab434c0..4ada919 100644 --- a/packages/native/dart@3.8.0-171.0.dev.json +++ b/packages/native/dart@3.8.0-171.0.dev.json @@ -270,7 +270,7 @@ "*:*:ln -s $(which ninja) buildtools/ninja/ninja", "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", @@ -287,11 +287,11 @@ "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", "*:*:python3 ./tools/build.py --mode=product create_sdk", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:$STAGING_DIR$NATIVEPREFIX/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.8.0-237.0.dev.json b/packages/native/dart@3.8.0-237.0.dev.json index 3b5e01c..3620f55 100644 --- a/packages/native/dart@3.8.0-237.0.dev.json +++ b/packages/native/dart@3.8.0-237.0.dev.json @@ -270,7 +270,7 @@ "*:*:ln -s $(which ninja) buildtools/ninja/ninja", "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", @@ -287,11 +287,11 @@ "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", "*:*:python3 ./tools/build.py --mode=product create_sdk", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:$STAGING_DIR$NATIVEPREFIX/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.9.0-27.0.dev.json b/packages/native/dart@3.9.0-27.0.dev.json index 008acc2..1b2e69b 100644 --- a/packages/native/dart@3.9.0-27.0.dev.json +++ b/packages/native/dart@3.9.0-27.0.dev.json @@ -276,7 +276,7 @@ "*:*:ln -s $(which ninja) buildtools/ninja/ninja", "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", @@ -293,11 +293,11 @@ "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", "*:*:python3 ./tools/build.py --mode=product create_sdk", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:$STAGING_DIR$NATIVEPREFIX/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.9.0-3.0.dev.json b/packages/native/dart@3.9.0-3.0.dev.json index ca2fd47..3a00f21 100644 --- a/packages/native/dart@3.9.0-3.0.dev.json +++ b/packages/native/dart@3.9.0-3.0.dev.json @@ -276,7 +276,7 @@ "*:*:ln -s $(which ninja) buildtools/ninja/ninja", "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", @@ -293,11 +293,11 @@ "*:*:cd third_party/boringssl && python3 src/util/generate_build_files.py gn", "*:*:sed -i.bak 's/-std=c++14/-std=c++17/g' ./third_party/boringssl/BUILD.gn", "*:*:python3 ./tools/build.py --mode=product create_sdk", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:$STAGING_DIR$NATIVEPREFIX/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dart@3.9.4.json b/packages/native/dart@3.9.4.json index 72ffa77..1996cbc 100644 --- a/packages/native/dart@3.9.4.json +++ b/packages/native/dart@3.9.4.json @@ -276,7 +276,7 @@ "*:*:ln -s $(which ninja) buildtools/ninja/ninja", "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", - "*:*:ln -s $PREFIX/native/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", + "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", @@ -291,11 +291,11 @@ "*:*:mkdir -p third_party/devtools/web", "*:*:echo 'no devtools :(' > third_party/devtools/web/index.html", "*:*:python3 ./tools/build.py --mode=product create_sdk", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$PREFIX/native/", - "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$PREFIX/native/", - "*:*:$STAGING_DIR$PREFIX/native/bin/dart --version" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/bin $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/include $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a $(find . -name dart-sdk | grep -v 'tools/sdks/dart-sdk')/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:$STAGING_DIR$NATIVEPREFIX/bin/dart --version" ] } } \ No newline at end of file diff --git a/packages/native/dpkg.json b/packages/native/dpkg.json index 12dd971..b848213 100644 --- a/packages/native/dpkg.json +++ b/packages/native/dpkg.json @@ -24,8 +24,8 @@ ], "build": { "env": [ - "*:*:config_opts=--host=$HOST --prefix=$PREFIX/native", - "*:*:PERL_LIBDIR=$PREFIX/native/lib/perl5/site_perl/5.42.0" + "*:*:config_opts=--host=$HOST --prefix=$NATIVEPREFIX", + "*:*:PERL_LIBDIR=$NATIVEPREFIX/lib/perl5/site_perl/5.42.0" ], "steps": [ "*:*:git tag -a 1.23.3 -m 'Release 1.23.3'", diff --git a/packages/native/expat.json b/packages/native/expat.json index 1e2154c..8ecbe78 100644 --- a/packages/native/expat.json +++ b/packages/native/expat.json @@ -21,7 +21,7 @@ "*:*:LDFLAGS=$LDFLAGS -fPIC" ], "steps": [ - "*:*:./configure --prefix=$PREFIX/native --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", + "*:*:./configure --prefix=$NATIVEPREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/file.json b/packages/native/file.json index 4761894..fbd73a5 100644 --- a/packages/native/file.json +++ b/packages/native/file.json @@ -14,7 +14,7 @@ ], "build": { "steps": [ - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/flex.json b/packages/native/flex.json index 5d786e4..0c9b6a5 100644 --- a/packages/native/flex.json +++ b/packages/native/flex.json @@ -17,7 +17,7 @@ "env": [ "*:*:CFLAGS=$CFLAGS -fPIC", "*:*:LDFLAGS=$LDFLAGS -fPIC", - "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --with-pic", "*:*:config_opts=$config_opts --enable-shared", "*:*:config_opts=$config_opts --enable-static" diff --git a/packages/native/gawk.json b/packages/native/gawk.json index 3523120..4dc1bd0 100644 --- a/packages/native/gawk.json +++ b/packages/native/gawk.json @@ -25,7 +25,7 @@ "*:*:MAKEINFO=true" ], "steps": [ - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/gawk@5.2.2.json b/packages/native/gawk@5.2.2.json index 5b1ecc2..d6cae96 100644 --- a/packages/native/gawk@5.2.2.json +++ b/packages/native/gawk@5.2.2.json @@ -19,7 +19,7 @@ "*:*:MAKEINFO=true" ], "steps": [ - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/gettext.json b/packages/native/gettext.json index 794ee37..9fcc0fd 100644 --- a/packages/native/gettext.json +++ b/packages/native/gettext.json @@ -17,9 +17,9 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native", - "*:*:config_opts=$config_opts --with-libiconv-prefix=$PREFIX/native", - "*:*:config_opts=$config_opts --with-libunistring-prefix=$PREFIX/native", + "*:*:config_opts=--prefix=$NATIVEPREFIX", + "*:*:config_opts=$config_opts --with-libiconv-prefix=$NATIVEPREFIX", + "*:*:config_opts=$config_opts --with-libunistring-prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --enable-static", "*:*:LIBS=-lunistring" diff --git a/packages/native/git.json b/packages/native/git.json index 12c4ba0..343c3bc 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -23,7 +23,7 @@ "steps": [ "linux_*:*:make -j$NUM_CORES EXTLIBS='-liconv -lz -lgettextpo'", "darwin_*:*:make -j$NUM_CORES EXTLIBS='-liconv -lz -lgettextpo -lintl'", - "*:*:make DESTDIR=$STAGING_DIR$PREFIX/native install", + "*:*:make DESTDIR=$STAGING_DIR$NATIVEPREFIX install", "*:*:mkdir -p $STAGING_DIR$HOME", "*:*:echo '[user]' >> $STAGING_DIR$HOME/.gitconfig", "*:*:echo '\tname = simplybs' >> $STAGING_DIR$HOME/.gitconfig", diff --git a/packages/native/gmp_shared.json b/packages/native/gmp_shared.json index 5b8836a..b264a6a 100644 --- a/packages/native/gmp_shared.json +++ b/packages/native/gmp_shared.json @@ -16,7 +16,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --enable-shared", "*:*:config_opts=$config_opts --disable-static" ], diff --git a/packages/native/gmp_static.json b/packages/native/gmp_static.json index c510f19..8b26ded 100644 --- a/packages/native/gmp_static.json +++ b/packages/native/gmp_static.json @@ -16,7 +16,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --enable-static" ], diff --git a/packages/native/gn.json b/packages/native/gn.json index 63ff41b..df3c3e2 100644 --- a/packages/native/gn.json +++ b/packages/native/gn.json @@ -20,8 +20,8 @@ "*:*:git tag -a initial-commit -m '0.0.0' 95374957437b818e9addc26c83340b27a1b38202", "*:*:python3 build/gen.py", "*:*:ninja -C out", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp out/gn $STAGING_DIR$PREFIX/native/bin/gn" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp out/gn $STAGING_DIR$NATIVEPREFIX/bin/gn" ] } } \ No newline at end of file diff --git a/packages/native/go-bin@1.25.json b/packages/native/go-bin@1.25.json index 9b4f6f7..9113ff9 100644 --- a/packages/native/go-bin@1.25.json +++ b/packages/native/go-bin@1.25.json @@ -34,11 +34,11 @@ "*:*:7zz x ./go-${BUILDER_GOOS}_${BUILDER_GOARCH}.tar.gz", "*:*:mkdir build", "*:*:cd build && 7zz x ../go-${BUILDER_GOOS}_${BUILDER_GOARCH}.tar", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:mv build/go $STAGING_DIR$PREFIX/native/go$GO_VERSION", - "*:*:cat $PATCH_DIR/go_wrapper.sh | sed \"s/@GO_VERSION@/$GO_VERSION/g\" > $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION", - "*:*:chmod +x $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION", - "*:*:cp $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION $STAGING_DIR$PREFIX/native/bin/go" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:mv build/go $STAGING_DIR$NATIVEPREFIX/go$GO_VERSION", + "*:*:cat $PATCH_DIR/go_wrapper.sh | sed \"s/@GO_VERSION@/$GO_VERSION/g\" > $STAGING_DIR$NATIVEPREFIX/bin/go$GO_VERSION", + "*:*:chmod +x $STAGING_DIR$NATIVEPREFIX/bin/go$GO_VERSION", + "*:*:cp $STAGING_DIR$NATIVEPREFIX/bin/go$GO_VERSION $STAGING_DIR$NATIVEPREFIX/bin/go" ] } } \ No newline at end of file diff --git a/packages/native/go.json b/packages/native/go.json index cfec61e..1fb80bc 100644 --- a/packages/native/go.json +++ b/packages/native/go.json @@ -20,12 +20,12 @@ ], "steps": [ "*:*:cd src && ./make.bash", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/go$GO_VERSION", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:mv * $STAGING_DIR$PREFIX/native/go$GO_VERSION", - "*:*:cat $PATCH_DIR/go_wrapper.sh | sed \"s/@GO_VERSION@/$GO_VERSION/g\" > $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION", - "*:*:chmod +x $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION", - "*:*:cp $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION $STAGING_DIR$PREFIX/native/bin/go" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/go$GO_VERSION", + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:mv * $STAGING_DIR$NATIVEPREFIX/go$GO_VERSION", + "*:*:cat $PATCH_DIR/go_wrapper.sh | sed \"s/@GO_VERSION@/$GO_VERSION/g\" > $STAGING_DIR$NATIVEPREFIX/bin/go$GO_VERSION", + "*:*:chmod +x $STAGING_DIR$NATIVEPREFIX/bin/go$GO_VERSION", + "*:*:cp $STAGING_DIR$NATIVEPREFIX/bin/go$GO_VERSION $STAGING_DIR$NATIVEPREFIX/bin/go" ] } } \ No newline at end of file diff --git a/packages/native/go@1.25.json b/packages/native/go@1.25.json index 8eef747..7b63965 100644 --- a/packages/native/go@1.25.json +++ b/packages/native/go@1.25.json @@ -20,12 +20,12 @@ ], "steps": [ "*:*:cd src && ./make.bash", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/go$GO_VERSION", - "*:*:mv * $STAGING_DIR$PREFIX/native/go$GO_VERSION", - "*:*:cat $PATCH_DIR/go_wrapper.sh | sed \"s/@GO_VERSION@/$GO_VERSION/g\" > $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION", - "*:*:chmod +x $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION", - "*:*:cp $STAGING_DIR$PREFIX/native/bin/go$GO_VERSION $STAGING_DIR$PREFIX/native/bin/go" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/go$GO_VERSION", + "*:*:mv * $STAGING_DIR$NATIVEPREFIX/go$GO_VERSION", + "*:*:cat $PATCH_DIR/go_wrapper.sh | sed \"s/@GO_VERSION@/$GO_VERSION/g\" > $STAGING_DIR$NATIVEPREFIX/bin/go$GO_VERSION", + "*:*:chmod +x $STAGING_DIR$NATIVEPREFIX/bin/go$GO_VERSION", + "*:*:cp $STAGING_DIR$NATIVEPREFIX/bin/go$GO_VERSION $STAGING_DIR$NATIVEPREFIX/bin/go" ] } } \ No newline at end of file diff --git a/packages/native/gperf.json b/packages/native/gperf.json index dfe1270..bf471ea 100644 --- a/packages/native/gperf.json +++ b/packages/native/gperf.json @@ -14,7 +14,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native" + "*:*:config_opts=--prefix=$NATIVEPREFIX" ], "steps": [ "*:*:./configure $config_opts", diff --git a/packages/native/help2man.json b/packages/native/help2man.json index 9838e38..9624d1b 100644 --- a/packages/native/help2man.json +++ b/packages/native/help2man.json @@ -14,7 +14,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --enable-static" ], diff --git a/packages/native/libc++.json b/packages/native/libc++.json index d1be3c0..eb4095b 100644 --- a/packages/native/libc++.json +++ b/packages/native/libc++.json @@ -20,7 +20,7 @@ "*:*:config_opts=$config_opts -DLIBCXX_ENABLE_SHARED=OFF", "*:*:config_opts=$config_opts -DLIBCXX_ENABLE_STATIC=ON", "*:*:config_opts=$config_opts -DLIBCXX_INCLUDE_TESTS=OFF", - "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX/native" + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$NATIVEPREFIX" ], "steps": [ "*:*:mkdir build && cd build", diff --git a/packages/native/libiconv.json b/packages/native/libiconv.json index bab0fc6..9467656 100644 --- a/packages/native/libiconv.json +++ b/packages/native/libiconv.json @@ -16,13 +16,13 @@ "build": { "env": [ "*:*:CFLAGS=$CFLAGS -fPIC", - "*:*:config_opts=--prefix=$PREFIX/native --disable-nls --enable-static --disable-shared", + "*:*:config_opts=--prefix=$NATIVEPREFIX --disable-nls --enable-static --disable-shared", "*:*:config_opts=$config_opts", "*:*linux:config_opts=$config_opts --with-pic" ], "steps": [ - "*:*:cp -f $PREFIX/native/share/config/config.guess build-aux/", - "*:*:cp -f $PREFIX/native/share/config/config.sub build-aux/", + "*:*:cp -f $NATIVEPREFIX/share/config/config.guess build-aux/", + "*:*:cp -f $NATIVEPREFIX/share/config/config.sub build-aux/", "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" diff --git a/packages/native/libmd.json b/packages/native/libmd.json index 8a73ed4..2bbb186 100644 --- a/packages/native/libmd.json +++ b/packages/native/libmd.json @@ -21,7 +21,7 @@ ], "build": { "env": [ - "*:*:config_opts=--host=$HOST --prefix=$PREFIX/native" + "*:*:config_opts=--host=$HOST --prefix=$NATIVEPREFIX" ], "steps": [ "*:*:autoreconf --force --install", diff --git a/packages/native/libpsl.json b/packages/native/libpsl.json index d1d5a3b..2c3df65 100644 --- a/packages/native/libpsl.json +++ b/packages/native/libpsl.json @@ -16,7 +16,7 @@ "build": { "env": [], "steps": [ - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/libtapi.json b/packages/native/libtapi.json index 4172cce..82ac8d0 100644 --- a/packages/native/libtapi.json +++ b/packages/native/libtapi.json @@ -16,7 +16,7 @@ ], "build": { "env": [ - "*:*:INSTALLPREFIX=$PREFIX/native" + "*:*:INSTALLPREFIX=$NATIVEPREFIX" ], "steps": [ "*:*:./build.sh", diff --git a/packages/native/libtool.json b/packages/native/libtool.json index 95c0fda..125298e 100644 --- a/packages/native/libtool.json +++ b/packages/native/libtool.json @@ -16,7 +16,7 @@ "build": { "env": [], "steps": [ - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/libxml2.json b/packages/native/libxml2.json index 31180a1..4084113 100644 --- a/packages/native/libxml2.json +++ b/packages/native/libxml2.json @@ -17,7 +17,7 @@ "build": { "env": [], "steps": [ - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/llvm-ar.json b/packages/native/llvm-ar.json index 969e738..572dc09 100644 --- a/packages/native/llvm-ar.json +++ b/packages/native/llvm-ar.json @@ -20,8 +20,8 @@ "*:*:mkdir build && cd build", "*:*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", "*:*:cd build && ninja llvm-ar", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", - "*:*:cp build/bin/llvm-ar $STAGING_DIR$PREFIX/native/bin/llvm-ar" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin/", + "*:*:cp build/bin/llvm-ar $STAGING_DIR$NATIVEPREFIX/bin/llvm-ar" ] } } \ No newline at end of file diff --git a/packages/native/llvm-nm.json b/packages/native/llvm-nm.json index ea04fbe..71a996d 100644 --- a/packages/native/llvm-nm.json +++ b/packages/native/llvm-nm.json @@ -19,8 +19,8 @@ "*:*:mkdir build && cd build", "*:*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", "*:*:cd build && ninja llvm-nm", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", - "*:*:cp build/bin/llvm-nm $STAGING_DIR$PREFIX/native/bin/llvm-nm" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin/", + "*:*:cp build/bin/llvm-nm $STAGING_DIR$NATIVEPREFIX/bin/llvm-nm" ] } } \ No newline at end of file diff --git a/packages/native/llvm-objcopy.json b/packages/native/llvm-objcopy.json index 2142220..8d49fa3 100644 --- a/packages/native/llvm-objcopy.json +++ b/packages/native/llvm-objcopy.json @@ -19,8 +19,8 @@ "*:*:mkdir build && cd build", "*:*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", "*:*:cd build && ninja llvm-objcopy", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", - "*:*:cp build/bin/llvm-objcopy $STAGING_DIR$PREFIX/native/bin/llvm-objcopy" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin/", + "*:*:cp build/bin/llvm-objcopy $STAGING_DIR$NATIVEPREFIX/bin/llvm-objcopy" ] } } \ No newline at end of file diff --git a/packages/native/llvm-profdata.json b/packages/native/llvm-profdata.json index f730c89..cf2755f 100644 --- a/packages/native/llvm-profdata.json +++ b/packages/native/llvm-profdata.json @@ -19,8 +19,8 @@ "*:*:mkdir build && cd build", "*:*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", "*:*:cd build && ninja llvm-profdata", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", - "*:*:cp build/bin/llvm-profdata $STAGING_DIR$PREFIX/native/bin/llvm-profdata" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin/", + "*:*:cp build/bin/llvm-profdata $STAGING_DIR$NATIVEPREFIX/bin/llvm-profdata" ] } } \ No newline at end of file diff --git a/packages/native/llvm-strip.json b/packages/native/llvm-strip.json index 0dd450e..78557c4 100644 --- a/packages/native/llvm-strip.json +++ b/packages/native/llvm-strip.json @@ -20,8 +20,8 @@ "*:*:mkdir build && cd build", "*:*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", "*:*:cd build && ninja llvm-strip", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", - "*:*:cp build/bin/llvm-strip $STAGING_DIR$PREFIX/native/bin/llvm-strip" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin/", + "*:*:cp build/bin/llvm-strip $STAGING_DIR$NATIVEPREFIX/bin/llvm-strip" ] } } \ No newline at end of file diff --git a/packages/native/llvm@google@19.0.1.json b/packages/native/llvm@google@19.0.1.json index 6309d80..4fb7bba 100644 --- a/packages/native/llvm@google@19.0.1.json +++ b/packages/native/llvm@google@19.0.1.json @@ -33,7 +33,7 @@ "env": [ "*:*:config_opts=-DCMAKE_BUILD_TYPE=Release", "*:*-android*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", - "*:*-android*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX/native/llvm@google@19.0.1", + "*:*-android*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$NATIVEPREFIX/llvm@google@19.0.1", "*:*-android*:config_opts=$config_opts -DLLVM_ENABLE_PROJECTS='clang;lld;libc;openmp;pstl'", "*:*-android*:config_opts=$config_opts -DLLVM_ENABLE_BINDINGS=OFF", "*:*-android*:config_opts=$config_opts -DCLANG_ENABLE_BOOTSTRAP=ON", diff --git a/packages/native/m4.json b/packages/native/m4.json index a0b6042..ecef8de 100644 --- a/packages/native/m4.json +++ b/packages/native/m4.json @@ -15,7 +15,7 @@ "build": { "env": [], "steps": [ - "*:*:./configure --prefix=$PREFIX/native --disable-nls", + "*:*:./configure --prefix=$NATIVEPREFIX --disable-nls", "*:*:sed -i.bak 's/^run.*automake.*/exit 0/' build-aux/missing", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" diff --git a/packages/native/make.json b/packages/native/make.json index a8b9661..74e109a 100644 --- a/packages/native/make.json +++ b/packages/native/make.json @@ -14,10 +14,10 @@ "steps": [ "*:*:./configure --disable-dependency-tracking", "*:*:./build.sh", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp make $STAGING_DIR/$PREFIX/native/bin/make", - "*:*:ln -s make $STAGING_DIR$PREFIX/native/bin/gmake", - "*:*:ln -s make $STAGING_DIR$PREFIX/native/bin/gnumake" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp make $STAGING_DIR/$NATIVEPREFIX/bin/make", + "*:*:ln -s make $STAGING_DIR$NATIVEPREFIX/bin/gmake", + "*:*:ln -s make $STAGING_DIR$NATIVEPREFIX/bin/gnumake" ] } } \ No newline at end of file diff --git a/packages/native/meson.json b/packages/native/meson.json index c6fa6ee..5aafeee 100644 --- a/packages/native/meson.json +++ b/packages/native/meson.json @@ -16,8 +16,8 @@ "env": [], "steps": [ "*:*:python3 ./packaging/create_zipapp.py --outfile meson.pyz --interpreter \"$(which python3)\" .", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin/", - "*:*:mv meson.pyz $STAGING_DIR$PREFIX/native/bin/meson" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin/", + "*:*:mv meson.pyz $STAGING_DIR$NATIVEPREFIX/bin/meson" ] } } \ No newline at end of file diff --git a/packages/native/mpc.json b/packages/native/mpc.json index 8305309..6b07e22 100644 --- a/packages/native/mpc.json +++ b/packages/native/mpc.json @@ -16,7 +16,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --enable-static" ], diff --git a/packages/native/mpfr.json b/packages/native/mpfr.json index 62029c1..43bed3f 100644 --- a/packages/native/mpfr.json +++ b/packages/native/mpfr.json @@ -15,7 +15,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --enable-static" ], diff --git a/packages/native/ncurses.json b/packages/native/ncurses.json index c8e937f..dd5c392 100644 --- a/packages/native/ncurses.json +++ b/packages/native/ncurses.json @@ -14,7 +14,7 @@ ], "build": { "env": [ - "*:*:config_opts=--host=$HOST --prefix=$PREFIX/native", + "*:*:config_opts=--host=$HOST --prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --with-build-cc=gcc", "*:*:config_opts=$config_opts --without-debug", diff --git a/packages/native/ndk.json b/packages/native/ndk.json index 453502d..83a559d 100644 --- a/packages/native/ndk.json +++ b/packages/native/ndk.json @@ -130,9 +130,9 @@ "*:*-android*:mkdir -p prebuilts/clang/host/darwin-x86", "*:*-android*:mkdir -p prebuilts/clang/host/linux-x86", "*:*-android*:mkdir -p prebuilts/clang/host/windows-x86", - "*:*-android*:cp -a $PREFIX/native/llvm@google@19.0.1 prebuilts/clang/host/darwin-x86/clang-r563880c", - "*:*-android*:cp -a $PREFIX/native/llvm@google@19.0.1 prebuilts/clang/host/linux-x86/clang-r563880c", - "*:*-android*:cp -a $PREFIX/native/llvm@google@19.0.1 prebuilts/clang/host/windows-x86/clang-r563880c", + "*:*-android*:cp -a $NATIVEPREFIX/llvm@google@19.0.1 prebuilts/clang/host/darwin-x86/clang-r563880c", + "*:*-android*:cp -a $NATIVEPREFIX/llvm@google@19.0.1 prebuilts/clang/host/linux-x86/clang-r563880c", + "*:*-android*:cp -a $NATIVEPREFIX/llvm@google@19.0.1 prebuilts/clang/host/windows-x86/clang-r563880c", "*:*-android*:touch prebuilts/clang/host/darwin-x86/clang-r563880c/NOTICE", "*:*-android*:touch prebuilts/clang/host/linux-x86/clang-r563880c/NOTICE", "*:*-android*:touch prebuilts/clang/host/windows-x86/clang-r563880c/NOTICE", diff --git a/packages/native/ninja.json b/packages/native/ninja.json index ab27dc9..996cbed 100644 --- a/packages/native/ninja.json +++ b/packages/native/ninja.json @@ -17,8 +17,8 @@ "steps": [ "*:*:python3 ./configure.py --bootstrap", "*:*:./ninja all", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp ninja $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp ninja $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/nproc.json b/packages/native/nproc.json index 8831724..412bb75 100644 --- a/packages/native/nproc.json +++ b/packages/native/nproc.json @@ -12,9 +12,9 @@ "build": { "env": [], "steps": [ - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp nproc.sh $STAGING_DIR$PREFIX/native/bin/nproc", - "*:*:chmod +x $STAGING_DIR$PREFIX/native/bin/nproc" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp nproc.sh $STAGING_DIR$NATIVEPREFIX/bin/nproc", + "*:*:chmod +x $STAGING_DIR$NATIVEPREFIX/bin/nproc" ] } } \ No newline at end of file diff --git a/packages/native/openssl.json b/packages/native/openssl.json index 15395b0..96440ad 100644 --- a/packages/native/openssl.json +++ b/packages/native/openssl.json @@ -15,7 +15,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native --openssldir=$PREFIX/native/etc/openssl --libdir=$PREFIX/native/lib", + "*:*:config_opts=--prefix=$NATIVEPREFIX --openssldir=$NATIVEPREFIX/etc/openssl --libdir=$NATIVEPREFIX/lib", "*:*:config_opts=$config_opts no-capieng", "*:*:config_opts=$config_opts no-dso", "*:*:config_opts=$config_opts no-dtls1", diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 12ba6ff..2ee957c 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -54,7 +54,7 @@ "*:*-apple-*:SKIP_CCTOOLS_BUILD=yes", "*:*-apple-*:JOBS=$NUM_CORES", "*:*-apple-*:PORTABLE=1", - "*:*-apple-*:TARGET_DIR=$PREFIX/native/", + "*:*-apple-*:TARGET_DIR=$NATIVEPREFIX/", "*:*-apple-*:UNATTENDED=1", "*:*-apple-*:SDK_VERSION=26.1", "*:*-apple-*:COMPRESSLEVEL=6" @@ -62,11 +62,11 @@ "steps": [ "*:*-apple-*:sed -i.bak 's/--with-libtapi=$TARGET_DIR/--with-libtapi=$PREFIX\\/native/g' build.sh", "*:*-apple-*:sed -i.bak 's/--with-libxar=$TARGET_DIR/--with-libxar=$PREFIX\\/native/g' build.sh", - "*:*-apple-*:mv $PREFIX/native/share/xcode-sdk/*${SDK_VERSION}* tarballs", - "*:*-apple-*:yes | INSTALLPREFIX=$PREFIX/native ./build_apple_clang.sh", + "*:*-apple-*:mv $NATIVEPREFIX/share/xcode-sdk/*${SDK_VERSION}* tarballs", + "*:*-apple-*:yes | INSTALLPREFIX=$NATIVEPREFIX ./build_apple_clang.sh", "*:*-apple-*:cd build/clang-21/build_stage3 && make install DESTDIR=$STAGING_DIR && make install", "*:*-apple-*:sed -i.bak 's/## Compiler test ##/exit 0/g' build.sh", - "*:*-apple-*:OCDEBUG=1 TARGET_DIR=$STAGING_DIR$PREFIX/native bash -x ./build.sh" + "*:*-apple-*:OCDEBUG=1 TARGET_DIR=$STAGING_DIR$NATIVEPREFIX bash -x ./build.sh" ] } } \ No newline at end of file diff --git a/packages/native/patch.json b/packages/native/patch.json index 85bbf42..b6cf2a5 100644 --- a/packages/native/patch.json +++ b/packages/native/patch.json @@ -14,7 +14,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native" + "*:*:config_opts=--prefix=$NATIVEPREFIX" ], "steps": [ "*:*:./configure $config_opts", diff --git a/packages/native/pbzx.json b/packages/native/pbzx.json index 04f2df4..f32855c 100644 --- a/packages/native/pbzx.json +++ b/packages/native/pbzx.json @@ -17,8 +17,8 @@ "build": { "env": [], "steps": [ - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:$CC -O2 -Wall -I $PREFIX/native/include -L $PREFIX/native/lib pbzx.c -o $STAGING_DIR$PREFIX/native/bin/pbzx -llzma -lxar -Wl,-rpath,$PREFIX/native/lib" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:$CC -O2 -Wall -I $NATIVEPREFIX/include -L $NATIVEPREFIX/lib pbzx.c -o $STAGING_DIR$NATIVEPREFIX/bin/pbzx -llzma -lxar -Wl,-rpath,$NATIVEPREFIX/lib" ] } } \ No newline at end of file diff --git a/packages/native/perl.json b/packages/native/perl.json index 7da2ebd..64110e8 100644 --- a/packages/native/perl.json +++ b/packages/native/perl.json @@ -16,7 +16,7 @@ "env": [], "steps": [ "*:*:sed -i.bak '/^#ifndef PERL_BUILD_DATE$/,/^#endif$/{/^#ifndef PERL_BUILD_DATE$/!d; s/.*/\\#define PERL_BUILD_DATE \"Jan 1 1970 00:00:01\"/;}' perl.c", - "*:*:./Configure -des -Dprefix=$PREFIX/native -Duseithreads -Dall_static", + "*:*:./Configure -des -Dprefix=$NATIVEPREFIX -Duseithreads -Dall_static", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/pkgconf.json b/packages/native/pkgconf.json index 4700890..8828c13 100644 --- a/packages/native/pkgconf.json +++ b/packages/native/pkgconf.json @@ -19,14 +19,14 @@ ], "build": { "env": [ - "*:*:PKGCONFIG_DIR=$PREFIX/native/lib/pkgconfig:$PREFIX/lib/pkgconfig" + "*:*:PKGCONFIG_DIR=$NATIVEPREFIX/lib/pkgconfig:$PREFIX/lib/pkgconfig" ], "steps": [ "*:*:sh ./autogen.sh", - "*:*:./configure --prefix=$PREFIX/native --with-pkg-config-dir=$PKGCONFIG_DIR", + "*:*:./configure --prefix=$NATIVEPREFIX --with-pkg-config-dir=$PKGCONFIG_DIR", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", - "*:*:ln -s pkgconf $STAGING_DIR$PREFIX/native/bin/pkg-config" + "*:*:ln -s pkgconf $STAGING_DIR$NATIVEPREFIX/bin/pkg-config" ] } } \ No newline at end of file diff --git a/packages/native/protobuf.json b/packages/native/protobuf.json index 1447ed8..8411bde 100644 --- a/packages/native/protobuf.json +++ b/packages/native/protobuf.json @@ -19,7 +19,7 @@ ], "build": { "env": [ - "*:*:config_opts=--host=$HOST --prefix=$PREFIX/native", + "*:*:config_opts=--host=$HOST --prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-shared", "*:*-linux-gnu:config_opts=$config_opts --with-pic", "*:*-linux-gnu:SHOULD_BUILD=", @@ -27,18 +27,18 @@ "*:*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess config.guess", - "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub config.sub", - "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", - "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", - "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", - "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", + "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.guess config.guess", + "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.sub config.sub", + "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", + "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", + "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", + "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", "*:*:$SHOULD_BUILD aclocal", "*:*:$SHOULD_BUILD automake --add-missing", "*:*:$SHOULD_BUILD ./configure $config_opts", "*:*:$SHOULD_BUILD make -j$NUM_CORES", "*:*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install", - "*:*:$SHOULD_BUILD rm $STAGING_DIR$PREFIX/native/lib/libprotoc.a || true" + "*:*:$SHOULD_BUILD rm $STAGING_DIR$NATIVEPREFIX/lib/libprotoc.a || true" ] } } \ No newline at end of file diff --git a/packages/native/python@3.11.json b/packages/native/python@3.11.json index f10c772..3c21b8c 100644 --- a/packages/native/python@3.11.json +++ b/packages/native/python@3.11.json @@ -19,7 +19,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-test-modules", "*:*:config_opts=$config_opts --enable-static", "darwin_*:*:LIBS=-lintl -liconv" @@ -29,7 +29,7 @@ "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", - "*:*:cd $STAGING_DIR$PREFIX/native/bin && ln -s python3 python" + "*:*:cd $STAGING_DIR$NATIVEPREFIX/bin && ln -s python3 python" ] } } \ No newline at end of file diff --git a/packages/native/python@3.14.json b/packages/native/python@3.14.json index 2a47c51..f033dea 100644 --- a/packages/native/python@3.14.json +++ b/packages/native/python@3.14.json @@ -20,10 +20,10 @@ "steps": [ "*:*:sed -i.bak '/^#ifndef DATE/i\\\n\\/* Deterministic date and time. *\\/\\\n#define DATE \"Jan 1 1970\"\\\n#define TIME \"00:00:01\"\\\n' Modules/getbuildinfo.c", "*:*:sed -i.bak 's/^#\\(zlib[[:space:]]\\+zlibmodule\\.c[[:space:]]\\+-lz\\)/\\1/' Modules/Setup", - "*:*:./configure --disable-test-modules --prefix=$PREFIX/native", + "*:*:./configure --disable-test-modules --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", - "*:*:cd $STAGING_DIR$PREFIX/native/bin && ln -s python3 python" + "*:*:cd $STAGING_DIR$NATIVEPREFIX/bin && ln -s python3 python" ] } } \ No newline at end of file diff --git a/packages/native/rsync.json b/packages/native/rsync.json index cdd894b..f44066a 100644 --- a/packages/native/rsync.json +++ b/packages/native/rsync.json @@ -15,7 +15,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-xxhash", "*:*:config_opts=$config_opts --disable-openssl", "*:*:config_opts=$config_opts --disable-zstd", diff --git a/packages/native/rust@1_54_0.json b/packages/native/rust@1_54_0.json index ffc0844..74a2a3d 100644 --- a/packages/native/rust@1_54_0.json +++ b/packages/native/rust@1_54_0.json @@ -39,15 +39,15 @@ "*:*:echo >> build-1.54.0.sh", "*:*:echo make -C run_rustc >> build-1.54.0.sh", "*:*:env -i CXXFLAGS_EXTRA=\"$CFLAGS\" LINKFLAGS_EXTRA=\"$LDFLAGS\" PATH=$PATH PARLEVEL=$NUM_CORES ./build-1.54.0.sh -j$NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/lib", - "*:*:cp -a run_rustc/output-1.54.0/prefix/bin/* $STAGING_DIR$PREFIX/native/bin", - "linux_*:*:cp -a run_rustc/output-1.54.0/prefix/lib/rustlib/*/lib/*.so $STAGING_DIR$PREFIX/native/lib", - "*:*:cp -a run_rustc/output-1.54.0/prefix/lib/* $STAGING_DIR$PREFIX/native/lib", + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib", + "*:*:cp -a run_rustc/output-1.54.0/prefix/bin/* $STAGING_DIR$NATIVEPREFIX/bin", + "linux_*:*:cp -a run_rustc/output-1.54.0/prefix/lib/rustlib/*/lib/*.so $STAGING_DIR$NATIVEPREFIX/lib", + "*:*:cp -a run_rustc/output-1.54.0/prefix/lib/* $STAGING_DIR$NATIVEPREFIX/lib", "*:none:# FIXME bad dylib paths embedded in the rustc binary, forcing install_name_tool dark magic", - "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-rustc/aarch64-apple-darwin/release/deps/librustc_driver.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib $STAGING_DIR$PREFIX/native/bin/rustc_binary", - "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/libstd.dylib $STAGING_DIR$PREFIX/native/bin/rustc_binary", - "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/libstd.dylib $STAGING_DIR$PREFIX/native/lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib" + "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-rustc/aarch64-apple-darwin/release/deps/librustc_driver.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib $STAGING_DIR$NATIVEPREFIX/bin/rustc_binary", + "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/libstd.dylib $STAGING_DIR$NATIVEPREFIX/bin/rustc_binary", + "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/libstd.dylib $STAGING_DIR$NATIVEPREFIX/lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_55_0.json b/packages/native/rust@1_55_0.json index 5fcd155..6364740 100644 --- a/packages/native/rust@1_55_0.json +++ b/packages/native/rust@1_55_0.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_56_1.json b/packages/native/rust@1_56_1.json index b8d229e..146986f 100644 --- a/packages/native/rust@1_56_1.json +++ b/packages/native/rust@1_56_1.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_57_0.json b/packages/native/rust@1_57_0.json index 37c3dab..eb4b554 100644 --- a/packages/native/rust@1_57_0.json +++ b/packages/native/rust@1_57_0.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_58_1.json b/packages/native/rust@1_58_1.json index e2f2f2e..d9ab8d6 100644 --- a/packages/native/rust@1_58_1.json +++ b/packages/native/rust@1_58_1.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_59_0.json b/packages/native/rust@1_59_0.json index ae052d9..0e955f7 100644 --- a/packages/native/rust@1_59_0.json +++ b/packages/native/rust@1_59_0.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_60_0.json b/packages/native/rust@1_60_0.json index 48ba322..92b0299 100644 --- a/packages/native/rust@1_60_0.json +++ b/packages/native/rust@1_60_0.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_61_0.json b/packages/native/rust@1_61_0.json index b869c30..92f7407 100644 --- a/packages/native/rust@1_61_0.json +++ b/packages/native/rust@1_61_0.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_62_1.json b/packages/native/rust@1_62_1.json index f1367dc..6a39e26 100644 --- a/packages/native/rust@1_62_1.json +++ b/packages/native/rust@1_62_1.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_63_0.json b/packages/native/rust@1_63_0.json index 602887e..0f518ab 100644 --- a/packages/native/rust@1_63_0.json +++ b/packages/native/rust@1_63_0.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_64_0.json b/packages/native/rust@1_64_0.json index c67ac0b..287429f 100644 --- a/packages/native/rust@1_64_0.json +++ b/packages/native/rust@1_64_0.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_65_0.json b/packages/native/rust@1_65_0.json index 27ecc4a..42a9b05 100644 --- a/packages/native/rust@1_65_0.json +++ b/packages/native/rust@1_65_0.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_66_1.json b/packages/native/rust@1_66_1.json index 68325c9..22161ae 100644 --- a/packages/native/rust@1_66_1.json +++ b/packages/native/rust@1_66_1.json @@ -28,8 +28,8 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'assertions = true' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", @@ -37,10 +37,10 @@ "*:*:echo '[rust]' >> config.toml", "*:*:echo 'debug = true' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_67_1.json b/packages/native/rust@1_67_1.json index f13cebd..97b2dc8 100644 --- a/packages/native/rust@1_67_1.json +++ b/packages/native/rust@1_67_1.json @@ -32,16 +32,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:PATH=$PATH python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin/cargo" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_68_2.json b/packages/native/rust@1_68_2.json index 7812a14..0c84d7e 100644 --- a/packages/native/rust@1_68_2.json +++ b/packages/native/rust@1_68_2.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_69_0.json b/packages/native/rust@1_69_0.json index cf541cd..941b8ad 100644 --- a/packages/native/rust@1_69_0.json +++ b/packages/native/rust@1_69_0.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_70_0.json b/packages/native/rust@1_70_0.json index 5b6ecaa..098ff22 100644 --- a/packages/native/rust@1_70_0.json +++ b/packages/native/rust@1_70_0.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_71_1.json b/packages/native/rust@1_71_1.json index 3f6c440..825ed05 100644 --- a/packages/native/rust@1_71_1.json +++ b/packages/native/rust@1_71_1.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j$NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_72_1.json b/packages/native/rust@1_72_1.json index 8db3c8f..efcbf1e 100644 --- a/packages/native/rust@1_72_1.json +++ b/packages/native/rust@1_72_1.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_73_0.json b/packages/native/rust@1_73_0.json index 0831e43..e3bb0de 100644 --- a/packages/native/rust@1_73_0.json +++ b/packages/native/rust@1_73_0.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_74_1.json b/packages/native/rust@1_74_1.json index 82915ca..4a65dd8 100644 --- a/packages/native/rust@1_74_1.json +++ b/packages/native/rust@1_74_1.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_75_0.json b/packages/native/rust@1_75_0.json index fe94693..66b85c9 100644 --- a/packages/native/rust@1_75_0.json +++ b/packages/native/rust@1_75_0.json @@ -28,16 +28,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_76_0.json b/packages/native/rust@1_76_0.json index 5113e7b..dacf665 100644 --- a/packages/native/rust@1_76_0.json +++ b/packages/native/rust@1_76_0.json @@ -26,16 +26,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_77_1.json b/packages/native/rust@1_77_1.json index 4bc0336..1ec1c73 100644 --- a/packages/native/rust@1_77_1.json +++ b/packages/native/rust@1_77_1.json @@ -26,16 +26,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_78_0.json b/packages/native/rust@1_78_0.json index 739882c..44525fd 100644 --- a/packages/native/rust@1_78_0.json +++ b/packages/native/rust@1_78_0.json @@ -25,16 +25,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_79_0.json b/packages/native/rust@1_79_0.json index 9fc5ced..1a7e342 100644 --- a/packages/native/rust@1_79_0.json +++ b/packages/native/rust@1_79_0.json @@ -25,16 +25,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_80_1.json b/packages/native/rust@1_80_1.json index 75effeb..af62a15 100644 --- a/packages/native/rust@1_80_1.json +++ b/packages/native/rust@1_80_1.json @@ -25,16 +25,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_81_0.json b/packages/native/rust@1_81_0.json index d08ab5b..df46d59 100644 --- a/packages/native/rust@1_81_0.json +++ b/packages/native/rust@1_81_0.json @@ -25,16 +25,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_82_0.json b/packages/native/rust@1_82_0.json index 49444e7..c572451 100644 --- a/packages/native/rust@1_82_0.json +++ b/packages/native/rust@1_82_0.json @@ -25,16 +25,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_83_0.json b/packages/native/rust@1_83_0.json index 345ca01..dbc24b9 100644 --- a/packages/native/rust@1_83_0.json +++ b/packages/native/rust@1_83_0.json @@ -25,16 +25,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_84_1.json b/packages/native/rust@1_84_1.json index 7b2e60d..abc8efe 100644 --- a/packages/native/rust@1_84_1.json +++ b/packages/native/rust@1_84_1.json @@ -25,16 +25,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_85_1.json b/packages/native/rust@1_85_1.json index e398809..d4fdd73 100644 --- a/packages/native/rust@1_85_1.json +++ b/packages/native/rust@1_85_1.json @@ -25,16 +25,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_86_0.json b/packages/native/rust@1_86_0.json index 39cb9d0..e84f2c7 100644 --- a/packages/native/rust@1_86_0.json +++ b/packages/native/rust@1_86_0.json @@ -25,16 +25,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_87_0.json b/packages/native/rust@1_87_0.json index 941821d..5b81485 100644 --- a/packages/native/rust@1_87_0.json +++ b/packages/native/rust@1_87_0.json @@ -25,16 +25,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_88_0.json b/packages/native/rust@1_88_0.json index 82a9d6e..da5989f 100644 --- a/packages/native/rust@1_88_0.json +++ b/packages/native/rust@1_88_0.json @@ -25,16 +25,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_89_0.json b/packages/native/rust@1_89_0.json index d8025ac..068833f 100644 --- a/packages/native/rust@1_89_0.json +++ b/packages/native/rust@1_89_0.json @@ -25,16 +25,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_90_0.json b/packages/native/rust@1_90_0.json index 22bc5ae..34e0a80 100644 --- a/packages/native/rust@1_90_0.json +++ b/packages/native/rust@1_90_0.json @@ -34,16 +34,16 @@ "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$PREFIX/native/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$PREFIX/native/bin/cargo\\\" >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = false' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$PREFIX/native/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$PREFIX/native/bin", - "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$PREFIX/native/bin" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/native/sed.json b/packages/native/sed.json index 80c1984..d3ce6d5 100644 --- a/packages/native/sed.json +++ b/packages/native/sed.json @@ -16,7 +16,7 @@ "build": { "env": [], "steps": [ - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/tar.json b/packages/native/tar.json index dd0c18a..fad9902 100644 --- a/packages/native/tar.json +++ b/packages/native/tar.json @@ -15,7 +15,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:LIBS=-liconv" ], "steps": [ diff --git a/packages/native/texinfo.json b/packages/native/texinfo.json index 5f4a779..e032d4b 100644 --- a/packages/native/texinfo.json +++ b/packages/native/texinfo.json @@ -21,7 +21,7 @@ "*:*:HELP2MAN=true" ], "steps": [ - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/triehash.json b/packages/native/triehash.json index 7571faf..767c97b 100644 --- a/packages/native/triehash.json +++ b/packages/native/triehash.json @@ -16,9 +16,9 @@ "build": { "env": [], "steps": [ - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", "*:*:sed -i.bak '1s|^#!/usr/bin/perl -w|#!'\"$PREFIX\"'/native/bin/perl|' triehash.pl", - "*:*:cp triehash.pl $STAGING_DIR$PREFIX/native/bin/triehash" + "*:*:cp triehash.pl $STAGING_DIR$NATIVEPREFIX/bin/triehash" ] } } \ No newline at end of file diff --git a/packages/native/unistring.json b/packages/native/unistring.json index 5d06d4e..302a11a 100644 --- a/packages/native/unistring.json +++ b/packages/native/unistring.json @@ -15,7 +15,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$PREFIX/native", + "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --enable-static" ], diff --git a/packages/native/unzip.json b/packages/native/unzip.json index 6020462..173f86c 100644 --- a/packages/native/unzip.json +++ b/packages/native/unzip.json @@ -16,8 +16,8 @@ ], "build": { "steps": [ - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/bin", - "*:*:$CC main.c -o $STAGING_DIR$PREFIX/native/bin/unzip" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:$CC main.c -o $STAGING_DIR$NATIVEPREFIX/bin/unzip" ] } } \ No newline at end of file diff --git a/packages/native/xar.json b/packages/native/xar.json index ea30d42..530063b 100644 --- a/packages/native/xar.json +++ b/packages/native/xar.json @@ -20,13 +20,13 @@ "env": [ "*:*:CFLAGS=$CFLAGS -w", "*:*:config_opts=--with-bzip2", - "*:*:config_opts=$config_opts --with-lzma=$PREFIX/native" + "*:*:config_opts=$config_opts --with-lzma=$NATIVEPREFIX" ], "steps": [ - "*:*:cd xar && ./configure --prefix=$PREFIX/native", + "*:*:cd xar && ./configure --prefix=$NATIVEPREFIX", "*:*:cd xar && make -j$NUM_CORES", "*:*:cd xar && make DESTDIR=$STAGING_DIR install", - "*:*:mkdir -p $STAGING_DIR$PREFIX/native/include" + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/include" ] } } \ No newline at end of file diff --git a/packages/native/xmlto.json b/packages/native/xmlto.json index fa359aa..b56245a 100644 --- a/packages/native/xmlto.json +++ b/packages/native/xmlto.json @@ -22,7 +22,7 @@ "env": [], "steps": [ "*:*:autoreconf -f -i", - "*:*:./configure --prefix=$PREFIX/native", + "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make xmlto -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install-exec" ] diff --git a/packages/native/xz.json b/packages/native/xz.json index 11ebe76..79fbc0d 100644 --- a/packages/native/xz.json +++ b/packages/native/xz.json @@ -25,7 +25,7 @@ "env": [ "*:*:HOSTOVERRIDE=$HOST", "*:aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "*:*:config_opts=--prefix=$PREFIX/native --host=$HOSTOVERRIDE", + "*:*:config_opts=--prefix=$NATIVEPREFIX --host=$HOSTOVERRIDE", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --enable-static", "*:*:config_opts=$config_opts --disable-doc", @@ -37,7 +37,7 @@ "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", - "*:*:rm $STAGING_DIR$PREFIX/native/lib/*.la" + "*:*:rm $STAGING_DIR$NATIVEPREFIX/lib/*.la" ] } } \ No newline at end of file diff --git a/packages/native/zlib.json b/packages/native/zlib.json index 1f06450..557e779 100644 --- a/packages/native/zlib.json +++ b/packages/native/zlib.json @@ -16,8 +16,8 @@ "build": { "env": [ "*:*:CFLAGS=$CFLAGS -fPIC", - "*:*:config_opts=--prefix=$PREFIX/native --static", - "*:*:LIBTOOL=$PREFIX/native/bin/libtool", + "*:*:config_opts=--prefix=$NATIVEPREFIX --static", + "*:*:LIBTOOL=$NATIVEPREFIX/bin/libtool", "*:*:CROSS_PREFIX=$HOST-" ], "steps": [ diff --git a/packages/openssl.json b/packages/openssl.json index 388a788..4d0acb4 100644 --- a/packages/openssl.json +++ b/packages/openssl.json @@ -16,7 +16,7 @@ ], "build": { "env": [ - "*:*-android*:ANDROID_NDK_ROOT=$PREFIX/native", + "*:*-android*:ANDROID_NDK_ROOT=$NATIVEPREFIX", "*:*-android*:CC=clang", "*:*-android*:AR=ar", "*:*-android*:RANLIB=ranlib", diff --git a/packages/protobuf.json b/packages/protobuf.json index 9ba6375..afc76b3 100644 --- a/packages/protobuf.json +++ b/packages/protobuf.json @@ -19,7 +19,7 @@ "env": [ "*:*:CXXFLAGS=$CXXFLAGS -std=c++11", "*:*:config_opts=--host=$HOST --prefix=$PREFIX", - "*:*:config_opts=$config_opts --disable-shared --with-protoc=$PREFIX/native/bin/protoc", + "*:*:config_opts=$config_opts --disable-shared --with-protoc=$NATIVEPREFIX/bin/protoc", "*:*-linux-gnu:config_opts=$config_opts --with-pic", "*:*:SHOULD_BUILD=echo", "*:*-linux-gnu:SHOULD_BUILD=", @@ -27,12 +27,12 @@ "*:*-apple-darwin:SHOULD_BUILD=" ], "steps": [ - "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess config.guess", - "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub config.sub", - "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", - "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", - "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", - "*:*:$SHOULD_BUILD cp -f $PREFIX/native/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", + "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.guess config.guess", + "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.sub config.sub", + "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", + "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", + "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", + "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", "*:*:$SHOULD_BUILD patch -p0 < $PATCH_DIR/protobuf/visibility.patch", "*:*:$SHOULD_BUILD ./configure $config_opts", "*:*:$SHOULD_BUILD make -j$NUM_CORES -C src libprotobuf.la", diff --git a/packages/sodium.json b/packages/sodium.json index c0d80f5..ed46d16 100644 --- a/packages/sodium.json +++ b/packages/sodium.json @@ -21,13 +21,13 @@ ], "build": { "env": [ - "*:*-android*:ANDROID_NDK_ROOT=$PREFIX/native", + "*:*-android*:ANDROID_NDK_ROOT=$NATIVEPREFIX", "*:*:config_opts=--host=$HOST --prefix=$PREFIX", "*:*:config_opts=$config_opts --enable-static --disable-shared --with-pic" ], "steps": [ - "*:*:cp -f $PREFIX/native/share/config/config.guess build-aux/", - "*:*:cp -f $PREFIX/native/share/config/config.sub build-aux/", + "*:*:cp -f $NATIVEPREFIX/share/config/config.guess build-aux/", + "*:*:cp -f $NATIVEPREFIX/share/config/config.sub build-aux/", "*:*:patch -p1 < $PATCH_DIR/sodium/disable-glibc-getrandom-getentropy.patch", "*:*:patch -p1 < $PATCH_DIR/sodium/fix-whitespace.patch", "*:*:./configure $config_opts", diff --git a/packages/torch.json b/packages/torch.json index bd97ea5..2049816 100644 --- a/packages/torch.json +++ b/packages/torch.json @@ -22,7 +22,7 @@ ], "build": { "env": [ - "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$NATIVEPREFIX/toolchain.cmake", "*:*:config_opts=$config_opts -DTOR_BUILD_DIR=$PREFIX", "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" ], diff --git a/packages/unwind.json b/packages/unwind.json index 05aef38..1279f7e 100644 --- a/packages/unwind.json +++ b/packages/unwind.json @@ -23,8 +23,8 @@ "*:*-linux-gnu:config_opts=$config_opts --disable-shared --enable-static --disable-tests --disable-documentation" ], "steps": [ - "*:*:cp -f $PREFIX/native/share/config/config.guess config/config.guess", - "*:*:cp -f $PREFIX/native/share/config/config.sub config/config.sub", + "*:*:cp -f $NATIVEPREFIX/share/config/config.guess config/config.guess", + "*:*:cp -f $NATIVEPREFIX/share/config/config.sub config/config.sub", "*:*-linux-gnu:patch -p0 < $PATCH_DIR/unwind/fix_obj_order.patch", "*:*-linux-gnu:./configure $config_opts", "*:*-linux-gnu:make -j$NUM_CORES", diff --git a/packages/xxhash.json b/packages/xxhash.json index d0183c2..c1888d8 100644 --- a/packages/xxhash.json +++ b/packages/xxhash.json @@ -17,7 +17,7 @@ ], "build": { "env": [ - "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$PREFIX/native/toolchain.cmake", + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$NATIVEPREFIX/toolchain.cmake", "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" ], "steps": [ diff --git a/packages/zstd.json b/packages/zstd.json index bd88dcd..358777e 100644 --- a/packages/zstd.json +++ b/packages/zstd.json @@ -14,7 +14,7 @@ ], "build": { "env": [ - "*:*:LIBTOOL=$PREFIX/native/bin/libtool", + "*:*:LIBTOOL=$NATIVEPREFIX/bin/libtool", "*:armv7a-linux-androideabi:CFLAGS=$CFLAGS -DLIBC_NO_FSEEKO", "*:armv7a-linux-androideabi:CXXFLAGS=$CXXFLAGS -DLIBC_NO_FSEEKO", "*:*-linux-*:TARGET_SYSTEM=Linux", diff --git a/patches/go_wrapper.sh b/patches/go_wrapper.sh index a4d5ff8..a30b72c 100644 --- a/patches/go_wrapper.sh +++ b/patches/go_wrapper.sh @@ -3,10 +3,10 @@ export GOCACHE=$HOME/.cache/go@GO_VERSION@-build export GOMODCACHE=$HOME/go@GO_VERSION@/pkg/mod export GOPATH=$HOME/go@GO_VERSION@ export GOPROXY='https://proxy.golang.org,direct' -export GOROOT=$PREFIX/native/go@GO_VERSION@ +export GOROOT=$NATIVEPREFIX/go@GO_VERSION@ export GOSUMDB='sum.golang.org' export GOTELEMETRY='local' export GOTELEMETRYDIR='/Users/user/Library/Application Support/go/telemetry' export GOTOOLDIR=$GOROOT/pkg/tool/${BUILDER_GOOS}_${BUILDER_GOARCH} -exec $PREFIX/native/go@GO_VERSION@/bin/go $@ +exec $NATIVEPREFIX/go@GO_VERSION@/bin/go $@ diff --git a/patches/strip-nondeterminism-recursive b/patches/strip-nondeterminism-recursive index 2e68bfe..ba3f7b6 100755 --- a/patches/strip-nondeterminism-recursive +++ b/patches/strip-nondeterminism-recursive @@ -1,4 +1,4 @@ -#!$PREFIX/native/bootstrap/bin/perl +#!$NATIVEPREFIX/bootstrap/bin/perl use strict; use warnings; use autodie; @@ -63,9 +63,9 @@ exit($error_count > 0 ? 1 : 0); sub process_file { my $file = $File::Find::name; - + return unless -f $file; - + my $has_archive_extension = 0; for my $ext (@ARCHIVE_EXTENSIONS) { if ($file =~ /\Q$ext\E$/i) { @@ -73,27 +73,27 @@ sub process_file { last; } } - + return unless $has_archive_extension; - + $processed_count++; - + if ($verbose) { print "Processing: $file\n"; } - + if ($dry_run) { print "DRY RUN: Would process $file\n"; $success_count++; return; } - + eval { process_archive_file($file); $success_count++; print "Successfully processed: $file\n" if $verbose; }; - + if ($@) { $error_count++; warn "Failed to process '$file': $@\n"; @@ -102,22 +102,22 @@ sub process_file { sub process_archive_file { my $file = shift; - + my $stat = stat($file) or die "Cannot stat file '$file': $!\n"; my $original_perms = $stat->mode; - + my $current_perms = $stat->mode; unless ($current_perms & 0200) { chmod($current_perms | 0200, $file) or die "Cannot make file writable '$file': $!\n"; } - + my $cmd = "$PERL_CMD $STRIP_NONDETERMINISM_CMD -T 1 --normalizers +all " . quotemeta($file); - + my $exit_code = system($cmd); my $strip_result = $exit_code >> 8; - + chmod($original_perms, $file) or warn "Warning: Could not restore permissions for '$file': $!\n"; - + if ($strip_result != 0) { die "strip-nondeterminism failed with exit code $strip_result"; } @@ -169,8 +169,8 @@ Specify the directory to search (default: current directory). The prefix path where strip-nondeterminism and perl are located. Expected paths: -- strip-nondeterminism: $PREFIX/native/bootstrap/bin/strip-nondeterminism -- perl: $PREFIX/native/bootstrap/bin/perl +- strip-nondeterminism: $NATIVEPREFIX/bootstrap/bin/strip-nondeterminism +- perl: $NATIVEPREFIX/bootstrap/bin/perl =back @@ -207,4 +207,4 @@ Czarek Nakamoto $VERSION -=cut \ No newline at end of file +=cut From a9a67b7bef690d0b156011f9b3ca92bd693cb137 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 2 Mar 2026 20:03:49 +0100 Subject: [PATCH 098/200] add boost 1_90_0 and 1_83_0 --- packages/boost@1_83_0.json | 66 +++++++++++++++++++ packages/{boost.json => boost@1_90_0.json} | 4 +- packages/native/boost-b2@1_83_0.json | 23 +++++++ .../{boost-b2.json => boost-b2@1_90_0.json} | 2 +- 4 files changed, 92 insertions(+), 3 deletions(-) create mode 100644 packages/boost@1_83_0.json rename packages/{boost.json => boost@1_90_0.json} (98%) create mode 100644 packages/native/boost-b2@1_83_0.json rename packages/native/{boost-b2.json => boost-b2@1_90_0.json} (95%) diff --git a/packages/boost@1_83_0.json b/packages/boost@1_83_0.json new file mode 100644 index 0000000..9b924f6 --- /dev/null +++ b/packages/boost@1_83_0.json @@ -0,0 +1,66 @@ +{ + "package": "boost@1_83_0", + "version": "1_83_0", + "type": "host", + "download": [ + { + "kind": "tar.bz2", + "sha256": "6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e", + "url": "http://downloads.sourceforge.net/project/boost/boost/1.83.0/boost_1_83_0.tar.bz2" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/boost-b2@1_83_0", + "*:*:native/cmake", + "*:*:native/python@3.14", + "*:*:libiconv", + "*:*:openssl", + "*:*:xz", + "*:*:zstd" + ], + "patches": [ + "fix_io_control_hpp.patch" + ], + "build": { + "env": [ + "*:*-apple-ios*:target_os=iphone", + "*:*-linux-android*:target_os=android", + "*:*-mingw32*:target_os=windows", + "*:*-linux-gnu*:target_os=linux", + "*:*:config_opts=variant=release --layout=system --without-python --user-config=user-config.jam", + "*:*:config_opts=$config_opts threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1", + "*:aarch64-apple-darwin:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin runtime-link=shared", + "*:x86_64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", + "*:aarch64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", + "*:armv7-linux-androideabi:config_opts=$config_opts address-model=32 architecture=arm threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", + "*:x86_64-apple-darwin:config_opts=$config_opts address-model=64 architecture=x86", + "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone runtime-link=shared --without-process", + "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone runtime-link=shared --without-process", + "*:x86_64-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=64 architecture=x86", + "*:i686-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=32 architecture=x86", + "*:i686-linux-gnu:config_opts=$config_opts address-model=32 architecture=x86 threadapi=pthread runtime-link=static", + "*:x86_64-linux-gnu:config_opts=$config_opts address-model=64 architecture=x86 threadapi=pthread runtime-link=static", + "*:aarch64-linux-gnu:config_opts=$config_opts address-model=64 architecture=arm threadapi=pthread runtime-link=static", + "*:*:toolset=gcc", + "*:*-apple-*:archiver=$LIBTOOL", + "*:*-apple-*:toolset=darwin", + "*:*-android*:toolset=gcc", + "*:*mingw32*:toolset=gcc", + "*:*-ios*:toolset2=iphone", + "*:*:CXXFLAGS=$CXXFLAGS -fPIC", + "*:*-apple-*:AR=libtool", + "*:{*-linux-*,*-w64-*}:ARFLAGS=rcs", + "*:*:WINDRES=$RC $RCFLAGS", + "none:*-apple-darwin:config_opts=$config_opts define=BOOST_LOG_WITHOUT_SYSLOG", + "none:*-apple-darwin:config_opts=$config_opts define=BOOST_LOG_WITHOUT_IPC", + "*:*-apple-*:config_opts=$config_opts define=_DARWIN_C_SOURCE" + ], + "steps": [ + "*:*:echo \"using $toolset : $toolset2 : $CXX $CXXFLAGS : \"$CXXFLAGS\" \"$LDFLAGS\" \"$AR\" \"$ARFLAGS\" \"$STRIP\" \"$RANLIB\" \"$WINDRES\" \"$target_os\" : ;\" > user-config.jam", + "*:*:b2 -j$NUM_CORES --prefix=$STAGING_DIR$PREFIX $config_opts", + "*:*:b2 -j1 --prefix=$STAGING_DIR$PREFIX $config_opts stage", + "*:*:b2 -d0 -j1 --prefix=$STAGING_DIR$PREFIX $config_opts install" + ] + } +} \ No newline at end of file diff --git a/packages/boost.json b/packages/boost@1_90_0.json similarity index 98% rename from packages/boost.json rename to packages/boost@1_90_0.json index 4d2034d..7dc4ca6 100644 --- a/packages/boost.json +++ b/packages/boost@1_90_0.json @@ -1,5 +1,5 @@ { - "package": "boost", + "package": "boost@1_90_0", "version": "1_90_0", "type": "host", "download": [ @@ -11,7 +11,7 @@ ], "dependencies": [ "*:*:native/_", - "*:*:native/boost-b2", + "*:*:native/boost-b2@1_90_0", "*:*:native/cmake", "*:*:native/python@3.14", "*:*:libiconv", diff --git a/packages/native/boost-b2@1_83_0.json b/packages/native/boost-b2@1_83_0.json new file mode 100644 index 0000000..16892ad --- /dev/null +++ b/packages/native/boost-b2@1_83_0.json @@ -0,0 +1,23 @@ +{ + "package": "native/boost-b2@1_83_0", + "version": "1_83_0", + "type": "native", + "download": [ + { + "kind": "tar.bz2", + "sha256": "6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e", + "url": "http://downloads.sourceforge.net/project/boost/boost/1.83.0/boost_1_83_0.tar.bz2" + } + ], + "build": { + "env": [ + "*:*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,log", + "*:*-w64-*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log" + ], + "steps": [ + "*:*:./bootstrap.sh --without-icu --with-libraries=$config_libraries", + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp b2 $STAGING_DIR$NATIVEPREFIX/bin/" + ] + } +} \ No newline at end of file diff --git a/packages/native/boost-b2.json b/packages/native/boost-b2@1_90_0.json similarity index 95% rename from packages/native/boost-b2.json rename to packages/native/boost-b2@1_90_0.json index 75f6bc5..860a6c6 100644 --- a/packages/native/boost-b2.json +++ b/packages/native/boost-b2@1_90_0.json @@ -1,5 +1,5 @@ { - "package": "native/boost-b2", + "package": "native/boost-b2@1_90_0", "version": "1_90_0", "type": "native", "download": [ From 0426e515ced43ef5a174dfa72c9134cef045cf04 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 2 Mar 2026 20:49:14 +0100 Subject: [PATCH 099/200] make native pkgs unique --- pack/info.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pack/info.go b/pack/info.go index 4d89a74..cd2a77b 100644 --- a/pack/info.go +++ b/pack/info.go @@ -80,8 +80,13 @@ func (p *Package) GeneratePackageInfo(h *host.Host) string { } env := p.GetEnvForLogs(h) delete(env, "PATH") + delete(env, "PREFIX") pkgs["_env"] = env - pkgs["_prefix"] = h.GetEnvPath() + if (p.Type == "native") { + pkgs["_prefix"] = h.GetNativeEnvPath() + } else { + pkgs["_prefix"] = h.GetEnvPath() + } info, err := json.MarshalIndent(pkgs, "", " ") crash.Handle(err) return string(info) From b39d0efd653e07cc981bb5125aeb4dacfc635490 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 3 Mar 2026 14:06:13 +0100 Subject: [PATCH 100/200] boost fixes --- pack/main.go | 10 ++++++++++ packages/boost@1_83_0.json | 4 ++-- packages/icu4c.json | 31 ------------------------------- packages/native/git.json | 3 ++- packages/native/icu4c.json | 33 +++++++++++++++++++++++++++++++++ 5 files changed, 47 insertions(+), 34 deletions(-) delete mode 100644 packages/icu4c.json create mode 100644 packages/native/icu4c.json diff --git a/pack/main.go b/pack/main.go index 846b44d..382b79e 100644 --- a/pack/main.go +++ b/pack/main.go @@ -1,6 +1,7 @@ package pack import ( + "maps" "encoding/json" "fmt" "os" @@ -210,6 +211,15 @@ func Cleanup() { } } + var keepFilesCopy = make(map[string]bool) + maps.Copy(keepFilesCopy, keepFiles) + for k, _ := range keepFilesCopy { + if k[len(k)-len(".tar.gz"):] == ".tar.gz" { + keepFiles[k[:len(k)-len(".tar.gz")]+"_native.tar.gz"] = true + } + } + + for _, download := range pkg.Download { sourcePath := pkg.GenerateSourceBuildPath(download) relPath, err := filepath.Rel(buildlibDir, sourcePath) diff --git a/packages/boost@1_83_0.json b/packages/boost@1_83_0.json index 9b924f6..5b2e7bd 100644 --- a/packages/boost@1_83_0.json +++ b/packages/boost@1_83_0.json @@ -35,8 +35,8 @@ "*:aarch64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:armv7-linux-androideabi:config_opts=$config_opts address-model=32 architecture=arm threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:x86_64-apple-darwin:config_opts=$config_opts address-model=64 architecture=x86", - "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone runtime-link=shared --without-process", - "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone runtime-link=shared --without-process", + "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone runtime-link=shared", + "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone runtime-link=shared", "*:x86_64-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=64 architecture=x86", "*:i686-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=32 architecture=x86", "*:i686-linux-gnu:config_opts=$config_opts address-model=32 architecture=x86 threadapi=pthread runtime-link=static", diff --git a/packages/icu4c.json b/packages/icu4c.json deleted file mode 100644 index 4356dc4..0000000 --- a/packages/icu4c.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "package": "icu4c", - "version": "55.2", - "type": "host", - "download": [ - { - "kind": "tar.gz", - "sha256": "eda2aa9f9c787748a2e2d310590720ca8bcc6252adf6b4cfb03b65bef9d66759", - "url": "http://github.com/unicode-org/icu/releases/download/release-55-2/icu4c-55_2-src.tgz" - } - ], - "patches": [ - "icu-001-dont-build-static-dynamic-twice.patch" - ], - "build": { - "env": [ - "*:*-w64-mingw32:CFLAGS=$CFLAGS -DU_USING_ICU_NAMESPACE=0 -DU_STATIC_IMPLEMENTATION -DU_COMBINED_IMPLEMENTATION -fPIC -DENABLE_STATIC=YES -DPGKDATA_MODE=static", - "*:*-w64-mingw32:TARGET=" - ], - "steps": [ - "*:*-w64-mingw32:patch -p1 < $PATCH_DIR/icu4c/icu-001-dont-build-static-dynamic-twice.patch", - "*:*-w64-mingw32:mkdir builda", - "*:*-w64-mingw32:mkdir buildb", - "*:*-w64-mingw32:cd builda && sh ../source/runConfigureICU Linux", - "*:*-w64-mingw32:cd builda && make -j$NUM_CORES", - "*:*-w64-mingw32:cd buildb && ../source/runConfigureICU MinGW --enable-static=yes --disable-shared --disable-layout --disable-layoutex --disable-tests --disable-samples --prefix=$PREFIX --with-cross-build=$(pwd)/../builda", - "*:*-w64-mingw32:cd buildb && make -j$NUM_CORES $build_opts", - "*:*-w64-mingw32:cd buildb && -j$NUM_CORES $build_opts DESTDIR=$STAGING_DIR install lib/*" - ] - } -} \ No newline at end of file diff --git a/packages/native/git.json b/packages/native/git.json index 343c3bc..4f34de5 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -27,7 +27,8 @@ "*:*:mkdir -p $STAGING_DIR$HOME", "*:*:echo '[user]' >> $STAGING_DIR$HOME/.gitconfig", "*:*:echo '\tname = simplybs' >> $STAGING_DIR$HOME/.gitconfig", - "*:*:echo '\temail = simplybs@mrcyjanek.net' >> $STAGING_DIR$HOME/.gitconfig" + "*:*:echo '\temail = simplybs@mrcyjanek.net' >> $STAGING_DIR$HOME/.gitconfig", + "*:*:python3 $PATCH_DIR/android_ndk/symlink_same.py $STAGING_DIR$PREFIX" ] } } \ No newline at end of file diff --git a/packages/native/icu4c.json b/packages/native/icu4c.json new file mode 100644 index 0000000..f8f1025 --- /dev/null +++ b/packages/native/icu4c.json @@ -0,0 +1,33 @@ +{ + "package": "native/icu4c", + "version": "55.2", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "eda2aa9f9c787748a2e2d310590720ca8bcc6252adf6b4cfb03b65bef9d66759", + "url": "http://github.com/unicode-org/icu/releases/download/release-55-2/icu4c-55_2-src.tgz" + } + ], + "dependencies": [ + "*:*-w64-mingw32:native/make" + ], + "patches": [ + "icu-001-dont-build-static-dynamic-twice.patch" + ], + "build": { + "env": [ + "linux_*:*:ICU_PLATFORM=Linux/gcc", + "darwin_*:*:ICU_PLATFORM=Darwin" + ], + "steps": [ + "*:*-w64-mingw32:patch -p1 < $PATCH_DIR/icu4c/icu-001-dont-build-static-dynamic-twice.patch", + "*:*-w64-mingw32:mkdir -p $NATIVEPREFIX/share/", + "*:*-w64-mingw32:cp -av . $NATIVEPREFIX/share/icu4c_55.2", + "*:*-w64-mingw32:WD=$PWD && unset HOST TARGET && cd $NATIVEPREFIX/share/icu4c_55.2 && sh $WD/source/runConfigureICU $ICU_PLATFORM --prefix=$NATIVEPREFIX/share/icu4c_55.2", + "*:*-w64-mingw32:unset HOST TARGET && cd $NATIVEPREFIX/share/icu4c_55.2 && make -j$NUM_CORES", + "*:*-w64-mingw32:mkdir -p $STAGING_DIR$NATIVEPREFIX/share", + "*:*-w64-mingw32:cp -av $NATIVEPREFIX/share/icu4c_55.2 $STAGING_DIR$NATIVEPREFIX/share/" + ] + } +} \ No newline at end of file From 0414efe7204404aa50911eaaeab885910c1ef313 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 4 Mar 2026 11:52:05 +0100 Subject: [PATCH 101/200] mkdir --- pack/build.go | 1 + 1 file changed, 1 insertion(+) diff --git a/pack/build.go b/pack/build.go index ccafb92..0a1bbab 100644 --- a/pack/build.go +++ b/pack/build.go @@ -49,6 +49,7 @@ func (p *Package) ExtractEnv(host *host.Host, envPath string, envNativePath stri for k, v := range env { newEnv = append(newEnv, k+"="+v) } + os.MkdirAll(envPath, 0750) writeDotEnv(envPath+"/_source_me", newEnv) } From f6eb673d26451799dfc9082761ae5c635b8878a0 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 6 Mar 2026 10:46:16 +0100 Subject: [PATCH 102/200] qemu --- packages/native/glib2.json | 31 +++++++++++++++++ packages/native/gn.json | 3 +- packages/native/pcre2.json | 30 ++++++++++++++++ packages/native/python@3.14/flit-core.json | 21 ++++++++++++ packages/native/python@3.14/packaging.json | 22 ++++++++++++ .../native/python@3.14/pyproject-hooks.json | 22 ++++++++++++ packages/native/python@3.14/tomli.json | 24 +++++++++++++ packages/native/qemu.json | 34 +++++++++++++++++++ sources.json | 30 ++++++++++++++++ 9 files changed, 216 insertions(+), 1 deletion(-) create mode 100644 packages/native/glib2.json create mode 100644 packages/native/pcre2.json create mode 100644 packages/native/python@3.14/flit-core.json create mode 100644 packages/native/python@3.14/packaging.json create mode 100644 packages/native/python@3.14/pyproject-hooks.json create mode 100644 packages/native/python@3.14/tomli.json create mode 100644 packages/native/qemu.json diff --git a/packages/native/glib2.json b/packages/native/glib2.json new file mode 100644 index 0000000..4d8198d --- /dev/null +++ b/packages/native/glib2.json @@ -0,0 +1,31 @@ +{ + "package": "native/glib2", + "version": "2.86", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "d4e2b5d791d5015ffd8c6971ad8e975a0a55c1a14926cdb25cf843ff00682260", + "url": "https://download.gnome.org/sources/glib/2.86/glib-2.86.4.tar.xz" + } + ], + "dependencies": [ + "*:*:native/bison", + "*:*:native/gettext", + "*:*:native/meson", + "*:*:native/libiconv", + "*:*:native/pkgconf", + "*:*:native/ninja", + "*:*:native/python@3.14", + "*:*:native/flex", + "*:*:native/pcre2" + ], + "build": { + "env": [], + "steps": [ + "*:*:meson setup _build --prefix=$NATIVEPREFIX", + "*:*:meson compile -C _build", + "*:*:DESTDIR=$STAGING_DIR meson install -C _build" + ] + } +} \ No newline at end of file diff --git a/packages/native/gn.json b/packages/native/gn.json index df3c3e2..2b68ca5 100644 --- a/packages/native/gn.json +++ b/packages/native/gn.json @@ -12,7 +12,8 @@ "dependencies": [ "*:*:native/git", "*:*:native/ninja", - "*:*:native/python@3.11" + "*:*:native/python@3.11", + "*:*:native/pkgconf" ], "build": { "env": [], diff --git a/packages/native/pcre2.json b/packages/native/pcre2.json new file mode 100644 index 0000000..6a17fcf --- /dev/null +++ b/packages/native/pcre2.json @@ -0,0 +1,30 @@ +{ + "package": "native/pcre2", + "version": "10.47", + "type": "native", + "download": [ + { + "kind": "tar.bz2", + "sha256": "47fe8c99461250d42f89e6e8fdaeba9da057855d06eb7fc08d9ca03fd08d7bc7", + "url": "https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.47/pcre2-10.47.tar.bz2" + } + ], + "dependencies": [ + "*:*:native/make", + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/libtool", + "*:*:native/perl", + "*:*:native/pkgconf" + ], + "build": { + "env": [ + "*:*:config_opts=--prefix=$NATIVEPREFIX" + ], + "steps": [ + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/python@3.14/flit-core.json b/packages/native/python@3.14/flit-core.json new file mode 100644 index 0000000..39c8391 --- /dev/null +++ b/packages/native/python@3.14/flit-core.json @@ -0,0 +1,21 @@ +{ + "package": "native/python@3.14/flit-core", + "version": "0.0.0", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "92c9486a543c4db266e3908bffc984060b8466af", + "url": "https://github.com/pypa/flit.git" + } + ], + "dependencies": [ + "*:*:native/python@3.14" + ], + "build": { + "env": [], + "steps": [ + "*:*:cd flit_core && pip3 install --root $STAGING_DIR --prefix $NATIVEPREFIX --no-deps --no-build-isolation --no-index --disable-pip-version-check ." + ] + } +} \ No newline at end of file diff --git a/packages/native/python@3.14/packaging.json b/packages/native/python@3.14/packaging.json new file mode 100644 index 0000000..6167b1d --- /dev/null +++ b/packages/native/python@3.14/packaging.json @@ -0,0 +1,22 @@ +{ + "package": "native/python@3.14/packaging", + "version": "26.0", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "3b77a26f5a27473ad3b08194d773f325d018a2d0", + "url": "https://github.com/pypa/packaging" + } + ], + "dependencies": [ + "*:*:native/python@3.14", + "*:*:native/python@3.14/flit-core" + ], + "build": { + "env": [], + "steps": [ + "*:*:pip3 install --root $STAGING_DIR --prefix $NATIVEPREFIX --no-deps --no-build-isolation --no-index --disable-pip-version-check ." + ] + } +} \ No newline at end of file diff --git a/packages/native/python@3.14/pyproject-hooks.json b/packages/native/python@3.14/pyproject-hooks.json new file mode 100644 index 0000000..73531da --- /dev/null +++ b/packages/native/python@3.14/pyproject-hooks.json @@ -0,0 +1,22 @@ +{ + "package": "native/python@3.14/pyproject-hooks", + "version": "1.2.0", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "4b7c6d113fb89b755d762a88712c8a6873cddd47", + "url": "https://github.com/pypa/pyproject-hooks" + } + ], + "dependencies": [ + "*:*:native/python@3.14", + "*:*:native/python@3.14/flit-core" + ], + "build": { + "env": [], + "steps": [ + "*:*:pip3 install --root $STAGING_DIR --prefix $NATIVEPREFIX --no-deps --no-build-isolation --no-index --disable-pip-version-check ." + ] + } +} \ No newline at end of file diff --git a/packages/native/python@3.14/tomli.json b/packages/native/python@3.14/tomli.json new file mode 100644 index 0000000..f21328a --- /dev/null +++ b/packages/native/python@3.14/tomli.json @@ -0,0 +1,24 @@ +{ + "package": "native/python@3.14/tomli", + "version": "2.4.0", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "a678e6fdeffa89bd28e4ecc148b926a4e1bbbc7b", + "url": "https://github.com/hukkin/tomli" + } + ], + "dependencies": [ + "*:*:native/make", + "*:*:native/python@3.14", + "*:*:native/python@3.14/flit-core", + "*:*:native/python@3.14/pyproject-hooks" + ], + "build": { + "env": [], + "steps": [ + "*:*:pip3 install --root $STAGING_DIR --prefix $NATIVEPREFIX --no-deps --no-build-isolation --no-index --disable-pip-version-check ." + ] + } +} \ No newline at end of file diff --git a/packages/native/qemu.json b/packages/native/qemu.json new file mode 100644 index 0000000..3c9b8bb --- /dev/null +++ b/packages/native/qemu.json @@ -0,0 +1,34 @@ +{ + "package": "native/qemu", + "version": "10.2.1", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "a3717477d8e2c84d630bfffbc20f6cd3293eb45aa1e6dac6d0cc27689991c9e1", + "url": "https://download.qemu.org/qemu-10.2.1.tar.xz" + } + ], + "dependencies": [ + "*:*:native/make", + "*:*:native/python@3.14", + "*:*:native/python@3.14/tomli", + "*:*:native/ninja", + "*:*:native/perl", + "*:*:native/pkgconf", + "*:*:native/pcre2", + "*:*:native/glib2", + "*:*:native/sed" + ], + "build": { + "env": [ + "*:*:config_opts=--prefix=$NATIVEPREFIX", + "*:*:config_opts=$config_opts" + ], + "steps": [ + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/sources.json b/sources.json index 82cfe0c..38e9873 100644 --- a/sources.json +++ b/sources.json @@ -888,6 +888,11 @@ "d5b8e853989a73f8fff9dc4e00dccd0b691b84f9" ] }, + "https://github.com/hukkin/tomli": { + "refs": [ + "a678e6fdeffa89bd28e4ecc148b926a4e1bbbc7b" + ] + }, "https://github.com/ip7z/7zip.git": { "refs": [ "5e96a8279489832924056b1fa82f29d5837c9469" @@ -923,6 +928,31 @@ "1da054d99bb16d35c54d759f36ccc125b90070bd" ] }, + "https://github.com/pypa/build.git": { + "refs": [ + "54f238d1664124e06a68c6c22fd5b1418fa5feb2" + ] + }, + "https://github.com/pypa/flit.git": { + "refs": [ + "92c9486a543c4db266e3908bffc984060b8466af" + ] + }, + "https://github.com/pypa/installer.git": { + "refs": [ + "b1d39180f8548820d09ce992dfadff0a42242c48" + ] + }, + "https://github.com/pypa/packaging": { + "refs": [ + "3b77a26f5a27473ad3b08194d773f325d018a2d0" + ] + }, + "https://github.com/pypa/pyproject-hooks": { + "refs": [ + "4b7c6d113fb89b755d762a88712c8a6873cddd47" + ] + }, "https://github.com/tpoechtrager/apple-libtapi.git": { "refs": [ "640b4623929c923c0468143ff2a363a48665fa54" From f6e2a538874ff2c282b1cdfdc4af64e96e55794c Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 6 Mar 2026 23:21:47 +0100 Subject: [PATCH 103/200] fix: static boost --- packages/boost@1_83_0.json | 4 ++-- packages/boost@1_90_0.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/boost@1_83_0.json b/packages/boost@1_83_0.json index 5b2e7bd..b30a28e 100644 --- a/packages/boost@1_83_0.json +++ b/packages/boost@1_83_0.json @@ -35,8 +35,8 @@ "*:aarch64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:armv7-linux-androideabi:config_opts=$config_opts address-model=32 architecture=arm threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:x86_64-apple-darwin:config_opts=$config_opts address-model=64 architecture=x86", - "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone runtime-link=shared", - "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone runtime-link=shared", + "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone link=static runtime-link=static", + "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone link=static runtime-link=static", "*:x86_64-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=64 architecture=x86", "*:i686-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=32 architecture=x86", "*:i686-linux-gnu:config_opts=$config_opts address-model=32 architecture=x86 threadapi=pthread runtime-link=static", diff --git a/packages/boost@1_90_0.json b/packages/boost@1_90_0.json index 7dc4ca6..a2145eb 100644 --- a/packages/boost@1_90_0.json +++ b/packages/boost@1_90_0.json @@ -35,8 +35,8 @@ "*:aarch64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:armv7-linux-androideabi:config_opts=$config_opts address-model=32 architecture=arm threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:x86_64-apple-darwin:config_opts=$config_opts address-model=64 architecture=x86", - "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone runtime-link=shared --without-process", - "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone runtime-link=shared --without-process", + "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone link=static runtime-link=static --without-process", + "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone link=static runtime-link=static --without-process", "*:x86_64-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=64 architecture=x86", "*:i686-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=32 architecture=x86", "*:i686-linux-gnu:config_opts=$config_opts address-model=32 architecture=x86 threadapi=pthread runtime-link=static", From 603fc7b57cc6febbb4d6141257c2301ee94eb17c Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 6 Mar 2026 23:55:05 +0100 Subject: [PATCH 104/200] wip --- packages/boost@1_83_0.json | 4 ++-- packages/boost@1_90_0.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/boost@1_83_0.json b/packages/boost@1_83_0.json index b30a28e..5c551c9 100644 --- a/packages/boost@1_83_0.json +++ b/packages/boost@1_83_0.json @@ -35,8 +35,8 @@ "*:aarch64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:armv7-linux-androideabi:config_opts=$config_opts address-model=32 architecture=arm threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:x86_64-apple-darwin:config_opts=$config_opts address-model=64 architecture=x86", - "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone link=static runtime-link=static", - "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone link=static runtime-link=static", + "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 architecture=arm --toolset=darwin-iphone link=static runtime-link=static", + "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 architecture=arm --toolset=darwin-iphone link=static runtime-link=static", "*:x86_64-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=64 architecture=x86", "*:i686-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=32 architecture=x86", "*:i686-linux-gnu:config_opts=$config_opts address-model=32 architecture=x86 threadapi=pthread runtime-link=static", diff --git a/packages/boost@1_90_0.json b/packages/boost@1_90_0.json index a2145eb..1b990ed 100644 --- a/packages/boost@1_90_0.json +++ b/packages/boost@1_90_0.json @@ -35,8 +35,8 @@ "*:aarch64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:armv7-linux-androideabi:config_opts=$config_opts address-model=32 architecture=arm threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:x86_64-apple-darwin:config_opts=$config_opts address-model=64 architecture=x86", - "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone link=static runtime-link=static --without-process", - "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin-iphone link=static runtime-link=static --without-process", + "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 architecture=arm --toolset=darwin-iphone link=static runtime-link=static --without-process", + "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 architecture=arm --toolset=darwin-iphone link=static runtime-link=static --without-process", "*:x86_64-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=64 architecture=x86", "*:i686-w64-mingw32:config_opts=$config_opts target-os=$target_os binary-format=pe threadapi=win32 runtime-link=static address-model=32 architecture=x86", "*:i686-linux-gnu:config_opts=$config_opts address-model=32 architecture=x86 threadapi=pthread runtime-link=static", From 184235706c2665432304ef28b106da52807a9686 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 7 Mar 2026 12:36:44 +0100 Subject: [PATCH 105/200] armv7a-linux-androideabi fix --- packages/boost@1_83_0.json | 2 +- packages/boost@1_90_0.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/boost@1_83_0.json b/packages/boost@1_83_0.json index 5c551c9..a49d11e 100644 --- a/packages/boost@1_83_0.json +++ b/packages/boost@1_83_0.json @@ -33,7 +33,7 @@ "*:aarch64-apple-darwin:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin runtime-link=shared", "*:x86_64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:aarch64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", - "*:armv7-linux-androideabi:config_opts=$config_opts address-model=32 architecture=arm threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", + "*:armv7a-linux-androideabi:config_opts=$config_opts address-model=32 architecture=arm threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:x86_64-apple-darwin:config_opts=$config_opts address-model=64 architecture=x86", "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 architecture=arm --toolset=darwin-iphone link=static runtime-link=static", "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 architecture=arm --toolset=darwin-iphone link=static runtime-link=static", diff --git a/packages/boost@1_90_0.json b/packages/boost@1_90_0.json index 1b990ed..6c37b37 100644 --- a/packages/boost@1_90_0.json +++ b/packages/boost@1_90_0.json @@ -33,7 +33,7 @@ "*:aarch64-apple-darwin:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin runtime-link=shared", "*:x86_64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:aarch64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", - "*:armv7-linux-androideabi:config_opts=$config_opts address-model=32 architecture=arm threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", + "*:armv7a-linux-androideabi:config_opts=$config_opts address-model=32 architecture=arm threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:x86_64-apple-darwin:config_opts=$config_opts address-model=64 architecture=x86", "*:aarch64-apple-ios:config_opts=$config_opts address-model=64 architecture=arm --toolset=darwin-iphone link=static runtime-link=static --without-process", "*:aarch64-apple-ios-simulator:config_opts=$config_opts address-model=64 architecture=arm --toolset=darwin-iphone link=static runtime-link=static --without-process", From a37442738bc26fbe4e526f48694746b2efed2c2b Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 8 Mar 2026 09:13:23 +0100 Subject: [PATCH 106/200] git fix --- packages/native/git.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/native/git.json b/packages/native/git.json index 4f34de5..d75c9c1 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -28,7 +28,7 @@ "*:*:echo '[user]' >> $STAGING_DIR$HOME/.gitconfig", "*:*:echo '\tname = simplybs' >> $STAGING_DIR$HOME/.gitconfig", "*:*:echo '\temail = simplybs@mrcyjanek.net' >> $STAGING_DIR$HOME/.gitconfig", - "*:*:python3 $PATCH_DIR/android_ndk/symlink_same.py $STAGING_DIR$PREFIX" + "*:*:python3 $PATCH_DIR/android_ndk/symlink_same.py $STAGING_DIR$NATIVEPREFIX" ] } } \ No newline at end of file From 8d511c4cd84092b9248b3f9785fc041a11cb2ece Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 2 Apr 2026 13:17:21 +0200 Subject: [PATCH 107/200] fix: perl build on new xcode --- packages/native/perl.json | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/native/perl.json b/packages/native/perl.json index 64110e8..7751c4e 100644 --- a/packages/native/perl.json +++ b/packages/native/perl.json @@ -1,12 +1,12 @@ { "package": "native/perl", - "version": "5.42.0", + "version": "5.42.1", "type": "native", "download": [ { "kind": "tar.gz", - "sha256": "e093ef184d7f9a1b9797e2465296f55510adb6dab8842b0c3ed53329663096dc", - "url": "http://www.cpan.org/src/5.0/perl-5.42.0.tar.gz" + "sha256": "6f84e6dc8cce97181d1c6aeeb552c13775c91ded3c6c73743c9211af87b16bf8", + "url": "http://www.cpan.org/src/5.0/perl-5.42.1.tar.gz" } ], "dependencies": [ @@ -15,6 +15,7 @@ "build": { "env": [], "steps": [ + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib $NATIVEPREFIX/lib", "*:*:sed -i.bak '/^#ifndef PERL_BUILD_DATE$/,/^#endif$/{/^#ifndef PERL_BUILD_DATE$/!d; s/.*/\\#define PERL_BUILD_DATE \"Jan 1 1970 00:00:01\"/;}' perl.c", "*:*:./Configure -des -Dprefix=$NATIVEPREFIX -Duseithreads -Dall_static", "*:*:make -j$NUM_CORES", From c8036e945633d5cf27c1ab74facabb9ddb3cb6de Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 17 Apr 2026 08:56:25 +0200 Subject: [PATCH 108/200] rust --- host/main.go | 16 +++++-- packages/native/glib2.json | 10 ++-- packages/native/gn.json | 4 +- packages/native/pcre2.json | 2 +- packages/native/qemu.json | 8 ++-- .../native/{rust@1_79_0.json => rust.json} | 15 +++--- packages/native/rust@1_55_0.json | 43 ----------------- packages/native/rust@1_56_1.json | 43 ----------------- packages/native/rust@1_57_0.json | 43 ----------------- packages/native/rust@1_58_1.json | 43 ----------------- packages/native/rust@1_59_0.json | 43 ----------------- packages/native/rust@1_60_0.json | 43 ----------------- packages/native/rust@1_61_0.json | 43 ----------------- packages/native/rust@1_62_1.json | 43 ----------------- packages/native/rust@1_63_0.json | 43 ----------------- packages/native/rust@1_64_0.json | 43 ----------------- packages/native/rust@1_65_0.json | 43 ----------------- packages/native/rust@1_66_1.json | 46 ------------------ packages/native/rust@1_67_1.json | 47 ------------------- packages/native/rust@1_68_2.json | 43 ----------------- packages/native/rust@1_69_0.json | 43 ----------------- packages/native/rust@1_70_0.json | 43 ----------------- packages/native/rust@1_71_1.json | 43 ----------------- packages/native/rust@1_72_1.json | 43 ----------------- packages/native/rust@1_73_0.json | 43 ----------------- packages/native/rust@1_74_1.json | 43 ----------------- packages/native/rust@1_75_0.json | 43 ----------------- packages/native/rust@1_76_0.json | 41 ---------------- packages/native/rust@1_77_1.json | 41 ---------------- packages/native/rust@1_80_1.json | 40 ---------------- packages/native/rust@1_83_0.json | 40 ---------------- packages/native/rust@1_84_1.json | 40 ---------------- packages/native/rust@1_85_1.json | 40 ---------------- packages/native/rust@1_86_0.json | 40 ---------------- packages/native/rust@1_87_0.json | 40 ---------------- packages/native/rust@1_88_0.json | 40 ---------------- packages/native/rust@1_89_0.json | 40 ---------------- ...st@1_54_0.json => rust@1_90_0-mrustc.json} | 42 ++++++++--------- packages/native/rust@1_90_0.json | 14 ++---- .../{rust@1_82_0.json => rust@1_91_0.json} | 13 ++--- .../{rust@1_78_0.json => rust@1_92_0.json} | 13 ++--- .../{rust@1_81_0.json => rust@1_93_0.json} | 13 ++--- packages/rust-hello-world.json | 24 ++++++++++ packages/rust_std.json | 42 +++++++++++++++++ patches/rust/1_55_0/assembly.h.patch | 14 ------ patches/rust/1_56_1/assembly.h.patch | 14 ------ patches/rust/1_60_0/assembly.h.patch | 14 ------ patches/rust/Signals.h.patch | 10 ---- patches/rust/codegen_c.cpp.patch | 17 ------- sources.json | 18 +++---- 50 files changed, 151 insertions(+), 1464 deletions(-) rename packages/native/{rust@1_79_0.json => rust.json} (72%) delete mode 100644 packages/native/rust@1_55_0.json delete mode 100644 packages/native/rust@1_56_1.json delete mode 100644 packages/native/rust@1_57_0.json delete mode 100644 packages/native/rust@1_58_1.json delete mode 100644 packages/native/rust@1_59_0.json delete mode 100644 packages/native/rust@1_60_0.json delete mode 100644 packages/native/rust@1_61_0.json delete mode 100644 packages/native/rust@1_62_1.json delete mode 100644 packages/native/rust@1_63_0.json delete mode 100644 packages/native/rust@1_64_0.json delete mode 100644 packages/native/rust@1_65_0.json delete mode 100644 packages/native/rust@1_66_1.json delete mode 100644 packages/native/rust@1_67_1.json delete mode 100644 packages/native/rust@1_68_2.json delete mode 100644 packages/native/rust@1_69_0.json delete mode 100644 packages/native/rust@1_70_0.json delete mode 100644 packages/native/rust@1_71_1.json delete mode 100644 packages/native/rust@1_72_1.json delete mode 100644 packages/native/rust@1_73_0.json delete mode 100644 packages/native/rust@1_74_1.json delete mode 100644 packages/native/rust@1_75_0.json delete mode 100644 packages/native/rust@1_76_0.json delete mode 100644 packages/native/rust@1_77_1.json delete mode 100644 packages/native/rust@1_80_1.json delete mode 100644 packages/native/rust@1_83_0.json delete mode 100644 packages/native/rust@1_84_1.json delete mode 100644 packages/native/rust@1_85_1.json delete mode 100644 packages/native/rust@1_86_0.json delete mode 100644 packages/native/rust@1_87_0.json delete mode 100644 packages/native/rust@1_88_0.json delete mode 100644 packages/native/rust@1_89_0.json rename packages/native/{rust@1_54_0.json => rust@1_90_0-mrustc.json} (55%) rename packages/native/{rust@1_82_0.json => rust@1_91_0.json} (79%) rename packages/native/{rust@1_78_0.json => rust@1_92_0.json} (79%) rename packages/native/{rust@1_81_0.json => rust@1_93_0.json} (79%) create mode 100644 packages/rust-hello-world.json create mode 100644 packages/rust_std.json delete mode 100644 patches/rust/1_55_0/assembly.h.patch delete mode 100644 patches/rust/1_56_1/assembly.h.patch delete mode 100644 patches/rust/1_60_0/assembly.h.patch delete mode 100644 patches/rust/Signals.h.patch delete mode 100644 patches/rust/codegen_c.cpp.patch diff --git a/host/main.go b/host/main.go index a1e917f..ea8cdb2 100644 --- a/host/main.go +++ b/host/main.go @@ -65,6 +65,7 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=aarch64-apple-darwin", "*:*:TARGET=aarch64-apple-darwin", + "*:*:RUST_TRIPLET=aarch64-apple-darwin", "*:*:ARCH=aarch64", "*:*:CMAKE_SYSTEM_NAME=Darwin", "*:*:SDK_VERSION=26.1", @@ -90,6 +91,7 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=x86_64-apple-darwin", "*:*:TARGET=x86_64-apple-darwin", + "*:*:RUST_TRIPLET=x86_64-apple-darwin", "*:*:ARCH=x86_64", "*:*:CMAKE_SYSTEM_NAME=Darwin", "*:*:SDK_VERSION=26.1", @@ -115,6 +117,7 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=aarch64-apple-ios", "*:*:TARGET=aarch64-apple-ios", + "*:*:RUST_TRIPLET=aarch64-apple-ios", "*:*:ARCH=aarch64", "*:*:CMAKE_SYSTEM_NAME=iOS", "*:*:IOS_MIN_VERSION=12", @@ -141,6 +144,7 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=aarch64-apple-ios-simulator", "*:*:TARGET=aarch64-apple-ios-simulator", + "*:*:RUST_TRIPLET=aarch64-apple-ios-sim", "*:*:ARCH=aarch64", "*:*:CMAKE_SYSTEM_NAME=iOS", "*:*:IOS_MIN_VERSION=12", @@ -187,6 +191,7 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=x86_64-w64-mingw32", "*:*:TARGET=x86_64-w64-mingw32", + "*:*:RUST_TRIPLET=x86_64-pc-windows-gnu", "*:*:ARCH=x86_64", "*:*:CMAKE_SYSTEM_NAME=Windows", "*:*:CC_target=x86_64-w64-mingw32", @@ -215,6 +220,7 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=x86_64-linux-gnu", "*:*:TARGET=x86_64-linux-gnu", + "*:*:RUST_TRIPLET=x86_64-unknown-linux-gnu", "*:*:ARCH=x86_64", "*:*:CMAKE_SYSTEM_NAME=Linux", "*:*:CC_target=x86_64-linux-gnu", @@ -241,6 +247,7 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=aarch64-linux-gnu", "*:*:TARGET=aarch64-linux-gnu", + "*:*:RUST_TRIPLET=aarch64-unknown-linux-gnu", "*:*:ARCH=aarch64", "*:*:CMAKE_SYSTEM_NAME=Linux", "*:*:CC_target=aarch64-linux-gnu", @@ -267,6 +274,7 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=aarch64-linux-android", "*:*:TARGET=aarch64-linux-android", + "*:*:RUST_TRIPLET=aarch64-linux-android", "*:*:ARCH=aarch64", "*:*:CMAKE_SYSTEM_NAME=Android", "*:*:CC_target=aarch64-linux-android", @@ -282,7 +290,7 @@ var SupportedHosts = map[string]*Host{ "*:*:AS=llvm-as", "*:*:LIBTOOL=libtool", "*:*:ANDROID_NDK_HOME=$NATIVEPREFIX/", - "*:*:LDFLAGS=$LDFLAGS -lc -lc++_static -lc++abi -lm -llog", + "*:*:LDFLAGS=$LDFLAGS -lc -lc++abi -lm", }, }, "x86_64-linux-android": { @@ -290,6 +298,7 @@ var SupportedHosts = map[string]*Host{ Env: []string{ "*:*:HOST=x86_64-linux-android", "*:*:TARGET=x86_64-linux-android", + "*:*:RUST_TRIPLET=x86_64-linux-android", "*:*:ARCH=x86_64", "*:*:CMAKE_SYSTEM_NAME=Android", "*:*:CC_target=x86_64-linux-android", @@ -305,13 +314,14 @@ var SupportedHosts = map[string]*Host{ "*:*:AS=llvm-as", "*:*:LIBTOOL=libtool", "*:*:ANDROID_NDK_HOME=$NATIVEPREFIX/", - "*:*:LDFLAGS=$LDFLAGS -lc -lc++_static -lc++abi -lm -llog"}, + "*:*:LDFLAGS=$LDFLAGS -lc -lc++abi -lm"}, }, "armv7a-linux-androideabi": { Triplet: "armv7a-linux-androideabi", Env: []string{ "*:*:HOST=armv7a-linux-androideabi", "*:*:TARGET=armv7a-linux-androideabi", + "*:*:RUST_TRIPLET=armv7-linux-androideabi", "*:*:ARCH=armv7a", "*:*:CMAKE_SYSTEM_NAME=Android", "*:*:CC_target=armv7a-linux-androideabi", @@ -327,7 +337,7 @@ var SupportedHosts = map[string]*Host{ "*:*:AS=llvm-as", "*:*:LIBTOOL=libtool", "*:*:ANDROID_NDK_HOME=$NATIVEPREFIX/", - "*:*:LDFLAGS=$LDFLAGS -lc -lc++_static -lc++abi -lm -llog"}, + "*:*:LDFLAGS=$LDFLAGS -lc -lc++abi -lm"}, }, } diff --git a/packages/native/glib2.json b/packages/native/glib2.json index 4d8198d..2eec83b 100644 --- a/packages/native/glib2.json +++ b/packages/native/glib2.json @@ -11,14 +11,14 @@ ], "dependencies": [ "*:*:native/bison", + "*:*:native/flex", "*:*:native/gettext", - "*:*:native/meson", "*:*:native/libiconv", - "*:*:native/pkgconf", + "*:*:native/meson", "*:*:native/ninja", - "*:*:native/python@3.14", - "*:*:native/flex", - "*:*:native/pcre2" + "*:*:native/pcre2", + "*:*:native/pkgconf", + "*:*:native/python@3.14" ], "build": { "env": [], diff --git a/packages/native/gn.json b/packages/native/gn.json index 2b68ca5..db103e7 100644 --- a/packages/native/gn.json +++ b/packages/native/gn.json @@ -12,8 +12,8 @@ "dependencies": [ "*:*:native/git", "*:*:native/ninja", - "*:*:native/python@3.11", - "*:*:native/pkgconf" + "*:*:native/pkgconf", + "*:*:native/python@3.11" ], "build": { "env": [], diff --git a/packages/native/pcre2.json b/packages/native/pcre2.json index 6a17fcf..d95caae 100644 --- a/packages/native/pcre2.json +++ b/packages/native/pcre2.json @@ -10,10 +10,10 @@ } ], "dependencies": [ - "*:*:native/make", "*:*:native/autoconf", "*:*:native/automake", "*:*:native/libtool", + "*:*:native/make", "*:*:native/perl", "*:*:native/pkgconf" ], diff --git a/packages/native/qemu.json b/packages/native/qemu.json index 3c9b8bb..714cf36 100644 --- a/packages/native/qemu.json +++ b/packages/native/qemu.json @@ -10,14 +10,14 @@ } ], "dependencies": [ + "*:*:native/glib2", "*:*:native/make", - "*:*:native/python@3.14", - "*:*:native/python@3.14/tomli", "*:*:native/ninja", + "*:*:native/pcre2", "*:*:native/perl", "*:*:native/pkgconf", - "*:*:native/pcre2", - "*:*:native/glib2", + "*:*:native/python@3.14", + "*:*:native/python@3.14/tomli", "*:*:native/sed" ], "build": { diff --git a/packages/native/rust@1_79_0.json b/packages/native/rust.json similarity index 72% rename from packages/native/rust@1_79_0.json rename to packages/native/rust.json index 1a7e342..9715787 100644 --- a/packages/native/rust@1_79_0.json +++ b/packages/native/rust.json @@ -1,21 +1,22 @@ { - "package": "native/rust@1_79_0", - "version": "1.79.0", + "package": "native/rust", + "version": "1.94.0", "type": "native", "download": [ { "kind": "tar.gz", - "sha256": "172ecf3c7d1f9d9fb16cd2a628869782670416ded0129e524a86751f961448c0", - "url": "http://static.rust-lang.org/dist/rustc-1.79.0-src.tar.gz" + "sha256": "b83f921cd3f321ff614f9c06a8b870d89299fc02888b48a5549683a36823474c", + "url": "http://static.rust-lang.org/dist/rustc-1.94.0-src.tar.gz" } ], "dependencies": [ "*:*:native/cmake", "*:*:native/make", + "*:*:native/ninja", "*:*:native/openssl", "*:*:native/pkgconf", "*:*:native/python@3.11", - "*:*:native/rust@1_78_0" + "*:*:native/rust@1_93_0" ], "build": { "env": [], @@ -24,11 +25,9 @@ "*:*:echo 'full-bootstrap = true' >> config.toml", "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'ninja = true' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", diff --git a/packages/native/rust@1_55_0.json b/packages/native/rust@1_55_0.json deleted file mode 100644 index 6364740..0000000 --- a/packages/native/rust@1_55_0.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_55_0", - "version": "1.55.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "b2379ac710f5f876ee3c3e03122fe33098d6765d371cac6c31b1b6fc8e43821e", - "url": "http://static.rust-lang.org/dist/rustc-1.55.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_54_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_55_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_56_1.json b/packages/native/rust@1_56_1.json deleted file mode 100644 index 146986f..0000000 --- a/packages/native/rust@1_56_1.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_56_1", - "version": "1.56.1", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "c3898dfaadaa193dc88ddbc5345946a163211b58621df1cfff70186b4fc79511", - "url": "http://static.rust-lang.org/dist/rustc-1.56.1-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_55_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_57_0.json b/packages/native/rust@1_57_0.json deleted file mode 100644 index eb4b554..0000000 --- a/packages/native/rust@1_57_0.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_57_0", - "version": "1.57.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "3546f9c3b91b1f8b8efd26c94d6b50312c08210397b4072ed2748e2bd4445c1a", - "url": "http://static.rust-lang.org/dist/rustc-1.57.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_56_1" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_58_1.json b/packages/native/rust@1_58_1.json deleted file mode 100644 index d9ab8d6..0000000 --- a/packages/native/rust@1_58_1.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_58_1", - "version": "1.58.1", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "a839afdd3625d6f3f3c4c10b79813675d1775c460d14be1feaf33a6c829c07c7", - "url": "http://static.rust-lang.org/dist/rustc-1.58.1-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_57_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_59_0.json b/packages/native/rust@1_59_0.json deleted file mode 100644 index 0e955f7..0000000 --- a/packages/native/rust@1_59_0.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_59_0", - "version": "1.59.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "a7c8eeaee85bfcef84c96b02b3171d1e6540d15179ff83dddd9eafba185f85f9", - "url": "http://static.rust-lang.org/dist/rustc-1.59.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_58_1" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_56_1/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_60_0.json b/packages/native/rust@1_60_0.json deleted file mode 100644 index 92b0299..0000000 --- a/packages/native/rust@1_60_0.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_60_0", - "version": "1.60.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "20ca826d1cf674daf8e22c4f8c4b9743af07973211c839b85839742314c838b7", - "url": "http://static.rust-lang.org/dist/rustc-1.60.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_59_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_61_0.json b/packages/native/rust@1_61_0.json deleted file mode 100644 index 92f7407..0000000 --- a/packages/native/rust@1_61_0.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_61_0", - "version": "1.61.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "ad0b4351675aa9abdf4c7e066613bd274c4391c5506db152983426376101daed", - "url": "http://static.rust-lang.org/dist/rustc-1.61.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_60_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_62_1.json b/packages/native/rust@1_62_1.json deleted file mode 100644 index 6a39e26..0000000 --- a/packages/native/rust@1_62_1.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_62_1", - "version": "1.62.1", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "72acbe6ffcd94f598382a7430b0d85ee8f679e6d0b27f3f566ed1c16c978133f", - "url": "http://static.rust-lang.org/dist/rustc-1.62.1-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_61_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_63_0.json b/packages/native/rust@1_63_0.json deleted file mode 100644 index 0f518ab..0000000 --- a/packages/native/rust@1_63_0.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_63_0", - "version": "1.63.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "1f9580295642ef5da7e475a8da2397d65153d3f2cb92849dbd08ed0effca99d0", - "url": "http://static.rust-lang.org/dist/rustc-1.63.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_62_1" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_64_0.json b/packages/native/rust@1_64_0.json deleted file mode 100644 index 287429f..0000000 --- a/packages/native/rust@1_64_0.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_64_0", - "version": "1.64.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "b3cd9f481e1a2901bf6f3808d30c69cc4ea80d93c4cc4e2ed52258b180381205", - "url": "http://static.rust-lang.org/dist/rustc-1.64.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_63_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_65_0.json b/packages/native/rust@1_65_0.json deleted file mode 100644 index 42a9b05..0000000 --- a/packages/native/rust@1_65_0.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_65_0", - "version": "1.65.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "5828bb67f677eabf8c384020582b0ce7af884e1c84389484f7f8d00dd82c0038", - "url": "http://static.rust-lang.org/dist/rustc-1.65.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_64_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_66_1.json b/packages/native/rust@1_66_1.json deleted file mode 100644 index 22161ae..0000000 --- a/packages/native/rust@1_66_1.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "package": "native/rust@1_66_1", - "version": "1.66.1", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "5b3c933a94c72187705d4ee293198babfdd09442f5937fbd685db3a81f4959ba", - "url": "http://static.rust-lang.org/dist/rustc-1.66.1-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_65_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'assertions = true' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:echo '[rust]' >> config.toml", - "*:*:echo 'debug = true' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_67_1.json b/packages/native/rust@1_67_1.json deleted file mode 100644 index 97b2dc8..0000000 --- a/packages/native/rust@1_67_1.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "package": "native/rust@1_67_1", - "version": "1.67.1", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "46483d3e5de85a3bd46f8e7a3ae1837496391067dbe713a25d3cf051b3d9ff6e", - "url": "http://static.rust-lang.org/dist/rustc-1.67.1-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_66_1" - ], - "patches": [ - "assembly.h.patch", - "Signals.h.patch" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:PATH=$PATH python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/cargo" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_68_2.json b/packages/native/rust@1_68_2.json deleted file mode 100644 index 0c84d7e..0000000 --- a/packages/native/rust@1_68_2.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_68_2", - "version": "1.68.2", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "93339c23f7cd4d0c45db58e18b4c6e16d6070f4277aad9d2492d23294bf32e96", - "url": "http://static.rust-lang.org/dist/rustc-1.68.2-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_67_1" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_69_0.json b/packages/native/rust@1_69_0.json deleted file mode 100644 index 941b8ad..0000000 --- a/packages/native/rust@1_69_0.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_69_0", - "version": "1.69.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "fb05971867ad6ccabbd3720279f5a94b99f61024923187b56bb5c455fa3cf60f", - "url": "http://static.rust-lang.org/dist/rustc-1.69.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_68_2" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_70_0.json b/packages/native/rust@1_70_0.json deleted file mode 100644 index 098ff22..0000000 --- a/packages/native/rust@1_70_0.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_70_0", - "version": "1.70.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "b2bfae000b7a5040e4ec4bbc50a09f21548190cb7570b0ed77358368413bd27c", - "url": "http://static.rust-lang.org/dist/rustc-1.70.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_69_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_71_1.json b/packages/native/rust@1_71_1.json deleted file mode 100644 index 825ed05..0000000 --- a/packages/native/rust@1_71_1.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_71_1", - "version": "1.71.1", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "6fa90d50d1d529a75f6cc349784de57d7ec0ba2419b09bde7d335c25bd4e472e", - "url": "http://static.rust-lang.org/dist/rustc-1.71.1-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_70_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j$NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_72_1.json b/packages/native/rust@1_72_1.json deleted file mode 100644 index efcbf1e..0000000 --- a/packages/native/rust@1_72_1.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_72_1", - "version": "1.72.1", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "7f48845f6a52cdbb5d63fb0528fd5f520eb443275b55f98e328159f86568f895", - "url": "http://static.rust-lang.org/dist/rustc-1.72.1-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_71_1" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_73_0.json b/packages/native/rust@1_73_0.json deleted file mode 100644 index e3bb0de..0000000 --- a/packages/native/rust@1_73_0.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_73_0", - "version": "1.73.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "96d62e6d1f2d21df7ac8acb3b9882411f9e7c7036173f7f2ede9e1f1f6b1bb3a", - "url": "http://static.rust-lang.org/dist/rustc-1.73.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_72_1" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_74_1.json b/packages/native/rust@1_74_1.json deleted file mode 100644 index 4a65dd8..0000000 --- a/packages/native/rust@1_74_1.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_74_1", - "version": "1.74.1", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "67db3e22fc9921c885baae5953ba144fc474cde29ec69ab56d43ce764206231d", - "url": "http://static.rust-lang.org/dist/rustc-1.74.1-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_73_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_75_0.json b/packages/native/rust@1_75_0.json deleted file mode 100644 index 66b85c9..0000000 --- a/packages/native/rust@1_75_0.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "package": "native/rust@1_75_0", - "version": "1.75.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "5b739f45bc9d341e2d1c570d65d2375591e22c2d23ef5b8a37711a0386abc088", - "url": "http://static.rust-lang.org/dist/rustc-1.75.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_74_1" - ], - "build": { - "env": [], - "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/1_60_0/assembly.h.patch", - "*:*:patch -p1 < $PATCH_DIR/rust/Signals.h.patch", - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_76_0.json b/packages/native/rust@1_76_0.json deleted file mode 100644 index dacf665..0000000 --- a/packages/native/rust@1_76_0.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "package": "native/rust@1_76_0", - "version": "1.76.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "9e5cff033a7f0d2266818982ad90e4d3e4ef8f8ee1715776c6e25073a136c021", - "url": "http://static.rust-lang.org/dist/rustc-1.76.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_75_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_77_1.json b/packages/native/rust@1_77_1.json deleted file mode 100644 index 1ec1c73..0000000 --- a/packages/native/rust@1_77_1.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "package": "native/rust@1_77_1", - "version": "1.77.1", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "ee106e4c569f52dba3b5b282b105820f86bd8f6b3d09c06b8dce82fb1bb3a4a1", - "url": "http://static.rust-lang.org/dist/rustc-1.77.1-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/patch", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_76_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_80_1.json b/packages/native/rust@1_80_1.json deleted file mode 100644 index af62a15..0000000 --- a/packages/native/rust@1_80_1.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "package": "native/rust@1_80_1", - "version": "1.80.1", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "2c0b8f643942dcb810cbcc50f292564b1b6e44db5d5f45091153996df95d2dc4", - "url": "http://static.rust-lang.org/dist/rustc-1.80.1-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_79_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_83_0.json b/packages/native/rust@1_83_0.json deleted file mode 100644 index dbc24b9..0000000 --- a/packages/native/rust@1_83_0.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "package": "native/rust@1_83_0", - "version": "1.83.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "722d773bd4eab2d828d7dd35b59f0b017ddf9a97ee2b46c1b7f7fac5c8841c6e", - "url": "http://static.rust-lang.org/dist/rustc-1.83.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_82_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_84_1.json b/packages/native/rust@1_84_1.json deleted file mode 100644 index abc8efe..0000000 --- a/packages/native/rust@1_84_1.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "package": "native/rust@1_84_1", - "version": "1.84.1", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "5e2fb5d49628a549f7671b2ccf9855ab379fd442831a7c2af16e0cdcc31bb375", - "url": "http://static.rust-lang.org/dist/rustc-1.84.1-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_83_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_85_1.json b/packages/native/rust@1_85_1.json deleted file mode 100644 index d4fdd73..0000000 --- a/packages/native/rust@1_85_1.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "package": "native/rust@1_85_1", - "version": "1.85.1", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "0f2995ca083598757a8d9a293939e569b035799e070f419a686b0996fb94238a", - "url": "http://static.rust-lang.org/dist/rustc-1.85.1-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_84_1" - ], - "build": { - "env": [], - "steps": [ - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_86_0.json b/packages/native/rust@1_86_0.json deleted file mode 100644 index e84f2c7..0000000 --- a/packages/native/rust@1_86_0.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "package": "native/rust@1_86_0", - "version": "1.86.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "022a27286df67900a044d227d9db69d4732ec3d833e4ffc259c4425ed71eed80", - "url": "http://static.rust-lang.org/dist/rustc-1.86.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_85_1" - ], - "build": { - "env": [], - "steps": [ - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_87_0.json b/packages/native/rust@1_87_0.json deleted file mode 100644 index 5b81485..0000000 --- a/packages/native/rust@1_87_0.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "package": "native/rust@1_87_0", - "version": "1.87.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "149bb9fd29be592da4e87900fc68f0629a37bf6850b46339dd44434c04fd8e76", - "url": "http://static.rust-lang.org/dist/rustc-1.87.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_86_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_88_0.json b/packages/native/rust@1_88_0.json deleted file mode 100644 index da5989f..0000000 --- a/packages/native/rust@1_88_0.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "package": "native/rust@1_88_0", - "version": "1.88.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "3a97544434848ae3d193d1d6bc83d6f24cb85c261ad95f955fde47ec64cfcfbe", - "url": "http://static.rust-lang.org/dist/rustc-1.88.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_87_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_89_0.json b/packages/native/rust@1_89_0.json deleted file mode 100644 index 068833f..0000000 --- a/packages/native/rust@1_89_0.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "package": "native/rust@1_89_0", - "version": "1.89.0", - "type": "native", - "download": [ - { - "kind": "tar.gz", - "sha256": "2576f9f440dd99b0151bd28f59aa0ac6102d5c4f3ed4ef8a810c8dd05057250d", - "url": "http://static.rust-lang.org/dist/rustc-1.89.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/openssl", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust@1_88_0" - ], - "build": { - "env": [], - "steps": [ - "*:*:echo '[build]' > config.toml", - "*:*:echo 'full-bootstrap = true' >> config.toml", - "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'extended = true' >> config.toml", - "*:*:echo 'tools = [\"cargo\"]' >> config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", - "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp -a build/*/stage2-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" - ] - } -} \ No newline at end of file diff --git a/packages/native/rust@1_54_0.json b/packages/native/rust@1_90_0-mrustc.json similarity index 55% rename from packages/native/rust@1_54_0.json rename to packages/native/rust@1_90_0-mrustc.json index 74a2a3d..45b002c 100644 --- a/packages/native/rust@1_54_0.json +++ b/packages/native/rust@1_90_0-mrustc.json @@ -1,25 +1,27 @@ { - "package": "native/rust@1_54_0", - "version": "1.54.0", + "package": "native/rust@1_90_0-mrustc", + "version": "1.90.0-mrustc", "type": "native", "download": [ { - "kind": "tar.gz", - "sha256": "d3d3b84a100e71628afecf1125dbaa9bfc54ef9578c4fd81d75dca34c96f2565", - "url": "http://github.com/thepowersgang/mrustc/archive/06b87d1af49d2db3bd850fdee8888055dd540dd1.tar.gz" + "kind": "git", + "sha256": "9f5ff518a49038d7ae51dadd1658231b61f7dced", + "url": "http://github.com/thepowersgang/mrustc.git" }, { "kind": "blob", - "path": "./rustc-1.54.0-src.tar.gz", - "sha256": "ac8511633e9b5a65ad030a1a2e5bdaa841fdfe3132f2baaa52cc04e71c6c6976", - "url": "http://static.rust-lang.org/dist/rustc-1.54.0-src.tar.gz" + "path": "./rustc-1.90.0-src.tar.gz", + "sha256": "799a9f9cba4ed5351e071048bcf6b5560755d9009648def33a407dd4961f9b7e", + "url": "http://static.rust-lang.org/dist/rustc-1.90.0-src.tar.gz" } ], "dependencies": [ "*:*:native/cmake", "*:*:native/make", + "*:*:native/openssl", "*:*:native/patch", "*:*:native/perl", + "*:*:native/pkgconf", "*:*:native/zlib" ], "build": { @@ -28,26 +30,22 @@ "linux_arm64:*:RUSTC_TARGET=aarch64-unknown-linux-gnu" ], "steps": [ - "*:*:patch -p1 < $PATCH_DIR/rust/codegen_c.cpp.patch", - "darwin_arm64:*:sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=aarch64/' script-overrides/stable-1.54.0-macos/build_std.txt", - "linux_arm64:*:sed -i.bak 's/STD_ENV_ARCH=[a-zA-Z0-9_]*/STD_ENV_ARCH=aarch64/' script-overrides/stable-1.54.0-linux/build_std.txt", - "*:*:rm script-overrides/stable-1.54.0-*/*.bak || true", - "*:*:sed -i.bak 's/^make$/make $@/' build-1.54.0.sh", + "*:*:sed -i.bak 's/^make$/make $@/' build-1.90.0.sh", "darwin_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-apple-darwin/RUSTC_TARGET ?= aarch64-apple-darwin/' run_rustc/Makefile", "linux_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-unknown-linux-gnu/RUSTC_TARGET ?= aarch64-unknown-linux-gnu/' run_rustc/Makefile", "linux_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-unknown-linux-gnu/RUSTC_TARGET ?= aarch64-unknown-linux-gnu/' ./minicargo.mk", - "*:*:echo >> build-1.54.0.sh", - "*:*:echo make -C run_rustc >> build-1.54.0.sh", - "*:*:env -i CXXFLAGS_EXTRA=\"$CFLAGS\" LINKFLAGS_EXTRA=\"$LDFLAGS\" PATH=$PATH PARLEVEL=$NUM_CORES ./build-1.54.0.sh -j$NUM_CORES", + "*:*:echo >> build-1.90.0.sh", + "*:*:echo make -C run_rustc >> build-1.90.0.sh", + "*:*:env -i CXXFLAGS_EXTRA=\"$CFLAGS\" LINKFLAGS_EXTRA=\"$LDFLAGS\" PATH=$PATH PARLEVEL=$NUM_CORES ./build-1.90.0.sh -j$NUM_CORES", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib", - "*:*:cp -a run_rustc/output-1.54.0/prefix/bin/* $STAGING_DIR$NATIVEPREFIX/bin", - "linux_*:*:cp -a run_rustc/output-1.54.0/prefix/lib/rustlib/*/lib/*.so $STAGING_DIR$NATIVEPREFIX/lib", - "*:*:cp -a run_rustc/output-1.54.0/prefix/lib/* $STAGING_DIR$NATIVEPREFIX/lib", + "*:*:cp -a run_rustc/output-1.90.0/prefix/bin/* $STAGING_DIR$NATIVEPREFIX/bin", + "linux_*:*:cp -a run_rustc/output-1.90.0/prefix/lib/rustlib/*/lib/*.so $STAGING_DIR$NATIVEPREFIX/lib", + "*:*:cp -a run_rustc/output-1.90.0/prefix/lib/* $STAGING_DIR$NATIVEPREFIX/lib", "*:none:# FIXME bad dylib paths embedded in the rustc binary, forcing install_name_tool dark magic", - "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-rustc/aarch64-apple-darwin/release/deps/librustc_driver.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib $STAGING_DIR$NATIVEPREFIX/bin/rustc_binary", - "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/libstd.dylib $STAGING_DIR$NATIVEPREFIX/bin/rustc_binary", - "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.54.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/libstd.dylib $STAGING_DIR$NATIVEPREFIX/lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib" + "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.90.0/build-rustc/aarch64-apple-darwin/release/deps/librustc_driver.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib $STAGING_DIR$NATIVEPREFIX/bin/rustc_binary", + "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.90.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/libstd.dylib $STAGING_DIR$NATIVEPREFIX/bin/rustc_binary", + "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.90.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/libstd.dylib $STAGING_DIR$NATIVEPREFIX/lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib" ] } } \ No newline at end of file diff --git a/packages/native/rust@1_90_0.json b/packages/native/rust@1_90_0.json index 34e0a80..bb54cb0 100644 --- a/packages/native/rust@1_90_0.json +++ b/packages/native/rust@1_90_0.json @@ -12,24 +12,16 @@ "dependencies": [ "*:*:native/cmake", "*:*:native/make", + "*:*:native/ninja", "*:*:native/openssl", "*:*:native/pkgconf", "*:*:native/python@3.11", - "*:*:native/rust@1_89_0" + "*:*:native/rust@1_90_0-mrustc" ], "build": { "env": [], "steps": [ "*:*:echo '[build]' > config.toml", - "*:aarch64-apple-darwin:echo 'target = [\"aarch64-apple-darwin\"]' >> config.toml", - "*:x86_64-apple-darwin:echo 'target = [\"x86_64-apple-darwin\"]' >> config.toml", - "*:aarch64-apple-ios:echo 'target = [\"aarch64-apple-ios\"]' >> config.toml", - "*:aarch64-apple-ios-simulator:echo 'target = [\"aarch64-apple-ios-sim\"]' >> config.toml", - "*:x86_64-linux-gnu:echo 'target = [\"x86_64-unknown-linux-gnu\"]' >> config.toml", - "*:aarch64-linux-gnu:echo 'target = [\"aarch64-unknown-linux-gnu\"]' >> config.toml", - "*:aarch64-linux-android:echo 'target = [\"aarch64-linux-android\"]' >> config.toml", - "*:x86_64-linux-android:echo 'target = [\"x86_64-linux-android\"]' >> config.toml", - "*:armv7a-linux-androideabi:echo 'target = [\"armv7-linux-androideabi\"]' >> config.toml", "*:*:echo 'full-bootstrap = true' >> config.toml", "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", @@ -37,7 +29,7 @@ "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'ninja = true' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", diff --git a/packages/native/rust@1_82_0.json b/packages/native/rust@1_91_0.json similarity index 79% rename from packages/native/rust@1_82_0.json rename to packages/native/rust@1_91_0.json index c572451..f9b26c4 100644 --- a/packages/native/rust@1_82_0.json +++ b/packages/native/rust@1_91_0.json @@ -1,21 +1,22 @@ { - "package": "native/rust@1_82_0", - "version": "1.82.0", + "package": "native/rust@1_91_0", + "version": "1.91.0", "type": "native", "download": [ { "kind": "tar.gz", - "sha256": "7c53f4509eda184e174efa6ba7d5eeb586585686ce8edefc781a2b11a7cf512a", - "url": "http://static.rust-lang.org/dist/rustc-1.82.0-src.tar.gz" + "sha256": "327f528151753013f0a2b2c7f48955a033d718f269a4bc586314d675d0d43e8a", + "url": "http://static.rust-lang.org/dist/rustc-1.91.0-src.tar.gz" } ], "dependencies": [ "*:*:native/cmake", "*:*:native/make", + "*:*:native/ninja", "*:*:native/openssl", "*:*:native/pkgconf", "*:*:native/python@3.11", - "*:*:native/rust@1_81_0" + "*:*:native/rust@1_90_0" ], "build": { "env": [], @@ -28,7 +29,7 @@ "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'ninja = true' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", diff --git a/packages/native/rust@1_78_0.json b/packages/native/rust@1_92_0.json similarity index 79% rename from packages/native/rust@1_78_0.json rename to packages/native/rust@1_92_0.json index 44525fd..0dfb12d 100644 --- a/packages/native/rust@1_78_0.json +++ b/packages/native/rust@1_92_0.json @@ -1,21 +1,22 @@ { - "package": "native/rust@1_78_0", - "version": "1.78.0", + "package": "native/rust@1_92_0", + "version": "1.92.0", "type": "native", "download": [ { "kind": "tar.gz", - "sha256": "ff544823a5cb27f2738128577f1e7e00ee8f4c83f2a348781ae4fc355e91d5a9", - "url": "http://static.rust-lang.org/dist/rustc-1.78.0-src.tar.gz" + "sha256": "9e0d2ca75c7e275fdc758255bf4b03afb3d65d1543602746907c933b6901c3b8", + "url": "http://static.rust-lang.org/dist/rustc-1.92.0-src.tar.gz" } ], "dependencies": [ "*:*:native/cmake", "*:*:native/make", + "*:*:native/ninja", "*:*:native/openssl", "*:*:native/pkgconf", "*:*:native/python@3.11", - "*:*:native/rust@1_77_1" + "*:*:native/rust@1_91_0" ], "build": { "env": [], @@ -28,7 +29,7 @@ "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'ninja = true' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", diff --git a/packages/native/rust@1_81_0.json b/packages/native/rust@1_93_0.json similarity index 79% rename from packages/native/rust@1_81_0.json rename to packages/native/rust@1_93_0.json index df46d59..0dff7e9 100644 --- a/packages/native/rust@1_81_0.json +++ b/packages/native/rust@1_93_0.json @@ -1,21 +1,22 @@ { - "package": "native/rust@1_81_0", - "version": "1.81.0", + "package": "native/rust@1_93_0", + "version": "1.93.0", "type": "native", "download": [ { "kind": "tar.gz", - "sha256": "872448febdff32e50c3c90a7e15f9bb2db131d13c588fe9071b0ed88837ccfa7", - "url": "http://static.rust-lang.org/dist/rustc-1.81.0-src.tar.gz" + "sha256": "69112bd83c321943ffc390b7db2f59ef3febb95dac700f67c2156fbf6b50a705", + "url": "http://static.rust-lang.org/dist/rustc-1.93.0-src.tar.gz" } ], "dependencies": [ "*:*:native/cmake", "*:*:native/make", + "*:*:native/ninja", "*:*:native/openssl", "*:*:native/pkgconf", "*:*:native/python@3.11", - "*:*:native/rust@1_80_1" + "*:*:native/rust@1_92_0" ], "build": { "env": [], @@ -28,7 +29,7 @@ "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = false' >> config.toml", + "*:*:echo 'ninja = true' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", diff --git a/packages/rust-hello-world.json b/packages/rust-hello-world.json new file mode 100644 index 0000000..7e1243a --- /dev/null +++ b/packages/rust-hello-world.json @@ -0,0 +1,24 @@ +{ + "package": "rust-hello-world", + "version": "0.0.0", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "e0fa23f1a3cb1eb1407165bd2fc36d2f6e6ad728", + "url": "https://github.com/meta-rust/rust-hello-world.git" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/rust", + "*:*:rust_std" + ], + "build": { + "steps": [ + "*:*:cargo build --target $RUST_TRIPLET", + "*:*:$SHOULD_BUILD make -j$NUM_CORES $build_opts", + "*:*:$SHOULD_BUILD make -j$NUM_CORES install DESTDIR=$STAGING_DIR prefix=$PREFIX exec-prefix=$PREFIX" + ] + } +} \ No newline at end of file diff --git a/packages/rust_std.json b/packages/rust_std.json new file mode 100644 index 0000000..709c90d --- /dev/null +++ b/packages/rust_std.json @@ -0,0 +1,42 @@ +{ + "package": "rust-std", + "version": "1.94.0", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "b83f921cd3f321ff614f9c06a8b870d89299fc02888b48a5549683a36823474c", + "url": "http://static.rust-lang.org/dist/rustc-1.94.0-src.tar.gz" + } + ], + "dependencies": [ + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust", + "*:*-linux-android*:native/android_ndk" + ], + "build": { + "env": [], + "steps": [ + "*:*:mkdir -p build", + "*:*:echo '[build]' > build/config.toml", + "*:*:echo 'full-bootstrap = true' >> build/config.toml", + "*:*:echo 'vendor = true' >> build/config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> build/config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> build/config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = true' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:echo 'target = [\"'$RUST_TRIPLET'\"]' >> build/config.toml", + "*:*:echo '[target.'$RUST_TRIPLET']' >> build/config.toml", + "*:*:echo 'linker = \"'$CC'\"' >> build/config.toml", + "*:*:python3 ./x.py build --stage 2 library/std --target $RUST_TRIPLET", + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET", + "*:*:cp -a build/*/stage2/lib/rustlib/$RUST_TRIPLET/lib $STAGING_DIR$NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET/" + ] + } +} \ No newline at end of file diff --git a/patches/rust/1_55_0/assembly.h.patch b/patches/rust/1_55_0/assembly.h.patch deleted file mode 100644 index 8800633..0000000 --- a/patches/rust/1_55_0/assembly.h.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/src/llvm-project/compiler-rt/lib/builtins/assembly.h 2021-07-12 08:53:30.000000000 +0200 -+++ b/src/llvm-project/compiler-rt/lib/builtins/assembly.h 2025-07-08 21:51:23.202034452 +0200 -@@ -249,9 +249,10 @@ - .globl name SEPARATOR \ - SYMBOL_IS_FUNC(name) SEPARATOR \ - DECLARE_SYMBOL_VISIBILITY(name) SEPARATOR \ -+ name: SEPARATOR \ - CFI_START SEPARATOR \ - DECLARE_FUNC_ENCODING \ -- name: SEPARATOR BTI_C -+ BTI_C - - #define DEFINE_COMPILERRT_FUNCTION_ALIAS(name, target) \ - .globl SYMBOL_NAME(name) SEPARATOR \ diff --git a/patches/rust/1_56_1/assembly.h.patch b/patches/rust/1_56_1/assembly.h.patch deleted file mode 100644 index 6a00857..0000000 --- a/patches/rust/1_56_1/assembly.h.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/src/llvm-project/compiler-rt/lib/builtins/assembly.h 2025-07-10 12:41:44.469384349 +0200 -+++ b/src/llvm-project/compiler-rt/lib/builtins/assembly.h 2025-07-10 12:46:03.694440678 +0200 -@@ -254,9 +254,10 @@ - .globl name SEPARATOR \ - SYMBOL_IS_FUNC(name) SEPARATOR \ - DECLARE_SYMBOL_VISIBILITY_UNMANGLED(name) SEPARATOR \ -+ name: SEPARATOR \ - CFI_START SEPARATOR \ - DECLARE_FUNC_ENCODING \ -- name: SEPARATOR BTI_C -+ BTI_C - - #define DEFINE_COMPILERRT_FUNCTION_ALIAS(name, target) \ - .globl SYMBOL_NAME(name) SEPARATOR \ \ No newline at end of file diff --git a/patches/rust/1_60_0/assembly.h.patch b/patches/rust/1_60_0/assembly.h.patch deleted file mode 100644 index c60b4f6..0000000 --- a/patches/rust/1_60_0/assembly.h.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/src/llvm-project/compiler-rt/lib/builtins/assembly.h 2025-07-10 12:41:44.474103047 +0200 -+++ b/src/llvm-project/compiler-rt/lib/builtins/assembly.h 2025-07-10 12:46:14.327250160 +0200 -@@ -260,9 +260,10 @@ - .globl name SEPARATOR \ - SYMBOL_IS_FUNC(name) SEPARATOR \ - DECLARE_SYMBOL_VISIBILITY_UNMANGLED(name) SEPARATOR \ -+ name: SEPARATOR \ - CFI_START SEPARATOR \ - DECLARE_FUNC_ENCODING \ -- name: SEPARATOR BTI_C -+ BTI_C - - #define DEFINE_COMPILERRT_FUNCTION_ALIAS(name, target) \ - .globl SYMBOL_NAME(name) SEPARATOR \ \ No newline at end of file diff --git a/patches/rust/Signals.h.patch b/patches/rust/Signals.h.patch deleted file mode 100644 index cde2801..0000000 --- a/patches/rust/Signals.h.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/src/llvm-project/llvm/include/llvm/Support/Signals.h 2025-07-31 16:36:28.290100587 +0200 -+++ b/src/llvm-project/llvm/include/llvm/Support/Signals.h 2025-07-31 16:38:14.680982092 +0200 -@@ -15,6 +15,7 @@ - #define LLVM_SUPPORT_SIGNALS_H - - #include -+#include - - namespace llvm { - class StringRef; \ No newline at end of file diff --git a/patches/rust/codegen_c.cpp.patch b/patches/rust/codegen_c.cpp.patch deleted file mode 100644 index b392636..0000000 --- a/patches/rust/codegen_c.cpp.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- a/src/trans/codegen_c.cpp 2025-07-08 00:17:10.022769383 +0200 -+++ b/src/trans/codegen_c.cpp 2025-07-08 00:17:18.404645999 +0200 -@@ -1297,8 +1297,14 @@ - // HACK: Work around [https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117423] by disabling an optimisation stage - if( opt.opt_level > 0 ) - { -+ #ifndef __clang__ // clang doesn't have this option. - args.push_back("-fno-tree-sra"); -+ #endif - } -+ #ifdef __APPLE__ -+ args.push_back("-framework"); -+ args.push_back("Security"); -+ #endif - if( opt.emit_debug_info ) - { - args.push_back("-g"); \ No newline at end of file diff --git a/sources.json b/sources.json index 38e9873..5c3edbb 100644 --- a/sources.json +++ b/sources.json @@ -5,6 +5,11 @@ "4fc570f91d9d8d843ab32d2198a5c064538d8ffd" ] }, + "http://github.com/thepowersgang/mrustc.git": { + "refs": [ + "9f5ff518a49038d7ae51dadd1658231b61f7dced" + ] + }, "http://gitlab.torproject.org/tpo/core/tor.git": { "refs": [ "106dcfa18c1a9539cb97337e57954ff89685840e" @@ -923,14 +928,14 @@ "751b09390996163348612f0b106114256305ee40" ] }, - "https://github.com/nodejs/node.git": { + "https://github.com/meta-rust/rust-hello-world.git": { "refs": [ - "1da054d99bb16d35c54d759f36ccc125b90070bd" + "e0fa23f1a3cb1eb1407165bd2fc36d2f6e6ad728" ] }, - "https://github.com/pypa/build.git": { + "https://github.com/nodejs/node.git": { "refs": [ - "54f238d1664124e06a68c6c22fd5b1418fa5feb2" + "1da054d99bb16d35c54d759f36ccc125b90070bd" ] }, "https://github.com/pypa/flit.git": { @@ -938,11 +943,6 @@ "92c9486a543c4db266e3908bffc984060b8466af" ] }, - "https://github.com/pypa/installer.git": { - "refs": [ - "b1d39180f8548820d09ce992dfadff0a42242c48" - ] - }, "https://github.com/pypa/packaging": { "refs": [ "3b77a26f5a27473ad3b08194d773f325d018a2d0" From 0bd12c7b6b44427c93baea11f0616ca2a9bf3dc7 Mon Sep 17 00:00:00 2001 From: Agatha-luna Date: Mon, 6 Apr 2026 12:34:09 +0530 Subject: [PATCH 109/200] add sqlite3 (3350500, 3510100) and curl packages --- packages/curl.json | 35 ++++++++++++++++++++++++++ packages/sqlite3@3350500.json | 46 +++++++++++++++++++++++++++++++++++ packages/sqlite3@3510100.json | 41 +++++++++++++++++++++++++++++++ 3 files changed, 122 insertions(+) create mode 100644 packages/curl.json create mode 100644 packages/sqlite3@3350500.json create mode 100644 packages/sqlite3@3510100.json diff --git a/packages/curl.json b/packages/curl.json new file mode 100644 index 0000000..f49bc20 --- /dev/null +++ b/packages/curl.json @@ -0,0 +1,35 @@ +{ + "package": "curl", + "version": "8.15.0", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "d85cfc79dc505ff800cb1d321a320183035011fa08cb301356425d86be8fc53c", + "url": "https://curl.se/download/curl-8.15.0.tar.gz" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/make", + "*:*:openssl", + "*:*:zlib" + ], + "build": { + "env": [ + "*:*:config_opts=--with-openssl --with-zlib --without-libpsl --disable-shared --enable-static --host=$HOST --prefix=$PREFIX" + , + "*:*-linux-gnu*:config_opts=--with-openssl=$PREFIX --with-zlib=$PREFIX --without-libpsl --disable-shared --enable-static --host=$HOST --prefix=$PREFIX", + "*:*-linux-gnu*:PKG_CONFIG=/bin/false", + "*:*-linux-gnu*:LIBS=$LIBS -ldl -lpthread", + "*:*-mingw*:config_opts=--with-openssl=$PREFIX --with-zlib=$PREFIX --without-libpsl --disable-shared --enable-static --disable-ldap --host=$HOST --prefix=$PREFIX", + "*:*-mingw*:PKG_CONFIG=/bin/false", + "*:*-mingw*:LIBS=$LIBS -lcrypt32 -lbcrypt -lws2_32 -lgdi32 -liphlpapi" + ], + "steps": [ + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/sqlite3@3350500.json b/packages/sqlite3@3350500.json new file mode 100644 index 0000000..0a58c53 --- /dev/null +++ b/packages/sqlite3@3350500.json @@ -0,0 +1,46 @@ +{ + "package": "sqlite3", + "version": "3350500", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "f52b72a5c319c3e516ed7a92e123139a6e87af08a2dc43d7757724f6132e6db0", + "url": "https://www.sqlite.org/2021/sqlite-autoconf-3350500.tar.gz" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/make" + ], + "build": { + "env": [ + "*:*:CFLAGS=$CFLAGS -fPIC -O2 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1", + "*:*:CPPFLAGS=$CPPFLAGS -I$PREFIX/include", + "*:*:LDFLAGS=$LDFLAGS -L$PREFIX/lib", + "*:*:config_opts=--disable-shared --enable-static --enable-threadsafe --prefix=$PREFIX", + "*:*-apple-darwin:config_opts=$config_opts --host=$HOST", + "*:*-android*:config_opts=$config_opts --host=$HOST", + "*:*-linux-gnu*:config_opts=$config_opts --host=$HOST", + "*:*-mingw*:config_opts=$config_opts --host=$HOST", + "*:*-apple-ios*:config_opts=$config_opts --host=$HOST --build=x86_64-apple-darwin --disable-load-extension", + "*:*:CC=$CC", + "*:*:CXX=$CXX", + "*:*:AR=$AR", + "*:*:RANLIB=$RANLIB" + ], + "steps": [ + "*:*:./configure $config_opts", + "*:*-android*:make CC=\"$HOST$ANDROID_API-clang\" CXX=\"$HOST$ANDROID_API-clang++\" AR=\"$HOST-ar\" RANLIB=\"$HOST-ranlib\" -j$NUM_CORES", + "*:*-apple-darwin:make -j$NUM_CORES", + "*:*-mingw*:make CC=\"$HOST-gcc\" AR=\"$HOST-ar\" RANLIB=\"$HOST-ranlib\" -j$NUM_CORES", + "*:*-apple-ios*:make CC=\"xcrun --sdk iphoneos clang\" CXX=\"xcrun --sdk iphoneos clang++\" AR=\"xcrun --sdk iphoneos ar\" RANLIB=\"xcrun --sdk iphoneos ranlib\" libsqlite3.la sqlite3.pc -j$NUM_CORES", + "*:*-linux-gnu*:make -j$NUM_CORES", + "*:*-android*:make DESTDIR=$STAGING_DIR install", + "*:*-apple-darwin:make DESTDIR=$STAGING_DIR install", + "*:*-mingw*:make DESTDIR=$STAGING_DIR install", + "*:*-apple-ios*:make DESTDIR=$STAGING_DIR install-libLTLIBRARIES install-pkgconfigDATA install-includeHEADERS", + "*:*-linux-gnu*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/sqlite3@3510100.json b/packages/sqlite3@3510100.json new file mode 100644 index 0000000..22e2cf4 --- /dev/null +++ b/packages/sqlite3@3510100.json @@ -0,0 +1,41 @@ +{ + "package": "sqlite3", + "version": "3510100", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "4f2445cd70479724d32ad015ec7fd37fbb6f6130013bd4bfbc80c32beb42b7e0", + "url": "https://www.sqlite.org/2025/sqlite-autoconf-3510100.tar.gz" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/make" + ], + "build": { + "env": [ + "*:*:CFLAGS=$CFLAGS -fPIC -O2 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1", + "*:*:CPPFLAGS=$CPPFLAGS -I$PREFIX/include", + "*:*:LDFLAGS=$LDFLAGS -L$PREFIX/lib", + "*:*:config_opts=--disable-shared --enable-static --enable-threadsafe --prefix=$PREFIX", + "*:*-apple-darwin:config_opts=$config_opts --host=$HOST", + "*:*-android*:config_opts=$config_opts --host=$HOST", + "*:*-linux-gnu*:config_opts=$config_opts --host=$HOST", + "*:*-mingw*:config_opts=$config_opts --host=$HOST", + "*:*-apple-ios*:config_opts=$config_opts --host=$HOST --build=x86_64-apple-darwin --disable-load-extension", + "*:*:CC=$CC", + "*:*:CXX=$CXX", + "*:*:AR=$AR", + "*:*:RANLIB=$RANLIB" + ], + "steps": [ + "*:*:./configure $config_opts", + "*:*-android*:make CC=\"$HOST$ANDROID_API-clang\" CXX=\"$HOST$ANDROID_API-clang++\" AR=\"$HOST-ar\" RANLIB=\"$HOST-ranlib\" -j$NUM_CORES", + "*:*-mingw*:make CC=\"$HOST-gcc\" AR=\"$HOST-ar\" RANLIB=\"$HOST-ranlib\" -j$NUM_CORES", + "*:*-apple-ios*:make CC=\"xcrun --sdk iphoneos clang\" CXX=\"xcrun --sdk iphoneos clang++\" AR=\"xcrun --sdk iphoneos ar\" RANLIB=\"xcrun --sdk iphoneos ranlib\" -j$NUM_CORES", + "*:*-linux-gnu*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file From 711c108fefa8b2d99777e04214ac8e1d51446112 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 5 May 2026 13:42:46 -0400 Subject: [PATCH 110/200] fix: protobuf build --- packages/protobuf.json | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/packages/protobuf.json b/packages/protobuf.json index afc76b3..d65f41b 100644 --- a/packages/protobuf.json +++ b/packages/protobuf.json @@ -10,7 +10,14 @@ } ], "dependencies": [ - "*:*:native/_" + "*:*:native/_", + "*:*:native/protobuf", + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/config", + "*:*:native/m4", + "*:*:native/make", + "*:*:native/perl" ], "patches": [ "visibility.patch" @@ -20,24 +27,20 @@ "*:*:CXXFLAGS=$CXXFLAGS -std=c++11", "*:*:config_opts=--host=$HOST --prefix=$PREFIX", "*:*:config_opts=$config_opts --disable-shared --with-protoc=$NATIVEPREFIX/bin/protoc", - "*:*-linux-gnu:config_opts=$config_opts --with-pic", - "*:*:SHOULD_BUILD=echo", - "*:*-linux-gnu:SHOULD_BUILD=", - "*:*-w64-mingw32:SHOULD_BUILD=", - "*:*-apple-darwin:SHOULD_BUILD=" + "*:*-linux-gnu:config_opts=$config_opts --with-pic" ], "steps": [ - "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.guess config.guess", - "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.sub config.sub", - "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", - "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", - "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", - "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", - "*:*:$SHOULD_BUILD patch -p0 < $PATCH_DIR/protobuf/visibility.patch", - "*:*:$SHOULD_BUILD ./configure $config_opts", - "*:*:$SHOULD_BUILD make -j$NUM_CORES -C src libprotobuf.la", - "*:*:$SHOULD_BUILD make -j$NUM_CORES -C src DESTDIR=$STAGING_DIR install-libLTLIBRARIES install-nobase_includeHEADERS", - "*:*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install-pkgconfigDATA" + "*:*:cp -f $NATIVEPREFIX/share/config/config.guess config.guess", + "*:*:cp -f $NATIVEPREFIX/share/config/config.sub config.sub", + "*:*:cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", + "*:*:cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", + "*:*:cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", + "*:*:cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", + "*:*:patch -p0 < $PATCH_DIR/protobuf/visibility.patch", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES -C src libprotobuf.la", + "*:*:make -j$NUM_CORES -C src DESTDIR=$STAGING_DIR install-libLTLIBRARIES install-nobase_includeHEADERS", + "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-pkgconfigDATA" ] } } \ No newline at end of file From 7b59e7a739396a4f28b41904c80bec560f73bd47 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 6 May 2026 13:41:49 -0400 Subject: [PATCH 111/200] minor build fixes --- pack/build.go | 10 +++++----- pack/main.go | 10 +++++----- utils/git.go | 6 +++--- utils/remove_all.go | 22 ++++++++++++++++++++++ 4 files changed, 35 insertions(+), 13 deletions(-) create mode 100644 utils/remove_all.go diff --git a/pack/build.go b/pack/build.go index 0a1bbab..20628ec 100644 --- a/pack/build.go +++ b/pack/build.go @@ -134,13 +134,13 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { envPath := h.GetEnvPath() if entries, err := os.ReadDir(envPath); err == nil { for _, entry := range entries { - os.RemoveAll(filepath.Join(envPath, entry.Name())) + utils.RemoveAll(filepath.Join(envPath, entry.Name())) } } nativeEnvPath := h.GetNativeEnvPath() if entries, err := os.ReadDir(nativeEnvPath); err == nil { for _, entry := range entries { - os.RemoveAll(filepath.Join(nativeEnvPath, entry.Name())) + utils.RemoveAll(filepath.Join(nativeEnvPath, entry.Name())) } } os.MkdirAll(envPath, 0755) @@ -149,8 +149,8 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { } buildPath := p.GenerateBuildPath(h, "work") stagingPath := p.GenerateBuildPath(h, "staging") - os.RemoveAll(buildPath) - os.RemoveAll(stagingPath) + utils.RemoveAll(buildPath) + utils.RemoveAll(stagingPath) os.MkdirAll(buildPath, 0755) os.MkdirAll(stagingPath, 0755) // defer os.RemoveAll(buildPath) @@ -278,7 +278,7 @@ func (p *Package) StartShell(h *host.Host) { log.Printf("Starting shell for package: %s for host %s", p.Package, h.Triplet) buildPath := p.GenerateBuildPath(h, "work") - os.RemoveAll(buildPath) + utils.RemoveAll(buildPath) os.MkdirAll(buildPath, 0755) log.Printf("Extracting source for package: %s", p.Package) diff --git a/pack/main.go b/pack/main.go index 382b79e..b229784 100644 --- a/pack/main.go +++ b/pack/main.go @@ -1,9 +1,9 @@ package pack import ( - "maps" "encoding/json" "fmt" + "maps" "os" "path/filepath" "runtime" @@ -12,6 +12,7 @@ import ( "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" + "github.com/mrcyjanek/simplybs/utils" "github.com/mrcyjanek/simplybs/utils/ifstring" ) @@ -216,10 +217,9 @@ func Cleanup() { for k, _ := range keepFilesCopy { if k[len(k)-len(".tar.gz"):] == ".tar.gz" { keepFiles[k[:len(k)-len(".tar.gz")]+"_native.tar.gz"] = true - } + } } - - + for _, download := range pkg.Download { sourcePath := pkg.GenerateSourceBuildPath(download) relPath, err := filepath.Rel(buildlibDir, sourcePath) @@ -274,7 +274,7 @@ func Cleanup() { for _, dir := range []string{workDir, stagingDir, envDir} { if _, err := os.Stat(dir); !os.IsNotExist(err) { fmt.Printf("Removing directory: %s\n", filepath.Base(dir)) - os.RemoveAll(dir) + utils.RemoveAll(dir) } } } diff --git a/utils/git.go b/utils/git.go index 3794618..a36137e 100644 --- a/utils/git.go +++ b/utils/git.go @@ -15,7 +15,7 @@ import ( func verifyBundleHasRef(bundlePath string, refs []string) bool { tempVerifyDir := bundlePath + ".verify.tmp" - defer os.RemoveAll(tempVerifyDir) + defer RemoveAll(tempVerifyDir) os.MkdirAll(tempVerifyDir, 0755) @@ -103,7 +103,7 @@ func createBundleFromRepo(bundlePath, url string, refs []string) error { log.Printf("Creating bundle from repository %s with %d refs", url, len(refs)) tempDir := bundlePath + ".clone.tmp" - defer os.RemoveAll(tempDir) + defer RemoveAll(tempDir) log.Printf("Cloning repository from %s", url) cloneCmd := exec.Command("git", "clone", url, tempDir) @@ -220,7 +220,7 @@ func ExtractGitCloneBundle(bundlePath, destPath, ref string) error { // Try to get the repo URL from the bundle path and re-create it if i == 1 { // fetch step failed log.Printf("Bundle does not contain ref %s, attempting to re-create bundle with updated refs", ref) - os.RemoveAll(destPath) // Clean up failed extraction + RemoveAll(destPath) // Clean up failed extraction // Get the repository URL from sources.json by finding which repo this bundle belongs to url, err := getRepoURLFromBundlePath(bundlePath) diff --git a/utils/remove_all.go b/utils/remove_all.go new file mode 100644 index 0000000..7087c61 --- /dev/null +++ b/utils/remove_all.go @@ -0,0 +1,22 @@ +package utils + +import ( + "log" + "os" + "path/filepath" +) + +func RemoveAll(path string) error { + filepath.WalkDir(path, func(p string, d os.DirEntry, err error) error { + if err != nil { + return nil + } + os.Chmod(p, 0755) + return nil + }) + + if err := os.RemoveAll(path); err != nil { + log.Fatalf("removeAll %s: %w", path, err) + } + return nil +} From 0ea74cb120b06156ce16118f86dc5b7d23a93c46 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 6 May 2026 14:27:50 -0400 Subject: [PATCH 112/200] don't patch protobuf --- packages/protobuf.json | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/protobuf.json b/packages/protobuf.json index d65f41b..82f6d99 100644 --- a/packages/protobuf.json +++ b/packages/protobuf.json @@ -36,7 +36,6 @@ "*:*:cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", "*:*:cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", "*:*:cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", - "*:*:patch -p0 < $PATCH_DIR/protobuf/visibility.patch", "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES -C src libprotobuf.la", "*:*:make -j$NUM_CORES -C src DESTDIR=$STAGING_DIR install-libLTLIBRARIES install-nobase_includeHEADERS", From 09cbbb93ea28e5f0efaaf1b3e1a4d86bc37e90c5 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 7 May 2026 11:37:54 -0400 Subject: [PATCH 113/200] cleanup protobuf --- packages/native/protobuf.json | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/packages/native/protobuf.json b/packages/native/protobuf.json index 8411bde..68d639d 100644 --- a/packages/native/protobuf.json +++ b/packages/native/protobuf.json @@ -21,24 +21,21 @@ "env": [ "*:*:config_opts=--host=$HOST --prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-shared", - "*:*-linux-gnu:config_opts=$config_opts --with-pic", - "*:*-linux-gnu:SHOULD_BUILD=", - "*:*-w64-mingw32:SHOULD_BUILD=", - "*:*-apple-darwin:SHOULD_BUILD=" + "*:*-linux-gnu:config_opts=$config_opts --with-pic" ], "steps": [ - "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.guess config.guess", - "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.sub config.sub", - "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", - "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", - "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", - "*:*:$SHOULD_BUILD cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", - "*:*:$SHOULD_BUILD aclocal", - "*:*:$SHOULD_BUILD automake --add-missing", - "*:*:$SHOULD_BUILD ./configure $config_opts", - "*:*:$SHOULD_BUILD make -j$NUM_CORES", - "*:*:$SHOULD_BUILD make -j$NUM_CORES DESTDIR=$STAGING_DIR install", - "*:*:$SHOULD_BUILD rm $STAGING_DIR$NATIVEPREFIX/lib/libprotoc.a || true" + "*:*:cp -f $NATIVEPREFIX/share/config/config.guess config.guess", + "*:*:cp -f $NATIVEPREFIX/share/config/config.sub config.sub", + "*:*:cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googletest/build-aux/config.guess", + "*:*:cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", + "*:*:cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", + "*:*:cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", + "*:*:aclocal", + "*:*:automake --add-missing", + "*:*:./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install", + "*:*:rm $STAGING_DIR$NATIVEPREFIX/lib/libprotoc.a || true" ] } } \ No newline at end of file From 8621f898aada59d15095a63e6b6746c69c2c5b76 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 7 May 2026 13:45:52 -0400 Subject: [PATCH 114/200] wip --- host/main.go | 2 +- main.go | 2 +- packages/curl.json | 13 +++++-------- packages/native/rust.json | 1 + packages/openssl.json | 11 ----------- packages/protobuf.json | 4 ++-- packages/rust_std.json | 4 ++-- packages/sqlite3@3350500.json | 25 ++++--------------------- packages/sqlite3@3510100.json | 20 ++++---------------- 9 files changed, 20 insertions(+), 62 deletions(-) diff --git a/host/main.go b/host/main.go index ea8cdb2..acce1c2 100644 --- a/host/main.go +++ b/host/main.go @@ -211,7 +211,7 @@ var SupportedHosts = map[string]*Host{ "*:*:STRIP=x86_64-w64-mingw32-strip", "*:*:READELF=x86_64-w64-mingw32-readelf", "*:*:LD=x86_64-w64-mingw32-ld", - "*:*:LDFLAGS=", + "*:*:LDFLAGS=-L$PREFIX/lib", "*:*:NM=x86_64-w64-mingw32-nm", }, }, diff --git a/main.go b/main.go index 64d31c9..9a582c4 100644 --- a/main.go +++ b/main.go @@ -13,7 +13,7 @@ import ( ) func main() { - log.SetFlags(log.LstdFlags | log.Lshortfile) + log.SetFlags(log.Lshortfile) argList := flag.Bool("list", false, "List all supported hosts (value is depth)") argHost := flag.String("host", "", "The host to build for") argPkg := flag.String("package", "", "The package(s) to build (comma-separated)") diff --git a/packages/curl.json b/packages/curl.json index f49bc20..4b062bf 100644 --- a/packages/curl.json +++ b/packages/curl.json @@ -12,19 +12,16 @@ "dependencies": [ "*:*:native/_", "*:*:native/make", + "*:*:native/pkgconf", "*:*:openssl", "*:*:zlib" ], "build": { "env": [ - "*:*:config_opts=--with-openssl --with-zlib --without-libpsl --disable-shared --enable-static --host=$HOST --prefix=$PREFIX" - , - "*:*-linux-gnu*:config_opts=--with-openssl=$PREFIX --with-zlib=$PREFIX --without-libpsl --disable-shared --enable-static --host=$HOST --prefix=$PREFIX", - "*:*-linux-gnu*:PKG_CONFIG=/bin/false", - "*:*-linux-gnu*:LIBS=$LIBS -ldl -lpthread", - "*:*-mingw*:config_opts=--with-openssl=$PREFIX --with-zlib=$PREFIX --without-libpsl --disable-shared --enable-static --disable-ldap --host=$HOST --prefix=$PREFIX", - "*:*-mingw*:PKG_CONFIG=/bin/false", - "*:*-mingw*:LIBS=$LIBS -lcrypt32 -lbcrypt -lws2_32 -lgdi32 -liphlpapi" + "*:*:config_opts=--with-openssl --with-zlib --without-libpsl --disable-shared --enable-static --enable-static --disable-ldap --host=$HOST --prefix=$PREFIX", + "none:*-linux-gnu*:LIBS=$LIBS -ldl -lpthread", + "none:*-mingw*:LIBS=$LIBS -lcrypt32 -lbcrypt -lws2_32 -lgdi32 -liphlpapi", + "*:*-mingw*:LIBS=$LIBS -lssl" ], "steps": [ "*:*:./configure $config_opts", diff --git a/packages/native/rust.json b/packages/native/rust.json index 9715787..dc53b62 100644 --- a/packages/native/rust.json +++ b/packages/native/rust.json @@ -22,6 +22,7 @@ "env": [], "steps": [ "*:*:echo '[build]' > config.toml", + "*:aarch64-linux-gnu:echo 'target = [\"aarch64-unknown-linux-gnu\"]' >> config.toml", "*:*:echo 'full-bootstrap = true' >> config.toml", "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", diff --git a/packages/openssl.json b/packages/openssl.json index 4d0acb4..6131fa6 100644 --- a/packages/openssl.json +++ b/packages/openssl.json @@ -21,24 +21,13 @@ "*:*-android*:AR=ar", "*:*-android*:RANLIB=ranlib", "*:*:config_opts=--prefix=$PREFIX --openssldir=$PREFIX/etc/openssl --libdir=$PREFIX/lib", - "*:*:config_opts=$config_opts no-capieng", - "*:*:config_opts=$config_opts no-dso", - "*:*:config_opts=$config_opts no-dtls1", "*:*:config_opts=$config_opts no-ec_nistp_64_gcc_128", "*:*:config_opts=$config_opts no-gost", "*:*:config_opts=$config_opts no-md2", "*:*:config_opts=$config_opts no-rc5", - "*:*:config_opts=$config_opts no-rdrand", - "*:*:config_opts=$config_opts no-rfc3779", - "*:*:config_opts=$config_opts no-sctp", - "*:*:config_opts=$config_opts no-shared", "*:*:config_opts=$config_opts no-ssl-trace", - "*:*:config_opts=$config_opts no-ssl3", "*:*:config_opts=$config_opts no-tests", "*:*:config_opts=$config_opts no-unit-test", - "*:*:config_opts=$config_opts no-weak-ssl-ciphers", - "*:*:config_opts=$config_opts no-zlib", - "*:*:config_opts=$config_opts no-zlib-dynamic", "*:*linux*:config_opts=$config_opts -fPIC -Wa,--noexecstack", "*:x86_64-linux*:config_opts=$config_opts linux-x86_64", "*:i686-linux*:config_opts=$config_opts linux-generic32", diff --git a/packages/protobuf.json b/packages/protobuf.json index 82f6d99..1c1c4b8 100644 --- a/packages/protobuf.json +++ b/packages/protobuf.json @@ -11,13 +11,13 @@ ], "dependencies": [ "*:*:native/_", - "*:*:native/protobuf", "*:*:native/autoconf", "*:*:native/automake", "*:*:native/config", "*:*:native/m4", "*:*:native/make", - "*:*:native/perl" + "*:*:native/perl", + "*:*:native/protobuf" ], "patches": [ "visibility.patch" diff --git a/packages/rust_std.json b/packages/rust_std.json index 709c90d..ee4bed6 100644 --- a/packages/rust_std.json +++ b/packages/rust_std.json @@ -10,14 +10,14 @@ } ], "dependencies": [ + "*:*-linux-android*:native/android_ndk", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja", "*:*:native/openssl", "*:*:native/pkgconf", "*:*:native/python@3.11", - "*:*:native/rust", - "*:*-linux-android*:native/android_ndk" + "*:*:native/rust" ], "build": { "env": [], diff --git a/packages/sqlite3@3350500.json b/packages/sqlite3@3350500.json index 0a58c53..9e37845 100644 --- a/packages/sqlite3@3350500.json +++ b/packages/sqlite3@3350500.json @@ -1,5 +1,5 @@ { - "package": "sqlite3", + "package": "sqlite3@3350500", "version": "3350500", "type": "host", "download": [ @@ -18,29 +18,12 @@ "*:*:CFLAGS=$CFLAGS -fPIC -O2 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1", "*:*:CPPFLAGS=$CPPFLAGS -I$PREFIX/include", "*:*:LDFLAGS=$LDFLAGS -L$PREFIX/lib", - "*:*:config_opts=--disable-shared --enable-static --enable-threadsafe --prefix=$PREFIX", - "*:*-apple-darwin:config_opts=$config_opts --host=$HOST", - "*:*-android*:config_opts=$config_opts --host=$HOST", - "*:*-linux-gnu*:config_opts=$config_opts --host=$HOST", - "*:*-mingw*:config_opts=$config_opts --host=$HOST", - "*:*-apple-ios*:config_opts=$config_opts --host=$HOST --build=x86_64-apple-darwin --disable-load-extension", - "*:*:CC=$CC", - "*:*:CXX=$CXX", - "*:*:AR=$AR", - "*:*:RANLIB=$RANLIB" + "*:*:config_opts=--disable-shared --enable-static --enable-threadsafe --prefix=$PREFIX --host=$HOST" ], "steps": [ "*:*:./configure $config_opts", - "*:*-android*:make CC=\"$HOST$ANDROID_API-clang\" CXX=\"$HOST$ANDROID_API-clang++\" AR=\"$HOST-ar\" RANLIB=\"$HOST-ranlib\" -j$NUM_CORES", - "*:*-apple-darwin:make -j$NUM_CORES", - "*:*-mingw*:make CC=\"$HOST-gcc\" AR=\"$HOST-ar\" RANLIB=\"$HOST-ranlib\" -j$NUM_CORES", - "*:*-apple-ios*:make CC=\"xcrun --sdk iphoneos clang\" CXX=\"xcrun --sdk iphoneos clang++\" AR=\"xcrun --sdk iphoneos ar\" RANLIB=\"xcrun --sdk iphoneos ranlib\" libsqlite3.la sqlite3.pc -j$NUM_CORES", - "*:*-linux-gnu*:make -j$NUM_CORES", - "*:*-android*:make DESTDIR=$STAGING_DIR install", - "*:*-apple-darwin:make DESTDIR=$STAGING_DIR install", - "*:*-mingw*:make DESTDIR=$STAGING_DIR install", - "*:*-apple-ios*:make DESTDIR=$STAGING_DIR install-libLTLIBRARIES install-pkgconfigDATA install-includeHEADERS", - "*:*-linux-gnu*:make DESTDIR=$STAGING_DIR install" + "*:*:make -j$NUM_CORES libsqlite3.la", + "*:*:make DESTDIR=$STAGING_DIR install-libLTLIBRARIES install-pkgconfigDATA install-includeHEADERS" ] } } \ No newline at end of file diff --git a/packages/sqlite3@3510100.json b/packages/sqlite3@3510100.json index 22e2cf4..f821c34 100644 --- a/packages/sqlite3@3510100.json +++ b/packages/sqlite3@3510100.json @@ -1,5 +1,5 @@ { - "package": "sqlite3", + "package": "sqlite3@3510100", "version": "3510100", "type": "host", "download": [ @@ -18,24 +18,12 @@ "*:*:CFLAGS=$CFLAGS -fPIC -O2 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1", "*:*:CPPFLAGS=$CPPFLAGS -I$PREFIX/include", "*:*:LDFLAGS=$LDFLAGS -L$PREFIX/lib", - "*:*:config_opts=--disable-shared --enable-static --enable-threadsafe --prefix=$PREFIX", - "*:*-apple-darwin:config_opts=$config_opts --host=$HOST", - "*:*-android*:config_opts=$config_opts --host=$HOST", - "*:*-linux-gnu*:config_opts=$config_opts --host=$HOST", - "*:*-mingw*:config_opts=$config_opts --host=$HOST", - "*:*-apple-ios*:config_opts=$config_opts --host=$HOST --build=x86_64-apple-darwin --disable-load-extension", - "*:*:CC=$CC", - "*:*:CXX=$CXX", - "*:*:AR=$AR", - "*:*:RANLIB=$RANLIB" + "*:*:config_opts=--disable-shared --enable-static --enable-threadsafe --prefix=$PREFIX --host=$HOST" ], "steps": [ "*:*:./configure $config_opts", - "*:*-android*:make CC=\"$HOST$ANDROID_API-clang\" CXX=\"$HOST$ANDROID_API-clang++\" AR=\"$HOST-ar\" RANLIB=\"$HOST-ranlib\" -j$NUM_CORES", - "*:*-mingw*:make CC=\"$HOST-gcc\" AR=\"$HOST-ar\" RANLIB=\"$HOST-ranlib\" -j$NUM_CORES", - "*:*-apple-ios*:make CC=\"xcrun --sdk iphoneos clang\" CXX=\"xcrun --sdk iphoneos clang++\" AR=\"xcrun --sdk iphoneos ar\" RANLIB=\"xcrun --sdk iphoneos ranlib\" -j$NUM_CORES", - "*:*-linux-gnu*:make -j$NUM_CORES", - "*:*:make DESTDIR=$STAGING_DIR install" + "*:*:make -j$NUM_CORES libsqlite3.a", + "*:*:make DESTDIR=$STAGING_DIR install-lib install-pc install-headers" ] } } \ No newline at end of file From bcd7bd15e61909fda1a84a5af337c86d9ce14b37 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 9 May 2026 15:45:42 -0400 Subject: [PATCH 115/200] crosscomp fixes --- host/main.go | 3 --- packages/curl.json | 7 +++--- packages/libpsl.json | 24 +++++++++++++++++++ packages/native/rust.json | 4 ++++ packages/openssl.json | 4 ++-- packages/rust-hello-world.json | 7 ++---- packages/rust_std.json | 42 ---------------------------------- packages/sqlite3@3350500.json | 29 ----------------------- packages/sqlite3@3510100.json | 5 +++- packages/zeromq.json | 15 ++++++++---- sources.json | 5 ++++ 11 files changed, 54 insertions(+), 91 deletions(-) create mode 100644 packages/libpsl.json delete mode 100644 packages/rust_std.json delete mode 100644 packages/sqlite3@3350500.json diff --git a/host/main.go b/host/main.go index acce1c2..e62d276 100644 --- a/host/main.go +++ b/host/main.go @@ -211,7 +211,6 @@ var SupportedHosts = map[string]*Host{ "*:*:STRIP=x86_64-w64-mingw32-strip", "*:*:READELF=x86_64-w64-mingw32-readelf", "*:*:LD=x86_64-w64-mingw32-ld", - "*:*:LDFLAGS=-L$PREFIX/lib", "*:*:NM=x86_64-w64-mingw32-nm", }, }, @@ -238,7 +237,6 @@ var SupportedHosts = map[string]*Host{ "*:*:STRIP=x86_64-linux-gnu-strip", "*:*:READELF=x86_64-linux-gnu-readelf", "*:*:LD=x86_64-linux-gnu-ld", - "*:*:LDFLAGS=", "*:*:NM=x86_64-linux-gnu-nm", }, }, @@ -265,7 +263,6 @@ var SupportedHosts = map[string]*Host{ "*:*:STRIP=aarch64-linux-gnu-strip", "*:*:READELF=aarch64-linux-gnu-readelf", "*:*:LD=aarch64-linux-gnu-ld", - "*:*:LDFLAGS=", "*:*:NM=aarch64-linux-gnu-nm", }, }, diff --git a/packages/curl.json b/packages/curl.json index 4b062bf..bc1d2bf 100644 --- a/packages/curl.json +++ b/packages/curl.json @@ -18,10 +18,9 @@ ], "build": { "env": [ - "*:*:config_opts=--with-openssl --with-zlib --without-libpsl --disable-shared --enable-static --enable-static --disable-ldap --host=$HOST --prefix=$PREFIX", - "none:*-linux-gnu*:LIBS=$LIBS -ldl -lpthread", - "none:*-mingw*:LIBS=$LIBS -lcrypt32 -lbcrypt -lws2_32 -lgdi32 -liphlpapi", - "*:*-mingw*:LIBS=$LIBS -lssl" + "*:*:HOSTOVERRIDE=$HOST", + "*:aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", + "*:*:config_opts=--with-openssl --with-zlib --without-libpsl --disable-shared --enable-static --enable-static --disable-ldap --host=$HOSTOVERRIDE --prefix=$PREFIX" ], "steps": [ "*:*:./configure $config_opts", diff --git a/packages/libpsl.json b/packages/libpsl.json new file mode 100644 index 0000000..6c2d256 --- /dev/null +++ b/packages/libpsl.json @@ -0,0 +1,24 @@ +{ + "package": "libpsl", + "version": "0.21.5", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "1dcc9ceae8b128f3c0b3f654decd0e1e891afc6ff81098f227ef260449dae208", + "url": "https://github.com/rockdaboot/libpsl/releases/download/0.21.5/libpsl-0.21.5.tar.gz" + } + ], + "dependencies": [ + "*:*:native/make", + "*:*:unistring" + ], + "build": { + "env": [], + "steps": [ + "*:*:./configure --prefix=$PREFIX", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/rust.json b/packages/native/rust.json index dc53b62..438ecf3 100644 --- a/packages/native/rust.json +++ b/packages/native/rust.json @@ -23,13 +23,17 @@ "steps": [ "*:*:echo '[build]' > config.toml", "*:aarch64-linux-gnu:echo 'target = [\"aarch64-unknown-linux-gnu\"]' >> config.toml", + "*:x86_64-linux-gnu:echo 'target = [\"x86_64-unknown-linux-gnu\"]' >> config.toml", "*:*:echo 'full-bootstrap = true' >> config.toml", "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = true' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:echo '[rust]' >> config.toml", + "*:*:echo 'download-rustc = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", diff --git a/packages/openssl.json b/packages/openssl.json index 6131fa6..8e4ff6d 100644 --- a/packages/openssl.json +++ b/packages/openssl.json @@ -33,8 +33,8 @@ "*:i686-linux*:config_opts=$config_opts linux-generic32", "*:arm-linux*:config_opts=$config_opts linux-generic32", "*:aarch64-linux-gnu:config_opts=$config_opts linux-generic64", - "*:armv7a-linux-androideabi:config_opts=$config_opts --static android-arm", - "*:aarch64-linux-android:config_opts=$config_opts --static android-arm64", + "*:armv7a-linux-androideabi:config_opts=$config_opts android-arm", + "*:aarch64-linux-android:config_opts=$config_opts android-arm64", "*:aarch64-apple-darwin:config_opts=$config_opts darwin64-arm64-cc", "*:aarch64-apple-ios*:config_opts=$config_opts darwin64-arm64-cc", "*:x86_64-apple-darwin:config_opts=$config_opts darwin64-x86_64-cc", diff --git a/packages/rust-hello-world.json b/packages/rust-hello-world.json index 7e1243a..f0411d4 100644 --- a/packages/rust-hello-world.json +++ b/packages/rust-hello-world.json @@ -11,14 +11,11 @@ ], "dependencies": [ "*:*:native/_", - "*:*:native/rust", - "*:*:rust_std" + "*:*:native/rust" ], "build": { "steps": [ - "*:*:cargo build --target $RUST_TRIPLET", - "*:*:$SHOULD_BUILD make -j$NUM_CORES $build_opts", - "*:*:$SHOULD_BUILD make -j$NUM_CORES install DESTDIR=$STAGING_DIR prefix=$PREFIX exec-prefix=$PREFIX" + "*:*:cargo build --target $RUST_TRIPLET" ] } } \ No newline at end of file diff --git a/packages/rust_std.json b/packages/rust_std.json deleted file mode 100644 index ee4bed6..0000000 --- a/packages/rust_std.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "package": "rust-std", - "version": "1.94.0", - "type": "host", - "download": [ - { - "kind": "tar.gz", - "sha256": "b83f921cd3f321ff614f9c06a8b870d89299fc02888b48a5549683a36823474c", - "url": "http://static.rust-lang.org/dist/rustc-1.94.0-src.tar.gz" - } - ], - "dependencies": [ - "*:*-linux-android*:native/android_ndk", - "*:*:native/cmake", - "*:*:native/make", - "*:*:native/ninja", - "*:*:native/openssl", - "*:*:native/pkgconf", - "*:*:native/python@3.11", - "*:*:native/rust" - ], - "build": { - "env": [], - "steps": [ - "*:*:mkdir -p build", - "*:*:echo '[build]' > build/config.toml", - "*:*:echo 'full-bootstrap = true' >> build/config.toml", - "*:*:echo 'vendor = true' >> build/config.toml", - "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> build/config.toml", - "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> build/config.toml", - "*:*:echo '[llvm]' >> config.toml", - "*:*:echo 'ninja = true' >> config.toml", - "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:echo 'target = [\"'$RUST_TRIPLET'\"]' >> build/config.toml", - "*:*:echo '[target.'$RUST_TRIPLET']' >> build/config.toml", - "*:*:echo 'linker = \"'$CC'\"' >> build/config.toml", - "*:*:python3 ./x.py build --stage 2 library/std --target $RUST_TRIPLET", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET", - "*:*:cp -a build/*/stage2/lib/rustlib/$RUST_TRIPLET/lib $STAGING_DIR$NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET/" - ] - } -} \ No newline at end of file diff --git a/packages/sqlite3@3350500.json b/packages/sqlite3@3350500.json deleted file mode 100644 index 9e37845..0000000 --- a/packages/sqlite3@3350500.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "package": "sqlite3@3350500", - "version": "3350500", - "type": "host", - "download": [ - { - "kind": "tar.gz", - "sha256": "f52b72a5c319c3e516ed7a92e123139a6e87af08a2dc43d7757724f6132e6db0", - "url": "https://www.sqlite.org/2021/sqlite-autoconf-3350500.tar.gz" - } - ], - "dependencies": [ - "*:*:native/_", - "*:*:native/make" - ], - "build": { - "env": [ - "*:*:CFLAGS=$CFLAGS -fPIC -O2 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1", - "*:*:CPPFLAGS=$CPPFLAGS -I$PREFIX/include", - "*:*:LDFLAGS=$LDFLAGS -L$PREFIX/lib", - "*:*:config_opts=--disable-shared --enable-static --enable-threadsafe --prefix=$PREFIX --host=$HOST" - ], - "steps": [ - "*:*:./configure $config_opts", - "*:*:make -j$NUM_CORES libsqlite3.la", - "*:*:make DESTDIR=$STAGING_DIR install-libLTLIBRARIES install-pkgconfigDATA install-includeHEADERS" - ] - } -} \ No newline at end of file diff --git a/packages/sqlite3@3510100.json b/packages/sqlite3@3510100.json index f821c34..e7433d1 100644 --- a/packages/sqlite3@3510100.json +++ b/packages/sqlite3@3510100.json @@ -18,7 +18,10 @@ "*:*:CFLAGS=$CFLAGS -fPIC -O2 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1", "*:*:CPPFLAGS=$CPPFLAGS -I$PREFIX/include", "*:*:LDFLAGS=$LDFLAGS -L$PREFIX/lib", - "*:*:config_opts=--disable-shared --enable-static --enable-threadsafe --prefix=$PREFIX --host=$HOST" + "*:*:BUILD_HOST=$HOST", + "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios", + "*:*:config_opts=--disable-shared --enable-static --enable-threadsafe --prefix=$PREFIX --host=$BUILD_HOST", + "*:*android*:CXXFLAGS=$CXXFLAGS -D_GNU_SOURCE" ], "steps": [ "*:*:./configure $config_opts", diff --git a/packages/zeromq.json b/packages/zeromq.json index 93bcb62..9b3b897 100644 --- a/packages/zeromq.json +++ b/packages/zeromq.json @@ -4,15 +4,19 @@ "type": "host", "download": [ { - "kind": "tar.gz", - "sha256": "6653ef5910f17954861fe72332e68b03ca6e4d9c7160eb3a8de5a5a913bfab43", - "url": "http://github.com/zeromq/libzmq/releases/download/v4.3.5/zeromq-4.3.5.tar.gz" + "kind": "git", + "sha256": "b946c18f676760387276cd095bbdd8c0e18c09bf", + "url": "http://github.com/zeromq/libzmq.git" } ], "dependencies": [ "*:*:native/_", "*:*:native/make", - "*:*:native/patch" + "*:*:native/patch", + "*:*:native/autoconf", + "*:*:native/automake", + "*:*:native/libtool", + "*:*:native/m4" ], "patches": [ "fix_declaration.patch" @@ -20,11 +24,12 @@ "build": { "env": [ "*:aarch64-apple-ios*:HOST=aarch64-apple-darwin", - "*:*:config_opts=--prefix=$PREFIX --host=$HOST --without-documentation --disable-shared --without-libsodium --disable-curve", + "*:*:config_opts=--prefix=$PREFIX --host=$HOST --without-documentation --disable-shared --without-libsodium --disable-curve --disable-libbsd", "*:*-linux-gnu:config_opts=$config_opts --with-pic", "*:*:cxxflags=$CXXFLAGS -std=c++17" ], "steps": [ + "*:*:./autogen.sh", "*:*:patch -p1 < $PATCH_DIR/zeromq/fix_declaration.patch", "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES src/libzmq.la", diff --git a/sources.json b/sources.json index 5c3edbb..a1bf835 100644 --- a/sources.json +++ b/sources.json @@ -10,6 +10,11 @@ "9f5ff518a49038d7ae51dadd1658231b61f7dced" ] }, + "http://github.com/zeromq/libzmq.git": { + "refs": [ + "b946c18f676760387276cd095bbdd8c0e18c09bf" + ] + }, "http://gitlab.torproject.org/tpo/core/tor.git": { "refs": [ "106dcfa18c1a9539cb97337e57954ff89685840e" From 7095fe6bcc8800c1c3ef8ffc2e60679d765bde7b Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 10 May 2026 10:14:28 -0400 Subject: [PATCH 116/200] wip --- packages/native/rust.json | 5 +++-- packages/rust-hello-world.json | 4 +++- packages/zeromq.json | 8 +++++--- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/packages/native/rust.json b/packages/native/rust.json index 438ecf3..bb98925 100644 --- a/packages/native/rust.json +++ b/packages/native/rust.json @@ -22,8 +22,9 @@ "env": [], "steps": [ "*:*:echo '[build]' > config.toml", - "*:aarch64-linux-gnu:echo 'target = [\"aarch64-unknown-linux-gnu\"]' >> config.toml", - "*:x86_64-linux-gnu:echo 'target = [\"x86_64-unknown-linux-gnu\"]' >> config.toml", + "linux_amd64:*:echo build = \\\"x86_64-unknown-linux-gnu\\\" >> config.toml", + "linux_amd64:*:echo host = [\\\"x86_64-unknown-linux-gnu\\\"] >> config.toml", + "*:*:echo 'target = [\"x86_64-unknown-linux-gnu\", \"aarch64-unknown-linux-gnu\"]' >> config.toml", "*:*:echo 'full-bootstrap = true' >> config.toml", "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", diff --git a/packages/rust-hello-world.json b/packages/rust-hello-world.json index f0411d4..d4dbf3f 100644 --- a/packages/rust-hello-world.json +++ b/packages/rust-hello-world.json @@ -15,7 +15,9 @@ ], "build": { "steps": [ - "*:*:cargo build --target $RUST_TRIPLET" + "*:*:cargo build --target $RUST_TRIPLET --release", + "*:*:mkdir -p $STAGING_DIR$PREFIX/bin", + "*:*:cp ./target/$RUST_TRIPLET/release/rust-hello-world $STAGING_DIR$PREFIX/bin" ] } } \ No newline at end of file diff --git a/packages/zeromq.json b/packages/zeromq.json index 9b3b897..1ab2328 100644 --- a/packages/zeromq.json +++ b/packages/zeromq.json @@ -11,12 +11,14 @@ ], "dependencies": [ "*:*:native/_", - "*:*:native/make", - "*:*:native/patch", "*:*:native/autoconf", "*:*:native/automake", + "*:*:native/gettext", "*:*:native/libtool", - "*:*:native/m4" + "*:*:native/m4", + "*:*:native/make", + "*:*:native/patch", + "*:*:native/perl" ], "patches": [ "fix_declaration.patch" From 2a96b36b828bfb6e5cc8aa84e5a999685730664a Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 10 May 2026 14:38:45 -0400 Subject: [PATCH 117/200] add pkgconf --- packages/zeromq.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/zeromq.json b/packages/zeromq.json index 1ab2328..0a437db 100644 --- a/packages/zeromq.json +++ b/packages/zeromq.json @@ -18,7 +18,8 @@ "*:*:native/m4", "*:*:native/make", "*:*:native/patch", - "*:*:native/perl" + "*:*:native/perl", + "*:*:native/pkgconf" ], "patches": [ "fix_declaration.patch" From 2091e0883265ad13cc9506ec1e7c0fb3c09ca646 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 10 May 2026 22:46:54 -0400 Subject: [PATCH 118/200] wip --- packages/native/osx-cross.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 2ee957c..ea0219c 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -66,7 +66,8 @@ "*:*-apple-*:yes | INSTALLPREFIX=$NATIVEPREFIX ./build_apple_clang.sh", "*:*-apple-*:cd build/clang-21/build_stage3 && make install DESTDIR=$STAGING_DIR && make install", "*:*-apple-*:sed -i.bak 's/## Compiler test ##/exit 0/g' build.sh", - "*:*-apple-*:OCDEBUG=1 TARGET_DIR=$STAGING_DIR$NATIVEPREFIX bash -x ./build.sh" + "*:*-apple-*:OCDEBUG=1 TARGET_DIR=$STAGING_DIR$NATIVEPREFIX bash -x ./build.sh", + "*:*-apple-*:rm $STAGING_DIR$NATIVEPREFIX/bin/*pkg-config" ] } } \ No newline at end of file From c70cb5f59084ae1eaaab84635f81e92addf3e732 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 2 Jun 2026 05:53:22 +0200 Subject: [PATCH 119/200] minor fixes + tor update --- builder/builder_linux_amd64.go | 13 +- builder/builder_linux_arm64.go | 12 +- host/main.go | 197 ++++++++---------- ...inutils@2.45.json => binutils@2.46.0.json} | 13 +- packages/native/crosstool-ng.json | 2 +- packages/native/ct-tools.json | 2 +- packages/tor.json | 4 +- packages/zlib.json | 11 +- sources.json | 2 +- 9 files changed, 117 insertions(+), 139 deletions(-) rename packages/native/{binutils@2.45.json => binutils@2.46.0.json} (79%) diff --git a/builder/builder_linux_amd64.go b/builder/builder_linux_amd64.go index 3bc5e95..31e922c 100644 --- a/builder/builder_linux_amd64.go +++ b/builder/builder_linux_amd64.go @@ -6,15 +6,10 @@ var HostBuilder = Builder{ GlobalEnv: []string{ "*:*:HOST=x86_64-linux-gnu", "*:*:TARGET=x86_64-linux-gnu", - "*:*:CC=clang", - "*:*:CXX=clang++", - "*:*:AR=ar", - "*:*:RANLIB=ranlib", - "*:*:STRIP=strip", - "*:*:NM=nm", - "*:*:OTOOL=otool", - "*:*:AUTOMAKE=automake", - "*:*:INSTALL_NAME_TOOL=install_name_tool", + "*:*:CC=/usr/bin/clang", + "*:*:CXX=/usr/bin/clang++", + "*:*:AR=/usr/bin/ar", + "*:*:RANLIB=/usr/bin/ranlib", "*:*:BUILDER_GOOS=" + runtime.GOOS, "*:*:BUILDER_GOARCH=" + runtime.GOARCH, }, diff --git a/builder/builder_linux_arm64.go b/builder/builder_linux_arm64.go index 0b726cc..1923b19 100644 --- a/builder/builder_linux_arm64.go +++ b/builder/builder_linux_arm64.go @@ -6,14 +6,10 @@ var HostBuilder = Builder{ GlobalEnv: []string{ "*:*:HOST=aarch64-linux-gnu", "*:*:TARGET=aarch64-linux-gnu", - "*:*:CC=clang", - "*:*:CXX=clang++", - "*:*:AR=ar", - "*:*:RANLIB=ranlib", - "*:*:STRIP=strip", - "*:*:NM=nm", - "*:*:OTOOL=otool", - "*:*:AUTOMAKE=automake", + "*:*:CC=/usr/bin/clang", + "*:*:CXX=/usr/bin/clang++", + "*:*:AR=/usr/bin/ar", + "*:*:RANLIB=/usr/bin/ranlib", "*:*:INSTALL_NAME_TOOL=install_name_tool", "*:*:BUILDER_GOOS=" + runtime.GOOS, "*:*:BUILDER_GOARCH=" + runtime.GOARCH, diff --git a/host/main.go b/host/main.go index e62d276..0648f0f 100644 --- a/host/main.go +++ b/host/main.go @@ -73,16 +73,14 @@ var SupportedHosts = map[string]*Host{ "*:*:OSX_MIN_VERSION=13.0", "*:*:LD64_VERSION=609", "*:*:CC_target=arm64-apple-darwin", - "*:*:CC=aarch64-apple-darwin-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXX=aarch64-apple-darwin-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CFLAGS=", + "*:*:CC=$NATIVEPREFIX/bin/aarch64-apple-darwin-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:*:CXX=$NATIVEPREFIX/bin/aarch64-apple-darwin-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:*:CPPFLAGS=", - "*:*:RANLIB=llvm-ranlib", - "*:*:STRIP=strip", - "*:*:AR=llvm-ar", - "*:*:NM=llvm-nm", - "*:*:LIBTOOL=llvm-libtool-darwin", + "*:*:RANLIB=$NATIVEPREFIX/bin/llvm-ranlib", + "*:*:STRIP=$NATIVEPREFIX/bin/strip", + "*:*:AR=$NATIVEPREFIX/bin/llvm-ar", + "*:*:NM=$NATIVEPREFIX/bin/llvm-nm", + "*:*:LIBTOOL=$NATIVEPREFIX/bin/llvm-libtool-darwin", "*:*:LDFLAGS=-L$PREFIX/lib -lc++ -lc++abi", }, }, @@ -99,16 +97,14 @@ var SupportedHosts = map[string]*Host{ "*:*:OSX_MIN_VERSION=10.16", "*:*:LD64_VERSION=609", "*:*:CC_target=x86_64-apple-darwin", - "*:*:CC=x86_64-apple-darwin-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXX=x86_64-apple-darwin-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CFLAGS=", + "*:*:CC=$NATIVEPREFIX/bin/x86_64-apple-darwin-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:*:CXX=$NATIVEPREFIX/bin/x86_64-apple-darwin-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:*:CPPFLAGS=", - "*:*:RANLIB=ranlib", - "*:*:AR=ar", - "*:*:STRIP=strip", - "*:*:NM=nm", - "*:*:LIBTOOL=llvm-libtool-darwin", + "*:*:RANLIB=$NATIVEPREFIX/bin/ranlib", + "*:*:AR=$NATIVEPREFIX/bin/ar", + "*:*:STRIP=$NATIVEPREFIX/bin/strip", + "*:*:NM=$NATIVEPREFIX/bin/nm", + "*:*:LIBTOOL=$NATIVEPREFIX/bin/llvm-libtool-darwin", "*:*:LDFLAGS=-L$PREFIX/lib -lc++ -lc++abi", }, }, @@ -125,18 +121,16 @@ var SupportedHosts = map[string]*Host{ "*:*:SDK_VERSION=26.1", "*:*:SDK_PATH=$NATIVEPREFIX/SDK/iPhoneOS$SDK_VERSION.sdk", "*:*:CC_target=aarch64-apple-ios", - "*:*:CC=aarch64-apple-ios-clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXX=aarch64-apple-ios-clang++ -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CFLAGS=", - "*:*:CPPFLAGS=", + "*:*:CC=$NATIVEPREFIX/bin/aarch64-apple-ios-clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:*:CXX=$NATIVEPREFIX/bin/aarch64-apple-ios-clang++ -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:*:RANLIB=ranlib", - "*:*:AR=ar", - "*:*:NM=nm", - "*:*:STRIP=strip", - "*:*:LIBTOOL=libtool", + "*:*:RANLIB=$NATIVEPREFIX/bin/ranlib", + "*:*:AR=$NATIVEPREFIX/bin/ar", + "*:*:NM=$NATIVEPREFIX/bin/nm", + "*:*:STRIP=$NATIVEPREFIX/bin/strip", + "*:*:LIBTOOL=$NATIVEPREFIX/bin/libtool", "*:*:LDFLAGS=-lc++ -lc++abi", - "*:*:LD=lld", + "*:*:LD=$NATIVEPREFIX/bin/lld", }, }, "aarch64-apple-ios-simulator": { @@ -152,16 +146,14 @@ var SupportedHosts = map[string]*Host{ "*:*:SDK_VERSION=26.1", "*:*:SDK_PATH=$NATIVEPREFIX/SDK/iPhoneSimulator$SDK_VERSION.sdk", "*:*:CC_target=aarch64-apple-ios-simulator", - "*:*:CC=aarch64-apple-ios-simulator-clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXX=aarch64-apple-ios-simulator-clang++ -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CFLAGS=", - "*:*:CPPFLAGS=", + "*:*:CC=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:*:CXX=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang++ -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:*:RANLIB=ranlib", - "*:*:AR=ar", - "*:*:NM=nm", - "*:*:STRIP=strip", - "*:*:LIBTOOL=libtool", + "*:*:RANLIB=$NATIVEPREFIX/bin/ranlib", + "*:*:AR=$NATIVEPREFIX/bin/ar", + "*:*:NM=$NATIVEPREFIX/bin/nm", + "*:*:STRIP=$NATIVEPREFIX/bin/strip", + "*:*:LIBTOOL=$NATIVEPREFIX/bin/libtool", "*:*:LDFLAGS=-lc++ -lc++abi", }, }, @@ -197,21 +189,21 @@ var SupportedHosts = map[string]*Host{ "*:*:CC_target=x86_64-w64-mingw32", "*:*:RC=x86_64-w64-mingw32-windres", "*:*:RCFLAGS=-I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CC=x86_64-w64-mingw32-gcc", + "*:*:CC=$NATIVEPREFIX/bin/x86_64-w64-mingw32-gcc", "*:*:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CXX=x86_64-w64-mingw32-g++", + "*:*:CXX=$NATIVEPREFIX/bin/x86_64-w64-mingw32-g++", "*:*:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-w64-mingw32 -I$PREFIX/usr/include", "*:*:CPPFLAGS=-I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:RANLIB=x86_64-w64-mingw32-ranlib", - "*:*:AR=x86_64-w64-mingw32-ar", - "*:*:AS=x86_64-w64-mingw32-as", - "*:*:LIBTOOL=x86_64-w64-mingw32-libtool", - "*:*:OBJCOPY=x86_64-w64-mingw32-objcopy", - "*:*:OBJDUMP=x86_64-w64-mingw32-objdump", - "*:*:STRIP=x86_64-w64-mingw32-strip", - "*:*:READELF=x86_64-w64-mingw32-readelf", - "*:*:LD=x86_64-w64-mingw32-ld", - "*:*:NM=x86_64-w64-mingw32-nm", + "*:*:RANLIB=$NATIVEPREFIX/bin/x86_64-w64-mingw32-ranlib", + "*:*:AR=$NATIVEPREFIX/bin/x86_64-w64-mingw32-ar", + "*:*:AS=$NATIVEPREFIX/bin/x86_64-w64-mingw32-as", + "*:*:LIBTOOL=$NATIVEPREFIX/bin/x86_64-w64-mingw32-libtool", + "*:*:OBJCOPY=$NATIVEPREFIX/bin/x86_64-w64-mingw32-objcopy", + "*:*:OBJDUMP=$NATIVEPREFIX/bin/x86_64-w64-mingw32-objdump", + "*:*:STRIP=$NATIVEPREFIX/bin/x86_64-w64-mingw32-strip", + "*:*:READELF=$NATIVEPREFIX/bin/x86_64-w64-mingw32-readelf", + "*:*:LD=$NATIVEPREFIX/bin/x86_64-w64-mingw32-ld", + "*:*:NM=$NATIVEPREFIX/bin/x86_64-w64-mingw32-nm", }, }, "x86_64-linux-gnu": { @@ -223,21 +215,21 @@ var SupportedHosts = map[string]*Host{ "*:*:ARCH=x86_64", "*:*:CMAKE_SYSTEM_NAME=Linux", "*:*:CC_target=x86_64-linux-gnu", - "*:*:CC=x86_64-linux-gnu-gcc", + "*:*:CC=$NATIVEPREFIX/bin/x86_64-linux-gnu-gcc", "*:*:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CXX=x86_64-linux-gnu-g++", + "*:*:CXX=$NATIVEPREFIX/bin/x86_64-linux-gnu-g++", "*:*:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-linux-gnu -I$PREFIX/usr/include", "*:*:CPPFLAGS=-I$PREFIX/include -I$PREFIX/usr/include", - "*:*:RANLIB=x86_64-linux-gnu-ranlib", - "*:*:AR=x86_64-linux-gnu-ar", - "*:*:AS=x86_64-linux-gnu-as", - "*:*:LIBTOOL=x86_64-linux-gnu-libtool", - "*:*:OBJCOPY=x86_64-linux-gnu-objcopy", - "*:*:OBJDUMP=x86_64-linux-gnu-objdump", - "*:*:STRIP=x86_64-linux-gnu-strip", - "*:*:READELF=x86_64-linux-gnu-readelf", - "*:*:LD=x86_64-linux-gnu-ld", - "*:*:NM=x86_64-linux-gnu-nm", + "*:*:RANLIB=$NATIVEPREFIX/bin/x86_64-linux-gnu-ranlib", + "*:*:AR=$NATIVEPREFIX/bin/x86_64-linux-gnu-ar", + "*:*:AS=$NATIVEPREFIX/bin/x86_64-linux-gnu-as", + "*:*:LIBTOOL=$NATIVEPREFIX/bin/x86_64-linux-gnu-libtool", + "*:*:OBJCOPY=$NATIVEPREFIX/bin/x86_64-linux-gnu-objcopy", + "*:*:OBJDUMP=$NATIVEPREFIX/bin/x86_64-linux-gnu-objdump", + "*:*:STRIP=$NATIVEPREFIX/bin/x86_64-linux-gnu-strip", + "*:*:READELF=$NATIVEPREFIX/bin/x86_64-linux-gnu-readelf", + "*:*:LD=$NATIVEPREFIX/bin/x86_64-linux-gnu-ld", + "*:*:NM=$NATIVEPREFIX/bin/x86_64-linux-gnu-nm", }, }, "aarch64-linux-gnu": { @@ -249,21 +241,21 @@ var SupportedHosts = map[string]*Host{ "*:*:ARCH=aarch64", "*:*:CMAKE_SYSTEM_NAME=Linux", "*:*:CC_target=aarch64-linux-gnu", - "*:*:CC=aarch64-linux-gnu-gcc", - "*:*:CXX=aarch64-linux-gnu-g++", - "*:*:CXXFLAGS= --sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/aarch64-linux-gnu -I$PREFIX/usr/include", + "*:*:CC=$NATIVEPREFIX/bin/aarch64-linux-gnu-gcc", + "*:*:CXX=$NATIVEPREFIX/bin/aarch64-linux-gnu-g++", + "*:*:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/aarch64-linux-gnu -I$PREFIX/usr/include", "*:*:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", "*:*:CPPFLAGS=-I$PREFIX/include -I$PREFIX/usr/include", - "*:*:RANLIB=aarch64-linux-gnu-ranlib", - "*:*:AR=aarch64-linux-gnu-ar", - "*:*:AS=aarch64-linux-gnu-as", - "*:*:LIBTOOL=aarch64-linux-gnu-libtool", - "*:*:OBJCOPY=aarch64-linux-gnu-objcopy", - "*:*:OBJDUMP=aarch64-linux-gnu-objdump", - "*:*:STRIP=aarch64-linux-gnu-strip", - "*:*:READELF=aarch64-linux-gnu-readelf", - "*:*:LD=aarch64-linux-gnu-ld", - "*:*:NM=aarch64-linux-gnu-nm", + "*:*:RANLIB=$NATIVEPREFIX/bin/aarch64-linux-gnu-ranlib", + "*:*:AR=$NATIVEPREFIX/bin/aarch64-linux-gnu-ar", + "*:*:AS=$NATIVEPREFIX/bin/aarch64-linux-gnu-as", + "*:*:LIBTOOL=$NATIVEPREFIX/bin/aarch64-linux-gnu-libtool", + "*:*:OBJCOPY=$NATIVEPREFIX/bin/aarch64-linux-gnu-objcopy", + "*:*:OBJDUMP=$NATIVEPREFIX/bin/aarch64-linux-gnu-objdump", + "*:*:STRIP=$NATIVEPREFIX/bin/aarch64-linux-gnu-strip", + "*:*:READELF=$NATIVEPREFIX/bin/aarch64-linux-gnu-readelf", + "*:*:LD=$NATIVEPREFIX/bin/aarch64-linux-gnu-ld", + "*:*:NM=$NATIVEPREFIX/bin/aarch64-linux-gnu-nm", }, }, "aarch64-linux-android": { @@ -275,17 +267,15 @@ var SupportedHosts = map[string]*Host{ "*:*:ARCH=aarch64", "*:*:CMAKE_SYSTEM_NAME=Android", "*:*:CC_target=aarch64-linux-android", - "*:*:CC=aarch64-linux-android21-clang", - "*:*:CXX=aarch64-linux-android21-clang++", - "*:*:CFLAGS=$CFLAGS", - "*:*:CPPFLAGS=", + "*:*:CC=$NATIVEPREFIX/bin/aarch64-linux-android21-clang", + "*:*:CXX=$NATIVEPREFIX/bin/aarch64-linux-android21-clang++", "*:*:CXXFLAGS=$CXXFLAGS -stdlib=libc++", - "*:*:RANLIB=llvm-ranlib", - "*:*:AR=llvm-ar", - "*:*:STRIP=llvm-strip", - "*:*:NM=llvm-nm", - "*:*:AS=llvm-as", - "*:*:LIBTOOL=libtool", + "*:*:RANLIB=$NATIVEPREFIX/bin/llvm-ranlib", + "*:*:AR=$NATIVEPREFIX/bin/llvm-ar", + "*:*:STRIP=$NATIVEPREFIX/bin/llvm-strip", + "*:*:NM=$NATIVEPREFIX/bin/llvm-nm", + "*:*:AS=$NATIVEPREFIX/bin/llvm-as", + "*:*:LIBTOOL=$NATIVEPREFIX/bin/libtool", "*:*:ANDROID_NDK_HOME=$NATIVEPREFIX/", "*:*:LDFLAGS=$LDFLAGS -lc -lc++abi -lm", }, @@ -299,19 +289,18 @@ var SupportedHosts = map[string]*Host{ "*:*:ARCH=x86_64", "*:*:CMAKE_SYSTEM_NAME=Android", "*:*:CC_target=x86_64-linux-android", - "*:*:CC=x86_64-linux-android21-clang", - "*:*:CXX=x86_64-linux-android21-clang++", - "*:*:CFLAGS=$CFLAGS", - "*:*:CPPFLAGS=", + "*:*:CC=$NATIVEPREFIX/bin/x86_64-linux-android21-clang", + "*:*:CXX=$NATIVEPREFIX/bin/x86_64-linux-android21-clang++", "*:*:CXXFLAGS=$CXXFLAGS -stdlib=libc++", - "*:*:RANLIB=llvm-ranlib", - "*:*:AR=llvm-ar", - "*:*:NM=llvm-nm", - "*:*:STRIP=llvm-strip", - "*:*:AS=llvm-as", - "*:*:LIBTOOL=libtool", + "*:*:RANLIB=$NATIVEPREFIX/bin/llvm-ranlib", + "*:*:AR=$NATIVEPREFIX/bin/llvm-ar", + "*:*:NM=$NATIVEPREFIX/bin/llvm-nm", + "*:*:STRIP=$NATIVEPREFIX/bin/llvm-strip", + "*:*:AS=$NATIVEPREFIX/bin/llvm-as", + "*:*:LIBTOOL=$NATIVEPREFIX/bin/libtool", "*:*:ANDROID_NDK_HOME=$NATIVEPREFIX/", - "*:*:LDFLAGS=$LDFLAGS -lc -lc++abi -lm"}, + "*:*:LDFLAGS=$LDFLAGS -lc -lc++abi -lm", + }, }, "armv7a-linux-androideabi": { Triplet: "armv7a-linux-androideabi", @@ -322,17 +311,15 @@ var SupportedHosts = map[string]*Host{ "*:*:ARCH=armv7a", "*:*:CMAKE_SYSTEM_NAME=Android", "*:*:CC_target=armv7a-linux-androideabi", - "*:*:CC=armv7a-linux-androideabi21-clang", - "*:*:CXX=armv7a-linux-androideabi21-clang++", - "*:*:CFLAGS=$CFLAGS", - "*:*:CPPFLAGS=", + "*:*:CC=$NATIVEPREFIX/bin/armv7a-linux-androideabi21-clang", + "*:*:CXX=$NATIVEPREFIX/bin/armv7a-linux-androideabi21-clang++", "*:*:CXXFLAGS=$CXXFLAGS -stdlib=libc++", - "*:*:RANLIB=llvm-ranlib", - "*:*:AR=llvm-ar", - "*:*:NM=llvm-nm", - "*:*:STRIP=llvm-strip", - "*:*:AS=llvm-as", - "*:*:LIBTOOL=libtool", + "*:*:RANLIB=$NATIVEPREFIX/bin/llvm-ranlib", + "*:*:AR=$NATIVEPREFIX/bin/llvm-ar", + "*:*:NM=$NATIVEPREFIX/bin/llvm-nm", + "*:*:STRIP=$NATIVEPREFIX/bin/llvm-strip", + "*:*:AS=$NATIVEPREFIX/bin/llvm-as", + "*:*:LIBTOOL=$NATIVEPREFIX/bin/libtool", "*:*:ANDROID_NDK_HOME=$NATIVEPREFIX/", "*:*:LDFLAGS=$LDFLAGS -lc -lc++abi -lm"}, }, diff --git a/packages/native/binutils@2.45.json b/packages/native/binutils@2.46.0.json similarity index 79% rename from packages/native/binutils@2.45.json rename to packages/native/binutils@2.46.0.json index addd4be..1e58b58 100644 --- a/packages/native/binutils@2.45.json +++ b/packages/native/binutils@2.46.0.json @@ -1,17 +1,18 @@ { - "package": "native/binutils@2.45", - "version": "2.45", + "package": "native/binutils@2.46.0", + "version": "2.46.0", "type": "native", "download": [ { "kind": "tar.bz2", - "sha256": "1393f90db70c2ebd785fb434d6127f8888c559d5eeb9c006c354b203bab3473e", - "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.45.tar.bz2" + "sha256": "0f3152632a2a9ce066f20963e9bb40af7cf85b9b6c409ed892fd0676e84ecd12", + "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.46.0.tar.bz2" } ], "dependencies": [ "*:*:native/bison", "*:*:native/libiconv", + "*:*:native/libtool", "*:*:native/make", "*:*:native/perl", "*:*:native/pkgconf", @@ -26,9 +27,7 @@ "*:*:config_opts=$config_opts --with-system-zlib", "*:*:config_opts=$config_opts --enable-targets=all", "*:*:config_opts=$config_opts --libdir=$NATIVEPREFIX/lib", - "*:*:config_opts=$config_opts --infodir=$NATIVEPREFIX/share/info", - "*:*:CPPFLAGS=-I$NATIVEPREFIX/include", - "*:*:LDFLAGS=-L$NATIVEPREFIX/lib" + "*:*:config_opts=$config_opts --infodir=$NATIVEPREFIX/share/info" ], "steps": [ "*:*:mkdir -p build", diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index f39f3c8..db7131b 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -13,7 +13,7 @@ "*:*:native/autoconf", "*:*:native/automake", "*:*:native/bash", - "*:*:native/binutils@2.45", + "*:*:native/binutils@2.46.0", "*:*:native/bison", "*:*:native/bzip2", "*:*:native/file", diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index a77c5c1..9bdae0c 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -121,7 +121,7 @@ "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/autoconf", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/automake", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bash", - "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/binutils@2.45", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/binutils@2.46.0", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bison", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bzip2", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/coreutils", diff --git a/packages/tor.json b/packages/tor.json index f8a1abc..854bdcf 100644 --- a/packages/tor.json +++ b/packages/tor.json @@ -1,11 +1,11 @@ { "package": "tor", - "version": "tor-0.4.8.20", + "version": "tor-0.4.9.8", "type": "host", "download": [ { "kind": "git", - "sha256": "106dcfa18c1a9539cb97337e57954ff89685840e", + "sha256": "e170cdcfebd45f6d098e3d811e2b1e1d120df184", "url": "http://gitlab.torproject.org/tpo/core/tor.git" } ], diff --git a/packages/zlib.json b/packages/zlib.json index aae5eb1..de0259b 100644 --- a/packages/zlib.json +++ b/packages/zlib.json @@ -11,7 +11,8 @@ ], "dependencies": [ "*:*:native/_", - "*:*:native/libtool" + "*:*:native/libtool", + "*:*:native/sed" ], "build": { "env": [ @@ -21,10 +22,10 @@ ], "steps": [ "*:*:./configure $config_opts", - "*:*-android*:sed -i.bak s/^AR=.\\*$/AR=\"llvm-ar\"/ Makefile", - "*:*-android*:sed -i.bak s/^ARFLAGS=.\\*$/ARFLAGS=\"rcs\"/ Makefile", - "*:*-linux-gnu:sed -i.bak s/^AR=.\\*$/AR=\"$AR\"/ Makefile", - "*:*-linux-gnu:sed -i.bak s/^ARFLAGS=.\\*$/ARFLAGS=\"rcs\"/ Makefile", + "*:*-android*:sed -i.bak s\\|^AR=.\\*$\\|AR=\"llvm-ar\"\\| Makefile", + "*:*-android*:sed -i.bak s\\|^ARFLAGS=.\\*$\\|ARFLAGS=\"rcs\"\\| Makefile", + "*:*-linux-gnu:sed -i.bak s\\|^AR=.\\*$\\|AR=\"$AR\"\\| Makefile", + "*:*-linux-gnu:sed -i.bak s\\|^ARFLAGS=.\\*$\\|ARFLAGS=\"rcs\"\\| Makefile", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/sources.json b/sources.json index a1bf835..a3ab094 100644 --- a/sources.json +++ b/sources.json @@ -17,7 +17,7 @@ }, "http://gitlab.torproject.org/tpo/core/tor.git": { "refs": [ - "106dcfa18c1a9539cb97337e57954ff89685840e" + "e170cdcfebd45f6d098e3d811e2b1e1d120df184" ] }, "https://android.googlesource.com/platform/bionic": { From 751644c0ddc5b9e0de8285494aaba7640bc9ed40 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 2 Jun 2026 16:05:03 +0200 Subject: [PATCH 120/200] fix x86_64-linux-android --- packages/openssl.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/openssl.json b/packages/openssl.json index 8e4ff6d..895de75 100644 --- a/packages/openssl.json +++ b/packages/openssl.json @@ -29,12 +29,13 @@ "*:*:config_opts=$config_opts no-tests", "*:*:config_opts=$config_opts no-unit-test", "*:*linux*:config_opts=$config_opts -fPIC -Wa,--noexecstack", - "*:x86_64-linux*:config_opts=$config_opts linux-x86_64", + "*:x86_64-linux-gnu:config_opts=$config_opts linux-x86_64", "*:i686-linux*:config_opts=$config_opts linux-generic32", "*:arm-linux*:config_opts=$config_opts linux-generic32", "*:aarch64-linux-gnu:config_opts=$config_opts linux-generic64", "*:armv7a-linux-androideabi:config_opts=$config_opts android-arm", "*:aarch64-linux-android:config_opts=$config_opts android-arm64", + "*:x86_64-linux-android:config_opts=$config_opts android-x86_64", "*:aarch64-apple-darwin:config_opts=$config_opts darwin64-arm64-cc", "*:aarch64-apple-ios*:config_opts=$config_opts darwin64-arm64-cc", "*:x86_64-apple-darwin:config_opts=$config_opts darwin64-x86_64-cc", From f060b28a0cf32f9ae626a143a029f484bf7b31a6 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 7 Jun 2026 01:30:59 +0200 Subject: [PATCH 121/200] fix: binutils --- packages/native/binutils@2.42.json | 1 + packages/native/binutils@2.46.0.json | 1 + 2 files changed, 2 insertions(+) diff --git a/packages/native/binutils@2.42.json b/packages/native/binutils@2.42.json index 5d2ffd2..7f6e7d8 100644 --- a/packages/native/binutils@2.42.json +++ b/packages/native/binutils@2.42.json @@ -25,6 +25,7 @@ "*:*:config_opts=$config_opts --disable-werror", "*:*:config_opts=$config_opts --with-system-zlib", "*:*:config_opts=$config_opts --enable-targets=all", + "*:*:config_opts=$config_opts --disable-gprofng", "*:*:config_opts=$config_opts --libdir=$NATIVEPREFIX/lib", "*:*:config_opts=$config_opts --infodir=$NATIVEPREFIX/share/info", "*:*:CPPFLAGS=-I$NATIVEPREFIX/include", diff --git a/packages/native/binutils@2.46.0.json b/packages/native/binutils@2.46.0.json index 1e58b58..08deea2 100644 --- a/packages/native/binutils@2.46.0.json +++ b/packages/native/binutils@2.46.0.json @@ -26,6 +26,7 @@ "*:*:config_opts=$config_opts --disable-werror", "*:*:config_opts=$config_opts --with-system-zlib", "*:*:config_opts=$config_opts --enable-targets=all", + "*:*:config_opts=$config_opts --disable-gprofng", "*:*:config_opts=$config_opts --libdir=$NATIVEPREFIX/lib", "*:*:config_opts=$config_opts --infodir=$NATIVEPREFIX/share/info" ], From 5783f30aae68a390cfd54a21b0c709f95976e115 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 23 Jun 2026 18:29:26 +0200 Subject: [PATCH 122/200] .... --- builder/builder_darwin_arm64.go | 23 +++++++++----- pack/build.go | 4 +-- pack/info.go | 8 +++-- packages/boost@1_83_0.json | 9 ++++-- packages/boost@1_90_0.json | 9 ++++-- packages/expat.json | 9 +++++- packages/libevent.json | 8 +++++ packages/libiconv.json | 9 ++++-- packages/native/7zip.json | 21 +++++++------ packages/native/_.json | 3 +- packages/native/_/_.json | 19 ++++++++++++ packages/native/_/darwin_arm64_clang21.json | 18 +++++++++++ packages/native/android_ndk.json | 5 ++-- packages/native/apple-sdk.json | 6 +++- packages/native/autoconf.json | 1 + packages/native/automake.json | 1 + packages/native/bash.json | 6 ++-- packages/native/binutils@2.42.json | 9 +++--- packages/native/binutils@2.46.0.json | 7 +++-- packages/native/bison.json | 2 ++ packages/native/boost-b2@1_83_0.json | 8 +++-- packages/native/boost-b2@1_90_0.json | 10 +++++-- packages/native/bzip2.json | 7 +++-- packages/native/cctools-port.json | 3 +- packages/native/cmake-toolchain.json | 3 ++ packages/native/cmake.json | 10 ++++--- packages/native/config.json | 3 ++ packages/native/coreutils.json | 6 ++-- packages/native/cpio.json | 1 + packages/native/crosstool-ng.json | 2 ++ packages/native/ct-tools.json | 1 + packages/native/curl.json | 6 ++-- packages/native/dart-bin@3.4.0-247.0.dev.json | 3 +- packages/native/dart@3.5.0-278.0.dev.json | 6 ++-- packages/native/dart@3.5.0-307.0.dev.json | 5 ++-- packages/native/dart@3.6.0-2.0.dev.json | 5 ++-- packages/native/dart@3.7.0-224.0.dev.json | 5 ++-- packages/native/dart@3.7.0-232.0.dev.json | 5 ++-- packages/native/dart@3.7.0-27.0.dev.json | 5 ++-- packages/native/dart@3.7.0.json | 5 ++-- packages/native/dart@3.8.0-171.0.dev.json | 5 ++-- packages/native/dart@3.8.0-237.0.dev.json | 5 ++-- packages/native/dart@3.9.0-27.0.dev.json | 5 ++-- packages/native/dart@3.9.0-3.0.dev.json | 5 ++-- packages/native/dart@3.9.4.json | 5 ++-- packages/native/diffutils.json | 30 +++++++++++++++++++ packages/native/dpkg.json | 1 + packages/native/expat.json | 1 + packages/native/file.json | 4 ++- packages/native/findutils.json | 29 ++++++++++++++++++ packages/native/flex.json | 8 ++++- packages/native/gawk.json | 7 +++-- packages/native/gawk@5.2.2.json | 7 +++-- packages/native/gettext.json | 4 ++- packages/native/git.json | 10 +++++-- packages/native/glib2.json | 1 + packages/native/gmp_shared.json | 4 ++- packages/native/gmp_static.json | 4 ++- packages/native/gn.json | 1 + packages/native/go-bin@1.25.json | 1 + packages/native/go.json | 4 ++- packages/native/go@1.25.json | 4 ++- packages/native/gperf.json | 4 ++- packages/native/grep.json | 25 ++++++++++++++++ packages/native/gzip.json | 25 ++++++++++++++++ packages/native/help2man.json | 5 +++- packages/native/icu4c.json | 7 +++-- packages/native/libc++.json | 2 ++ packages/native/libiconv.json | 1 + packages/native/libmd.json | 5 ++-- packages/native/libpsl.json | 5 +++- packages/native/libtapi.json | 11 +++---- packages/native/libtool.json | 9 ++++-- packages/native/libxml2.json | 4 ++- packages/native/llvm-ar.json | 2 ++ packages/native/llvm-nm.json | 2 ++ packages/native/llvm-objcopy.json | 2 ++ packages/native/llvm-profdata.json | 2 ++ packages/native/llvm-strip.json | 2 ++ packages/native/llvm.json | 28 +++++++++++++++++ packages/native/llvm@google@18.0.0git.json | 4 ++- packages/native/llvm@google@19.0.1.json | 1 + packages/native/llvm@google@r563880.json | 1 + packages/native/m4.json | 7 +++-- packages/native/make.json | 8 +++-- packages/native/meson.json | 1 + packages/native/mpc.json | 4 ++- packages/native/mpfr.json | 4 ++- packages/native/ncurses.json | 4 ++- packages/native/ndk.json | 1 + packages/native/ninja.json | 4 ++- packages/native/nproc.json | 3 ++ packages/native/openssl.json | 1 + packages/native/osx-cross.json | 17 +++++++++-- packages/native/patch.json | 4 ++- packages/native/pbzx.json | 1 + packages/native/pcre2.json | 4 ++- packages/native/perl.json | 11 ++++--- packages/native/pkgconf.json | 4 ++- packages/native/protobuf.json | 6 +++- packages/native/python@3.11.json | 5 +++- packages/native/python@3.14.json | 17 ++++++++--- packages/native/qemu.json | 4 ++- packages/native/rsync.json | 4 ++- packages/native/rust.json | 1 + packages/native/rust@1_90_0-mrustc.json | 5 +++- packages/native/rust@1_90_0.json | 1 + packages/native/rust@1_91_0.json | 1 + packages/native/rust@1_92_0.json | 1 + packages/native/rust@1_93_0.json | 1 + packages/native/sed.json | 7 +++-- packages/native/tar.json | 4 ++- packages/native/texinfo.json | 4 ++- packages/native/triehash.json | 2 +- packages/native/unistring.json | 4 ++- packages/native/unzip.json | 1 + packages/native/xar.json | 11 ++++--- packages/native/xmlto.json | 6 +++- packages/native/xz.json | 8 +++-- packages/native/zlib.json | 4 ++- packages/openssl.json | 2 ++ packages/protobuf.json | 11 +++++-- packages/sodium.json | 7 ++++- packages/tor.json | 6 ++++ packages/torch.json | 2 ++ packages/unbound.json | 4 +++ packages/xz.json | 13 ++++++-- packages/zeromq.json | 9 ++++-- packages/zlib.json | 7 +++-- packages/zstd.json | 6 +++- sources.json | 2 +- utils/path.go | 2 +- 132 files changed, 648 insertions(+), 166 deletions(-) create mode 100644 packages/native/_/_.json create mode 100644 packages/native/_/darwin_arm64_clang21.json create mode 100644 packages/native/diffutils.json create mode 100644 packages/native/findutils.json create mode 100644 packages/native/grep.json create mode 100644 packages/native/gzip.json create mode 100644 packages/native/llvm.json diff --git a/builder/builder_darwin_arm64.go b/builder/builder_darwin_arm64.go index c64e418..723932f 100644 --- a/builder/builder_darwin_arm64.go +++ b/builder/builder_darwin_arm64.go @@ -7,15 +7,22 @@ var HostBuilder = Builder{ "*:*:HOST=aarch64-apple-darwin", "*:*:TARGET=aarch64-apple-darwin", "*:*:OSX_MIN_VERSION=13", - "*:*:CC=/usr/bin/clang", - "*:*:CXX=/usr/bin/clang++", - "*:*:AR=/usr/bin/ar", - "*:*:RANLIB=/usr/bin/ranlib", - "*:*:STRIP=/usr/bin/strip", - "*:*:NM=/usr/bin/nm", - "*:*:OTOOL=/usr/bin/otool", - "*:*:INSTALL_NAME_TOOL=/usr/bin/install_name_tool", + "*:*:CC=$NATIVEPREFIX/_/bin/clang", + "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "*:*:LDFLAGS=$LDFLAGS -stdlib=libc++ -lc++ -lc++abi", + "*:*:AR=$NATIVEPREFIX/_/bin/ar", + "*:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", + "*:*:STRIP=$NATIVEPREFIX/_/bin/strip", + "*:*:NM=$NATIVEPREFIX/_/bin/nm", + "*:*:OTOOL=$NATIVEPREFIX/_/bin/otool", + "*:*:INSTALL_NAME_TOOL=$NATIVEPREFIX/_/bin/install_name_tool", "*:*:BUILDER_GOOS=" + runtime.GOOS, "*:*:BUILDER_GOARCH=" + runtime.GOARCH, + // lt_cv_prog_gnu_ld=no + // helps with resolving ld64.lld pretending to be GNU on while it's actually not, this occured in libtool and pkgconf + // so I assume this is better here as a general fix. + // ld64.lld: error: unknown argument '-soname' + // ld64.lld: error: unknown argument '-retain-symbols-file' + "*:*:lt_cv_prog_gnu_ld=no", }, } diff --git a/pack/build.go b/pack/build.go index 20628ec..b918c1b 100644 --- a/pack/build.go +++ b/pack/build.go @@ -188,7 +188,7 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { "HOST=" + h.Triplet, "PREFIX=" + h.GetEnvPath(), "NATIVEPREFIX=" + h.GetNativeEnvPath(), - "PATH=" + h.GetNativeEnvPath() + "/bin:" + env["PATH"] + ":" + pathEnv + ":" + h.GetEnvPath() + "/bin", + "PATH=" + h.GetNativeEnvPath() + "/bin:" + env["PATH"] + ":" + pathEnv + ":" + h.GetEnvPath() + "/bin" + ":" + h.GetNativeEnvPath() + "/_/bin", }...) for k, v := range env { cmd.Env = append(cmd.Env, k+"="+v) @@ -342,7 +342,7 @@ func (p *Package) StartShell(h *host.Host) { "HOST=" + h.Triplet, "PREFIX=" + h.GetEnvPath(), "NATIVEPREFIX=" + h.GetNativeEnvPath(), - "PATH=" + h.GetNativeEnvPath() + "//bin:" + env["PATH"] + ":" + pathEnv, + "PATH=" + h.GetNativeEnvPath() + "/bin:" + env["PATH"] + ":" + pathEnv, "TERM=" + os.Getenv("TERM"), }...) diff --git a/pack/info.go b/pack/info.go index cd2a77b..8dcd100 100644 --- a/pack/info.go +++ b/pack/info.go @@ -82,7 +82,7 @@ func (p *Package) GeneratePackageInfo(h *host.Host) string { delete(env, "PATH") delete(env, "PREFIX") pkgs["_env"] = env - if (p.Type == "native") { + if p.Type == "native" { pkgs["_prefix"] = h.GetNativeEnvPath() } else { pkgs["_prefix"] = h.GetEnvPath() @@ -151,7 +151,7 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { home = h.GetNativeEnvPath() + "/home/user" } env := map[string]string{ - "PATH": h.GetNativeEnvPath() + "/bin:" + utils.GetHostPath(), + "PATH": h.GetNativeEnvPath() + "/bin:" + h.GetNativeEnvPath() + "/_/bin:" + utils.GetHostPath(), "HOST": h.Triplet, "PREFIX": h.GetEnvPath(), "NATIVEPREFIX": h.GetNativeEnvPath(), @@ -166,6 +166,8 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { if p.Type == "native" { env = utils.AppendEnv(env, []string{ "*:*:CFLAGS=$CFLAGS -I" + h.GetNativeEnvPath() + "/include", + "*:*:CXXFLAGS=$CXXFLAGS -I" + h.GetNativeEnvPath() + "/include", + "*:*:CPPFLAGS=$CPPFLAGS -I" + h.GetNativeEnvPath() + "/include", "*:*:LDFLAGS=$LDFLAGS -L" + h.GetNativeEnvPath() + "/lib", "*:*:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:" + h.GetNativeEnvPath() + "/lib", "*:*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetNativeEnvPath() + "/lib/pkgconfig", @@ -179,6 +181,8 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { "*:*:CFLAGS=$CFLAGS -I" + h.GetEnvPath() + "/usr/include", "*:*:CXXFLAGS=$CXXFLAGS -I" + h.GetEnvPath() + "/include", "*:*:CXXFLAGS=$CXXFLAGS -I" + h.GetEnvPath() + "/usr/include", + "*:*:CPPFLAGS=$CPPFLAGS -I" + h.GetEnvPath() + "/include", + "*:*:CPPFLAGS=$CPPFLAGS -I" + h.GetEnvPath() + "/usr/include", "*:*:LDFLAGS=$LDFLAGS -L" + h.GetEnvPath() + "/lib", "*:*:LD_LIBRARY_PATH=" + h.GetNativeEnvPath() + "/lib", "*:*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:" + h.GetEnvPath() + "/lib/pkgconfig", diff --git a/packages/boost@1_83_0.json b/packages/boost@1_83_0.json index a49d11e..2bc25d6 100644 --- a/packages/boost@1_83_0.json +++ b/packages/boost@1_83_0.json @@ -11,6 +11,8 @@ ], "dependencies": [ "*:*:native/_", + "*:*:native/bash", + "*:*:native/coreutils", "*:*:native/boost-b2@1_83_0", "*:*:native/cmake", "*:*:native/python@3.14", @@ -28,8 +30,8 @@ "*:*-linux-android*:target_os=android", "*:*-mingw32*:target_os=windows", "*:*-linux-gnu*:target_os=linux", - "*:*:config_opts=variant=release --layout=system --without-python --user-config=user-config.jam", - "*:*:config_opts=$config_opts threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1", + "*:*:config_opts=variant=release --layout=system --without-python --without-mpi --without-graph_parallel --user-config=user-config.jam", + "*:*:config_opts=$config_opts threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1 -sICONV_PATH=$PREFIX", "*:aarch64-apple-darwin:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin runtime-link=shared", "*:x86_64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:aarch64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", @@ -58,6 +60,9 @@ ], "steps": [ "*:*:echo \"using $toolset : $toolset2 : $CXX $CXXFLAGS : \"$CXXFLAGS\" \"$LDFLAGS\" \"$AR\" \"$ARFLAGS\" \"$STRIP\" \"$RANLIB\" \"$WINDRES\" \"$target_os\" : ;\" > user-config.jam", + "*:*:echo \"using lzma : : $PREFIX/include $PREFIX/lib ;\" >> user-config.jam", + "*:*:echo \"using zstd : : $PREFIX/include $PREFIX/lib ;\" >> user-config.jam", + "*:*:echo \"using openssl : : $PREFIX/include $PREFIX/lib ;\" >> user-config.jam", "*:*:b2 -j$NUM_CORES --prefix=$STAGING_DIR$PREFIX $config_opts", "*:*:b2 -j1 --prefix=$STAGING_DIR$PREFIX $config_opts stage", "*:*:b2 -d0 -j1 --prefix=$STAGING_DIR$PREFIX $config_opts install" diff --git a/packages/boost@1_90_0.json b/packages/boost@1_90_0.json index 6c37b37..736d530 100644 --- a/packages/boost@1_90_0.json +++ b/packages/boost@1_90_0.json @@ -11,6 +11,8 @@ ], "dependencies": [ "*:*:native/_", + "*:*:native/bash", + "*:*:native/coreutils", "*:*:native/boost-b2@1_90_0", "*:*:native/cmake", "*:*:native/python@3.14", @@ -28,8 +30,8 @@ "*:*-linux-android*:target_os=android", "*:*-mingw32*:target_os=windows", "*:*-linux-gnu*:target_os=linux", - "*:*:config_opts=variant=release --layout=system --without-python --user-config=user-config.jam", - "*:*:config_opts=$config_opts threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1", + "*:*:config_opts=variant=release --layout=system --without-python --without-mpi --without-graph_parallel --user-config=user-config.jam", + "*:*:config_opts=$config_opts threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1 -sICONV_PATH=$PREFIX", "*:aarch64-apple-darwin:config_opts=$config_opts address-model=64 threadapi=pthread architecture=arm --toolset=darwin runtime-link=shared", "*:x86_64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", "*:aarch64-linux-android:config_opts=$config_opts address-model=64 threadapi=pthread runtime-link=static target-os=$target_os binary-format=elf abi=aapcs", @@ -58,6 +60,9 @@ ], "steps": [ "*:*:echo \"using $toolset : $toolset2 : $CXX $CXXFLAGS : \"$CXXFLAGS\" \"$LDFLAGS\" \"$AR\" \"$ARFLAGS\" \"$STRIP\" \"$RANLIB\" \"$WINDRES\" \"$target_os\" : ;\" > user-config.jam", + "*:*:echo \"using lzma : : $PREFIX/include $PREFIX/lib ;\" >> user-config.jam", + "*:*:echo \"using zstd : : $PREFIX/include $PREFIX/lib ;\" >> user-config.jam", + "*:*:echo \"using openssl : : $PREFIX/include $PREFIX/lib ;\" >> user-config.jam", "*:*:b2 -j$NUM_CORES --prefix=$STAGING_DIR$PREFIX $config_opts", "*:*:b2 -j1 --prefix=$STAGING_DIR$PREFIX $config_opts stage", "*:*:b2 -d0 -j1 --prefix=$STAGING_DIR$PREFIX $config_opts install" diff --git a/packages/expat.json b/packages/expat.json index d75317e..1fa8717 100644 --- a/packages/expat.json +++ b/packages/expat.json @@ -11,6 +11,13 @@ ], "dependencies": [ "*:*:native/_", + "*:*:native/bash", + "*:*:native/sed", + "*:*:native/coreutils", + "*:*:native/findutils", + "*:*:native/make", + "*:*:native/grep", + "*:*:native/gawk", "*:*:libiconv" ], "build": { @@ -21,7 +28,7 @@ "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios" ], "steps": [ - "*:*:./configure --host=$BUILD_HOST --prefix=$PREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", + "*:*:bash ./configure --host=$BUILD_HOST --prefix=$PREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/libevent.json b/packages/libevent.json index 4639ad8..85cdefa 100644 --- a/packages/libevent.json +++ b/packages/libevent.json @@ -13,6 +13,14 @@ "*:*:native/_", "*:*:native/autoconf", "*:*:native/automake", + "*:*:native/coreutils", + "*:*:native/bash", + "*:*:native/libtool", + "*:*:native/gawk", + "*:*:native/m4", + "*:*:native/make", + "*:*:native/grep", + "*:*:native/sed", "*:*:native/cmake", "*:*:native/libtool", "*:*:native/m4", diff --git a/packages/libiconv.json b/packages/libiconv.json index 9661246..82d0d5f 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -11,6 +11,11 @@ ], "dependencies": [ "*:*:native/_", + "*:*:native/bash", + "*:*:native/sed", + "*:*:native/gawk", + "*:*:native/grep", + "*:*:native/coreutils", "*:*:native/config", "*:*:native/make" ], @@ -20,7 +25,7 @@ "*:*:CPPFLAGS=$CPPFLAGS -fPIC", "*:*:BUILD_HOST=$HOST", "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios", - "*:*:config_opts=--host=$BUILD_HOST --prefix=$PREFIX --disable-nls --enable-static --enable-shared", + "*:*:config_opts=--host=$BUILD_HOST --prefix=$PREFIX --disable-nls --enable-static --disable-shared", "*:*:config_opts=$config_opts --disable-malloca", "*:*:config_opts=$config_opts", "*:*linux:config_opts=$config_opts --with-pic", @@ -33,7 +38,7 @@ "*:*:cp -f $NATIVEPREFIX/share/config/config.guess build-aux/", "*:*:cp -f $NATIVEPREFIX/share/config/config.sub build-aux/", "*:*:sed -i.bak 's|#include |#include \"stdckdint.in.h\"|' ./srclib/malloca.c", - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", "*:*:mkdir -p $STAGING_DIR$PREFIX/include", diff --git a/packages/native/7zip.json b/packages/native/7zip.json index 21d3d1b..c752b75 100644 --- a/packages/native/7zip.json +++ b/packages/native/7zip.json @@ -1,28 +1,31 @@ { "package": "native/7zip", - "version": "25.01", + "version": "26.01", "type": "native", "download": [ { "kind": "git", - "sha256": "5e96a8279489832924056b1fa82f29d5837c9469", + "sha256": "8c63d71ff886bda90c86db28466287f977374237", "url": "https://github.com/ip7z/7zip.git" } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/make", - "*:*:native/sed" + "*:*:native/sed", + "*:*:native/diffutils" ], "build": { "env": [], "steps": [ "*:*:sed -i.bak 's/-Werror //g' CPP/7zip/7zip_gcc.mak", - "darwin_arm64:*:cd CPP/7zip/Bundles/Format7zF && make -f ../../cmpl_mac_arm64.mak -j$NUM_CORES", - "darwin_amd64:*:cd CPP/7zip/Bundles/Format7zF && make -f ../../cmpl_mac_x64.mak -j$NUM_CORES", - "linux_*:*:cd CPP/7zip/Bundles/Format7zF && make -f ../../cmpl_clang.mak -j$NUM_CORES", - "darwin_arm64:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_mac_arm64.mak -j$NUM_CORES", - "darwin_amd64:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_mac_x64.mak -j$NUM_CORES", - "linux_*:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_clang.mak -j$NUM_CORES", + "darwin_*:*:sed -i.bak 's/LIB2 = -lpthread -ldl/LIB2 = -lpthread -ldl -lc++ -lc++abi/' CPP/7zip/7zip_gcc.mak", + "darwin_arm64:*:cd CPP/7zip/Bundles/Format7zF && make -f ../../cmpl_mac_arm64.mak CC=\"$CC\" CXX=\"$CXX\" -j$NUM_CORES", + "darwin_amd64:*:cd CPP/7zip/Bundles/Format7zF && make -f ../../cmpl_mac_x64.mak CC=\"$CC\" CXX=\"$CXX\" -j$NUM_CORES", + "linux_*:*:cd CPP/7zip/Bundles/Format7zF && make -f ../../cmpl_clang.mak CC=\"$CC\" CXX=\"$CXX\" -j$NUM_CORES", + "darwin_arm64:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_mac_arm64.mak CC=\"$CC\" CXX=\"$CXX\" -j$NUM_CORES", + "darwin_amd64:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_mac_x64.mak CC=\"$CC\" CXX=\"$CXX\" -j$NUM_CORES", + "linux_*:*:cd CPP/7zip/Bundles/Alone2 && make -f ../../cmpl_clang.mak CC=\"$CC\" CXX=\"$CXX\" -j$NUM_CORES", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib", "*:*:cp ./CPP/7zip/Bundles/Alone2/b/*/7zz $STAGING_DIR$NATIVEPREFIX/bin/7zz", diff --git a/packages/native/_.json b/packages/native/_.json index 3a74347..33ef40e 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -3,6 +3,7 @@ "version": "0.0.0", "type": "native", "dependencies": [ + "*:*:native/_/_", "*:*-android*:native/android_ndk", "*:*-apple-*:native/cctools-port", "*:*-apple-*:native/libtapi", @@ -23,7 +24,7 @@ "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", "*:*:rm -rf $STAGING_DIR$NATIVEPREFIX", "*:*:cp -a $NATIVEPREFIX $STAGING_DIR$NATIVEPREFIX", - "*:*:rm -rf $STAGING_DIR$NATIVEPREFIX/bootstrap", + "*:*:rm -rf $STAGING_DIR$NATIVEPREFIX/_", "*:*:mkdir -p $STAGING_DIR$PREFIX", "*:*:rm -rf $STAGING_DIR$PREFIX", "*:*:cp -a $PREFIX $STAGING_DIR$PREFIX", diff --git a/packages/native/_/_.json b/packages/native/_/_.json new file mode 100644 index 0000000..8db4ff0 --- /dev/null +++ b/packages/native/_/_.json @@ -0,0 +1,19 @@ +{ + "package": "native/_/_", + "version": "0.0.0", + "type": "native", + "dependencies": [ + "darwin_arm64:*:native/_/darwin_arm64_clang21" + ], + "build": { + "env": [ + "*:none:A_=This is a meta-package library that includes c and c++ compiler", + "*:none:B_=All packages included as dependencies (other than bootstrap packages) are copied over to staging dir." + ], + "steps": [ + "*:*:$NATIVEPREFIX/_/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:$NATIVEPREFIX/_/bin/rm -rf $STAGING_DIR$NATIVEPREFIX", + "*:*:$NATIVEPREFIX/_/bin/cp -a $NATIVEPREFIX $STAGING_DIR$NATIVEPREFIX" + ] + } +} \ No newline at end of file diff --git a/packages/native/_/darwin_arm64_clang21.json b/packages/native/_/darwin_arm64_clang21.json new file mode 100644 index 0000000..946d419 --- /dev/null +++ b/packages/native/_/darwin_arm64_clang21.json @@ -0,0 +1,18 @@ +{ + "package": "native/_/darwin_arm64_clang21", + "version": "0.0.0", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "735e9433e8961ab960b9a7c68a1f4ded5d0a6eecf8de58cd7bad80550ae184f1", + "url": "https://static.mrcyjanek.net/bootstrap/clang21-aarch64-apple-darwin.tar.xz" + } + ], + "build": { + "steps": [ + "*:*:./bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/_/", + "*:*:./bin/cp -a * $STAGING_DIR$NATIVEPREFIX/_/" + ] + } +} \ No newline at end of file diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index f6d7c09..7003aaf 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -17,8 +17,9 @@ } ], "dependencies": [ - "*:*:native/7zip", - "*:*:native/python@3.11" + "*:*-android*:native/7zip", + "*:*-android*:native/_/_", + "*:*-android*:native/python@3.11" ], "build": { "env": [ diff --git a/packages/native/apple-sdk.json b/packages/native/apple-sdk.json index ca2a5ba..60fb738 100644 --- a/packages/native/apple-sdk.json +++ b/packages/native/apple-sdk.json @@ -16,6 +16,9 @@ } ], "dependencies": [ + "*:*-apple-*:native/_/_", + "*:*-apple-*:native/bash", + "*:*-apple-*:native/coreutils", "*:*-apple-*:native/bzip2", "*:*-apple-*:native/cctools-port", "*:*-apple-*:native/cmake", @@ -32,7 +35,8 @@ "*:*-apple-*:native/pkgconf", "*:*-apple-*:native/python@3.11", "*:*-apple-*:native/xar", - "*:*-apple-*:native/xz" + "*:*-apple-*:native/xz", + "*:*:native/_/_" ], "build": { "env": [ diff --git a/packages/native/autoconf.json b/packages/native/autoconf.json index 17407ac..9821b43 100644 --- a/packages/native/autoconf.json +++ b/packages/native/autoconf.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/m4", "*:*:native/make", "*:*:native/perl" diff --git a/packages/native/automake.json b/packages/native/automake.json index 11fc530..005e604 100644 --- a/packages/native/automake.json +++ b/packages/native/automake.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/autoconf", "*:*:native/m4", "*:*:native/make", diff --git a/packages/native/bash.json b/packages/native/bash.json index c0529b9..0d43092 100644 --- a/packages/native/bash.json +++ b/packages/native/bash.json @@ -10,14 +10,16 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/make" ], "build": { "env": [], "steps": [ - "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:dash ./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES V=1", - "*:*:make install DESTDIR=$STAGING_DIR" + "*:*:make install DESTDIR=$STAGING_DIR", + "*:*:ln -sf $NATIVEPREFIX/bin/bash $STAGING_DIR$NATIVEPREFIX/bin/sh" ] } } \ No newline at end of file diff --git a/packages/native/binutils@2.42.json b/packages/native/binutils@2.42.json index 7f6e7d8..0f7989d 100644 --- a/packages/native/binutils@2.42.json +++ b/packages/native/binutils@2.42.json @@ -10,13 +10,16 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/bison", "*:*:native/libiconv", "*:*:native/make", + "*:*:native/grep", "*:*:native/perl", "*:*:native/pkgconf", "*:*:native/texinfo", - "*:*:native/zlib" + "*:*:native/zlib", + "*:*:native/diffutils" ], "build": { "env": [ @@ -27,9 +30,7 @@ "*:*:config_opts=$config_opts --enable-targets=all", "*:*:config_opts=$config_opts --disable-gprofng", "*:*:config_opts=$config_opts --libdir=$NATIVEPREFIX/lib", - "*:*:config_opts=$config_opts --infodir=$NATIVEPREFIX/share/info", - "*:*:CPPFLAGS=-I$NATIVEPREFIX/include", - "*:*:LDFLAGS=-L$NATIVEPREFIX/lib" + "*:*:config_opts=$config_opts --infodir=$NATIVEPREFIX/share/info" ], "steps": [ "*:*:mkdir -p build", diff --git a/packages/native/binutils@2.46.0.json b/packages/native/binutils@2.46.0.json index 08deea2..5e3fb73 100644 --- a/packages/native/binutils@2.46.0.json +++ b/packages/native/binutils@2.46.0.json @@ -10,14 +10,17 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/bison", "*:*:native/libiconv", "*:*:native/libtool", "*:*:native/make", - "*:*:native/perl", + "*:*:native/grep", + "*:*:native/perl", "*:*:native/pkgconf", "*:*:native/texinfo", - "*:*:native/zlib" + "*:*:native/zlib", + "*:*:native/diffutils" ], "build": { "env": [ diff --git a/packages/native/bison.json b/packages/native/bison.json index 1988d8b..b572eeb 100644 --- a/packages/native/bison.json +++ b/packages/native/bison.json @@ -10,8 +10,10 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/m4", "*:*:native/make", + "*:*:native/perl", "*:*:native/texinfo" ], "build": { diff --git a/packages/native/boost-b2@1_83_0.json b/packages/native/boost-b2@1_83_0.json index 16892ad..cc38317 100644 --- a/packages/native/boost-b2@1_83_0.json +++ b/packages/native/boost-b2@1_83_0.json @@ -9,15 +9,19 @@ "url": "http://downloads.sourceforge.net/project/boost/boost/1.83.0/boost_1_83_0.tar.bz2" } ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash" + ], "build": { "env": [ "*:*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,log", "*:*-w64-*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log" ], "steps": [ - "*:*:./bootstrap.sh --without-icu --with-libraries=$config_libraries", + "*:*:./tools/build/src/engine/build.sh --cxx=$CXX --cxxflags=\"$CXXFLAGS $LDFLAGS\"", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp b2 $STAGING_DIR$NATIVEPREFIX/bin/" + "*:*:cp tools/build/src/engine/b2 $STAGING_DIR$NATIVEPREFIX/bin/" ] } } \ No newline at end of file diff --git a/packages/native/boost-b2@1_90_0.json b/packages/native/boost-b2@1_90_0.json index 860a6c6..2f65908 100644 --- a/packages/native/boost-b2@1_90_0.json +++ b/packages/native/boost-b2@1_90_0.json @@ -9,15 +9,19 @@ "url": "http://downloads.sourceforge.net/project/boost/boost/1.90.0/boost_1_90_0.tar.bz2" } ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash" + ], "build": { "env": [ "*:*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,log", - "*:*-w64-*:config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log" + "*:*-w64-*:config_libraries=$config_libraries,locale" ], "steps": [ - "*:*:./bootstrap.sh --without-icu --with-libraries=$config_libraries", + "*:*:./tools/build/src/engine/build.sh --cxx=$CXX --cxxflags=\"$CXXFLAGS $LDFLAGS\"", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp b2 $STAGING_DIR$NATIVEPREFIX/bin/" + "*:*:cp tools/build/src/engine/b2 $STAGING_DIR$NATIVEPREFIX/bin/" ] } } \ No newline at end of file diff --git a/packages/native/bzip2.json b/packages/native/bzip2.json index 1ada685..590fb48 100644 --- a/packages/native/bzip2.json +++ b/packages/native/bzip2.json @@ -10,13 +10,16 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/diffutils", "*:*:native/make", - "*:*:native/openssl" + "*:*:native/openssl", + "*:*:native/sed" ], "build": { "steps": [ "*:*:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", - "*:*:make -j$NUM_CORES", + "*:*:make -j$NUM_CORES CC=\"$CC\"", "*:*:make install PREFIX=$STAGING_DIR$NATIVEPREFIX" ] } diff --git a/packages/native/cctools-port.json b/packages/native/cctools-port.json index 225ed64..296172d 100644 --- a/packages/native/cctools-port.json +++ b/packages/native/cctools-port.json @@ -16,7 +16,8 @@ "*:*-apple-*:native/openssl", "*:*-apple-*:native/xar", "*:*-apple-*:native/xz", - "*:*-apple-*:native/zlib" + "*:*-apple-*:native/zlib", + "*:*:native/_/_" ], "build": { "env": [ diff --git a/packages/native/cmake-toolchain.json b/packages/native/cmake-toolchain.json index b41d15b..1403fd2 100644 --- a/packages/native/cmake-toolchain.json +++ b/packages/native/cmake-toolchain.json @@ -9,6 +9,9 @@ "url": "https://github.com/MrCyjaneK/cmake-toolchain.git" } ], + "dependencies": [ + "*:*:native/_/_" + ], "build": { "env": [], "steps": [ diff --git a/packages/native/cmake.json b/packages/native/cmake.json index 8af12f6..1167fa8 100644 --- a/packages/native/cmake.json +++ b/packages/native/cmake.json @@ -10,16 +10,18 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/make", - "*:*:native/openssl" + "*:*:native/openssl", + "*:*:native/zlib" ], "build": { "env": [ - "*:*:OPENSSL_ROOT_DIR=$NATIVEPREFIX" + "*:*:OPENSSL_ROOT_DIR=$NATIVEPREFIX", + "*:*:ZLIB_ROOT=$NATIVEPREFIX" ], "steps": [ - "*:*:./bootstrap --parallel=$NUM_CORES", - "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:./bootstrap --prefix=$NATIVEPREFIX --parallel=$NUM_CORES --no-system-curl -- -DZLIB_ROOT=$NATIVEPREFIX -DOPENSSL_ROOT_DIR=$NATIVEPREFIX -DCMAKE_USE_OPENSSL=ON -DUSE_LIBIDN2:BOOL=OFF -DCMAKE_DISABLE_FIND_PACKAGE_Libidn2=TRUE", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/config.json b/packages/native/config.json index 5c74196..567e982 100644 --- a/packages/native/config.json +++ b/packages/native/config.json @@ -9,6 +9,9 @@ "url": "https://https.git.savannah.gnu.org/git/config.git" } ], + "dependencies": [ + "*:*:native/_/_" + ], "build": { "env": [], "steps": [ diff --git a/packages/native/coreutils.json b/packages/native/coreutils.json index 857437c..9d2baea 100644 --- a/packages/native/coreutils.json +++ b/packages/native/coreutils.json @@ -10,14 +10,16 @@ } ], "dependencies": [ - "*:*-apple-*:native/make" + "*:*:native/make", + "*:*:native/bash", + "*:*:native/_/_" ], "build": { "env": [ "*:*:config_opts=--prefix=$NATIVEPREFIX" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:DESTDIR=$STAGING_DIR make install" ] diff --git a/packages/native/cpio.json b/packages/native/cpio.json index 296b9f1..db593c4 100644 --- a/packages/native/cpio.json +++ b/packages/native/cpio.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/make" ], "build": { diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index db7131b..d931d3f 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/autoconf", "*:*:native/automake", "*:*:native/bash", @@ -26,6 +27,7 @@ "*:*:native/make", "*:*:native/ncurses", "*:*:native/patch", + "*:*:native/grep", "*:*:native/perl", "*:*:native/python@3.11", "*:*:native/rsync", diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 9bdae0c..1b97c92 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -118,6 +118,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/autoconf", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/automake", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/bash", diff --git a/packages/native/curl.json b/packages/native/curl.json index 65b8833..6529485 100644 --- a/packages/native/curl.json +++ b/packages/native/curl.json @@ -10,16 +10,18 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/libpsl", "*:*:native/make", "*:*:native/openssl" ], "build": { "env": [ - "*:*:config_opts=--with-openssl" + "*:*:config_opts=--with-openssl --disable-docs --disable-ldap" ], "steps": [ - "*:*:./configure $config_opts --prefix=$NATIVEPREFIX", + "*:*:bash ./configure $config_opts --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/dart-bin@3.4.0-247.0.dev.json b/packages/native/dart-bin@3.4.0-247.0.dev.json index c139653..ab99290 100644 --- a/packages/native/dart-bin@3.4.0-247.0.dev.json +++ b/packages/native/dart-bin@3.4.0-247.0.dev.json @@ -23,7 +23,8 @@ } ], "dependencies": [ - "*:*:native/7zip" + "*:*:native/7zip", + "*:*:native/_/_" ], "build": { "env": [], diff --git a/packages/native/dart@3.5.0-278.0.dev.json b/packages/native/dart@3.5.0-278.0.dev.json index 202e020..c9620d9 100644 --- a/packages/native/dart@3.5.0-278.0.dev.json +++ b/packages/native/dart@3.5.0-278.0.dev.json @@ -508,8 +508,10 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/dart-bin@3.4.0-247.0.dev", "*:*:native/gn", + "*:*:native/git", "*:*:native/libc++", "*:*:native/llvm-ar", "*:*:native/llvm-nm", @@ -535,8 +537,8 @@ "*:*:mkdir -p buildtools/$BUILDTARGET/clang/bin", "*:*:mkdir -p buildtools/$BUILDTARGET/clang/lib", "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/$BUILDTARGET/clang/lib/libc++.a", - "*:*:ln -s $(which clang) buildtools/$BUILDTARGET/clang/bin/clang", - "*:*:ln -s $(which clang++) buildtools/$BUILDTARGET/clang/bin/clang++", + "*:*:ln -s $CC buildtools/$BUILDTARGET/clang/bin/clang", + "*:*:ln -s $CXX buildtools/$BUILDTARGET/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/$BUILDTARGET/clang/bin/llvm-ar", "*:*:ln -s $(which llvm-nm) buildtools/$BUILDTARGET/clang/bin/llvm-nm", "*:*:ln -s $(which llvm-strip) buildtools/$BUILDTARGET/clang/bin/llvm-strip", diff --git a/packages/native/dart@3.5.0-307.0.dev.json b/packages/native/dart@3.5.0-307.0.dev.json index 007e529..e12fe20 100644 --- a/packages/native/dart@3.5.0-307.0.dev.json +++ b/packages/native/dart@3.5.0-307.0.dev.json @@ -514,6 +514,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/dart@3.5.0-278.0.dev", "*:*:native/gn", "*:*:native/libc++", @@ -541,8 +542,8 @@ "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $CC buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $CXX buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", diff --git a/packages/native/dart@3.6.0-2.0.dev.json b/packages/native/dart@3.6.0-2.0.dev.json index d5e0cb8..3152fd9 100644 --- a/packages/native/dart@3.6.0-2.0.dev.json +++ b/packages/native/dart@3.6.0-2.0.dev.json @@ -508,6 +508,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/dart@3.5.0-307.0.dev", "*:*:native/gn", "*:*:native/libc++", @@ -535,8 +536,8 @@ "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $CC buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $CXX buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", diff --git a/packages/native/dart@3.7.0-224.0.dev.json b/packages/native/dart@3.7.0-224.0.dev.json index 252a6af..5b949c6 100644 --- a/packages/native/dart@3.7.0-224.0.dev.json +++ b/packages/native/dart@3.7.0-224.0.dev.json @@ -376,6 +376,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/dart@3.7.0-27.0.dev", "*:*:native/gn", "*:*:native/libc++", @@ -403,8 +404,8 @@ "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $CC buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $CXX buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", diff --git a/packages/native/dart@3.7.0-232.0.dev.json b/packages/native/dart@3.7.0-232.0.dev.json index 81856b5..d110b33 100644 --- a/packages/native/dart@3.7.0-232.0.dev.json +++ b/packages/native/dart@3.7.0-232.0.dev.json @@ -352,6 +352,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/dart@3.7.0-224.0.dev", "*:*:native/gn", "*:*:native/libc++", @@ -379,8 +380,8 @@ "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $CC buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $CXX buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", diff --git a/packages/native/dart@3.7.0-27.0.dev.json b/packages/native/dart@3.7.0-27.0.dev.json index 6a0d695..4b01f37 100644 --- a/packages/native/dart@3.7.0-27.0.dev.json +++ b/packages/native/dart@3.7.0-27.0.dev.json @@ -496,6 +496,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/dart@3.6.0-2.0.dev", "*:*:native/gn", "*:*:native/libc++", @@ -523,8 +524,8 @@ "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $CC buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $CXX buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", diff --git a/packages/native/dart@3.7.0.json b/packages/native/dart@3.7.0.json index fd6fdb4..0a5f9b6 100644 --- a/packages/native/dart@3.7.0.json +++ b/packages/native/dart@3.7.0.json @@ -352,6 +352,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/dart@3.7.0-232.0.dev", "*:*:native/gn", "*:*:native/libc++", @@ -379,8 +380,8 @@ "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $CC buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $CXX buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", diff --git a/packages/native/dart@3.8.0-171.0.dev.json b/packages/native/dart@3.8.0-171.0.dev.json index 4ada919..2e4f6ea 100644 --- a/packages/native/dart@3.8.0-171.0.dev.json +++ b/packages/native/dart@3.8.0-171.0.dev.json @@ -244,6 +244,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/dart@3.7.0", "*:*:native/gn", "*:*:native/libc++", @@ -271,8 +272,8 @@ "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $CC buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $CXX buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", diff --git a/packages/native/dart@3.8.0-237.0.dev.json b/packages/native/dart@3.8.0-237.0.dev.json index 3620f55..985e490 100644 --- a/packages/native/dart@3.8.0-237.0.dev.json +++ b/packages/native/dart@3.8.0-237.0.dev.json @@ -244,6 +244,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/dart@3.8.0-171.0.dev", "*:*:native/gn", "*:*:native/libc++", @@ -271,8 +272,8 @@ "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $CC/mac-arm64/clang/bin/clang", + "*:*:ln -s $CXX buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", diff --git a/packages/native/dart@3.9.0-27.0.dev.json b/packages/native/dart@3.9.0-27.0.dev.json index 1b2e69b..caf63b9 100644 --- a/packages/native/dart@3.9.0-27.0.dev.json +++ b/packages/native/dart@3.9.0-27.0.dev.json @@ -250,6 +250,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/dart@3.9.0-3.0.dev", "*:*:native/gn", "*:*:native/libc++", @@ -277,8 +278,8 @@ "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $CC buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $CXX buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", diff --git a/packages/native/dart@3.9.0-3.0.dev.json b/packages/native/dart@3.9.0-3.0.dev.json index 3a00f21..bcadb8c 100644 --- a/packages/native/dart@3.9.0-3.0.dev.json +++ b/packages/native/dart@3.9.0-3.0.dev.json @@ -250,6 +250,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/dart@3.8.0-237.0.dev", "*:*:native/gn", "*:*:native/libc++", @@ -277,8 +278,8 @@ "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $CC buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $CXX buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", diff --git a/packages/native/dart@3.9.4.json b/packages/native/dart@3.9.4.json index 1996cbc..1872aeb 100644 --- a/packages/native/dart@3.9.4.json +++ b/packages/native/dart@3.9.4.json @@ -250,6 +250,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/dart@3.9.0-27.0.dev", "*:*:native/gn", "*:*:native/libc++", @@ -277,8 +278,8 @@ "*:*:mkdir -p buildtools/mac-arm64/clang/bin", "*:*:mkdir -p buildtools/mac-arm64/clang/lib", "*:*:ln -s $NATIVEPREFIX/lib/libc++.a buildtools/mac-arm64/clang/lib/libc++.a", - "*:*:ln -s $(which clang) buildtools/mac-arm64/clang/bin/clang", - "*:*:ln -s $(which clang++) buildtools/mac-arm64/clang/bin/clang++", + "*:*:ln -s $CC buildtools/mac-arm64/clang/bin/clang", + "*:*:ln -s $CXX buildtools/mac-arm64/clang/bin/clang++", "*:*:ln -s $(which llvm-ar) buildtools/mac-arm64/clang/bin/llvm-ar", "*:*:ln -s $(which llvm-nm) buildtools/mac-arm64/clang/bin/llvm-nm", "*:*:ln -s $(which llvm-strip) buildtools/mac-arm64/clang/bin/llvm-strip", diff --git a/packages/native/diffutils.json b/packages/native/diffutils.json new file mode 100644 index 0000000..47c5be4 --- /dev/null +++ b/packages/native/diffutils.json @@ -0,0 +1,30 @@ +{ + "package": "native/diffutils", + "version": "3.12", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "7c8b7f9fc8609141fdea9cece85249d308624391ff61dedaf528fcb337727dfd", + "url": "https://ftp.gnu.org/gnu/diffutils/diffutils-3.12.tar.xz" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/autoconf", + "*:*:native/libiconv", + "*:*:native/make", + "*:*:native/perl" + ], + "build": { + "env": [ + "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*:LDFLAGS=$LDFLAGS -fPIC" + ], + "steps": [ + "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/dpkg.json b/packages/native/dpkg.json index b848213..3d884de 100644 --- a/packages/native/dpkg.json +++ b/packages/native/dpkg.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/autoconf", "*:*:native/automake", "*:*:native/gettext", diff --git a/packages/native/expat.json b/packages/native/expat.json index 8ecbe78..2b8cf8d 100644 --- a/packages/native/expat.json +++ b/packages/native/expat.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/autoconf", "*:*:native/libiconv", "*:*:native/make", diff --git a/packages/native/file.json b/packages/native/file.json index fbd73a5..50e5d29 100644 --- a/packages/native/file.json +++ b/packages/native/file.json @@ -10,11 +10,13 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/make" ], "build": { "steps": [ - "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/findutils.json b/packages/native/findutils.json new file mode 100644 index 0000000..e3bfdab --- /dev/null +++ b/packages/native/findutils.json @@ -0,0 +1,29 @@ +{ + "package": "native/findutils", + "version": "4.10.0", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "1387e0b67ff247d2abde998f90dfbf70c1491391a59ddfecb8ae698789f0a4f5", + "url": "https://ftp.gnu.org/gnu/findutils/findutils-4.10.0.tar.xz" + } + ], + "dependencies": [ + "*:*:native/make", + "*:*:native/grep", + "*:*:native/sed", + "*:*:native/bash", + "*:*:native/_/_" + ], + "build": { + "env": [ + "*:*:config_opts=--prefix=$NATIVEPREFIX" + ], + "steps": [ + "*:*:bash ./configure $config_opts", + "*:*:make -j$NUM_CORES", + "*:*:DESTDIR=$STAGING_DIR make install" + ] + } +} \ No newline at end of file diff --git a/packages/native/flex.json b/packages/native/flex.json index 0c9b6a5..37c95a8 100644 --- a/packages/native/flex.json +++ b/packages/native/flex.json @@ -10,11 +10,17 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", + "*:*:native/gettext", + "*:*:native/libiconv", + "*:*:native/unistring", "*:*:native/m4", "*:*:native/make" ], "build": { "env": [ + "*:*:CC_FOR_BUILD=$CC", "*:*:CFLAGS=$CFLAGS -fPIC", "*:*:LDFLAGS=$LDFLAGS -fPIC", "*:*:config_opts=--prefix=$NATIVEPREFIX", @@ -23,7 +29,7 @@ "*:*:config_opts=$config_opts --enable-static" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/gawk.json b/packages/native/gawk.json index 4dc1bd0..b270f8d 100644 --- a/packages/native/gawk.json +++ b/packages/native/gawk.json @@ -10,8 +10,10 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/autoconf", "*:*:native/automake", + "*:*:native/bash", "*:*:native/gettext", "*:*:native/libtool", "*:*:native/make", @@ -22,10 +24,11 @@ "env": [ "*:*:AUTOMAKE=true", "*:*:ACLOCAL=true", - "*:*:MAKEINFO=true" + "*:*:MAKEINFO=true", + "darwin_*:*:CFLAGS=$CFLAGS -include mach-o/dyld.h" ], "steps": [ - "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/gawk@5.2.2.json b/packages/native/gawk@5.2.2.json index d6cae96..d080247 100644 --- a/packages/native/gawk@5.2.2.json +++ b/packages/native/gawk@5.2.2.json @@ -10,16 +10,19 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/make" ], "build": { "env": [ "*:*:AUTOMAKE=true", "*:*:ACLOCAL=true", - "*:*:MAKEINFO=true" + "*:*:MAKEINFO=true", + "darwin_*:*:CFLAGS=$CFLAGS -include mach-o/dyld.h" ], "steps": [ - "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/gettext.json b/packages/native/gettext.json index 9fcc0fd..8491424 100644 --- a/packages/native/gettext.json +++ b/packages/native/gettext.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/libiconv", "*:*:native/make", "*:*:native/sed", @@ -25,7 +27,7 @@ "*:*:LIBS=-lunistring" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/git.json b/packages/native/git.json index d75c9c1..dd6ef2b 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -10,20 +10,24 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/coreutils", "*:*:native/curl", "*:*:native/expat", "*:*:native/gettext", + "*:*:native/diffutils", "*:*:native/libiconv", "*:*:native/make", "*:*:native/openssl", + "*:*:native/python@3.14", "*:*:native/zlib" ], "build": { "env": [], "steps": [ - "linux_*:*:make -j$NUM_CORES EXTLIBS='-liconv -lz -lgettextpo'", - "darwin_*:*:make -j$NUM_CORES EXTLIBS='-liconv -lz -lgettextpo -lintl'", - "*:*:make DESTDIR=$STAGING_DIR$NATIVEPREFIX install", + "linux_*:*:make -j$NUM_CORES prefix=$NATIVEPREFIX EXTLIBS='-liconv -lz -lgettextpo' CC=$CC", + "darwin_*:*:make -j$NUM_CORES prefix=$NATIVEPREFIX EXTLIBS='-liconv -lz -lgettextpo -lintl' CC=$CC", + "*:*:make prefix=$NATIVEPREFIX DESTDIR=$STAGING_DIR install CC=$CC", "*:*:mkdir -p $STAGING_DIR$HOME", "*:*:echo '[user]' >> $STAGING_DIR$HOME/.gitconfig", "*:*:echo '\tname = simplybs' >> $STAGING_DIR$HOME/.gitconfig", diff --git a/packages/native/glib2.json b/packages/native/glib2.json index 2eec83b..8b47853 100644 --- a/packages/native/glib2.json +++ b/packages/native/glib2.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/bison", "*:*:native/flex", "*:*:native/gettext", diff --git a/packages/native/gmp_shared.json b/packages/native/gmp_shared.json index b264a6a..a3aa2cc 100644 --- a/packages/native/gmp_shared.json +++ b/packages/native/gmp_shared.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/m4", "*:*:native/make", "*:*:native/perl" @@ -21,7 +23,7 @@ "*:*:config_opts=$config_opts --disable-static" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make check", "*:*:make DESTDIR=$STAGING_DIR install" diff --git a/packages/native/gmp_static.json b/packages/native/gmp_static.json index 8b26ded..e7ba562 100644 --- a/packages/native/gmp_static.json +++ b/packages/native/gmp_static.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/m4", "*:*:native/make", "*:*:native/perl" @@ -21,7 +23,7 @@ "*:*:config_opts=$config_opts --enable-static" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make check", "*:*:make DESTDIR=$STAGING_DIR install" diff --git a/packages/native/gn.json b/packages/native/gn.json index db103e7..61d58a4 100644 --- a/packages/native/gn.json +++ b/packages/native/gn.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/git", "*:*:native/ninja", "*:*:native/pkgconf", diff --git a/packages/native/go-bin@1.25.json b/packages/native/go-bin@1.25.json index 9113ff9..26344de 100644 --- a/packages/native/go-bin@1.25.json +++ b/packages/native/go-bin@1.25.json @@ -24,6 +24,7 @@ ], "dependencies": [ "*:*:native/7zip", + "*:*:native/_/_", "*:*:native/sed" ], "build": { diff --git a/packages/native/go.json b/packages/native/go.json index 1fb80bc..176f6c8 100644 --- a/packages/native/go.json +++ b/packages/native/go.json @@ -11,6 +11,8 @@ ], "dependencies": [ "*:*:native/7zip", + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/go@1.25", "*:*:native/sed" ], @@ -19,7 +21,7 @@ "*:*:GO_VERSION=1.25.5" ], "steps": [ - "*:*:cd src && ./make.bash", + "*:*:cd src && bash ./make.bash", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/go$GO_VERSION", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", "*:*:mv * $STAGING_DIR$NATIVEPREFIX/go$GO_VERSION", diff --git a/packages/native/go@1.25.json b/packages/native/go@1.25.json index 7b63965..5eead1a 100644 --- a/packages/native/go@1.25.json +++ b/packages/native/go@1.25.json @@ -11,6 +11,8 @@ ], "dependencies": [ "*:*:native/7zip", + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/sed", "darwin_arm64:*:native/go-bin@1.25" ], @@ -19,7 +21,7 @@ "*:*:GO_VERSION=1.25" ], "steps": [ - "*:*:cd src && ./make.bash", + "*:*:cd src && bash ./make.bash", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/go$GO_VERSION", "*:*:mv * $STAGING_DIR$NATIVEPREFIX/go$GO_VERSION", diff --git a/packages/native/gperf.json b/packages/native/gperf.json index bf471ea..9330d83 100644 --- a/packages/native/gperf.json +++ b/packages/native/gperf.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/make" ], "build": { @@ -17,7 +19,7 @@ "*:*:config_opts=--prefix=$NATIVEPREFIX" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/grep.json b/packages/native/grep.json new file mode 100644 index 0000000..26cb542 --- /dev/null +++ b/packages/native/grep.json @@ -0,0 +1,25 @@ +{ + "package": "native/grep", + "version": "3.12", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "2649b27c0e90e632eadcd757be06c6e9a4f48d941de51e7c0f83ff76408a07b9", + "url": "http://ftpmirror.gnu.org/gnu/grep/grep-3.12.tar.xz" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", + "*:*:native/make" + ], + "build": { + "env": [], + "steps": [ + "*:*:bash ./configure --prefix=$NATIVEPREFIX", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/gzip.json b/packages/native/gzip.json new file mode 100644 index 0000000..95854ec --- /dev/null +++ b/packages/native/gzip.json @@ -0,0 +1,25 @@ +{ + "package": "native/gzip", + "version": "1.14", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "01a7b881bd220bfdf615f97b8718f80bdfd3f6add385b993dcf6efd14e8c0ac6", + "url": "http://ftpmirror.gnu.org/gnu/gzip/gzip-1.14.tar.xz" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", + "*:*:native/make" + ], + "build": { + "env": [], + "steps": [ + "*:*:bash ./configure --prefix=$NATIVEPREFIX", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/help2man.json b/packages/native/help2man.json index 9624d1b..5ab3b23 100644 --- a/packages/native/help2man.json +++ b/packages/native/help2man.json @@ -10,6 +10,9 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", + "*:*:native/perl", "*:*:native/make" ], "build": { @@ -19,7 +22,7 @@ "*:*:config_opts=$config_opts --enable-static" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/icu4c.json b/packages/native/icu4c.json index f8f1025..1e73c13 100644 --- a/packages/native/icu4c.json +++ b/packages/native/icu4c.json @@ -10,7 +10,10 @@ } ], "dependencies": [ - "*:*-w64-mingw32:native/make" + "*:*-w64-mingw32:native/_/_", + "*:*-w64-mingw32:native/bash", + "*:*-w64-mingw32:native/make", + "*:*-w64-mingw32:native/patch" ], "patches": [ "icu-001-dont-build-static-dynamic-twice.patch" @@ -24,7 +27,7 @@ "*:*-w64-mingw32:patch -p1 < $PATCH_DIR/icu4c/icu-001-dont-build-static-dynamic-twice.patch", "*:*-w64-mingw32:mkdir -p $NATIVEPREFIX/share/", "*:*-w64-mingw32:cp -av . $NATIVEPREFIX/share/icu4c_55.2", - "*:*-w64-mingw32:WD=$PWD && unset HOST TARGET && cd $NATIVEPREFIX/share/icu4c_55.2 && sh $WD/source/runConfigureICU $ICU_PLATFORM --prefix=$NATIVEPREFIX/share/icu4c_55.2", + "*:*-w64-mingw32:WD=$PWD && unset HOST TARGET && cd $NATIVEPREFIX/share/icu4c_55.2 && bash $WD/source/runConfigureICU $ICU_PLATFORM --prefix=$NATIVEPREFIX/share/icu4c_55.2", "*:*-w64-mingw32:unset HOST TARGET && cd $NATIVEPREFIX/share/icu4c_55.2 && make -j$NUM_CORES", "*:*-w64-mingw32:mkdir -p $STAGING_DIR$NATIVEPREFIX/share", "*:*-w64-mingw32:cp -av $NATIVEPREFIX/share/icu4c_55.2 $STAGING_DIR$NATIVEPREFIX/share/" diff --git a/packages/native/libc++.json b/packages/native/libc++.json index eb4095b..a28e4eb 100644 --- a/packages/native/libc++.json +++ b/packages/native/libc++.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/cmake", "*:*:native/ninja" ], diff --git a/packages/native/libiconv.json b/packages/native/libiconv.json index 9467656..1860473 100644 --- a/packages/native/libiconv.json +++ b/packages/native/libiconv.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/config", "*:*:native/make" ], diff --git a/packages/native/libmd.json b/packages/native/libmd.json index 2bbb186..30b828d 100644 --- a/packages/native/libmd.json +++ b/packages/native/libmd.json @@ -10,9 +10,10 @@ } ], "dependencies": [ - "*:*:native/_", + "*:*:native/_/_", "*:*:native/autoconf", "*:*:native/automake", + "*:*:native/bash", "*:*:native/gettext", "*:*:native/libtool", "*:*:native/m4", @@ -25,7 +26,7 @@ ], "steps": [ "*:*:autoreconf --force --install", - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make install DESTDIR=$STAGING_DIR" ] diff --git a/packages/native/libpsl.json b/packages/native/libpsl.json index 2c3df65..931590d 100644 --- a/packages/native/libpsl.json +++ b/packages/native/libpsl.json @@ -10,13 +10,16 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/make", + "*:*:native/python@3.11", "*:*:native/unistring" ], "build": { "env": [], "steps": [ - "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/libtapi.json b/packages/native/libtapi.json index 82ac8d0..6d4bfe6 100644 --- a/packages/native/libtapi.json +++ b/packages/native/libtapi.json @@ -10,17 +10,18 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/cmake", - "*:*:native/make", "*:*:native/ninja" ], "build": { "env": [ - "*:*:INSTALLPREFIX=$NATIVEPREFIX" + "*:*:PATH=/usr/bin:/bin:$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin" ], "steps": [ - "*:*:./build.sh", - "*:*:DESTDIR=$STAGING_DIR ./install.sh" + "*:*:cmake -G Ninja -S src/llvm -B build -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS='clang;tapi' -DLLVM_HOST_TRIPLE=aarch64-apple-darwin -DLLVM_INCLUDE_TESTS=OFF -DLLVM_INCLUDE_BENCHMARKS=OFF -DLLVM_ENABLE_TERMINFO=OFF -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk -DCMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG=-Wl,-rpath, -DCMAKE_INSTALL_PREFIX=$NATIVEPREFIX -DTAPI_REPOSITORY_STRING=1300.6.5 -DTAPI_FULL_VERSION=1300.6.5 -DCMAKE_CXX_FLAGS=-stdlib=libc++ -DCMAKE_EXE_LINKER_FLAGS=\"-stdlib=libc++ -lc++ -lc++abi\" -DCMAKE_SHARED_LINKER_FLAGS=\"-stdlib=libc++ -lc++ -lc++abi\"", + "*:*:cmake --build build --target clangBasic libtapi -j$NUM_CORES", + "*:*:DESTDIR=$STAGING_DIR ninja -C build install-libtapi install-tapi-headers" ] } -} \ No newline at end of file +} diff --git a/packages/native/libtool.json b/packages/native/libtool.json index 125298e..2bbb579 100644 --- a/packages/native/libtool.json +++ b/packages/native/libtool.json @@ -10,15 +10,20 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", + "*:*:native/sed", + "*:*:native/grep", "*:*:native/m4", "*:*:native/make" ], "build": { "env": [], "steps": [ - "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", - "*:*:make DESTDIR=$STAGING_DIR install" + "*:*:make DESTDIR=$STAGING_DIR install", + "*:*:ln -sf libtoolize $STAGING_DIR$NATIVEPREFIX/bin/glibtoolize" ] } } \ No newline at end of file diff --git a/packages/native/libxml2.json b/packages/native/libxml2.json index 4084113..7fe1525 100644 --- a/packages/native/libxml2.json +++ b/packages/native/libxml2.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/make", "*:*:native/pkgconf", "*:*:native/python@3.14" @@ -17,7 +19,7 @@ "build": { "env": [], "steps": [ - "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/llvm-ar.json b/packages/native/llvm-ar.json index 572dc09..efe2997 100644 --- a/packages/native/llvm-ar.json +++ b/packages/native/llvm-ar.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja" diff --git a/packages/native/llvm-nm.json b/packages/native/llvm-nm.json index 71a996d..476a073 100644 --- a/packages/native/llvm-nm.json +++ b/packages/native/llvm-nm.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja" diff --git a/packages/native/llvm-objcopy.json b/packages/native/llvm-objcopy.json index 8d49fa3..0c9fab5 100644 --- a/packages/native/llvm-objcopy.json +++ b/packages/native/llvm-objcopy.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja" diff --git a/packages/native/llvm-profdata.json b/packages/native/llvm-profdata.json index cf2755f..dd8e9f3 100644 --- a/packages/native/llvm-profdata.json +++ b/packages/native/llvm-profdata.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja" diff --git a/packages/native/llvm-strip.json b/packages/native/llvm-strip.json index 78557c4..22c1895 100644 --- a/packages/native/llvm-strip.json +++ b/packages/native/llvm-strip.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja" diff --git a/packages/native/llvm.json b/packages/native/llvm.json new file mode 100644 index 0000000..5dd7de4 --- /dev/null +++ b/packages/native/llvm.json @@ -0,0 +1,28 @@ +{ + "package": "native/llvm", + "version": "21.1.3", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "450f52eec88f728c89a9efd667dbeaf2dad93826", + "url": "https://github.com/llvm/llvm-project" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/ninja" + ], + "build": { + "env": [], + "steps": [ + "*:*:mkdir build && cd build", + "*:*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$STAGING_DIR$NATIVEPREFIX ../llvm", + "*:*:cd build && ninja llvm-tools", + "*:*:cd build && cmake --install . --component llvm-tools" + ] + } +} \ No newline at end of file diff --git a/packages/native/llvm@google@18.0.0git.json b/packages/native/llvm@google@18.0.0git.json index 863f134..8c962be 100644 --- a/packages/native/llvm@google@18.0.0git.json +++ b/packages/native/llvm@google@18.0.0git.json @@ -10,9 +10,11 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/cmake", "*:*:native/ninja", - "*:*:native/python@3.11" + "*:*:native/python@3.11", + "*:*:native/sed" ], "build": { "env": [ diff --git a/packages/native/llvm@google@19.0.1.json b/packages/native/llvm@google@19.0.1.json index 4fb7bba..7148979 100644 --- a/packages/native/llvm@google@19.0.1.json +++ b/packages/native/llvm@google@19.0.1.json @@ -23,6 +23,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/cmake", "*:*:native/gawk", "*:*:native/ninja", diff --git a/packages/native/llvm@google@r563880.json b/packages/native/llvm@google@r563880.json index f8e8bfc..8833ef5 100644 --- a/packages/native/llvm@google@r563880.json +++ b/packages/native/llvm@google@r563880.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*-android*:native/_/_", "*:*-android*:native/cmake", "*:*-android*:native/ninja", "*:*-android*:native/python@3.11" diff --git a/packages/native/m4.json b/packages/native/m4.json index ecef8de..6153650 100644 --- a/packages/native/m4.json +++ b/packages/native/m4.json @@ -10,12 +10,15 @@ } ], "dependencies": [ - "*:*:native/make" + "*:*:native/_/_", + "*:*:native/bash", + "*:*:native/make", + "*:*:native/sed" ], "build": { "env": [], "steps": [ - "*:*:./configure --prefix=$NATIVEPREFIX --disable-nls", + "*:*:bash ./configure --prefix=$NATIVEPREFIX --disable-nls", "*:*:sed -i.bak 's/^run.*automake.*/exit 0/' build-aux/missing", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" diff --git a/packages/native/make.json b/packages/native/make.json index 74e109a..4a19195 100644 --- a/packages/native/make.json +++ b/packages/native/make.json @@ -9,11 +9,15 @@ "url": "http://ftpmirror.gnu.org/gnu/make/make-4.4.tar.gz" } ], + "dependencies": [ + "*:*:native/_/_" + ], "build": { "env": [], "steps": [ - "*:*:./configure --disable-dependency-tracking", - "*:*:./build.sh", + "*:*:echo $PATH", + "*:*:dash ./configure --disable-dependency-tracking", + "*:*:dash ./build.sh", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", "*:*:cp make $STAGING_DIR/$NATIVEPREFIX/bin/make", "*:*:ln -s make $STAGING_DIR$NATIVEPREFIX/bin/gmake", diff --git a/packages/native/meson.json b/packages/native/meson.json index 5aafeee..ba7c2cf 100644 --- a/packages/native/meson.json +++ b/packages/native/meson.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/python@3.11" ], "build": { diff --git a/packages/native/mpc.json b/packages/native/mpc.json index 6b07e22..ddd1403 100644 --- a/packages/native/mpc.json +++ b/packages/native/mpc.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/gmp_static", "*:*:native/make", "*:*:native/mpfr" @@ -21,7 +23,7 @@ "*:*:config_opts=$config_opts --enable-static" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/mpfr.json b/packages/native/mpfr.json index 43bed3f..57a62b8 100644 --- a/packages/native/mpfr.json +++ b/packages/native/mpfr.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/gmp_static", "*:*:native/make" ], @@ -20,7 +22,7 @@ "*:*:config_opts=$config_opts --enable-static" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/ncurses.json b/packages/native/ncurses.json index dd5c392..25feb2c 100644 --- a/packages/native/ncurses.json +++ b/packages/native/ncurses.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/make" ], "build": { @@ -50,7 +52,7 @@ ], "steps": [ "*:*:cp $PATCH_DIR/ncurses/fallback.c ncurses", - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES $build_opts", "*:*:make install.libs DESTDIR=$STAGING_DIR" ] diff --git a/packages/native/ndk.json b/packages/native/ndk.json index 83a559d..ba85712 100644 --- a/packages/native/ndk.json +++ b/packages/native/ndk.json @@ -119,6 +119,7 @@ } ], "dependencies": [ + "*:*-android*:native/_/_", "*:*-android*:native/cmake", "*:*-android*:native/llvm@google@19.0.1", "*:*-android*:native/make", diff --git a/packages/native/ninja.json b/packages/native/ninja.json index 996cbed..66babee 100644 --- a/packages/native/ninja.json +++ b/packages/native/ninja.json @@ -10,7 +10,9 @@ } ], "dependencies": [ - "*:*:native/python@3.11" + "*:*:native/_/_", + "*:*:native/python@3.11", + "*:*:native/coreutils" ], "build": { "env": [], diff --git a/packages/native/nproc.json b/packages/native/nproc.json index 412bb75..dabb7c6 100644 --- a/packages/native/nproc.json +++ b/packages/native/nproc.json @@ -9,6 +9,9 @@ "url": "http://github.com/MrCyjaneK/nproc/archive/30acb0de0e18a2b16c277e6db840e5ce389d962d.tar.gz" } ], + "dependencies": [ + "*:*:native/_/_" + ], "build": { "env": [], "steps": [ diff --git a/packages/native/openssl.json b/packages/native/openssl.json index 96440ad..e8ecc95 100644 --- a/packages/native/openssl.json +++ b/packages/native/openssl.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/make", "*:*:native/perl" ], diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index ea0219c..92e17d1 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -23,7 +23,11 @@ ], "dependencies": [ "*:*-apple-*:native/7zip", + "*:*-apple-*:native/_/_", + "*:*-apple-*:native/bash", + "*:*-apple-*:native/coreutils", "*:*-apple-*:native/apple-sdk", + "*:*-apple-*:native/curl", "*:*-apple-*:native/bzip2", "*:*-apple-*:native/cmake", "*:*-apple-*:native/cpio", @@ -38,6 +42,7 @@ "*:*-apple-*:native/perl", "*:*-apple-*:native/pkgconf", "*:*-apple-*:native/python@3.11", + "*:*-apple-*:native/sed", "*:*-apple-*:native/unzip", "*:*-apple-*:native/xar", "*:*-apple-*:native/xz" @@ -57,16 +62,22 @@ "*:*-apple-*:TARGET_DIR=$NATIVEPREFIX/", "*:*-apple-*:UNATTENDED=1", "*:*-apple-*:SDK_VERSION=26.1", - "*:*-apple-*:COMPRESSLEVEL=6" + "*:*-apple-*:COMPRESSLEVEL=6", + "*:*-apple-*:LDFLAGS=$LDFLAGS -fuse-ld=lld", + "*:*-apple-*:CXXFLAGS=$CXXFLAGS -fuse-ld=lld" ], "steps": [ + "*:*-apple-*:mkdir -p wrapper/bin", + "*:*-apple-*:printf '#!/bin/sh\\ncase \"$1\" in\\n -productVersion) echo %s ;;\\n *) echo %s ;;\\nesac\\n' \"${SDK_VERSION}\" \"${SDK_VERSION}\" > wrapper/bin/sw_vers", + "*:*-apple-*:chmod +x wrapper/bin/sw_vers", "*:*-apple-*:sed -i.bak 's/--with-libtapi=$TARGET_DIR/--with-libtapi=$PREFIX\\/native/g' build.sh", "*:*-apple-*:sed -i.bak 's/--with-libxar=$TARGET_DIR/--with-libxar=$PREFIX\\/native/g' build.sh", "*:*-apple-*:mv $NATIVEPREFIX/share/xcode-sdk/*${SDK_VERSION}* tarballs", - "*:*-apple-*:yes | INSTALLPREFIX=$NATIVEPREFIX ./build_apple_clang.sh", + "*:*-apple-*:sed -i.bak 's|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1 -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX${SDK_VERSION}.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION|' build_clang.sh", + "*:*-apple-*:export PATH=$PWD/wrapper/bin:$PATH && yes | INSTALLPREFIX=$NATIVEPREFIX ./build_apple_clang.sh", "*:*-apple-*:cd build/clang-21/build_stage3 && make install DESTDIR=$STAGING_DIR && make install", "*:*-apple-*:sed -i.bak 's/## Compiler test ##/exit 0/g' build.sh", - "*:*-apple-*:OCDEBUG=1 TARGET_DIR=$STAGING_DIR$NATIVEPREFIX bash -x ./build.sh", + "*:*-apple-*:export PATH=$PWD/wrapper/bin:$PATH && OCDEBUG=1 TARGET_DIR=$STAGING_DIR$NATIVEPREFIX bash -x ./build.sh", "*:*-apple-*:rm $STAGING_DIR$NATIVEPREFIX/bin/*pkg-config" ] } diff --git a/packages/native/patch.json b/packages/native/patch.json index b6cf2a5..6daf2f2 100644 --- a/packages/native/patch.json +++ b/packages/native/patch.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/make" ], "build": { @@ -17,7 +19,7 @@ "*:*:config_opts=--prefix=$NATIVEPREFIX" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/pbzx.json b/packages/native/pbzx.json index f32855c..657ad67 100644 --- a/packages/native/pbzx.json +++ b/packages/native/pbzx.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/make", "*:*:native/xar", "*:*:native/xz" diff --git a/packages/native/pcre2.json b/packages/native/pcre2.json index d95caae..9c9336b 100644 --- a/packages/native/pcre2.json +++ b/packages/native/pcre2.json @@ -10,8 +10,10 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/autoconf", "*:*:native/automake", + "*:*:native/bash", "*:*:native/libtool", "*:*:native/make", "*:*:native/perl", @@ -22,7 +24,7 @@ "*:*:config_opts=--prefix=$NATIVEPREFIX" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/perl.json b/packages/native/perl.json index 7751c4e..cd5b698 100644 --- a/packages/native/perl.json +++ b/packages/native/perl.json @@ -10,16 +10,19 @@ } ], "dependencies": [ - "*:*:native/make" + "*:*:native/_/_", + "*:*:native/bash", + "*:*:native/make", + "*:*:native/sed" ], "build": { "env": [], "steps": [ "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib $NATIVEPREFIX/lib", "*:*:sed -i.bak '/^#ifndef PERL_BUILD_DATE$/,/^#endif$/{/^#ifndef PERL_BUILD_DATE$/!d; s/.*/\\#define PERL_BUILD_DATE \"Jan 1 1970 00:00:01\"/;}' perl.c", - "*:*:./Configure -des -Dprefix=$NATIVEPREFIX -Duseithreads -Dall_static", - "*:*:make -j$NUM_CORES", - "*:*:make DESTDIR=$STAGING_DIR install" + "*:*:bash ./Configure -des -Dprefix=$NATIVEPREFIX -Duseithreads -Dall_static -Dcc=$CC", + "*:*:make -j$NUM_CORES CC=$CC", + "*:*:make DESTDIR=$STAGING_DIR install CC=$CC" ] } } \ No newline at end of file diff --git a/packages/native/pkgconf.json b/packages/native/pkgconf.json index 8828c13..d5829a9 100644 --- a/packages/native/pkgconf.json +++ b/packages/native/pkgconf.json @@ -10,8 +10,10 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/autoconf", "*:*:native/automake", + "*:*:native/bash", "*:*:native/libtool", "*:*:native/m4", "*:*:native/make", @@ -23,7 +25,7 @@ ], "steps": [ "*:*:sh ./autogen.sh", - "*:*:./configure --prefix=$NATIVEPREFIX --with-pkg-config-dir=$PKGCONFIG_DIR", + "*:*:bash ./configure --prefix=$NATIVEPREFIX --with-pkg-config-dir=$PKGCONFIG_DIR", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", "*:*:ln -s pkgconf $STAGING_DIR$NATIVEPREFIX/bin/pkg-config" diff --git a/packages/native/protobuf.json b/packages/native/protobuf.json index 68d639d..679b06f 100644 --- a/packages/native/protobuf.json +++ b/packages/native/protobuf.json @@ -10,8 +10,10 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/autoconf", "*:*:native/automake", + "*:*:native/bash", "*:*:native/config", "*:*:native/m4", "*:*:native/make", @@ -19,6 +21,8 @@ ], "build": { "env": [ + "*:*:CC_FOR_BUILD=$CC", + "*:*:CXX_FOR_BUILD=$CXX", "*:*:config_opts=--host=$HOST --prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-shared", "*:*-linux-gnu:config_opts=$config_opts --with-pic" @@ -32,7 +36,7 @@ "*:*:cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", "*:*:aclocal", "*:*:automake --add-missing", - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install", "*:*:rm $STAGING_DIR$NATIVEPREFIX/lib/libprotoc.a || true" diff --git a/packages/native/python@3.11.json b/packages/native/python@3.11.json index 3c21b8c..698cfa5 100644 --- a/packages/native/python@3.11.json +++ b/packages/native/python@3.11.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/gettext", "*:*:native/libiconv", "*:*:native/make", @@ -22,11 +24,12 @@ "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-test-modules", "*:*:config_opts=$config_opts --enable-static", + "*:*:MACOSX_DEPLOYMENT_TARGET=13.0", "darwin_*:*:LIBS=-lintl -liconv" ], "steps": [ "*:*:sed -i.bak '/^#ifndef DATE/i\\\n\\/* Deterministic date and time. *\\/\\\n#define DATE \"Jan 1 1970\"\\\n#define TIME \"00:00:01\"\\\n' Modules/getbuildinfo.c", - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", "*:*:cd $STAGING_DIR$NATIVEPREFIX/bin && ln -s python3 python" diff --git a/packages/native/python@3.14.json b/packages/native/python@3.14.json index f033dea..be344c7 100644 --- a/packages/native/python@3.14.json +++ b/packages/native/python@3.14.json @@ -10,17 +10,26 @@ } ], "dependencies": [ - "*:*:native/bzip2", + "*:*:native/_/_", + "*:*:native/bash", + "*:*:native/gettext", + "*:*:native/libiconv", "*:*:native/make", "*:*:native/patch", + "*:*:native/pkgconf", "*:*:native/zlib" ], "build": { - "env": [], + "env": [ + "*:*:config_opts=--prefix=$NATIVEPREFIX", + "*:*:config_opts=$config_opts --disable-test-modules", + "*:*:config_opts=$config_opts --enable-static", + "*:*:MACOSX_DEPLOYMENT_TARGET=13.0", + "darwin_*:*:LIBS=-lintl -liconv" + ], "steps": [ "*:*:sed -i.bak '/^#ifndef DATE/i\\\n\\/* Deterministic date and time. *\\/\\\n#define DATE \"Jan 1 1970\"\\\n#define TIME \"00:00:01\"\\\n' Modules/getbuildinfo.c", - "*:*:sed -i.bak 's/^#\\(zlib[[:space:]]\\+zlibmodule\\.c[[:space:]]\\+-lz\\)/\\1/' Modules/Setup", - "*:*:./configure --disable-test-modules --prefix=$NATIVEPREFIX", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", "*:*:cd $STAGING_DIR$NATIVEPREFIX/bin && ln -s python3 python" diff --git a/packages/native/qemu.json b/packages/native/qemu.json index 714cf36..db6268c 100644 --- a/packages/native/qemu.json +++ b/packages/native/qemu.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/glib2", "*:*:native/make", "*:*:native/ninja", @@ -26,7 +28,7 @@ "*:*:config_opts=$config_opts" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/rsync.json b/packages/native/rsync.json index f44066a..5cd5681 100644 --- a/packages/native/rsync.json +++ b/packages/native/rsync.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/make", "*:*:native/python@3.11" ], @@ -22,7 +24,7 @@ "*:*:config_opts=$config_opts --disable-lz4" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/rust.json b/packages/native/rust.json index bb98925..358b6cb 100644 --- a/packages/native/rust.json +++ b/packages/native/rust.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja", diff --git a/packages/native/rust@1_90_0-mrustc.json b/packages/native/rust@1_90_0-mrustc.json index 45b002c..29c1d14 100644 --- a/packages/native/rust@1_90_0-mrustc.json +++ b/packages/native/rust@1_90_0-mrustc.json @@ -16,11 +16,14 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/cmake", "*:*:native/make", "*:*:native/openssl", "*:*:native/patch", "*:*:native/perl", + "*:*:native/sed", "*:*:native/pkgconf", "*:*:native/zlib" ], @@ -36,7 +39,7 @@ "linux_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-unknown-linux-gnu/RUSTC_TARGET ?= aarch64-unknown-linux-gnu/' ./minicargo.mk", "*:*:echo >> build-1.90.0.sh", "*:*:echo make -C run_rustc >> build-1.90.0.sh", - "*:*:env -i CXXFLAGS_EXTRA=\"$CFLAGS\" LINKFLAGS_EXTRA=\"$LDFLAGS\" PATH=$PATH PARLEVEL=$NUM_CORES ./build-1.90.0.sh -j$NUM_CORES", + "*:*:env -i CXXFLAGS_EXTRA=\"$CFLAGS\" LINKFLAGS_EXTRA=\"$LDFLAGS\" PATH=$PATH PARLEVEL=$NUM_CORES CC=\"$CC\" CXX=\"$CXX\" AR=\"$AR\" bash ./build-1.90.0.sh -j$NUM_CORES", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib", "*:*:cp -a run_rustc/output-1.90.0/prefix/bin/* $STAGING_DIR$NATIVEPREFIX/bin", diff --git a/packages/native/rust@1_90_0.json b/packages/native/rust@1_90_0.json index bb54cb0..09b8ee2 100644 --- a/packages/native/rust@1_90_0.json +++ b/packages/native/rust@1_90_0.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja", diff --git a/packages/native/rust@1_91_0.json b/packages/native/rust@1_91_0.json index f9b26c4..f6a00a7 100644 --- a/packages/native/rust@1_91_0.json +++ b/packages/native/rust@1_91_0.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja", diff --git a/packages/native/rust@1_92_0.json b/packages/native/rust@1_92_0.json index 0dfb12d..d54a99e 100644 --- a/packages/native/rust@1_92_0.json +++ b/packages/native/rust@1_92_0.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja", diff --git a/packages/native/rust@1_93_0.json b/packages/native/rust@1_93_0.json index 0dff7e9..7f71114 100644 --- a/packages/native/rust@1_93_0.json +++ b/packages/native/rust@1_93_0.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja", diff --git a/packages/native/sed.json b/packages/native/sed.json index d3ce6d5..8574710 100644 --- a/packages/native/sed.json +++ b/packages/native/sed.json @@ -10,13 +10,14 @@ } ], "dependencies": [ - "*:*:native/make", - "*:*:native/perl" + "*:*:native/_/_", + "*:*:native/bash", + "*:*:native/make" ], "build": { "env": [], "steps": [ - "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/tar.json b/packages/native/tar.json index fad9902..2524c1b 100644 --- a/packages/native/tar.json +++ b/packages/native/tar.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/libiconv", "*:*:native/make" ], @@ -19,7 +21,7 @@ "*:*:LIBS=-liconv" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/texinfo.json b/packages/native/texinfo.json index e032d4b..b9e191c 100644 --- a/packages/native/texinfo.json +++ b/packages/native/texinfo.json @@ -10,7 +10,9 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/automake", + "*:*:native/bash", "*:*:native/gawk", "*:*:native/gettext", "*:*:native/make", @@ -21,7 +23,7 @@ "*:*:HELP2MAN=true" ], "steps": [ - "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/triehash.json b/packages/native/triehash.json index 767c97b..cccbe95 100644 --- a/packages/native/triehash.json +++ b/packages/native/triehash.json @@ -10,7 +10,7 @@ } ], "dependencies": [ - "*:*:native/perl", + "*:*:native/_/_", "*:*:native/sed" ], "build": { diff --git a/packages/native/unistring.json b/packages/native/unistring.json index 302a11a..50b4031 100644 --- a/packages/native/unistring.json +++ b/packages/native/unistring.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/make", "*:*:native/sed" ], @@ -20,7 +22,7 @@ "*:*:config_opts=$config_opts --enable-static" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/unzip.json b/packages/native/unzip.json index 173f86c..9dea8b7 100644 --- a/packages/native/unzip.json +++ b/packages/native/unzip.json @@ -10,6 +10,7 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/bzip2", "*:*:native/make", "*:*:native/sed" diff --git a/packages/native/xar.json b/packages/native/xar.json index 530063b..ba0b176 100644 --- a/packages/native/xar.json +++ b/packages/native/xar.json @@ -10,10 +10,13 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/bzip2", "*:*:native/make", "*:*:native/openssl", "*:*:native/xz", + "*:*:native/libxml2", "*:*:native/zlib" ], "build": { @@ -23,10 +26,10 @@ "*:*:config_opts=$config_opts --with-lzma=$NATIVEPREFIX" ], "steps": [ - "*:*:cd xar && ./configure --prefix=$NATIVEPREFIX", - "*:*:cd xar && make -j$NUM_CORES", - "*:*:cd xar && make DESTDIR=$STAGING_DIR install", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/include" + "*:*:cd xar && bash ./configure --prefix=$NATIVEPREFIX", + "*:*:cd xar && make V=1 -j$NUM_CORES", + "*:*:sed -i.bak 's|.././install-sh|./install-sh|g' xar/lib/Makefile.inc xar/src/Makefile.inc", + "*:*:cd xar && make V=1 DESTDIR=$STAGING_DIR install" ] } } \ No newline at end of file diff --git a/packages/native/xmlto.json b/packages/native/xmlto.json index b56245a..76a1753 100644 --- a/packages/native/xmlto.json +++ b/packages/native/xmlto.json @@ -10,9 +10,13 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/autoconf", "*:*:native/automake", + "*:*:native/bash", "*:*:native/flex", "*:*:native/gawk", + "*:*:native/m4", "*:*:native/gettext", "*:*:native/libxml2", "*:*:native/make", @@ -22,7 +26,7 @@ "env": [], "steps": [ "*:*:autoreconf -f -i", - "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure --prefix=$NATIVEPREFIX", "*:*:make xmlto -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install-exec" ] diff --git a/packages/native/xz.json b/packages/native/xz.json index 79fbc0d..d800f4d 100644 --- a/packages/native/xz.json +++ b/packages/native/xz.json @@ -10,8 +10,11 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/autoconf", "*:*:native/automake", + "*:*:native/gzip", + "*:*:native/bash", "*:*:native/gettext", "*:*:native/libtool", "*:*:native/m4", @@ -32,9 +35,8 @@ "*:*:config_opts=$config_opts --disable-scripts" ], "steps": [ - "*:*:pwd", - "*:*:./autogen.sh --no-po4a", - "*:*:./configure $config_opts", + "*:*:bash ./autogen.sh --no-po4a", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", "*:*:rm $STAGING_DIR$NATIVEPREFIX/lib/*.la" diff --git a/packages/native/zlib.json b/packages/native/zlib.json index 557e779..5df17a4 100644 --- a/packages/native/zlib.json +++ b/packages/native/zlib.json @@ -10,6 +10,8 @@ } ], "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", "*:*:native/libtool", "*:*:native/make" ], @@ -21,7 +23,7 @@ "*:*:CROSS_PREFIX=$HOST-" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/openssl.json b/packages/openssl.json index 895de75..9450bd4 100644 --- a/packages/openssl.json +++ b/packages/openssl.json @@ -12,6 +12,8 @@ "dependencies": [ "*:*:native/_", "*:*:native/make", + "*:*:native/coreutils", + "*:*:native/sed", "*:*:native/perl" ], "build": { diff --git a/packages/protobuf.json b/packages/protobuf.json index 1c1c4b8..71079d5 100644 --- a/packages/protobuf.json +++ b/packages/protobuf.json @@ -11,19 +11,26 @@ ], "dependencies": [ "*:*:native/_", + "*:*:native/bash", + "*:*:native/coreutils", + "*:*:native/grep", + "*:*:native/sed", "*:*:native/autoconf", "*:*:native/automake", "*:*:native/config", "*:*:native/m4", "*:*:native/make", "*:*:native/perl", - "*:*:native/protobuf" + "*:*:native/protobuf", + "*:*:native/gawk" ], "patches": [ "visibility.patch" ], "build": { "env": [ + "*:*:CC_FOR_BUILD=$CC", + "*:*:CXX_FOR_BUILD=$CXX", "*:*:CXXFLAGS=$CXXFLAGS -std=c++11", "*:*:config_opts=--host=$HOST --prefix=$PREFIX", "*:*:config_opts=$config_opts --disable-shared --with-protoc=$NATIVEPREFIX/bin/protoc", @@ -36,7 +43,7 @@ "*:*:cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", "*:*:cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", "*:*:cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES -C src libprotobuf.la", "*:*:make -j$NUM_CORES -C src DESTDIR=$STAGING_DIR install-libLTLIBRARIES install-nobase_includeHEADERS", "*:*:make -j$NUM_CORES DESTDIR=$STAGING_DIR install-pkgconfigDATA" diff --git a/packages/sodium.json b/packages/sodium.json index ed46d16..9688e42 100644 --- a/packages/sodium.json +++ b/packages/sodium.json @@ -13,6 +13,11 @@ "*:*:native/_", "*:*:native/config", "*:*:native/make", + "*:*:native/bash", + "*:*:native/grep", + "*:*:native/gawk", + "*:*:native/sed", + "*:*:native/coreutils", "*:*:native/patch" ], "patches": [ @@ -30,7 +35,7 @@ "*:*:cp -f $NATIVEPREFIX/share/config/config.sub build-aux/", "*:*:patch -p1 < $PATCH_DIR/sodium/disable-glibc-getrandom-getentropy.patch", "*:*:patch -p1 < $PATCH_DIR/sodium/fix-whitespace.patch", - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/tor.json b/packages/tor.json index 854bdcf..318c5c9 100644 --- a/packages/tor.json +++ b/packages/tor.json @@ -13,8 +13,14 @@ "*:*:native/_", "*:*:native/autoconf", "*:*:native/automake", + "*:*:native/coreutils", + "*:*:native/findutils", + "*:*:native/gawk", + "*:*:native/make", "*:*:native/m4", "*:*:native/perl", + "*:*:native/sed", + "*:*:native/grep", "*:*:libevent", "*:*:openssl", "*:*:xz", diff --git a/packages/torch.json b/packages/torch.json index 2049816..811cd3c 100644 --- a/packages/torch.json +++ b/packages/torch.json @@ -13,6 +13,8 @@ "*:*:native/_", "*:*:native/cmake", "*:*:native/cmake-toolchain", + "*:*:native/coreutils", + "*:*:native/make", "*:*:libevent", "*:*:openssl", "*:*:tor", diff --git a/packages/unbound.json b/packages/unbound.json index 20f8a74..e04e135 100644 --- a/packages/unbound.json +++ b/packages/unbound.json @@ -13,6 +13,10 @@ "*:*:native/_", "*:*:native/autoconf", "*:*:native/automake", + "*:*:native/grep", + "*:*:native/sed", + "*:*:native/coreutils", + "*:*:native/gawk", "*:*:native/bash", "*:*:native/libtool", "*:*:native/m4", diff --git a/packages/xz.json b/packages/xz.json index 2d9fb26..0cc96d8 100644 --- a/packages/xz.json +++ b/packages/xz.json @@ -17,6 +17,15 @@ "*:*:native/libtool", "*:*:native/m4", "*:*:native/make", + "*:*:native/sed", + "*:*:native/grep", + "*:*:native/gawk", + "*:*:native/gzip", + "*:*:native/bash", + "*:*:native/diffutils", + "*:*:native/tar", + "*:*:native/coreutils", + "*:*:native/findutils", "*:*:native/perl" ], "patches": [ @@ -33,8 +42,8 @@ "*:*:SKIP_WERROR_CHECK=yes" ], "steps": [ - "*:*:./autogen.sh --no-po4a", - "*:*:./configure $config_opts", + "*:*:bash ./autogen.sh --no-po4a", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", "*:*:rm $STAGING_DIR$PREFIX/lib/*.la" diff --git a/packages/zeromq.json b/packages/zeromq.json index 0a437db..9af322e 100644 --- a/packages/zeromq.json +++ b/packages/zeromq.json @@ -12,12 +12,17 @@ "dependencies": [ "*:*:native/_", "*:*:native/autoconf", + "*:*:native/coreutils", + "*:*:native/bash", "*:*:native/automake", "*:*:native/gettext", "*:*:native/libtool", "*:*:native/m4", "*:*:native/make", + "*:*:native/sed", + "*:*:native/grep", "*:*:native/patch", + "*:*:native/gawk", "*:*:native/perl", "*:*:native/pkgconf" ], @@ -32,9 +37,9 @@ "*:*:cxxflags=$CXXFLAGS -std=c++17" ], "steps": [ - "*:*:./autogen.sh", + "*:*:bash ./autogen.sh", "*:*:patch -p1 < $PATCH_DIR/zeromq/fix_declaration.patch", - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES src/libzmq.la", "*:*:make -j1 DESTDIR=$STAGING_DIR install-pkgconfigDATA VERBOSE=1", "*:*:make -j1 DESTDIR=$STAGING_DIR install-libLTLIBRARIES VERBOSE=1", diff --git a/packages/zlib.json b/packages/zlib.json index de0259b..d5fadda 100644 --- a/packages/zlib.json +++ b/packages/zlib.json @@ -11,8 +11,11 @@ ], "dependencies": [ "*:*:native/_", + "*:*:native/coreutils", + "*:*:native/make", "*:*:native/libtool", - "*:*:native/sed" + "*:*:native/sed", + "*:*:native/bash" ], "build": { "env": [ @@ -21,7 +24,7 @@ "*:*:CROSS_PREFIX=$HOST-" ], "steps": [ - "*:*:./configure $config_opts", + "*:*:bash ./configure $config_opts", "*:*-android*:sed -i.bak s\\|^AR=.\\*$\\|AR=\"llvm-ar\"\\| Makefile", "*:*-android*:sed -i.bak s\\|^ARFLAGS=.\\*$\\|ARFLAGS=\"rcs\"\\| Makefile", "*:*-linux-gnu:sed -i.bak s\\|^AR=.\\*$\\|AR=\"$AR\"\\| Makefile", diff --git a/packages/zstd.json b/packages/zstd.json index 358777e..6dac0fd 100644 --- a/packages/zstd.json +++ b/packages/zstd.json @@ -10,7 +10,11 @@ } ], "dependencies": [ - "*:*:native/_" + "*:*:native/_", + "*:*:native/make", + "*:*:native/coreutils", + "*:*:native/grep", + "*:*:native/sed" ], "build": { "env": [ diff --git a/sources.json b/sources.json index a3ab094..b710a8b 100644 --- a/sources.json +++ b/sources.json @@ -905,7 +905,7 @@ }, "https://github.com/ip7z/7zip.git": { "refs": [ - "5e96a8279489832924056b1fa82f29d5837c9469" + "8c63d71ff886bda90c86db28466287f977374237" ] }, "https://github.com/julian-klode/triehash.git": { diff --git a/utils/path.go b/utils/path.go index c6d2a1f..0d31a9b 100644 --- a/utils/path.go +++ b/utils/path.go @@ -8,7 +8,7 @@ import ( func GetHostPath() string { switch runtime.GOOS { case "darwin": - return "/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin" + return "" case "linux": return "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" default: From 7678d70b19ef15b1fa708ca5bd912024ee2687ad Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 9 Jun 2026 12:51:25 +0200 Subject: [PATCH 123/200] add: -archive rust fixes --- cmd/archive/archive.go | 40 + cmd/lint/lint.go | 91 +- main.go | 6 + pack/info.go | 14 +- packages/native/rust.json | 6 +- packages/native/rust@1_90_0-bin.json | 39 + packages/native/rust@1_90_0-mrustc.json | 2 +- packages/native/rust@1_90_0.json | 3 +- packages/native/rust@1_94_0.json | 41 + packages/native/rust@1_95_0.json | 41 + sources.json | 1730 ++++++++++++++++++++--- utils/download/download.go | 27 + utils/download/download_test.go | 42 + utils/extract.go | 3 + utils/git.go | 37 +- utils/historic_sources.go | 68 + utils/sourcepath.go | 26 + utils/sourcepath_test.go | 26 + utils/sources.go | 233 +++ utils/sources_test.go | 192 +++ 20 files changed, 2364 insertions(+), 303 deletions(-) create mode 100644 cmd/archive/archive.go create mode 100644 packages/native/rust@1_90_0-bin.json create mode 100644 packages/native/rust@1_94_0.json create mode 100644 packages/native/rust@1_95_0.json create mode 100644 utils/download/download_test.go create mode 100644 utils/historic_sources.go create mode 100644 utils/sourcepath.go create mode 100644 utils/sourcepath_test.go create mode 100644 utils/sources.go create mode 100644 utils/sources_test.go diff --git a/cmd/archive/archive.go b/cmd/archive/archive.go new file mode 100644 index 0000000..70be08b --- /dev/null +++ b/cmd/archive/archive.go @@ -0,0 +1,40 @@ +package archive + +import ( + "log" + "sort" + + "github.com/mrcyjanek/simplybs/crash" + "github.com/mrcyjanek/simplybs/utils" + "github.com/mrcyjanek/simplybs/utils/download" +) + +func Archive() { + sources, err := utils.LoadSourcesFile() + crash.Handle(err) + + repoURLs := make([]string, 0, len(sources.Repositories)) + for url := range sources.Repositories { + repoURLs = append(repoURLs, url) + } + sort.Strings(repoURLs) + + for i, url := range repoURLs { + log.Printf("Ensuring git bundle %d/%d: %s", i+1, len(repoURLs), url) + bundlePath := utils.SourcePathForGitURL(url) + if err := utils.EnsureGitBundle(bundlePath, url); err != nil { + log.Fatalf("Failed to ensure git bundle for %s: %v", url, err) + } + } + + downloads := utils.UniqueDownloads(sources.Downloads) + for i, entry := range downloads { + log.Printf("Ensuring download %d/%d: %s", i+1, len(downloads), entry.URL) + path := utils.SourcePathForFileURL(entry.URL) + if err := download.EnsureDownloadFile("archive", path, entry.URL, entry.Sha256); err != nil { + log.Fatalf("Failed to download %s: %v", entry.URL, err) + } + } + + log.Printf("Archive complete: %d git repos, %d unique downloads", len(repoURLs), len(downloads)) +} diff --git a/cmd/lint/lint.go b/cmd/lint/lint.go index 3590548..b913385 100644 --- a/cmd/lint/lint.go +++ b/cmd/lint/lint.go @@ -13,17 +13,10 @@ import ( "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/pack" + "github.com/mrcyjanek/simplybs/utils" "github.com/mrcyjanek/simplybs/utils/ifstring" ) -type RepositoryInfo struct { - Refs []string `json:"refs"` -} - -type SourcesFile struct { - Repositories map[string]RepositoryInfo `json:"repositories"` -} - type OrderedPackage struct { Package string `json:"package"` Version string `json:"version"` @@ -251,9 +244,10 @@ func dfsCycleDetection(packageName string, graph map[string][]string, color map[ func createSourcesFile() { log.Println("Creating sources.json file...") - sources := SourcesFile{ - Repositories: make(map[string]RepositoryInfo), - } + sources := utils.NewSourcesFile() + + currentRefs := 0 + currentDownloads := 0 pkgs := pack.GetAllPackages() for _, pkg := range pkgs { @@ -263,60 +257,24 @@ func createSourcesFile() { continue } - var packageData map[string]interface{} - if err := json.Unmarshal(content, &packageData); err != nil { - log.Printf("Failed to parse package %s: %v", pkg.Package, err) - continue - } - - downloads, ok := packageData["download"].([]interface{}) - if !ok { - continue - } - - for _, downloadInterface := range downloads { - download, ok := downloadInterface.(map[string]interface{}) - if !ok { - continue - } - - kind, ok := download["kind"].(string) - if !ok || kind != "git" { - continue - } - - url, ok := download["url"].(string) - if !ok { - continue - } + beforeRefs := utils.CountGitRefs(sources) + beforeDownloads := len(sources.Downloads) + utils.MergeDownloadsFromJSON(sources, content) + currentRefs += utils.CountGitRefs(sources) - beforeRefs + currentDownloads += len(sources.Downloads) - beforeDownloads + } - sha256, ok := download["sha256"].(string) - if !ok || sha256 == "" { - continue - } + beforeHistoricRefs := utils.CountGitRefs(sources) + beforeHistoricDownloads := len(sources.Downloads) - if repoInfo, exists := sources.Repositories[url]; exists { - refExists := false - for _, ref := range repoInfo.Refs { - if ref == sha256 { - refExists = true - break - } - } - if !refExists { - repoInfo.Refs = append(repoInfo.Refs, sha256) - } - - sources.Repositories[url] = repoInfo - } else { - sources.Repositories[url] = RepositoryInfo{ - Refs: []string{sha256}, - } - } - } + if err := utils.CollectHistoricDownloads(sources); err != nil { + log.Printf("Warning: historic source collection skipped: %v", err) } - sourcesJSON, err := json.MarshalIndent(sources, "", " ") + historicRefs := utils.CountGitRefs(sources) - beforeHistoricRefs + historicDownloads := len(sources.Downloads) - beforeHistoricDownloads + + sourcesJSON, err := utils.MarshalSourcesFile(sources) if err != nil { log.Fatalf("Failed to marshal sources.json: %v", err) } @@ -325,5 +283,14 @@ func createSourcesFile() { log.Fatalf("Failed to write sources.json: %v", err) } - log.Printf("Created sources.json with %d repositories", len(sources.Repositories)) + log.Printf( + "Created sources.json with %d repositories (%d git refs, %d downloads); current packages added %d refs and %d downloads, history added %d refs and %d downloads", + len(sources.Repositories), + utils.CountGitRefs(sources), + len(sources.Downloads), + currentRefs, + currentDownloads, + historicRefs, + historicDownloads, + ) } diff --git a/main.go b/main.go index 9a582c4..6020dee 100644 --- a/main.go +++ b/main.go @@ -6,6 +6,7 @@ import ( "log" "strings" + "github.com/mrcyjanek/simplybs/cmd/archive" "github.com/mrcyjanek/simplybs/cmd/lint" "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" @@ -22,6 +23,7 @@ func main() { argDownload := flag.Bool("download", false, "Download package sources") argBuild := flag.Bool("build", false, "Build packages") argLint := flag.Bool("lint", false, "Lint packages") + argArchive := flag.Bool("archive", false, "Download all sources from sources.json") argVersion := flag.Bool("v", false, "Show version") argShell := flag.Bool("shell", false, "Extract source and start shell with build environment") argCleanup := flag.Bool("cleanup", false, "Remove everything except current built archives") @@ -39,6 +41,10 @@ func main() { lint.Lint() return } + if *argArchive { + archive.Archive() + return + } packageNames := []*pack.Package{} if *argWorld { diff --git a/pack/info.go b/pack/info.go index 8dcd100..f771f96 100644 --- a/pack/info.go +++ b/pack/info.go @@ -15,7 +15,6 @@ import ( "github.com/mrcyjanek/simplybs/crash" "github.com/mrcyjanek/simplybs/host" "github.com/mrcyjanek/simplybs/utils" - downloadpkg "github.com/mrcyjanek/simplybs/utils/download" "github.com/mrcyjanek/simplybs/utils/ifstring" ) @@ -109,18 +108,9 @@ func (p *Package) ShortName(h *host.Host) string { func (p *Package) GenerateSourceBuildPath(download *Download) string { if download.Kind == "git" { - urlPath, err := downloadpkg.URLToPath(download.URL) - crash.Handle(err) - urlPath = strings.TrimSuffix(urlPath, ".git") - name := urlPath + ".bundle" - return filepath.Join(host.DataDirRoot(), "source", name) + return utils.SourcePathForGitURL(download.URL) } - - urlPath, err := downloadpkg.URLToPath(download.URL) - if err != nil { - return filepath.Join(host.DataDirRoot(), "source", filepath.Base(download.URL)) - } - return filepath.Join(host.DataDirRoot(), "source", urlPath) + return utils.SourcePathForFileURL(download.URL) } func (p *Package) GenerateBuildPath(h *host.Host, kind string) string { diff --git a/packages/native/rust.json b/packages/native/rust.json index 358b6cb..f42cc0c 100644 --- a/packages/native/rust.json +++ b/packages/native/rust.json @@ -1,12 +1,12 @@ { "package": "native/rust", - "version": "1.94.0", + "version": "1.95.0", "type": "native", "download": [ { "kind": "tar.gz", - "sha256": "b83f921cd3f321ff614f9c06a8b870d89299fc02888b48a5549683a36823474c", - "url": "http://static.rust-lang.org/dist/rustc-1.94.0-src.tar.gz" + "sha256": "ea9b82a83e46967537c3569ce9d6fa16811c043a96e651376c349e70241ca515", + "url": "http://static.rust-lang.org/dist/rustc-1.95.0-src.tar.gz" } ], "dependencies": [ diff --git a/packages/native/rust@1_90_0-bin.json b/packages/native/rust@1_90_0-bin.json new file mode 100644 index 0000000..bdd0f69 --- /dev/null +++ b/packages/native/rust@1_90_0-bin.json @@ -0,0 +1,39 @@ +{ + "package": "native/rust@1_90_0-bin", + "version": "1.90.0", + "type": "native", + "download": [ + { + "kind": "blob", + "path": "./rust-1.90.0-x86_64-unknown-linux-gnu.tar.gz", + "sha256": "e453bae1c68d02fe2eae065c5452d5731308164cd154154c6ee442d2fa590685", + "url": "https://static.rust-lang.org/dist/rust-1.90.0-x86_64-unknown-linux-gnu.tar.gz" + }, + { + "kind": "blob", + "path": "./rust-1.90.0-aarch64-unknown-linux-gnu.tar.gz", + "sha256": "293f412e3412c3aa3398c78ebbdf898fa08eacad80c85a7332ce1a455504c5fc", + "url": "https://static.rust-lang.org/dist/rust-1.90.0-aarch64-unknown-linux-gnu.tar.gz" + }, + { + "kind": "blob", + "path": "./rust-1.90.0-aarch64-apple-darwin.tar.gz", + "sha256": "a11b52e34f5e80cb25d49f7943ae60e0b069b431727a4c09b2c890ceebee3687", + "url": "https://static.rust-lang.org/dist/rust-1.90.0-aarch64-apple-darwin.tar.gz" + } + ], + "dependencies": [ + "*:*:native/bash", + "*:*:native/tar" + ], + "build": { + "steps": [ + "linux_amd64:*:tar -xzf rust-1.90.0-x86_64-unknown-linux-gnu.tar.gz", + "linux_amd64:*:cd rust-1.90.0-x86_64-unknown-linux-gnu && ./install.sh --prefix=$STAGING_DIR$NATIVEPREFIX --disable-ldconfig", + "linux_arm64:*:tar -xzf rust-1.90.0-aarch64-unknown-linux-gnu.tar.gz", + "linux_arm64:*:cd rust-1.90.0-aarch64-unknown-linux-gnu && ./install.sh --prefix=$STAGING_DIR$NATIVEPREFIX --disable-ldconfig", + "darwin_arm64:*:tar -xzf rust-1.90.0-aarch64-apple-darwin.tar.gz", + "darwin_arm64:*:cd rust-1.90.0-aarch64-apple-darwin && ./install.sh --prefix=$STAGING_DIR$NATIVEPREFIX --disable-ldconfig" + ] + } +} \ No newline at end of file diff --git a/packages/native/rust@1_90_0-mrustc.json b/packages/native/rust@1_90_0-mrustc.json index 29c1d14..5f35b7e 100644 --- a/packages/native/rust@1_90_0-mrustc.json +++ b/packages/native/rust@1_90_0-mrustc.json @@ -5,7 +5,7 @@ "download": [ { "kind": "git", - "sha256": "9f5ff518a49038d7ae51dadd1658231b61f7dced", + "sha256": "be69c7479a10bdce1b86cb886789d14a143ddf34", "url": "http://github.com/thepowersgang/mrustc.git" }, { diff --git a/packages/native/rust@1_90_0.json b/packages/native/rust@1_90_0.json index 09b8ee2..7a73116 100644 --- a/packages/native/rust@1_90_0.json +++ b/packages/native/rust@1_90_0.json @@ -17,7 +17,8 @@ "*:*:native/openssl", "*:*:native/pkgconf", "*:*:native/python@3.11", - "*:*:native/rust@1_90_0-mrustc" + "*_amd64:*:native/rust@1_90_0-mrustc", + "*_arm64:*:native/rust@1_90_0-bin" ], "build": { "env": [], diff --git a/packages/native/rust@1_94_0.json b/packages/native/rust@1_94_0.json new file mode 100644 index 0000000..197e8ec --- /dev/null +++ b/packages/native/rust@1_94_0.json @@ -0,0 +1,41 @@ +{ + "package": "native/rust@1_94_0", + "version": "1.94.0", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "b83f921cd3f321ff614f9c06a8b870d89299fc02888b48a5549683a36823474c", + "url": "http://static.rust-lang.org/dist/rustc-1.94.0-src.tar.gz" + } + ], + "dependencies": [ + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_93_0" + ], + "build": { + "env": [], + "steps": [ + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = true' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" + ] + } +} \ No newline at end of file diff --git a/packages/native/rust@1_95_0.json b/packages/native/rust@1_95_0.json new file mode 100644 index 0000000..e55a226 --- /dev/null +++ b/packages/native/rust@1_95_0.json @@ -0,0 +1,41 @@ +{ + "package": "native/rust@1_95_0", + "version": "1.95.0", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "ea9b82a83e46967537c3569ce9d6fa16811c043a96e651376c349e70241ca515", + "url": "http://static.rust-lang.org/dist/rustc-1.95.0-src.tar.gz" + } + ], + "dependencies": [ + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/openssl", + "*:*:native/pkgconf", + "*:*:native/python@3.11", + "*:*:native/rust@1_94_0" + ], + "build": { + "env": [], + "steps": [ + "*:*:echo '[build]' > config.toml", + "*:*:echo 'full-bootstrap = true' >> config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = true' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:cp -a build/*/stage3/bin/rustc $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/*/stage3-tools-bin/cargo $STAGING_DIR$NATIVEPREFIX/bin" + ] + } +} \ No newline at end of file diff --git a/sources.json b/sources.json index b710a8b..1d07b9c 100644 --- a/sources.json +++ b/sources.json @@ -7,7 +7,8 @@ }, "http://github.com/thepowersgang/mrustc.git": { "refs": [ - "9f5ff518a49038d7ae51dadd1658231b61f7dced" + "9f5ff518a49038d7ae51dadd1658231b61f7dced", + "be69c7479a10bdce1b86cb886789d14a143ddf34" ] }, "http://github.com/zeromq/libzmq.git": { @@ -17,7 +18,9 @@ }, "http://gitlab.torproject.org/tpo/core/tor.git": { "refs": [ - "e170cdcfebd45f6d098e3d811e2b1e1d120df184" + "106dcfa18c1a9539cb97337e57954ff89685840e", + "e170cdcfebd45f6d098e3d811e2b1e1d120df184", + "e41649c9a34f39f1d543e064fd2b97de26d3e097" ] }, "https://android.googlesource.com/platform/bionic": { @@ -100,11 +103,86 @@ "196e0661200bad5361340700fea67be12e1f1684" ] }, + "https://android.googlesource.com/platform/prebuilts/build-tools": { + "refs": [ + "434d914996ecc2abcda46a1841c82946241b1c35" + ] + }, + "https://android.googlesource.com/platform/prebuilts/clang/host/darwin-x86": { + "refs": [ + "2ede290b28d234595fcc23207c633961690c57ba" + ] + }, + "https://android.googlesource.com/platform/prebuilts/clang/host/linux-x86": { + "refs": [ + "568b941cf0c249b9c2a1f853e94a29f0e6291c59" + ] + }, + "https://android.googlesource.com/platform/prebuilts/clang/host/windows-x86": { + "refs": [ + "31edac0247a8e13bd12d2f7359fc290689c84ab8" + ] + }, + "https://android.googlesource.com/platform/prebuilts/cmake/darwin-x86": { + "refs": [ + "7aea7e9880110799088cd1de509886871078306f" + ] + }, + "https://android.googlesource.com/platform/prebuilts/cmake/linux-x86": { + "refs": [ + "e57c88d59d7d8408a32b16425158fd2aa64e2b3e" + ] + }, + "https://android.googlesource.com/platform/prebuilts/cmake/windows-x86": { + "refs": [ + "f6283abb0a655968016437be07d04370fd815e6c" + ] + }, + "https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.17-4.8": { + "refs": [ + "49917e030f76c01f35d5a46b66a2b85b2976647c" + ] + }, + "https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/host/x86_64-w64-mingw32-4.8": { + "refs": [ + "d6b93efcc5c2d123cb44eee4f74d6fd35d5efd9f" + ] + }, "https://android.googlesource.com/platform/prebuilts/ndk": { "refs": [ "c0815fea3a8081be6215440de330c63246e6551f" ] }, + "https://android.googlesource.com/platform/prebuilts/ninja/darwin-x86": { + "refs": [ + "f321e197944c19d273cec788b9a3e8ca94331248" + ] + }, + "https://android.googlesource.com/platform/prebuilts/ninja/linux-x86": { + "refs": [ + "8a10824f74fe0e22af9bf314a837f5b70e2bb67f" + ] + }, + "https://android.googlesource.com/platform/prebuilts/ninja/windows-x86": { + "refs": [ + "4d526002f0158a5d103bb6e54d43943c0e1c2778" + ] + }, + "https://android.googlesource.com/platform/prebuilts/python/darwin-x86": { + "refs": [ + "3400487f6a77cc05ee5d4799575372713ce63232" + ] + }, + "https://android.googlesource.com/platform/prebuilts/python/linux-x86": { + "refs": [ + "fce2346610379fdcce9dc7423c0e9a04e1a43cbf" + ] + }, + "https://android.googlesource.com/platform/prebuilts/python/windows-x86": { + "refs": [ + "6d619afe3f821388a57b7b2b473bee85debfdd7c" + ] + }, "https://android.googlesource.com/platform/prebuilts/simpleperf": { "refs": [ "c04e1425e49ad7a106bdb5911e7ebbc5ff4afa20" @@ -112,9 +190,9 @@ }, "https://android.googlesource.com/toolchain/llvm-project": { "refs": [ - "c58bc24fcf678c55b0bf522be89eff070507a005", "3b5e7c83a6e226d5bd7ed2e9b67449b64812074c", - "5e96669f06077099aa41290cdb4c5e6fa0f59349" + "5e96669f06077099aa41290cdb4c5e6fa0f59349", + "c58bc24fcf678c55b0bf522be89eff070507a005" ] }, "https://android.googlesource.com/toolchain/llvm_android.git": { @@ -134,21 +212,21 @@ }, "https://boringssl.googlesource.com/boringssl.git": { "refs": [ - "d24a38200fef19150eef00cad35b138936c08767", - "567289e4bb1958153f428bba52d953f3c080b4d7", - "822902749a5956bba09c7e9e451104e8a74f02c5", + "02f0d8776ecd83a1c663db2eaba6283aa72cc5b8", "2db0eb3f96a5756298dcd7f9319e56a98585bd10", + "567289e4bb1958153f428bba52d953f3c080b4d7", "5e73d0302c50cc38324686f937a75233d13ae4f0", - "02f0d8776ecd83a1c663db2eaba6283aa72cc5b8", - "ef839bf397fb4ecdb66ef2679a08ac7b3563c50b", + "822902749a5956bba09c7e9e451104e8a74f02c5", + "be5be0a4f5ebf00da151a06860deb11a0ffb609f", + "d24a38200fef19150eef00cad35b138936c08767", "d5440dd2c2c500ac2d3bba4afec47a054b4d99ae", - "be5be0a4f5ebf00da151a06860deb11a0ffb609f" + "ef839bf397fb4ecdb66ef2679a08ac7b3563c50b" ] }, "https://chromium.googlesource.com/chromium/deps/icu.git": { "refs": [ - "81d656878ec611cb0b42d52c82e9dae93920d9ba", - "43953f57b037778a1b8005564afabe214834f7bd" + "43953f57b037778a1b8005564afabe214834f7bd", + "81d656878ec611cb0b42d52c82e9dae93920d9ba" ] }, "https://chromium.googlesource.com/chromium/llvm-project/cfe/tools/clang-format.git": { @@ -179,13 +257,13 @@ }, "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git": { "refs": [ - "d844d2e77b402d562ade8cf8fd96759b587bf09d", + "3f6831c0bd147ae1ae0ab1d9187d37bce7cca38b", "654ee6e2504f11fb0e982a2cf276bafa750f694b", - "93883fde36ac158fd415dcd6dbd387dcfd928d3c", + "8470f1b1f157201d1bc62f3202e474e7043df0ba", "87f9dac127b387715d8d96ac7ec8fd469d8c2dab", - "3f6831c0bd147ae1ae0ab1d9187d37bce7cca38b", + "93883fde36ac158fd415dcd6dbd387dcfd928d3c", "b4bdcc33115b31758c56b83bb9de4642c411a042", - "8470f1b1f157201d1bc62f3202e474e7043df0ba" + "d844d2e77b402d562ade8cf8fd96759b587bf09d" ] }, "https://chromium.googlesource.com/external/github.com/google/cpu_features.git": { @@ -205,28 +283,28 @@ }, "https://dart.googlesource.com/args.git": { "refs": [ - "6a5a2e6b1f0020b873c7ffbdd36a784c4f9ee300", - "09c0fca1785c9df39288a48f767994eed80bed40" + "09c0fca1785c9df39288a48f767994eed80bed40", + "6a5a2e6b1f0020b873c7ffbdd36a784c4f9ee300" ] }, "https://dart.googlesource.com/async.git": { "refs": [ + "5f70a996f673d625e3502597084653686c3e754c", "a00437017231ebb6c3e3e8ecdfc9dd03522ab828", - "d7c0cd5a458308ab5e5a0d0deebdce32c4391ec6", "c0d81f8699682d01d657a9bf827107d11904a247", - "5f70a996f673d625e3502597084653686c3e754c" + "d7c0cd5a458308ab5e5a0d0deebdce32c4391ec6" ] }, "https://dart.googlesource.com/bazel_worker.git": { "refs": [ - "c76d7c86381a6ed594641ba03b55c65b84ee11a6", - "aa3cc9e826350b960e0c5a67e6065bcedba8b0ac" + "aa3cc9e826350b960e0c5a67e6065bcedba8b0ac", + "c76d7c86381a6ed594641ba03b55c65b84ee11a6" ] }, "https://dart.googlesource.com/benchmark_harness.git": { "refs": [ - "f6ef33dc88d7cbc9e4a8a087f1e652eb0d6cc254", - "44f125ae1d045aa3de09fe88a8dd70cb7352d563" + "44f125ae1d045aa3de09fe88a8dd70cb7352d563", + "f6ef33dc88d7cbc9e4a8a087f1e652eb0d6cc254" ] }, "https://dart.googlesource.com/boolean_selector.git": { @@ -238,51 +316,51 @@ }, "https://dart.googlesource.com/boringssl_gen.git": { "refs": [ - "9c7294fd58261a79794f5afaa26598cf1442ad20", "7322fc15cc065d8d2957fccce6b62a509dc4d641", + "9c7294fd58261a79794f5afaa26598cf1442ad20", "fef055e8d2749b82c79c8f043be1cbe5e8e4b40c" ] }, "https://dart.googlesource.com/browser_launcher.git": { "refs": [ - "7348ceae6508e5350771979c2951a54313303416", "60126904a26b761d29b4f2d76292ff3c089160de", + "7348ceae6508e5350771979c2951a54313303416", "e5fc5d488eb5038bfec2a6690c72ab8dd353e101" ] }, "https://dart.googlesource.com/cli_util.git": { "refs": [ - "c37d5e14f50e72a268c1ad86149cecfa4b58c494", "64192706344d0598784bebe1abc4a9bfc2608de0", - "c36b3941e38092d6d6f87ac27d9e88f153d3ac38" + "c36b3941e38092d6d6f87ac27d9e88f153d3ac38", + "c37d5e14f50e72a268c1ad86149cecfa4b58c494" ] }, "https://dart.googlesource.com/clock.git": { "refs": [ + "7956d60042f4ea979c4554d43eeb57d087627869", "7cbf08e36a92f14f22132d255846610c1b065324", - "ad428ea8b75fa0d7ba629791552d40478745c54a", - "7956d60042f4ea979c4554d43eeb57d087627869" + "ad428ea8b75fa0d7ba629791552d40478745c54a" ] }, "https://dart.googlesource.com/co19": { "refs": [ - "831b22d5e496fe63a813ca1c1b64f533c2f9fa0c", + "2424cfed7eedf53a122f8bfdbb6319692f726ec8", + "2c7f9a6a379cfc49b3e9019d1f616d7ec9edd766", "3a1b6f75c771d62e7150f2dd69595a98fd6930f4", + "4ebc13c27af77129889a11fd1f95cff04dccd8f9", "7b457e8d8c10361424beb7b432347f668c974439", - "d50a305d1b4455b4e72ba45a2cf2ab1c37004bc6", - "2424cfed7eedf53a122f8bfdbb6319692f726ec8", - "dd66678fea1d11bc6295a688ed5f8e726034f762", - "d285ef839784162ca988a9d149522249d0c00c5c", "7e4321a5cb2d8fcf9c3c818e62ef6d6f4fd87626", - "4ebc13c27af77129889a11fd1f95cff04dccd8f9", - "2c7f9a6a379cfc49b3e9019d1f616d7ec9edd766", - "a5d7b62b78dd9278c30a44cb2d22b8870b360a0e" + "831b22d5e496fe63a813ca1c1b64f533c2f9fa0c", + "a5d7b62b78dd9278c30a44cb2d22b8870b360a0e", + "d285ef839784162ca988a9d149522249d0c00c5c", + "d50a305d1b4455b4e72ba45a2cf2ab1c37004bc6", + "dd66678fea1d11bc6295a688ed5f8e726034f762" ] }, "https://dart.googlesource.com/collection.git": { "refs": [ - "9354f386de3c57f5486b01ab4dfa1a2f033307d9", - "887b826b50f48d6a9cd2c0684aa353e8e3a0fad0" + "887b826b50f48d6a9cd2c0684aa353e8e3a0fad0", + "9354f386de3c57f5486b01ab4dfa1a2f033307d9" ] }, "https://dart.googlesource.com/convert.git": { @@ -294,65 +372,65 @@ }, "https://dart.googlesource.com/core.git": { "refs": [ - "abcf992cf9fe1e896ed9dcff15523c0a6c00621d", - "7a71ad6b9170e09d5cbe39f3fccdee648659f1e7", "15c7fe9958b95998ba2f5a4ad1beab66b9d815fb", "61e677100b06d56a1b3731ab1178ebf9102ecb1f", "635dfa32c261ba078438b74de397f2207904ca78", + "7a71ad6b9170e09d5cbe39f3fccdee648659f1e7", + "abcf992cf9fe1e896ed9dcff15523c0a6c00621d", "b59ecf4ceebe6153e1c0166b7c9a7fdd9458a89d" ] }, "https://dart.googlesource.com/crypto.git": { "refs": [ - "813e35e913d12e16de67ac57523cd0ff4b07c012", "1216790ba704a0ab194f9cd0da2d65e1767f3342", - "3d26ef4cf22d4b218ba30e616544ad3cf52f64a1" + "3d26ef4cf22d4b218ba30e616544ad3cf52f64a1", + "813e35e913d12e16de67ac57523cd0ff4b07c012" ] }, "https://dart.googlesource.com/csslib.git": { "refs": [ - "23c314bb6b247a71348cfb0987ba0eb29574abb6", - "b70fef222c8a98abca39c3f729ec34632089697e", "192d720f121792ab05ca157ea280edc7e0410e9c", - "a3700b05bbcc42782e8a7024790dbf019d89c249" + "23c314bb6b247a71348cfb0987ba0eb29574abb6", + "a3700b05bbcc42782e8a7024790dbf019d89c249", + "b70fef222c8a98abca39c3f729ec34632089697e" ] }, "https://dart.googlesource.com/dart_style.git": { "refs": [ - "a6ad7693555a9add6f98ad6fd94de80d35c89415", + "100db45075abdd66fd8788b205243e90ff0595df", "1de89eb3bd340315f9ff5f2afc319cc1d6131b8d", "21de99ec0ff8ace4d946a746fb427fffd6afa535", + "44e8cfe7ba5a873ef81b6b39c07d50171eccf021", "5d35f4d829ffb8532d345d95d3e9504ae6cd839e", - "100db45075abdd66fd8788b205243e90ff0595df", - "44e8cfe7ba5a873ef81b6b39c07d50171eccf021" + "a6ad7693555a9add6f98ad6fd94de80d35c89415" ] }, "https://dart.googlesource.com/dartdoc.git": { "refs": [ "14d33d3a120ad3ce621bbcf0a545dc3adeccd7e7", - "88df88c9278ec4ec31df818f3ae33d4f91c8cd64", - "7e5da6090e6a48cebaee8789ca0fc396b34fd8a4", - "c7f11603effa88ddacabfd555993f322fca8b3fe", - "80c6f18f34b387d4b9ce89ddd2e3049093335f9d", "34561d6ebf5fa89ca1f93b981de96a75ff573562", - "d40067626b8c419e451897447e4dae74d25bcc37", "62aefbb788baf5b73b2d704d66d9735a7ca56a69", - "882aea9351262d618c955322f4c9aafe9540b848" + "7e5da6090e6a48cebaee8789ca0fc396b34fd8a4", + "80c6f18f34b387d4b9ce89ddd2e3049093335f9d", + "882aea9351262d618c955322f4c9aafe9540b848", + "88df88c9278ec4ec31df818f3ae33d4f91c8cd64", + "c7f11603effa88ddacabfd555993f322fca8b3fe", + "d40067626b8c419e451897447e4dae74d25bcc37" ] }, "https://dart.googlesource.com/ecosystem.git": { "refs": [ - "8ada2ee303383cf62cace9b2a97e8a3cc983e5c1", - "31148cd81bdb3c248fc30cd345ef49a978ed454c", - "54ca01abe4b7b62419ee88814d3dc98df36ff8ff", - "248b1801131ddc2e738c8181fc32d488e1312052", - "efe4ee4af6ac2e4c90aa525fae213b65c97295a9", - "2d58550f9e3fd8ecbc3b2e4444095fcb204a66c6", "06bbbffc1dae26164ee0a9603d0a30af620b84d0", "23172636e60c52384b40e6bd1240d12c8e860122", - "815d4ba2e7d11f8695a26f6cbe1262e3b8ff8d0d", + "248b1801131ddc2e738c8181fc32d488e1312052", + "2d58550f9e3fd8ecbc3b2e4444095fcb204a66c6", + "31148cd81bdb3c248fc30cd345ef49a978ed454c", + "54ca01abe4b7b62419ee88814d3dc98df36ff8ff", "7f6f1c1d53173307bde1aa4f4ee851d260cc7e69", - "d5233c6dd0767cffa5742e32c4bc7c230c9c4b12" + "815d4ba2e7d11f8695a26f6cbe1262e3b8ff8d0d", + "8ada2ee303383cf62cace9b2a97e8a3cc983e5c1", + "d5233c6dd0767cffa5742e32c4bc7c230c9c4b12", + "efe4ee4af6ac2e4c90aa525fae213b65c97295a9" ] }, "https://dart.googlesource.com/external/github.com/emscripten-core/emsdk.git": { @@ -368,33 +446,33 @@ }, "https://dart.googlesource.com/external/github.com/google/vector_math.dart.git": { "refs": [ - "e7b11a234638bd5d76a05bae99d20b937637dfe8", + "13f185f7e97d559e003f5ac79201da12f9a01049", "2cfbe2c115a57b368ccbc3c89ebd38a06764d3d1", "433fb6c829b18719fd0db4a703b607a26b7d81f4", - "bd4b574b2a457a3955d223694f1a979a0c0f38c9", "533c513771d35312dcd0f69e662d729979882df1", - "f08d7d2652e9ecf7d8f8605d9983335174511c95", + "bd4b574b2a457a3955d223694f1a979a0c0f38c9", "dc9d379674f50bb5559e99ee3a9f64729df9d3c8", - "13f185f7e97d559e003f5ac79201da12f9a01049" + "e7b11a234638bd5d76a05bae99d20b937637dfe8", + "f08d7d2652e9ecf7d8f8605d9983335174511c95" ] }, "https://dart.googlesource.com/external/github.com/google/webdriver.dart.git": { "refs": [ - "f85779edd7c9f66198d4391ed3631db1d97a5b11", "718e4c37d004fceb9856de980782c46bf9576df5", - "d83d6a3cbaab152ff9b99b29382d1f48b5d5ba23", "accfed557c005c87df56ffb626458f87da9f2125", "b4fd8592fb9b1405fea3979cab88bcd857f2addb", + "cfab787b30fbfb5509f9fc45cfce51157fb9f369", + "d83d6a3cbaab152ff9b99b29382d1f48b5d5ba23", "f52afbf72895ae980bd4129d877305c2182d6cbc", - "cfab787b30fbfb5509f9fc45cfce51157fb9f369" + "f85779edd7c9f66198d4391ed3631db1d97a5b11" ] }, "https://dart.googlesource.com/external/github.com/google/webkit_inspection_protocol.dart.git": { "refs": [ - "5740cc91eaeb13a02007b77b128fccf4b056db6e", "32fffa53df3f54005c742ddf4f859fb585a6b254", - "effa75205516757795683d527c3dea9546eb0c32", - "b459c427b74bf5e0919a083a97a167fb74d8bff1" + "5740cc91eaeb13a02007b77b128fccf4b056db6e", + "b459c427b74bf5e0919a083a97a167fb74d8bff1", + "effa75205516757795683d527c3dea9546eb0c32" ] }, "https://dart.googlesource.com/external/github.com/simolus3/tar.git": { @@ -405,61 +483,61 @@ }, "https://dart.googlesource.com/fixnum.git": { "refs": [ - "a8157d87f17d5184e210403f2ed63d354b854132", "6c19e60366ce3d5edfaed51a7c12c98e7977977e", - "83293b8ed86ccd574a94fcf4a2da43f31c1b43e0" + "83293b8ed86ccd574a94fcf4a2da43f31c1b43e0", + "a8157d87f17d5184e210403f2ed63d354b854132" ] }, "https://dart.googlesource.com/glob.git": { "refs": [ - "eaec6a448576048b748475d80bfac2795ad5a267", + "00a9c82d31c01ae88ec9ae4021d842e9b832aa52", "6d3ba5ec02817e62d17ace040590bb81a3e1242f", "994191a107b99a1911a3ef52ca238cd9305c8d37", - "eee18d1a577d5f965f6afbbd251798e065dced43", - "00a9c82d31c01ae88ec9ae4021d842e9b832aa52" + "eaec6a448576048b748475d80bfac2795ad5a267", + "eee18d1a577d5f965f6afbbd251798e065dced43" ] }, "https://dart.googlesource.com/html.git": { "refs": [ - "3bc803d7e655491b243418f19300ef0c6112bcea", "0da420ca1e196cda54ede476d0d8d3ecf55375ef", + "3bc803d7e655491b243418f19300ef0c6112bcea", "6d3bc86cf2ab530ef3fa5f84b5980dc318a02af4" ] }, "https://dart.googlesource.com/http.git": { "refs": [ - "8c325b9ca33d878a86d69c5048a8e6e18379663c", + "1b6e28d7e1c61f7b0f8561be7aee9c35b03de193", "4d8e7ef73d6135a8cc9b5e53db1beb43977d44b0", - "8d893851904d8cd292a66e39812b59aca2cc4d96", - "79470d014b467f01b0e7c5b63ab6c86b22dec8db", "6ecd13a88b82c2fdc8a555f218bafb0ad0370f51", - "f59cd79e1322c6272481e4f2ccfa9afcb37a6525", + "79470d014b467f01b0e7c5b63ab6c86b22dec8db", + "7d2d87ebfba86035a9ca6b79160ccc2ac1253c0c", + "8c325b9ca33d878a86d69c5048a8e6e18379663c", + "8d893851904d8cd292a66e39812b59aca2cc4d96", "900da9fe7d576caa4882053cf26d3a70bd3106e0", - "1b6e28d7e1c61f7b0f8561be7aee9c35b03de193", "e4ddd3e3d3a3d0ba7c9e48506e9d2e8620af30a8", - "7d2d87ebfba86035a9ca6b79160ccc2ac1253c0c" + "f59cd79e1322c6272481e4f2ccfa9afcb37a6525" ] }, "https://dart.googlesource.com/http_multi_server.git": { "refs": [ "25941e260658efb324de857e6022f418faf9bdd1", - "f6a748819139b8cbf513d5fc36b10676b0cb066f", - "e7515b5896b83d522189802a1e14e103e19426c0" + "e7515b5896b83d522189802a1e14e103e19426c0", + "f6a748819139b8cbf513d5fc36b10676b0cb066f" ] }, "https://dart.googlesource.com/http_parser.git": { "refs": [ + "23d775898ee90be9daf3297e298a8869bc755d84", "71b4c2c448b333397d5ff3235825d8cea773291c", - "9bf7bd981a39137da1e5d7fe64f4652b078c7aa9", - "23d775898ee90be9daf3297e298a8869bc755d84" + "9bf7bd981a39137da1e5d7fe64f4652b078c7aa9" ] }, "https://dart.googlesource.com/i18n.git": { "refs": [ "06a664f7beaab1f8eaf82a60b722982c03c8657c", + "c45e050426bdeaaa120e5ce856abb486863d0476", "d9cce0b6348b51872fb269e43ff8a43120fe191d", - "de1943629469719bf34269bf90fcdbe9334a73f3", - "c45e050426bdeaaa120e5ce856abb486863d0476" + "de1943629469719bf34269bf90fcdbe9334a73f3" ] }, "https://dart.googlesource.com/intl.git": { @@ -481,68 +559,68 @@ }, "https://dart.googlesource.com/lints.git": { "refs": [ + "5016d63c889936b2100520f999591d0492d9afe3", "baaaa5616370243c3c8c6a9f67fb83d26bdac552", - "f6b5d36485f6f067ac0f5a7193006ebe82ee6113", "e1d4794412aacd3bbb370956d44b9a10c3f892f3", - "5016d63c889936b2100520f999591d0492d9afe3" + "f6b5d36485f6f067ac0f5a7193006ebe82ee6113" ] }, "https://dart.googlesource.com/logging.git": { "refs": [ - "dbd682919708316e9a6d1e2fa472c9ad9225c2b4", "240ec33e23720091e0e5a029d569a3770ddccf1c", "6c3fb37fecb2e30415072f327b834a3e95517fa9", - "6fa056098ceca03d399bff64592822b2ae5dee6e" + "6fa056098ceca03d399bff64592822b2ae5dee6e", + "dbd682919708316e9a6d1e2fa472c9ad9225c2b4" ] }, "https://dart.googlesource.com/markdown.git": { "refs": [ + "19aaded4300d24bedcbf52ade792b203ddf030b0", "3d8d7a8f14b74bb646bb6e4ae35e0bf2beb74154", - "62424376d0b5fe35a2957b3caed4b75db010ba82", "4d5dbc659955973902f2585c54e94d453532db70", - "19aaded4300d24bedcbf52ade792b203ddf030b0", + "62424376d0b5fe35a2957b3caed4b75db010ba82", "d53feae0760a4f0aae5ffdfb12d8e6acccf14b40" ] }, "https://dart.googlesource.com/matcher.git": { "refs": [ "0abd4054c47a923486a6c0c04b5c974ba13ad2da", - "d6d573d0f8d65b36550ce62aad3ce6b5e987b642", - "31f13583630e093731c8cf2b843c14196d748c5c" + "31f13583630e093731c8cf2b843c14196d748c5c", + "d6d573d0f8d65b36550ce62aad3ce6b5e987b642" ] }, "https://dart.googlesource.com/mime.git": { "refs": [ - "4ca2f5edaafe21f462922d34db99486a44bb08b8", - "11fec7d6df509a4efd554051cc27e3bf82df9c96" + "11fec7d6df509a4efd554051cc27e3bf82df9c96", + "4ca2f5edaafe21f462922d34db99486a44bb08b8" ] }, "https://dart.googlesource.com/mockito.git": { "refs": [ "2302814df66e651b6710311366501523dbee2e11", - "a7fdf7101fbd31132a59188a6057d21004345927", - "57d484f9b8e7f6a504966a901174358a42fa932a" + "57d484f9b8e7f6a504966a901174358a42fa932a", + "a7fdf7101fbd31132a59188a6057d21004345927" ] }, "https://dart.googlesource.com/native.git": { "refs": [ - "fef40aebc3cf34654919e8a5785b6c50b3ea445c", - "fcc783c1d2777555616dfc850f131878ea5d88a9", "028f89d4a59448f9ecda5bd3d4519e2d7c742072", "14368a80bae9e3f381a2e59c91405338d82451ee", + "49a8912734162e5dc6ad009fc080fe54e9985470", + "4e71c281e4e3c262b28b7ab5b3306e4029b78b1c", "659511886501bcce638c3966590df04984909ef0", + "723cd56a5edc89699db32bca1b5bf91aa0bcf0cf", "f08677646f9e5e9a8a233fed1ec324a003609260", "f1fa5be4b0d7449fa8fe4077113ac0413d2b16bf", - "49a8912734162e5dc6ad009fc080fe54e9985470", - "4e71c281e4e3c262b28b7ab5b3306e4029b78b1c", - "723cd56a5edc89699db32bca1b5bf91aa0bcf0cf" + "fcc783c1d2777555616dfc850f131878ea5d88a9", + "fef40aebc3cf34654919e8a5785b6c50b3ea445c" ] }, "https://dart.googlesource.com/package_config.git": { "refs": [ - "903a0e528f91aef90821c8f5eaafbc1ae27198ab", - "76f2f6c245451da1fa24d7bbb00251b909e729a5", "07097d7ae60d40b34ce8daabdce318ecc168b7d1", + "76f2f6c245451da1fa24d7bbb00251b909e729a5", + "903a0e528f91aef90821c8f5eaafbc1ae27198ab", "bafff8e90be25e1985f7e3ee40ea1d22571a93e6" ] }, @@ -554,246 +632,246 @@ }, "https://dart.googlesource.com/pool.git": { "refs": [ - "88e463600c636a0d8cdb5dc306524ebf04b06baf", + "7bfc71b39742753a88688e56e55a828a2f5dc0bf", "832c5ab5eaee444354a8c796f7998bf744f169af", + "88e463600c636a0d8cdb5dc306524ebf04b06baf", "924fb04353cec915d927f9f1aed88e2eda92b98a", - "f85209d83cb0aa3c5612ed80de32df51ba580abd", "bf27900420ba382b6e5c0484ab3c79daad703dcd", - "7bfc71b39742753a88688e56e55a828a2f5dc0bf" + "f85209d83cb0aa3c5612ed80de32df51ba580abd" ] }, "https://dart.googlesource.com/protobuf.git": { "refs": [ - "ccf104dbc36929c0f8708285d5f3a8fae206343e", - "da7279c56734cffed4deb1e3a6f93bdcefccf6b8", - "b7dd58cdbd879beee4c3fbf8ee80fce8e97bad26", - "610943a3bed70c1c2079af5fca02462df10d223f", "0bab78d9538e49d50023bab36159b15ff3c369eb", "1aaa332af75c61ff32739821f7ec52186ff18d4c", - "bce362dec347ae3cca085bd28db2aa2649f754e5" + "610943a3bed70c1c2079af5fca02462df10d223f", + "b7dd58cdbd879beee4c3fbf8ee80fce8e97bad26", + "bce362dec347ae3cca085bd28db2aa2649f754e5", + "ccf104dbc36929c0f8708285d5f3a8fae206343e", + "da7279c56734cffed4deb1e3a6f93bdcefccf6b8" ] }, "https://dart.googlesource.com/pub.git": { "refs": [ - "ddc1c2fd2e2a7cd94a0b92ea033961a25f4ad517", - "ea4a1c854690d3abceb92c8cc2c6454470f9d5a7", + "1efd3f5e274e153637d99698b0ee454f6f2550ab", "30bfc439fedba1ee3daadcf542f1483479bc4909", + "52f512315bc886de487061091ef82056abf9dab8", "58de642dc1d07601f6eb2b4ecd94555c0210106b", - "1efd3f5e274e153637d99698b0ee454f6f2550ab", "639536aa78f7382b4a948669bfdc283f830b2ae9", "b2c03b448a47fdd52800609b9222cd737be3a934", - "52f512315bc886de487061091ef82056abf9dab8" + "ddc1c2fd2e2a7cd94a0b92ea033961a25f4ad517", + "ea4a1c854690d3abceb92c8cc2c6454470f9d5a7" ] }, "https://dart.googlesource.com/pub_semver.git": { "refs": [ - "a9025f3cc23ebb0f86c0af8759d95306b9133ce0", - "dfcad38866fb1e94e8ca91bff3dddd5189fb0794", - "d9e5ee68a350fbf4319bd4dfcb895fc016337d3a", + "8cce9d00431b6653026cdfcf6cf8548078c56f02", "8e9fcb9d3f89f06022387f906da4d380688f935c", "960f91309e325ae037e5f1434acb77b83a12d91e", - "8cce9d00431b6653026cdfcf6cf8548078c56f02" + "a9025f3cc23ebb0f86c0af8759d95306b9133ce0", + "d9e5ee68a350fbf4319bd4dfcb895fc016337d3a", + "dfcad38866fb1e94e8ca91bff3dddd5189fb0794" ] }, "https://dart.googlesource.com/sdk.git": { "refs": [ - "cf0d430bc6a507b3d54d4b5bfc91b308f0325178", - "7d7fbb30e0ca19c76800b1ad388fa55d09037e66", - "7e6469bd51d404916395a47b011d907d2c905121", - "c7e47c6c5df6ffa16d92704d5291b3387f974648", - "a8bfb132c5f7b9555d13ea79eaf0eaa77825824d", - "7fce3544047c41018b8c00b4453c0262f463dd74", "2d5dfe32cf2e6b3c3d6b396885502a5402b4fc72", + "2f5a888a5e6a7316074416822a9584d54e3f5ab5", "4a4ff9fba9ca67e9406743a24a3c47ad64d9e9c2", "4bb26ad346b166d759773e01ffc8247893b9681e", "5a8921e0042c662ea2adbac35ea051dec20a5341", - "2f5a888a5e6a7316074416822a9584d54e3f5ab5" + "7d7fbb30e0ca19c76800b1ad388fa55d09037e66", + "7e6469bd51d404916395a47b011d907d2c905121", + "7fce3544047c41018b8c00b4453c0262f463dd74", + "a8bfb132c5f7b9555d13ea79eaf0eaa77825824d", + "c7e47c6c5df6ffa16d92704d5291b3387f974648", + "cf0d430bc6a507b3d54d4b5bfc91b308f0325178" ] }, "https://dart.googlesource.com/shelf.git": { "refs": [ - "4c54af6b6baa9404826d234385c1bf69575dfd47", + "082d3ac2d13a98700d8148e8fad8f3e12a6fd0e1", "2536c15a562cb183dabbc628824a215663830325", - "9f2dffecbe8f219146a077e401758602752d486a", + "2af8529640d10a247ebfa4e17e629a2ff5273656", "2b5b683e78f5cc84e479a43297fd7b5489d7db02", - "f5600534e3e49ebed02e1e14ec82553958d86f36", + "4c54af6b6baa9404826d234385c1bf69575dfd47", + "9f2dffecbe8f219146a077e401758602752d486a", "b39e61196ce555dc1d3a0c3da695228fa6bdebb8", - "2af8529640d10a247ebfa4e17e629a2ff5273656", - "082d3ac2d13a98700d8148e8fad8f3e12a6fd0e1" + "f5600534e3e49ebed02e1e14ec82553958d86f36" ] }, "https://dart.googlesource.com/source_map_stack_trace.git": { "refs": [ - "96a8213dacf7cd42aefb1311491a4169826f98d2", - "741b6ceb4b6cdb8ff620664337d7ecc63ca52cc1" + "741b6ceb4b6cdb8ff620664337d7ecc63ca52cc1", + "96a8213dacf7cd42aefb1311491a4169826f98d2" ] }, "https://dart.googlesource.com/source_maps.git": { "refs": [ - "caa79c2011015759c6cf3299f299f5cccdf8bb61", + "17695e81d9ad129d20effd3d5c4f1cfa03f5add8", "198d32bbde2f5736c04dfbab306a17096fd1648b", - "e5e9d343302acf7df2145316ae4e56026c550989", - "17695e81d9ad129d20effd3d5c4f1cfa03f5add8" + "caa79c2011015759c6cf3299f299f5cccdf8bb61", + "e5e9d343302acf7df2145316ae4e56026c550989" ] }, "https://dart.googlesource.com/source_span.git": { "refs": [ + "22a243eb50d926935a8a1300a49af6d2988c3ae6", "59a3903521dbf4c38c77df73669e73174a170327", "89520f3009e332ce2b6675f71dca166521c36cc4", - "22a243eb50d926935a8a1300a49af6d2988c3ae6", "e6a34591b7f7880c7ca0fcb95b858ccf7f8be304", "ec100b7f12e9d36d2cdb3c369fefde736de4a550" ] }, "https://dart.googlesource.com/sse.git": { "refs": [ - "7dcde164d5bfe707441f206379ef33e7509e2aac", "52d042ff9ab2d0e5bc26805d74a03077a67861e1", - "b97dc3ad9a58a454dc5ffe5b3ec814dadc389e32", + "7dcde164d5bfe707441f206379ef33e7509e2aac", + "af2c5c572a8da6d2f7551b80d75121f2a38a4c79", "b573a1e9a61f5f3e2198becfa3f4f2e8decd1e90", - "af2c5c572a8da6d2f7551b80d75121f2a38a4c79" + "b97dc3ad9a58a454dc5ffe5b3ec814dadc389e32" ] }, "https://dart.googlesource.com/stack_trace.git": { "refs": [ - "ab09060b82c936c38c04eb49c1154b83f6648349", + "115bcd9591d251dab7a5ad518655c2124a1cc525", "4fd3e2a2dc6611febf4cfb9197ebf9e60fc6a34d", - "b660cfa444d46bcceb3a0eacbd6a2a7829da11de", "5fe4cfea7f0d8e67b7d5738d2e1c64a18b5ba450", - "115bcd9591d251dab7a5ad518655c2124a1cc525" + "ab09060b82c936c38c04eb49c1154b83f6648349", + "b660cfa444d46bcceb3a0eacbd6a2a7829da11de" ] }, "https://dart.googlesource.com/stream_channel.git": { "refs": [ - "b41ff7a25395ace8b23e454e3d1a3459a71306ca", "28a65331aa2d66a5e953205aa462bcdb1e240a5b", - "71fe6dd315e7f451466da80f7af2661cd28aaaea", "31a3aba8a78a78b266fbf7474f19cd4ba9ca562e", + "71fe6dd315e7f451466da80f7af2661cd28aaaea", + "b41ff7a25395ace8b23e454e3d1a3459a71306ca", "f4407168b275fcde9187baefd7dbce76d0992825" ] }, "https://dart.googlesource.com/string_scanner.git": { "refs": [ - "7b37c1b3d1ca6b581792e6ba385f651573af4a45", - "e1cab8f0538b50f6d7180598752cf5a7e07e74db", + "084b201c54b168aced178fff41fce71e3869ae42", "0de03b5279a04aa05052ce306f90fca473c6fd1a", - "77de235c061a09264cae920e52939787325c8cae", "69212690d491603a511904a7a84cd502f34bf7a9", - "084b201c54b168aced178fff41fce71e3869ae42" + "77de235c061a09264cae920e52939787325c8cae", + "7b37c1b3d1ca6b581792e6ba385f651573af4a45", + "e1cab8f0538b50f6d7180598752cf5a7e07e74db" ] }, "https://dart.googlesource.com/sync_http.git": { "refs": [ - "7622bdd07501f3f279212e355325b7c84a2b0a08", "47e6b264a209d0d806cfe9cdad8b6c69ce231986", + "7622bdd07501f3f279212e355325b7c84a2b0a08", "91c0dd5ef9a008f0277aadcfd83036f82e572d09", - "dc54465f07d9652875deeade643256dafa2fbc6c", - "c07f96f89a7eec7e3daac641fa6c587224fcfbaa" + "c07f96f89a7eec7e3daac641fa6c587224fcfbaa", + "dc54465f07d9652875deeade643256dafa2fbc6c" ] }, "https://dart.googlesource.com/term_glyph.git": { "refs": [ - "c86e8171ee7e9f6fc8e775e0be755a603dd0b72d", + "19d8c08a4e81122639129c62049896021910c932", "38a158f55006cf30942c928171ea601ee5e0308f", - "9ed8ed96fdd84cb7b72ee1be3e86010969fa95d4", "52677db71a2c6b6d0018ebbe5ed7552dbae1248f", - "19d8c08a4e81122639129c62049896021910c932" + "9ed8ed96fdd84cb7b72ee1be3e86010969fa95d4", + "c86e8171ee7e9f6fc8e775e0be755a603dd0b72d" ] }, "https://dart.googlesource.com/test.git": { "refs": [ - "329c6dff4dfcb178ba6c7009cf1c1b9215b317aa", - "3256c23cc753a184bb3bf27610a7c8410735e3ac", "20967732ea9dd30240a6429621ab2f82874bd9f0", - "f364fc8291d668d85c702a5b9f9a4f2e5c1ade0e", - "8e8a83607d90a7a6813fa378b2d1962a2fc0d44b", - "a833663e56b6182f8372180f5c95d1c01b531150", - "9e349d0e9f6c477584ea320f7ba2f49f761d84ac", + "2be5ca067bdf09e999be2ad760ab8efab854e789", + "3256c23cc753a184bb3bf27610a7c8410735e3ac", + "329c6dff4dfcb178ba6c7009cf1c1b9215b317aa", "84eba115521b74e848f096572a2d3e4d3607e8fa", "8643fbf375330cd1099cdc7434306532b4bcaaf1", - "2be5ca067bdf09e999be2ad760ab8efab854e789" + "8e8a83607d90a7a6813fa378b2d1962a2fc0d44b", + "9e349d0e9f6c477584ea320f7ba2f49f761d84ac", + "a833663e56b6182f8372180f5c95d1c01b531150", + "f364fc8291d668d85c702a5b9f9a4f2e5c1ade0e" ] }, "https://dart.googlesource.com/test_descriptor.git": { "refs": [ - "b23d7ccb0f9882e161fb4dea75b2237bf428432b", "2f19400259e6ec6801a79dcbf038b235545ab400", - "90743bc16bc00526a1b9a64f813614be9b2479d9", "408526a84e74d7af0f9c8c3fbb49ce9178927ee0", + "90743bc16bc00526a1b9a64f813614be9b2479d9", "92fa0c551267b38e4b27c9f74976ae4cd96d8b1e", - "a3db1efe3dc725dcae9ee61647d3bfc19b3231ac" + "a3db1efe3dc725dcae9ee61647d3bfc19b3231ac", + "b23d7ccb0f9882e161fb4dea75b2237bf428432b" ] }, "https://dart.googlesource.com/test_process.git": { "refs": [ - "862eaf3b825f5e97b278d84a2afbe81b3e8a1683", - "a7ca20b73f28d220e6478254082ea2b52f46dc97", - "6223572ca16d7585d5f08d9281de6a5734e45150", + "52ee3f5ab70ed965bb7122c1d499081fbccd0bde", "5b0349ca18fe48cd527f74ac883db2964cbdba40", - "52ee3f5ab70ed965bb7122c1d499081fbccd0bde" + "6223572ca16d7585d5f08d9281de6a5734e45150", + "862eaf3b825f5e97b278d84a2afbe81b3e8a1683", + "a7ca20b73f28d220e6478254082ea2b52f46dc97" ] }, "https://dart.googlesource.com/test_reflective_loader.git": { "refs": [ - "816942eaeeac30cc59d8699f1e94ad779cc53c06", + "598af2f503955020af0eaa82558d574a03934078", "6e648863b39aab8d0204e769d25805eea9db0ac4", - "faade6299d1823f0d062eb5e98f3b440ddcea7c6", + "816942eaeeac30cc59d8699f1e94ad779cc53c06", "9e35c9e00b8b6299e9295c0f29617af39276717d", - "598af2f503955020af0eaa82558d574a03934078" + "faade6299d1823f0d062eb5e98f3b440ddcea7c6" ] }, "https://dart.googlesource.com/tools.git": { "refs": [ + "1c5b8b949128d62182e162ef65a2e6f3feb19acf", "4321aecf2cb618dceab5d90adf0cb2ef7207169c", - "e660a68dce659311fb47735ab00365e26fca2fe3", "43a8582a85d2220b5f1ca8383d97587792085b36", - "1c5b8b949128d62182e162ef65a2e6f3feb19acf", + "4a284152c263a5d3429d5ab6acfdb70eca2ebcfb", + "62bc13bc086a66ce9a6a3e64865c82d17a1379b3", "b412ba4550bb634caf3c1064b7ebb671cd5e9247", - "f882de9ba86712003728d4663e1b73a620d352b1", "b51f39d01f5a4af33428a0189cd62595c01e23de", - "62bc13bc086a66ce9a6a3e64865c82d17a1379b3", - "4a284152c263a5d3429d5ab6acfdb70eca2ebcfb", "d74f9e13dc02736f12ae57d5984c57024113cf5a", + "e660a68dce659311fb47735ab00365e26fca2fe3", + "f882de9ba86712003728d4663e1b73a620d352b1", "fd7cc89aaac774fb34502502803a3bcf62cb83cd" ] }, "https://dart.googlesource.com/typed_data.git": { "refs": [ - "d14f9654f7a5d6baa7dcc27691bd0fa56769fb67", - "85299290551297a28202b6e7a177bb787f790ffd", "365468a74251c930a463daf5b8f13227e269111a", - "6abfafdcf661cd8a814619d7e2a3e99edb3a3862" + "6abfafdcf661cd8a814619d7e2a3e99edb3a3862", + "85299290551297a28202b6e7a177bb787f790ffd", + "d14f9654f7a5d6baa7dcc27691bd0fa56769fb67" ] }, "https://dart.googlesource.com/watcher.git": { "refs": [ - "c00fc2a6cd869cdebbc52e00af3d912d25745729", "0484625589d8512b36a7ad898a6cc6351d24c556", - "bc44e6f6b85972e516c44b9ae6c042b4cbd7c72b", + "3b850778ad0b62db3aa2cfe48832870c2461db30", "7f3b3a3ea49ba7e21fff240ce8ee616d62d32956", - "3b850778ad0b62db3aa2cfe48832870c2461db30" + "bc44e6f6b85972e516c44b9ae6c042b4cbd7c72b", + "c00fc2a6cd869cdebbc52e00af3d912d25745729" ] }, "https://dart.googlesource.com/web.git": { "refs": [ "2fe754fb396cb9b87010f0318cfbfc5408346c48", + "354e22995859757223cea3fccbff0ad86c540d60", + "5a39fdc396ae40344308975140343c23b6863261", "6b8a46561b82de9b20d77d9ac491844d303ca08f", - "e4c4d8126466e28dc137890b8f999da59bdedddd", - "bdf112ec64d28285cc29c6c78274ff3a827bb79b", - "af5de5e8548060c0795713ee7129ba6d5ff9f1b2", "8478cd27d574249eca3d41f9135458dfda2762c8", + "af5de5e8548060c0795713ee7129ba6d5ff9f1b2", + "bdf112ec64d28285cc29c6c78274ff3a827bb79b", "c2d5f63e9ea4c1409d6e159fc7b92dbcf4dc0d4d", - "5a39fdc396ae40344308975140343c23b6863261", - "354e22995859757223cea3fccbff0ad86c540d60" + "e4c4d8126466e28dc137890b8f999da59bdedddd" ] }, "https://dart.googlesource.com/web_socket_channel.git": { "refs": [ - "bf69990738f173c07e67cf6945551194bc8c2d92", - "8e95ea75302180af075295f7dd7ffe922e26f789", + "40aa29f1d2167467f5934d755891a8beb62a1239", "7a2039fd7c4c656ab27850926f89103b5f188dab", + "8e95ea75302180af075295f7dd7ffe922e26f789", "a937243563e8ee75d11fb23610297d4f6e5cb2b9", - "40aa29f1d2167467f5934d755891a8beb62a1239" + "bf69990738f173c07e67cf6945551194bc8c2d92" ] }, "https://dart.googlesource.com/webcore.git": { @@ -803,34 +881,34 @@ }, "https://dart.googlesource.com/webdev.git": { "refs": [ - "eccc7d87982b23f666d5e3e09953dca59ca094e4", - "c56611255f3f02642da10750448a8c90a9fa7b47", - "75417c09181c97786d9539a662834bed9d2f1e77", - "5f30c560dc4e3df341356c43ec1a766ee6b74a7c", - "e72f365a4408dce73bc023e624adc6a9a72dd7a2", - "f4856867de3e7b6ea6778dbc47cff44b12f9eed2", "302b6db6125901fd183390e339aff7490cdde3d0", "5bf833d0c277a384ab8bbfc10e7d3d71b8022560", + "5f30c560dc4e3df341356c43ec1a766ee6b74a7c", + "75417c09181c97786d9539a662834bed9d2f1e77", + "7f376d242709e933fff70610503d0c5c09b2e17e", + "c56611255f3f02642da10750448a8c90a9fa7b47", "c8b1cfa9d12c680b612eb1ed7a6b9f99fcce3ac3", - "7f376d242709e933fff70610503d0c5c09b2e17e" + "e72f365a4408dce73bc023e624adc6a9a72dd7a2", + "eccc7d87982b23f666d5e3e09953dca59ca094e4", + "f4856867de3e7b6ea6778dbc47cff44b12f9eed2" ] }, "https://dart.googlesource.com/yaml.git": { "refs": [ - "7873b3fb9f16ec83bc7778fed58615fa91f1f042", - "4cf24ca3bbcb2cd8cbea32fdd355ee5d0a597247", - "30fd9e0cd49b2e04f74769f9b24a0300e400403e", - "2a3727288a9336b6f9b7c5236657414ce1ee5d8a", "0406507fb719b0c8787896475734747fa35f2b78", + "2a3727288a9336b6f9b7c5236657414ce1ee5d8a", + "30fd9e0cd49b2e04f74769f9b24a0300e400403e", + "4cf24ca3bbcb2cd8cbea32fdd355ee5d0a597247", + "7873b3fb9f16ec83bc7778fed58615fa91f1f042", "e773005ab84e1b4d24132b0a687be7f9a3bfda15" ] }, "https://dart.googlesource.com/yaml_edit.git": { "refs": [ "08a146ef8f2c7aba908d2017c9ec840b882c9e51", + "35f4248c7bbba289b3899fa55486e2f31ef1a8c5", "57a28daea82a3f00f57a90d5ea6df6a458b2f781", - "fbdc70acc164af187772e013a2e1364cd05b88dc", - "35f4248c7bbba289b3899fa55486e2f31ef1a8c5" + "fbdc70acc164af187772e013a2e1364cd05b88dc" ] }, "https://fuchsia.googlesource.com/protobuf-gn": { @@ -853,6 +931,11 @@ "f3ad53337eaee92cbeb1a7c73e98d552c3a8186f" ] }, + "https://git.kernel.org/pub/scm/libs/libcap/libcap.git": { + "refs": [ + "413789501269f0f258a6716c6fa3edae178ba4a3" + ] + }, "https://github.com/Cyan4973/xxHash.git": { "refs": [ "66979328cf3f15cecdc61ea58c9f81e6071f8983" @@ -870,11 +953,20 @@ }, "https://github.com/MrCyjaneK/ct-ng-configs.git": { "refs": [ - "50eb4f2cbf22872af991c1db5d11f32b6a398d6b" + "2683c3d252b2337e7b045ba5add47c9d05436b98", + "50bad5461d320d2ed46f9d672d722b4e668822b4", + "50eb4f2cbf22872af991c1db5d11f32b6a398d6b", + "8e58852806fae75368c61b271c37b8564dbaa943", + "d6e741a7507f31c5e6e49218a6eb8ff7f2fe2077" ] }, "https://github.com/MrCyjaneK/osxcross.git": { "refs": [ + "0d1b14468187636f5a23d4adb4f3e5830570bd49", + "504e4711cee972ff751ab20ac8c259bbcaa22bb3", + "643bea6efcfd54769eaaa645dae5037dd7148c94", + "a3e46b026467f0e37ff3c79a015f6c9331190180", + "c2b3d1e9ed841474b04671f06b0f005d03dede82", "ea17212e41970b9f602fb30898b5a4013a1fb7af" ] }, @@ -883,6 +975,11 @@ "b7a785a538a31ab0cf5baf62d936e3e41182e0b7" ] }, + "https://github.com/SELinuxProject/selinux": { + "refs": [ + "919e9e64cc4b20f5a1e4df1e38cce1bfe15aff09" + ] + }, "https://github.com/besser82/libxcrypt": { "refs": [ "55ea777e8d567e5e86ffac917c28815ac54cc341" @@ -890,7 +987,8 @@ }, "https://github.com/crosstool-ng/crosstool-ng": { "refs": [ - "620b909cd0713f68084378b63cf61b5232757b90" + "620b909cd0713f68084378b63cf61b5232757b90", + "a3fef85781d3cda0b27388916f3287826aeec177" ] }, "https://github.com/guillemj/libmd.git": { @@ -918,6 +1016,11 @@ "e2eda0cf72a0598b44278cc91860ea402273fa29" ] }, + "https://github.com/linux-audit/audit-userspace": { + "refs": [ + "4db9c700b0c8b24a8113bc00d98101228e7d0212" + ] + }, "https://github.com/llvm/llvm-project": { "refs": [ "450f52eec88f728c89a9efd667dbeaf2dad93826" @@ -973,6 +1076,21 @@ "5fa4675419cfec60ac19a9c7f7c2d0e7c831a497" ] }, + "https://gitlab.gnome.org/GNOME/glib.git": { + "refs": [ + "e33be08bda99f453e497064e9e021d6306bbeb7d" + ] + }, + "https://gitlab.gnome.org/GNOME/gvdb": { + "refs": [ + "2b42fc75f09dbe1cd1057580b5782b08f2dcb400" + ] + }, + "https://gitlab.gnome.org/GNOME/sysprof": { + "refs": [ + "02e50efa49885a5a20a84a8cd7feda10ae7e7e98" + ] + }, "https://gn.googlesource.com/gn.git": { "refs": [ "07d3c6f4dc290fae5ca6152ebcb37d6815c411ab" @@ -1004,6 +1122,1188 @@ "refs": [ "13a831d76467c88f9e79f9804e2471137ec05331" ] + }, + "https://salsa.debian.org/apt-team/apt.git": { + "refs": [ + "6b128124271e94bdb0f4e7850d9286170d712b04" + ] + }, + "https://salsa.debian.org/sanvila/unzip.git": { + "refs": [ + "e811196e79092a387e6ff0b345780710acfab1c4" + ] + } + }, + "downloads": [ + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-14.2.0/gcc-14.2.0.tar.xz", + "sha256": "a7b39bc69cbf9e25826c5a60ab26477001f7c08d85cec04bc0e29cabed6f3cc9", + "path": ".build/tarballs/gcc-14.2.0.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-15.2.0/gcc-15.2.0.tar.xz", + "sha256": "438fd996826b0c82485a29da03a72d71d6e3541a83ec702df4271f6fe025d24e", + "path": ".build/tarballs/gcc-15.2.0.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-15.2.0/gcc-15.2.0.tar.xz", + "sha256": "438fd996826b0c82485a29da03a72d71d6e3541a83ec702df4271f6fe025d24e", + "path": "work/.build/tarballs/gcc-15.2.0.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/gdb/gdb-16.2.tar.xz", + "sha256": "4002cb7f23f45c37c790536a13a720942ce4be0402d929c9085e92f10d480119", + "path": ".build/tarballs/gdb-16.2.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/gdb/gdb-16.3.tar.xz", + "sha256": "bcfcd095528a987917acf9fff3f1672181694926cc18d609c99d0042c00224c5", + "path": ".build/tarballs/gdb-16.3.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/gdb/gdb-16.3.tar.xz", + "sha256": "bcfcd095528a987917acf9fff3f1672181694926cc18d609c99d0042c00224c5", + "path": "work/.build/tarballs/gdb-16.3.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/gettext/gettext-0.23.1.tar.xz", + "sha256": "c1f97a72a7385b7e71dd07b5fea6cdaf12c9b88b564976b23bd8c11857af2970", + "path": ".build/tarballs/gettext-0.23.1.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/gettext/gettext-0.26.tar.xz", + "sha256": "d1fb86e260cfe7da6031f94d2e44c0da55903dbae0a2fa0fae78c91ae1b56f00", + "path": ".build/tarballs/gettext-0.26.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/gettext/gettext-0.26.tar.xz", + "sha256": "d1fb86e260cfe7da6031f94d2e44c0da55903dbae0a2fa0fae78c91ae1b56f00", + "path": "work/.build/tarballs/gettext-0.26.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.38.tar.xz", + "sha256": "d1775e32e4628e64ef930f435b67bb63af7599acb6be2b335b9f19f16509f17f", + "path": ".build/tarballs/glibc-2.38.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.38.tar.xz", + "sha256": "fb82998998b2b29965467bc1b69d152e9c307d2cf301c9eafb4555b770ef3fd2", + "path": ".build/tarballs/glibc-2.38.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.41.tar.xz", + "sha256": "a5a26b22f545d6b7d7b3dd828e11e428f24f4fac43c934fb071b6a7d0828e901", + "path": ".build/tarballs/glibc-2.41.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.42.tar.xz", + "sha256": "d1775e32e4628e64ef930f435b67bb63af7599acb6be2b335b9f19f16509f17f", + "path": ".build/tarballs/glibc-2.42.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.42.tar.xz", + "sha256": "d1775e32e4628e64ef930f435b67bb63af7599acb6be2b335b9f19f16509f17f", + "path": "work/.build/tarballs/glibc-2.42.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.42.tar.xz", + "sha256": "fb82998998b2b29965467bc1b69d152e9c307d2cf301c9eafb4555b770ef3fd2", + "path": ".build/tarballs/glibc-2.42.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz", + "sha256": "a3c2b80201b89e68616f4ad30bc66aee4927c3ce50e33929ca819d5c43538898", + "path": ".build/tarballs/gmp-6.3.0.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz", + "sha256": "a3c2b80201b89e68616f4ad30bc66aee4927c3ce50e33929ca819d5c43538898", + "path": "work/.build/tarballs/gmp-6.3.0.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/mpc/mpc-1.3.1.tar.gz", + "sha256": "ab642492f5cf882b74aa0cb730cd410a81edcdbec895183ce930e706c1c759b8", + "path": ".build/tarballs/mpc-1.3.1.tar.gz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/mpc/mpc-1.3.1.tar.gz", + "sha256": "ab642492f5cf882b74aa0cb730cd410a81edcdbec895183ce930e706c1c759b8", + "path": "work/.build/tarballs/mpc-1.3.1.tar.gz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/mpfr/mpfr-4.2.1.tar.xz", + "sha256": "277807353a6726978996945af13e52829e3abd7a9a5b7fb2793894e18f1fcbb2", + "path": ".build/tarballs/mpfr-4.2.1.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/mpfr/mpfr-4.2.2.tar.xz", + "sha256": "277807353a6726978996945af13e52829e3abd7a9a5b7fb2793894e18f1fcbb2", + "path": ".build/tarballs/mpfr-4.2.2.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/mpfr/mpfr-4.2.2.tar.xz", + "sha256": "b67ba0383ef7e8a8563734e2e889ef5ec3c3b898a01d00fa0a6869ad81c6ce01", + "path": ".build/tarballs/mpfr-4.2.2.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/mpfr/mpfr-4.2.2.tar.xz", + "sha256": "b67ba0383ef7e8a8563734e2e889ef5ec3c3b898a01d00fa0a6869ad81c6ce01", + "path": "work/.build/tarballs/mpfr-4.2.2.tar.xz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/ncurses/ncurses-6.4.tar.gz", + "sha256": "6931283d9ac87c5073f30b6290c4c75f21632bb4fc3603ac8100812bed248159", + "path": ".build/tarballs/ncurses-6.4.tar.gz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/ncurses/ncurses-6.5.tar.gz", + "sha256": "136d91bc269a9a5785e5f9e980bc76ab57428f604ce3e5a5a90cebc767971cc6", + "path": ".build/tarballs/ncurses-6.5.tar.gz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/ncurses/ncurses-6.5.tar.gz", + "sha256": "136d91bc269a9a5785e5f9e980bc76ab57428f604ce3e5a5a90cebc767971cc6", + "path": "work/.build/tarballs/ncurses-6.5.tar.gz" + }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/ncurses/ncurses-6.5.tar.gz", + "sha256": "6931283d9ac87c5073f30b6290c4c75f21632bb4fc3603ac8100812bed248159", + "path": ".build/tarballs/ncurses-6.5.tar.gz" + }, + { + "kind": "blob", + "url": "http://github.com/libexpat/libexpat/releases/download/R_2_5_0/expat-2.5.0.tar.xz", + "sha256": "ef2420f0232c087801abf705e89ae65f6257df6b7931d37846a193ef2e8cdcbe", + "path": ".build/tarballs/expat-2.5.0.tar.xz" + }, + { + "kind": "blob", + "url": "http://github.com/libexpat/libexpat/releases/download/R_2_7_1/expat-2.7.1.tar.xz", + "sha256": "354552544b8f99012e5062f7d570ec77f14b412a3ff5c7d8d0dae62c0d217c30", + "path": ".build/tarballs/expat-2.7.1.tar.xz" + }, + { + "kind": "blob", + "url": "http://github.com/libexpat/libexpat/releases/download/R_2_7_1/expat-2.7.1.tar.xz", + "sha256": "354552544b8f99012e5062f7d570ec77f14b412a3ff5c7d8d0dae62c0d217c30", + "path": "work/.build/tarballs/expat-2.7.1.tar.xz" + }, + { + "kind": "blob", + "url": "http://static.rust-lang.org/dist/rustc-1.54.0-src.tar.gz", + "sha256": "ac8511633e9b5a65ad030a1a2e5bdaa841fdfe3132f2baaa52cc04e71c6c6976", + "path": "./rustc-1.54.0-src.tar.gz" + }, + { + "kind": "blob", + "url": "http://static.rust-lang.org/dist/rustc-1.90.0-src.tar.gz", + "sha256": "799a9f9cba4ed5351e071048bcf6b5560755d9009648def33a407dd4961f9b7e", + "path": "./rustc-1.90.0-src.tar.gz" + }, + { + "kind": "blob", + "url": "http://www.zlib.net/zlib-1.3.1.tar.xz", + "sha256": "38ef96b8dfe510d42707d9c781877914792541133e1870841463bfa73f883e32", + "path": ".build/tarballs/zlib-1.3.1.tar.xz" + }, + { + "kind": "blob", + "url": "http://www.zlib.net/zlib-1.3.1.tar.xz", + "sha256": "38ef96b8dfe510d42707d9c781877914792541133e1870841463bfa73f883e32", + "path": "work/.build/tarballs/zlib-1.3.1.tar.xz" + }, + { + "kind": "blob", + "url": "https://developer.apple.com/services-account/download?path=/Developer_Tools/Xcode_26.0.1/Xcode_26.0.1_Universal.xip", + "sha256": "9881c457068c86ac91e94cca2d7116dfd01cb7179c22b0863b63c7f3bb7e7695", + "path": "Xcode_26.0.1.xip" + }, + { + "kind": "blob", + "url": "https://dl.google.com/android/repository/android-ndk-r28c-darwin.zip", + "sha256": "0d4599e8bbf1a1668a0d51a541729b2246360f350018a2081d0b302dbb594f2a", + "path": "android-ndk-r28c-darwin.zip" + }, + { + "kind": "blob", + "url": "https://dl.google.com/android/repository/android-ndk-r28c-linux.zip", + "sha256": "dfb20d396df28ca02a8c708314b814a4d961dc9074f9a161932746f815aa552f", + "path": "android-ndk-r28c-linux.zip" + }, + { + "kind": "blob", + "url": "https://download.developer.apple.com/Developer_Tools/Xcode_16.4/Xcode_16.4.xip", + "sha256": "2dbf65ba28fb85b34e72c14c529a42d5c3189ab0f11fb29fdebd5f4ee6c87900", + "path": "Xcode_16.4.xip" + }, + { + "kind": "blob", + "url": "https://download.developer.apple.com/Developer_Tools/Xcode_26.0.1/Xcode_26.0.1_Universal.xip", + "sha256": "9881c457068c86ac91e94cca2d7116dfd01cb7179c22b0863b63c7f3bb7e7695", + "path": "Xcode_26.0.1.xip" + }, + { + "kind": "blob", + "url": "https://download.developer.apple.com/Developer_Tools/Xcode_26.1/XcodeXIP_26.1_Universal.xip", + "sha256": "434287e1e4c6ecbd6d5ea07e9f408fffcad2b82916b0a3fdfefa7fe60db4de93", + "path": "Xcode_26.1.xip" + }, + { + "kind": "blob", + "url": "https://download.developer.apple.com/Developer_Tools/Xcode_26.1/XcodeXIP_26.1_Universal.xip", + "sha256": "9881c457068c86ac91e94cca2d7116dfd01cb7179c22b0863b63c7f3bb7e7695", + "path": "Xcode_26.1.xip" + }, + { + "kind": "blob", + "url": "https://downloads.sourceforge.net/project/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v13.0.0.tar.bz2", + "sha256": "5afe822af5c4edbf67daaf45eec61d538f49eef6b19524de64897c6b95828caf", + "path": ".build/tarballs/mingw-w64-v13.0.0.tar.bz2" + }, + { + "kind": "blob", + "url": "https://downloads.sourceforge.net/project/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v13.0.0.tar.bz2", + "sha256": "5afe822af5c4edbf67daaf45eec61d538f49eef6b19524de64897c6b95828caf", + "path": "work/.build/tarballs/mingw-w64-v13.0.0.tar.bz2" + }, + { + "kind": "blob", + "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.43.1.tar.xz", + "sha256": "13f74202a3c4c51118b797a39ea4200d3f6cfbe224da6d1d95bb938480132dfd", + "path": ".build/tarballs/binutils-2.43.1.tar.xz" + }, + { + "kind": "blob", + "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.45.tar.xz", + "sha256": "c50c0e7f9cb188980e2cc97e4537626b1672441815587f1eab69d2a1bfbef5d2", + "path": ".build/tarballs/binutils-2.45.tar.xz" + }, + { + "kind": "blob", + "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.45.tar.xz", + "sha256": "c50c0e7f9cb188980e2cc97e4537626b1672441815587f1eab69d2a1bfbef5d2", + "path": "work/.build/tarballs/binutils-2.45.tar.xz" + }, + { + "kind": "blob", + "url": "https://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.16.tar.gz", + "sha256": "e6a1b1b589654277ee790cce3734f07876ac4ccfaecbee8afa0b649cf529cc04", + "path": ".build/tarballs/libiconv-1.16.tar.gz" + }, + { + "kind": "blob", + "url": "https://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.18.tar.gz", + "sha256": "3b08f5f4f9b4eb82f151a7040bfd6fe6c6fb922efe4b1659c66ea933276965e8", + "path": ".build/tarballs/libiconv-1.18.tar.gz" + }, + { + "kind": "blob", + "url": "https://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.18.tar.gz", + "sha256": "3b08f5f4f9b4eb82f151a7040bfd6fe6c6fb922efe4b1659c66ea933276965e8", + "path": "work/.build/tarballs/libiconv-1.18.tar.gz" + }, + { + "kind": "blob", + "url": "https://github.com/apple/llvm-project/archive/refs/heads/stable/20250402.zip", + "sha256": "b8e87f026e19259e6eac347746661e11592e0ff8bcdb657e177800223d7438ce", + "path": "tarballs/20250402.zip" + }, + { + "kind": "blob", + "url": "https://github.com/facebook/zstd/releases/download/v1.5.6/zstd-1.5.6.tar.gz", + "sha256": "8c29e06cf42aacc1eafc4077ae2ec6c6fcb96a626157e0593d5e82a34fd403c1", + "path": ".build/tarballs/zstd-1.5.6.tar.gz" + }, + { + "kind": "blob", + "url": "https://github.com/facebook/zstd/releases/download/v1.5.7/zstd-1.5.7.tar.gz", + "sha256": "eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3", + "path": ".build/tarballs/zstd-1.5.7.tar.gz" + }, + { + "kind": "blob", + "url": "https://github.com/facebook/zstd/releases/download/v1.5.7/zstd-1.5.7.tar.gz", + "sha256": "eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3", + "path": "work/.build/tarballs/zstd-1.5.7.tar.gz" + }, + { + "kind": "blob", + "url": "https://github.com/johnsonjh/duma/archive/refs/tags/VERSION_2_5_21.tar.gz", + "sha256": "470aa72e7018f0beadb5fbe3c932a62ba1b0594c29158a744c614bfa42133e59", + "path": ".build/tarballs/VERSION_2_5_21.tar.gz" + }, + { + "kind": "blob", + "url": "https://github.com/johnsonjh/duma/archive/refs/tags/VERSION_2_5_21.tar.gz", + "sha256": "470aa72e7018f0beadb5fbe3c932a62ba1b0594c29158a744c614bfa42133e59", + "path": "work/.build/tarballs/VERSION_2_5_21.tar.gz" + }, + { + "kind": "blob", + "url": "https://github.com/llvm/llvm-project/archive/refs/tags/llvmorg-20.1.8.zip", + "sha256": "b115ce6285dd9f3f401459912c12d28eb2e2d81e2387a71f6300aa11f7bc3288", + "path": "tarballs/llvmorg-20.1.8.zip" + }, + { + "kind": "blob", + "url": "https://go.dev/dl/go1.25.0.darwin-arm64.tar.gz", + "sha256": "544932844156d8172f7a28f77f2ac9c15a23046698b6243f633b0a0b00c0749c", + "path": "./go-darwin_arm64.tar.gz" + }, + { + "kind": "blob", + "url": "https://go.dev/dl/go1.25.0.linux-amd64.tar.gz", + "sha256": "2852af0cb20a13139b3448992e69b868e50ed0f8a1e5940ee1de9e19a123b613", + "path": "./go-linux_amd64.tar.gz" + }, + { + "kind": "blob", + "url": "https://go.dev/dl/go1.25.0.linux-arm64.tar.gz", + "sha256": "05de75d6994a2783699815ee553bd5a9327d8b79991de36e38b66862782f54ae", + "path": "./go-linux_arm64.tar.gz" + }, + { + "kind": "blob", + "url": "https://libisl.sourceforge.io/isl-0.26.tar.xz", + "sha256": "a0b5cb06d24f9fa9e77b55fabbe9a3c94a336190345c2555f9915bb38e976504", + "path": ".build/tarballs/isl-0.26.tar.xz" + }, + { + "kind": "blob", + "url": "https://libisl.sourceforge.io/isl-0.27.tar.xz", + "sha256": "6d8babb59e7b672e8cb7870e874f3f7b813b6e00e6af3f8b04f7579965643d5c", + "path": ".build/tarballs/isl-0.27.tar.xz" + }, + { + "kind": "blob", + "url": "https://libisl.sourceforge.io/isl-0.27.tar.xz", + "sha256": "6d8babb59e7b672e8cb7870e874f3f7b813b6e00e6af3f8b04f7579965643d5c", + "path": "work/.build/tarballs/isl-0.27.tar.xz" + }, + { + "kind": "blob", + "url": "https://raw.githubusercontent.com/Homebrew/homebrew-core/1cf441a0/Patches/berkeley-db@4/clang.diff", + "sha256": "86111b0965762f2c2611b302e4a95ac8df46ad24925bbb95a1961542a1542e40", + "path": "patch/clang.diff" + }, + { + "kind": "blob", + "url": "https://raw.githubusercontent.com/Homebrew/homebrew-core/1cf441a0/Patches/libtool/configure-pre-0.4.2.418-big_sur.diff", + "sha256": "83af02f2aa2b746bb7225872cab29a253264be49db0ecebb12f841562d9a2923", + "path": "patch/configure-pre-0.4.2.418-big_sur.diff" + }, + { + "kind": "blob", + "url": "https://raw.githubusercontent.com/NetBSD/pkgsrc/6034096dc85159a02116524692545cf5752c8f33/databases/db5/patches/patch-src_dbinc_db.in", + "sha256": "302b78f3e1f131cfbf91b24e53a5c79e1d9234c143443ab936b9e5ad08dea5b6", + "path": "patch/patch-src_dbinc_db.in" + }, + { + "kind": "blob", + "url": "https://static.rust-lang.org/dist/rust-1.90.0-aarch64-apple-darwin.tar.gz", + "sha256": "a11b52e34f5e80cb25d49f7943ae60e0b069b431727a4c09b2c890ceebee3687", + "path": "./rust-1.90.0-aarch64-apple-darwin.tar.gz" + }, + { + "kind": "blob", + "url": "https://static.rust-lang.org/dist/rust-1.90.0-aarch64-unknown-linux-gnu.tar.gz", + "sha256": "293f412e3412c3aa3398c78ebbdf898fa08eacad80c85a7332ce1a455504c5fc", + "path": "./rust-1.90.0-aarch64-unknown-linux-gnu.tar.gz" + }, + { + "kind": "blob", + "url": "https://static.rust-lang.org/dist/rust-1.90.0-x86_64-unknown-linux-gnu.tar.gz", + "sha256": "e453bae1c68d02fe2eae065c5452d5731308164cd154154c6ee442d2fa590685", + "path": "./rust-1.90.0-x86_64-unknown-linux-gnu.tar.gz" + }, + { + "kind": "blob", + "url": "https://storage.googleapis.com/dart-archive/channels/beta/release/3.9.0-100.2.beta/sdk/dartsdk-linux-arm64-release.zip", + "sha256": "fd0871a012ccc9c49ee8e9b2e6ba0ea36336c7cc38af05646ca513c4ccb0b616", + "path": "./dartsdk-linux_arm64.zip" + }, + { + "kind": "blob", + "url": "https://storage.googleapis.com/dart-archive/channels/beta/release/3.9.0-100.2.beta/sdk/dartsdk-linux-x64-release.zip", + "sha256": "9b503e642c862f404b46490cb6ba652c71d276fb7eb415283abe172a8574806f", + "path": "./dartsdk-linux_amd64.zip" + }, + { + "kind": "blob", + "url": "https://storage.googleapis.com/dart-archive/channels/beta/release/3.9.0-100.2.beta/sdk/dartsdk-macos-arm64-release.zip", + "sha256": "73063836c198c6ebcf09d9d38737badfc86bfa8dd8316fe7bd85d144d8c9dec9", + "path": "./dartsdk-darwin_arm64.zip" + }, + { + "kind": "blob", + "url": "https://storage.googleapis.com/dart-archive/channels/dev/release/3.4.0-247.0.dev/sdk/dartsdk-linux-arm64-release.zip", + "sha256": "98c0c8bd016ba6e1156d4630409f47ef42e16226efe331751e706711496208fc", + "path": "./dartsdk-linux_arm64.zip" + }, + { + "kind": "blob", + "url": "https://storage.googleapis.com/dart-archive/channels/dev/release/3.4.0-247.0.dev/sdk/dartsdk-linux-x64-release.zip", + "sha256": "3cff0b896fb2f665c8ab2cbf746882fcf42d2def7c3c64db7e2208ee092932da", + "path": "./dartsdk-linux_amd64.zip" + }, + { + "kind": "blob", + "url": "https://storage.googleapis.com/dart-archive/channels/dev/release/3.4.0-247.0.dev/sdk/dartsdk-macos-arm64-release.zip", + "sha256": "95eec1e3dfa7c891d928c0ae3be9550675eefa95b240ea5dd414f9b4c2a90369", + "path": "./dartsdk-darwin_arm64.zip" + }, + { + "kind": "blob", + "url": "https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.20.17.tar.xz", + "sha256": "d011245629b980d4c15febf080b54804aaf215167b514a3577feddb2495f8a3e", + "path": "work/.build/tarballs/linux-4.20.17.tar.xz" + }, + { + "kind": "blob", + "url": "https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.13.tar.xz", + "sha256": "e79dcc6eb86695c6babfb07c2861912b635d5075c6cd1cd0567d1ea155f80d6e", + "path": ".build/tarballs/linux-6.13.tar.xz" + }, + { + "kind": "blob", + "url": "https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.16.tar.xz", + "sha256": "1a4be2fe6b5246aa4ac8987a8a4af34c42a8dd7d08b46ab48516bcc1befbcd83", + "path": ".build/tarballs/linux-6.16.tar.xz" + }, + { + "kind": "blob", + "url": "https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.16.tar.xz", + "sha256": "1a4be2fe6b5246aa4ac8987a8a4af34c42a8dd7d08b46ab48516bcc1befbcd83", + "path": "work/.build/tarballs/linux-6.16.tar.xz" + }, + { + "kind": "blob", + "url": "https://www.musl-libc.org/releases/musl-1.2.5.tar.gz", + "sha256": "a9a118bbe84d8764da0ea0d28b3ab3fae8477fc7e4085d90102b8596fc7c75e4", + "path": ".build/tarballs/musl-1.2.5.tar.gz" + }, + { + "kind": "blob", + "url": "https://www.musl-libc.org/releases/musl-1.2.5.tar.gz", + "sha256": "a9a118bbe84d8764da0ea0d28b3ab3fae8477fc7e4085d90102b8596fc7c75e4", + "path": "work/.build/tarballs/musl-1.2.5.tar.gz" + }, + { + "kind": "tar.bz2", + "url": "http://downloads.sourceforge.net/project/boost/boost/1.83.0/boost_1_83_0.tar.bz2", + "sha256": "6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e" + }, + { + "kind": "tar.bz2", + "url": "http://downloads.sourceforge.net/project/boost/boost/1.85.0/boost_1_85_0.tar.bz2", + "sha256": "7009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617" + }, + { + "kind": "tar.bz2", + "url": "http://downloads.sourceforge.net/project/boost/boost/1.89.0/boost_1_89_0.tar.bz2", + "sha256": "85a33fa22621b4f314f8e85e1a5e2a9363d22e4f4992925d4bb3bc631b5a0c7a" + }, + { + "kind": "tar.bz2", + "url": "http://downloads.sourceforge.net/project/boost/boost/1.90.0/boost_1_90_0.tar.bz2", + "sha256": "49551aff3b22cbc5c5a9ed3dbc92f0e23ea50a0f7325b0d198b705e8ee3fc305" + }, + { + "kind": "tar.bz2", + "url": "http://downloads.sourceforge.net/project/p7zip/p7zip/16.02/p7zip_16.02_src_all.tar.bz2", + "sha256": "5eb20ac0e2944f6cb9c2d51dd6c4518941c185347d4089ea89087ffdd6e2341f" + }, + { + "kind": "tar.bz2", + "url": "http://github.com/libusb/libusb/releases/download/v1.0.26/libusb-1.0.26.tar.bz2", + "sha256": "12ce7a61fc9854d1d2a1ffe095f7b5fac19ddba095c259e6067a46500381b5a5" + }, + { + "kind": "tar.bz2", + "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.42.tar.bz2", + "sha256": "aa54850ebda5064c72cd4ec2d9b056c294252991486350d9a97ab2a6dfdfaf12" + }, + { + "kind": "tar.bz2", + "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.45.tar.bz2", + "sha256": "1393f90db70c2ebd785fb434d6127f8888c559d5eeb9c006c354b203bab3473e" + }, + { + "kind": "tar.bz2", + "url": "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.46.0.tar.bz2", + "sha256": "0f3152632a2a9ce066f20963e9bb40af7cf85b9b6c409ed892fd0676e84ecd12" + }, + { + "kind": "tar.bz2", + "url": "https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.47/pcre2-10.47.tar.bz2", + "sha256": "47fe8c99461250d42f89e6e8fdaeba9da057855d06eb7fc08d9ca03fd08d7bc7" + }, + { + "kind": "tar.bz2", + "url": "https://salsa.debian.org/reproducible-builds/reproducible-lfs/-/raw/master/releases/strip-nondeterminism/strip-nondeterminism_1.13.0.tar.bz2", + "sha256": "a70cdad5d728ea78b75d09880c4b51c7d887e89d0b610149b10cfb2abc70b4fc" + }, + { + "kind": "tar.gz", + "url": "http://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz", + "sha256": "6f504490b342a4f8a4c4a02fc9b866cbef8622d5df4e5452b46be121e46636c1" + }, + { + "kind": "tar.gz", + "url": "http://download.savannah.nongnu.org/releases/libunwind/libunwind-1.5.0.tar.gz", + "sha256": "90337653d92d4a13de590781371c604f9031cdb50520366aa1e3a91e1efb1017" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/bash/bash-5.3.tar.gz", + "sha256": "0d5cd86965f869a26cf64f4b71be7b96f90a3ba8b3d74e27e8e9d9d5550f31ba" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/cpio/cpio-2.15.tar.gz", + "sha256": "efa50ef983137eefc0a02fdb51509d624b5e3295c980aa127ceee4183455499e" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/autoconf/autoconf-2.72.tar.gz", + "sha256": "afb181a76e1ee72832f6581c0eddf8df032b83e2e0239ef79ebedc4467d92d6e" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/automake/automake-1.18.tar.gz", + "sha256": "af6043a5d4b3beef0c48161f4a6936259321cd101a34c1ab0768328515626c8a" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/bison/bison-3.8.tar.gz", + "sha256": "d5d184d421aee15603939973a6b0f372f908edfb24c5bc740697497021ad9458" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/gawk/gawk-5.2.2.tar.gz", + "sha256": "945aef7ccff101f20b22a10802bc005e994ab2b8ea3e724cc1a197c62f41f650" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/gawk/gawk-5.3.2.tar.gz", + "sha256": "8639a1a88fb411a1be02663739d03e902a6d313b5c6fe024d0bfeb3341a19a11" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-13.2.0/gcc-13.2.0.tar.gz", + "sha256": "8cb4be3796651976f94b9356fa08d833524f62420d6292c5033a9a26af315078" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/gettext/gettext-0.26.tar.gz", + "sha256": "39acf4b0371e9b110b60005562aace5b3631fed9b1bb9ecccfc7f56e58bb1d7f" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/gperf/gperf-3.3.tar.gz", + "sha256": "fd87e0aba7e43ae054837afd6cd4db03a3f2693deb3619085e6ed9d8d9604ad8" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/libc/glibc-2.39.tar.gz", + "sha256": "97f84f3b7588cd54093a6f6389b0c1a81e70d99708d74963a2e3eab7c7dc942d" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.17.tar.gz", + "sha256": "8f74213b56238c85a50a5329f77e06198771e70dd9a739779f4c02f65d971313" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/libiconv/libiconv-1.18.tar.gz", + "sha256": "3b08f5f4f9b4eb82f151a7040bfd6fe6c6fb922efe4b1659c66ea933276965e8" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/libtool/libtool-2.5.4.tar.gz", + "sha256": "da8ebb2ce4dcf46b90098daf962cffa68f4b4f62ea60f798d0ef12929ede6adf" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/libunistring/libunistring-1.4.1.tar.gz", + "sha256": "12542ad7619470efd95a623174dcd4b364f2483caf708c6bee837cb53a54cb9d" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/m4/m4-1.4.20.tar.gz", + "sha256": "6ac4fc31ce440debe63987c2ebbf9d7b6634e67a7c3279257dc7361de8bdb3ef" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/make/make-4.4.tar.gz", + "sha256": "581f4d4e872da74b3941c874215898a7d35802f03732bdccee1d4a7979105d18" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/mpc/mpc-1.3.1.tar.gz", + "sha256": "ab642492f5cf882b74aa0cb730cd410a81edcdbec895183ce930e706c1c759b8" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/ncurses/ncurses-6.5.tar.gz", + "sha256": "136d91bc269a9a5785e5f9e980bc76ab57428f604ce3e5a5a90cebc767971cc6" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/patch/patch-2.8.tar.gz", + "sha256": "308a4983ff324521b9b21310bfc2398ca861798f02307c79eb99bb0e0d2bf980" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/readline/readline-8.0.tar.gz", + "sha256": "e339f51971478d369f8a053a330a190781acb9864cf4c541060f12078948e461" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/sed/sed-4.9.tar.gz", + "sha256": "d1478a18f033a73ac16822901f6533d30b6be561bcbce46ffd7abce93602282e" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/texinfo/texinfo-7.2.tar.gz", + "sha256": "e86de7dfef6b352aa1bf647de3a6213d1567c70129eccbf8977706d9c91919c8" + }, + { + "kind": "tar.gz", + "url": "http://ftpmirror.gnu.org/gnu/texinfo/texinfo-7.2.tar.gz", + "sha256": "e86de7dfef6b352aa1bf647de3a621w3d1567c70129eccbf8977706d9c91919c8" + }, + { + "kind": "tar.gz", + "url": "http://github.com/Kitware/CMake/releases/download/v4.0.3/cmake-4.0.3.tar.gz", + "sha256": "8d3537b7b7732660ea247398f166be892fe6131d63cc291944b45b91279f3ffb" + }, + { + "kind": "tar.gz", + "url": "http://github.com/MrCyjaneK/nproc/archive/30acb0de0e18a2b16c277e6db840e5ce389d962d.tar.gz", + "sha256": "353715a0799c3d965762b1207646b99503deb57603af779547b06c944ace4bad" + }, + { + "kind": "tar.gz", + "url": "http://github.com/MrCyjaneK/polyseed/archive/refs/tags/v2.0.0-patch.tar.gz", + "sha256": "28a86b0bc178076ac65dc7d8cc28a79eb546708473efc0e8dce688f1e237ccc2" + }, + { + "kind": "tar.gz", + "url": "http://github.com/eudev-project/eudev/releases/download/v3.2.14/eudev-3.2.14.tar.gz", + "sha256": "8da4319102f24abbf7fff5ce9c416af848df163b29590e666d334cc1927f006f" + }, + { + "kind": "tar.gz", + "url": "http://github.com/facebook/zstd/releases/download/v1.5.7/zstd-1.5.7.tar.gz", + "sha256": "eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3" + }, + { + "kind": "tar.gz", + "url": "http://github.com/google/googletest/releases/download/v1.17.0/googletest-1.17.0.tar.gz", + "sha256": "65fab701d9829d38cb77c14acdc431d2108bfdbf8979e40eb8ae567edf10b27c" + }, + { + "kind": "tar.gz", + "url": "http://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz", + "sha256": "92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb" + }, + { + "kind": "tar.gz", + "url": "http://github.com/libexpat/libexpat/releases/download/R_2_6_0/expat-2.6.0.tar.gz", + "sha256": "a13447b9aa67d7c860783fdf6820f33ebdea996900d6d8bbc50a628f55f099f7" + }, + { + "kind": "tar.gz", + "url": "http://github.com/libusb/hidapi/archive/refs/tags/hidapi-0.13.1.tar.gz", + "sha256": "476a2c9a4dc7d1fc97dd223b84338dbea3809a84caea2dcd887d9778725490e3" + }, + { + "kind": "tar.gz", + "url": "http://github.com/protocolbuffers/protobuf/releases/download/v3.6.1/protobuf-cpp-3.6.1.tar.gz", + "sha256": "b3732e471a9bb7950f090fd0457ebd2536a9ba0891b7f3785919c654fe2a2529" + }, + { + "kind": "tar.gz", + "url": "http://github.com/thepowersgang/mrustc/archive/06b87d1af49d2db3bd850fdee8888055dd540dd1.tar.gz", + "sha256": "d3d3b84a100e71628afecf1125dbaa9bfc54ef9578c4fd81d75dca34c96f2565" + }, + { + "kind": "tar.gz", + "url": "http://github.com/tukaani-project/xz/releases/download/v5.8.1/xz-5.8.1.tar.gz", + "sha256": "507825b599356c10dca1cd720c9d0d0c9d5400b9de300af00e4d1ea150795543" + }, + { + "kind": "tar.gz", + "url": "http://github.com/unicode-org/icu/releases/download/release-55-2/icu4c-55_2-src.tgz", + "sha256": "eda2aa9f9c787748a2e2d310590720ca8bcc6252adf6b4cfb03b65bef9d66759" + }, + { + "kind": "tar.gz", + "url": "http://github.com/zeromq/libzmq/releases/download/v4.3.5/zeromq-4.3.5.tar.gz", + "sha256": "6653ef5910f17954861fe72332e68b03ca6e4d9c7160eb3a8de5a5a913bfab43" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.55.0-src.tar.gz", + "sha256": "b2379ac710f5f876ee3c3e03122fe33098d6765d371cac6c31b1b6fc8e43821e" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.56.1-src.tar.gz", + "sha256": "c3898dfaadaa193dc88ddbc5345946a163211b58621df1cfff70186b4fc79511" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.57.0-src.tar.gz", + "sha256": "3546f9c3b91b1f8b8efd26c94d6b50312c08210397b4072ed2748e2bd4445c1a" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.58.1-src.tar.gz", + "sha256": "a839afdd3625d6f3f3c4c10b79813675d1775c460d14be1feaf33a6c829c07c7" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.59.0-src.tar.gz", + "sha256": "a7c8eeaee85bfcef84c96b02b3171d1e6540d15179ff83dddd9eafba185f85f9" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.60.0-src.tar.gz", + "sha256": "20ca826d1cf674daf8e22c4f8c4b9743af07973211c839b85839742314c838b7" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.61.0-src.tar.gz", + "sha256": "ad0b4351675aa9abdf4c7e066613bd274c4391c5506db152983426376101daed" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.62.0-src.tar.gz", + "sha256": "7d0878809b64d206825acae3eb7f60afb2212d81e3de1adf4c11c6032b36c027" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.62.1-src.tar.gz", + "sha256": "72acbe6ffcd94f598382a7430b0d85ee8f679e6d0b27f3f566ed1c16c978133f" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.63.0-src.tar.gz", + "sha256": "1f9580295642ef5da7e475a8da2397d65153d3f2cb92849dbd08ed0effca99d0" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.64.0-src.tar.gz", + "sha256": "b3cd9f481e1a2901bf6f3808d30c69cc4ea80d93c4cc4e2ed52258b180381205" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.65.0-src.tar.gz", + "sha256": "5828bb67f677eabf8c384020582b0ce7af884e1c84389484f7f8d00dd82c0038" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.66.1-src.tar.gz", + "sha256": "5b3c933a94c72187705d4ee293198babfdd09442f5937fbd685db3a81f4959ba" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.67.1-src.tar.gz", + "sha256": "46483d3e5de85a3bd46f8e7a3ae1837496391067dbe713a25d3cf051b3d9ff6e" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.68.2-src.tar.gz", + "sha256": "93339c23f7cd4d0c45db58e18b4c6e16d6070f4277aad9d2492d23294bf32e96" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.69.0-src.tar.gz", + "sha256": "fb05971867ad6ccabbd3720279f5a94b99f61024923187b56bb5c455fa3cf60f" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.70.0-src.tar.gz", + "sha256": "b2bfae000b7a5040e4ec4bbc50a09f21548190cb7570b0ed77358368413bd27c" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.71.1-src.tar.gz", + "sha256": "6fa90d50d1d529a75f6cc349784de57d7ec0ba2419b09bde7d335c25bd4e472e" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.72.1-src.tar.gz", + "sha256": "7f48845f6a52cdbb5d63fb0528fd5f520eb443275b55f98e328159f86568f895" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.73.0-src.tar.gz", + "sha256": "96d62e6d1f2d21df7ac8acb3b9882411f9e7c7036173f7f2ede9e1f1f6b1bb3a" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.74.1-src.tar.gz", + "sha256": "67db3e22fc9921c885baae5953ba144fc474cde29ec69ab56d43ce764206231d" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.75.0-src.tar.gz", + "sha256": "5b739f45bc9d341e2d1c570d65d2375591e22c2d23ef5b8a37711a0386abc088" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.76.0-src.tar.gz", + "sha256": "9e5cff033a7f0d2266818982ad90e4d3e4ef8f8ee1715776c6e25073a136c021" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.77.1-src.tar.gz", + "sha256": "ee106e4c569f52dba3b5b282b105820f86bd8f6b3d09c06b8dce82fb1bb3a4a1" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.78.0-src.tar.gz", + "sha256": "ff544823a5cb27f2738128577f1e7e00ee8f4c83f2a348781ae4fc355e91d5a9" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.79.0-src.tar.gz", + "sha256": "172ecf3c7d1f9d9fb16cd2a628869782670416ded0129e524a86751f961448c0" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.80.1-src.tar.gz", + "sha256": "2c0b8f643942dcb810cbcc50f292564b1b6e44db5d5f45091153996df95d2dc4" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.81.0-src.tar.gz", + "sha256": "872448febdff32e50c3c90a7e15f9bb2db131d13c588fe9071b0ed88837ccfa7" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.82.0-src.tar.gz", + "sha256": "7c53f4509eda184e174efa6ba7d5eeb586585686ce8edefc781a2b11a7cf512a" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.83.0-src.tar.gz", + "sha256": "722d773bd4eab2d828d7dd35b59f0b017ddf9a97ee2b46c1b7f7fac5c8841c6e" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.84.1-src.tar.gz", + "sha256": "5e2fb5d49628a549f7671b2ccf9855ab379fd442831a7c2af16e0cdcc31bb375" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.85.1-src.tar.gz", + "sha256": "0f2995ca083598757a8d9a293939e569b035799e070f419a686b0996fb94238a" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.86.0-src.tar.gz", + "sha256": "022a27286df67900a044d227d9db69d4732ec3d833e4ffc259c4425ed71eed80" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.87.0-src.tar.gz", + "sha256": "149bb9fd29be592da4e87900fc68f0629a37bf6850b46339dd44434c04fd8e76" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.88.0-src.tar.gz", + "sha256": "3a97544434848ae3d193d1d6bc83d6f24cb85c261ad95f955fde47ec64cfcfbe" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.89.0-src.tar.gz", + "sha256": "2576f9f440dd99b0151bd28f59aa0ac6102d5c4f3ed4ef8a810c8dd05057250d" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.90.0-src.tar.gz", + "sha256": "799a9f9cba4ed5351e071048bcf6b5560755d9009648def33a407dd4961f9b7e" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.91.0-src.tar.gz", + "sha256": "327f528151753013f0a2b2c7f48955a033d718f269a4bc586314d675d0d43e8a" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.92.0-src.tar.gz", + "sha256": "9e0d2ca75c7e275fdc758255bf4b03afb3d65d1543602746907c933b6901c3b8" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.93.0-src.tar.gz", + "sha256": "69112bd83c321943ffc390b7db2f59ef3febb95dac700f67c2156fbf6b50a705" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.94.0-src.tar.gz", + "sha256": "b83f921cd3f321ff614f9c06a8b870d89299fc02888b48a5549683a36823474c" + }, + { + "kind": "tar.gz", + "url": "http://static.rust-lang.org/dist/rustc-1.95.0-src.tar.gz", + "sha256": "ea9b82a83e46967537c3569ce9d6fa16811c043a96e651376c349e70241ca515" + }, + { + "kind": "tar.gz", + "url": "http://www.cpan.org/src/5.0/perl-5.42.0.tar.gz", + "sha256": "e093ef184d7f9a1b9797e2465296f55510adb6dab8842b0c3ed53329663096dc" + }, + { + "kind": "tar.gz", + "url": "http://www.cpan.org/src/5.0/perl-5.42.1.tar.gz", + "sha256": "6f84e6dc8cce97181d1c6aeeb552c13775c91ded3c6c73743c9211af87b16bf8" + }, + { + "kind": "tar.gz", + "url": "http://www.nlnetlabs.nl/downloads/unbound/unbound-1.23.0.tar.gz", + "sha256": "959bd5f3875316d7b3f67ee237a56de5565f5b35fc9b5fc3cea6cfe735a03bb8" + }, + { + "kind": "tar.gz", + "url": "http://www.openssl.org/source/openssl-3.5.1.tar.gz", + "sha256": "529043b15cffa5f36077a4d0af83f3de399807181d607441d734196d889b641f" + }, + { + "kind": "tar.gz", + "url": "http://www.python.org/ftp/python/3.11.13/Python-3.11.13.tgz", + "sha256": "0f1a22f4dfd34595a29cf69ee7ea73b9eff8b1cc89d7ab29b3ab0ec04179dad8" + }, + { + "kind": "tar.gz", + "url": "http://www.python.org/ftp/python/3.14.0/Python-3.14.0.tgz", + "sha256": "88d2da4eed42fa9a5f42ff58a8bc8988881bd6c547e297e46682c2687638a851" + }, + { + "kind": "tar.gz", + "url": "http://www.zlib.net/zlib-1.3.1.tar.gz", + "sha256": "9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23" + }, + { + "kind": "tar.gz", + "url": "https://astron.com/pub/file/file-5.46.tar.gz", + "sha256": "c9cc77c7c560c543135edc555af609d5619dbef011997e988ce40a3d75d86088" + }, + { + "kind": "tar.gz", + "url": "https://cpan.metacpan.org/authors/id/O/OV/OVID/Sub-Override-0.09.tar.gz", + "sha256": "939a67c1f729968e0cc81b74958db750e1bdb7c020bee1a263332f422c2e25b5" + }, + { + "kind": "tar.gz", + "url": "https://cpan.metacpan.org/authors/id/P/PH/PHRED/Archive-Zip-1.68.tar.gz", + "sha256": "984e185d785baf6129c6e75f8eb44411745ac00bf6122fb1c8e822a3861ec650" + }, + { + "kind": "tar.gz", + "url": "https://cpan.metacpan.org/authors/id/P/PI/PIXEL/Archive-Cpio-0.10.tar.gz", + "sha256": "246fb31669764e78336b2191134122e07c44f2d82dc4f37d552ab28f8668bed3" + }, + { + "kind": "tar.gz", + "url": "https://cpan.metacpan.org/authors/id/T/TO/TODDR/autodie-2.37.tar.gz", + "sha256": "4921d211b0cea63c2ca06dfc0c948a7203a3d48ad80a06f43b46104354f2c1c3" + }, + { + "kind": "tar.gz", + "url": "https://curl.se/download/curl-8.15.0.tar.gz", + "sha256": "d85cfc79dc505ff800cb1d321a320183035011fa08cb301356425d86be8fc53c" + }, + { + "kind": "tar.gz", + "url": "https://download.oracle.com/berkeley-db/db-5.3.28.tar.gz", + "sha256": "e0a992d740709892e81f9d93f06daf305cf73fb81b545afe72478043172c3628" + }, + { + "kind": "tar.gz", + "url": "https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.46/pcre2-10.46.tar.gz", + "sha256": "8d28d7f2c3b970c3a4bf3776bcbb5adfc923183ce74bc8df1ebaad8c1985bd07" + }, + { + "kind": "tar.gz", + "url": "https://github.com/RsyncProject/rsync/releases/download/v3.4.1/rsync-3.4.1.tar.gz", + "sha256": "2924bcb3a1ed8b551fc101f740b9f0fe0a202b115027647cf69850d65fd88c52" + }, + { + "kind": "tar.gz", + "url": "https://github.com/git/git/archive/refs/tags/v2.51.0.tar.gz", + "sha256": "3524fc5fd81f16f80e1696a8281bd8ad831048b67848015d7b7382bf365ae685" + }, + { + "kind": "tar.gz", + "url": "https://github.com/ninja-build/ninja/archive/refs/tags/v1.13.1.tar.gz", + "sha256": "f0055ad0369bf2e372955ba55128d000cfcc21777057806015b45e4accbebf23" + }, + { + "kind": "tar.gz", + "url": "https://github.com/rockdaboot/libpsl/releases/download/0.21.5/libpsl-0.21.5.tar.gz", + "sha256": "1dcc9ceae8b128f3c0b3f654decd0e1e891afc6ff81098f227ef260449dae208" + }, + { + "kind": "tar.gz", + "url": "https://github.com/tpoechtrager/apple-libtapi/archive/refs/heads/1300.6.5.tar.gz", + "sha256": "a00b170901cc484c7041bbae1288e88ff3169728b572febd37418c52c2036935", + "path": "build/apple-libtapi" + }, + { + "kind": "tar.gz", + "url": "https://github.com/tpoechtrager/cctools-port/archive/refs/heads/986-ld64-711.tar.gz", + "sha256": "1b69237d99047afa8e840975d97b1733dcaba1d9135e1116d07f2f81cc0b8b64", + "path": "build/cctools-port" + }, + { + "kind": "tar.gz", + "url": "https://github.com/tpoechtrager/osxcross/archive/f873f534c6cdb0776e457af8c7513da1e02abe59.tar.gz", + "sha256": "7ff7657a435e709dfc81e79965bf2d0544d71bea26432991db8837b797290c28" + }, + { + "kind": "tar.gz", + "url": "https://github.com/tpoechtrager/pbzx/archive/2a4d7c3300c826d918def713a24d25c237c8ed53.tar.gz", + "sha256": "a9b3e9f29d9f020f75e4edf203359fbed6c1b0d2085f386bf770feaf07ae1694" + }, + { + "kind": "tar.gz", + "url": "https://github.com/tpoechtrager/xar/archive/5fa4675419cfec60ac19a9c7f7c2d0e7c831a497.tar.gz", + "sha256": "0ef6618d4b841c16d16ff6c9b0f1cd908f5f785ba08bef50178b293a7d170ff4" + }, + { + "kind": "tar.gz", + "url": "https://github.com/westes/flex/releases/download/v2.6.4/flex-2.6.4.tar.gz", + "sha256": "e87aae032bf07c26f85ac0ed3250998c37621d95f8bd748b31f15b33c45ee995" + }, + { + "kind": "tar.gz", + "url": "https://go.dev/dl/go1.25.0.src.tar.gz", + "sha256": "4bd01e91297207bfa450ea40d4d5a93b1b531a5e438473b2a06e18e077227225" + }, + { + "kind": "tar.gz", + "url": "https://go.dev/dl/go1.25.5.src.tar.gz", + "sha256": "22a5fd0a91efcd28a1b0537106b9959b2804b61f59c3758b51e8e5429c1a954f" + }, + { + "kind": "tar.gz", + "url": "https://pub.dev/api/archives/devtools_shared-10.0.2.tar.gz", + "sha256": "72369878105eccd563547afbad97407a2431b96bd4c04a1d6da75cb068437f50", + "path": "third_party/devtools/devtools_shared" + }, + { + "kind": "tar.gz", + "url": "https://pub.dev/api/archives/devtools_shared-11.2.0.tar.gz", + "sha256": "fa71f07006dfdf3f226ec76db95a4bad156820c081452cc99d18a4f291001bee", + "path": "third_party/devtools/devtools_shared" + }, + { + "kind": "tar.gz", + "url": "https://pub.dev/api/archives/devtools_shared-12.0.0.tar.gz", + "sha256": "275e48a8a145fa09c7ae433a96fd433c01cc079d39b40acf5ba883236ae2c887", + "path": "third_party/devtools/devtools_shared" + }, + { + "kind": "tar.gz", + "url": "https://sourceware.org/pub/bzip2/bzip2-1.0.8.tar.gz", + "sha256": "ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269" + }, + { + "kind": "tar.gz", + "url": "https://www.sqlite.org/2021/sqlite-autoconf-3350500.tar.gz", + "sha256": "f52b72a5c319c3e516ed7a92e123139a6e87af08a2dc43d7757724f6132e6db0" + }, + { + "kind": "tar.gz", + "url": "https://www.sqlite.org/2025/sqlite-autoconf-3510100.tar.gz", + "sha256": "4f2445cd70479724d32ad015ec7fd37fbb6f6130013bd4bfbc80c32beb42b7e0" + }, + { + "kind": "tar.xz", + "url": "http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.27.0.tar.xz", + "sha256": "0506ab98fa0ad6d263a555feeb2c7fff9bc24a434635d4b0cdff9137fe5b4477" + }, + { + "kind": "tar.xz", + "url": "http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.28.0.tar.xz", + "sha256": "5750e29a2bda5cd8d67900592576b1670a1987a4dcd5e4f6beae09138a1f5699" + }, + { + "kind": "tar.xz", + "url": "http://ftpmirror.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz", + "sha256": "a3c2b80201b89e68616f4ad30bc66aee4927c3ce50e33929ca819d5c43538898" + }, + { + "kind": "tar.xz", + "url": "http://ftpmirror.gnu.org/gnu/help2man/help2man-1.49.3.tar.xz", + "sha256": "4d7e4fdef2eca6afe07a2682151cea78781e0a4e8f9622142d9f70c083a2fd4f" + }, + { + "kind": "tar.xz", + "url": "http://ftpmirror.gnu.org/gnu/tar/tar-1.35.tar.xz", + "sha256": "4d62ff37342ec7aed748535323930c7cf94acf71c3591882b26a7ea50f3edc16" + }, + { + "kind": "tar.xz", + "url": "http://www.mpfr.org/mpfr-current/mpfr-4.2.2.tar.xz", + "sha256": "b67ba0383ef7e8a8563734e2e889ef5ec3c3b898a01d00fa0a6869ad81c6ce01" + }, + { + "kind": "tar.xz", + "url": "https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.15.9.tar.xz", + "sha256": "e94f3af85492302f7a819441458f80bca0ad9912e5a4c83c699ff3c63c52957d" + }, + { + "kind": "tar.xz", + "url": "https://download.gnome.org/sources/glib/2.86/glib-2.86.4.tar.xz", + "sha256": "d4e2b5d791d5015ffd8c6971ad8e975a0a55c1a14926cdb25cf843ff00682260" + }, + { + "kind": "tar.xz", + "url": "https://download.gnome.org/sources/libxml2/2.14/libxml2-2.14.5.tar.xz", + "sha256": "03d006f3537616833c16c53addcdc32a0eb20e55443cba4038307e3fa7d8d44b" + }, + { + "kind": "tar.xz", + "url": "https://download.qemu.org/qemu-10.2.1.tar.xz", + "sha256": "a3717477d8e2c84d630bfffbc20f6cd3293eb45aa1e6dac6d0cc27689991c9e1" + }, + { + "kind": "tar.xz", + "url": "https://ftpmirror.gnu.org/gnu/coreutils/coreutils-9.9.tar.xz", + "sha256": "19bcb6ca867183c57d77155eae946c5eced88183143b45ca51ad7d26c628ca75" } - } + ] } \ No newline at end of file diff --git a/utils/download/download.go b/utils/download/download.go index 0cfe501..e2ff5fd 100644 --- a/utils/download/download.go +++ b/utils/download/download.go @@ -237,3 +237,30 @@ func downloadWithResume(path, url, expectedSha256 string) (int64, error) { return bytesRead, nil } + +func FileSHA256(path string) (string, error) { + file, err := os.Open(path) + if err != nil { + return "", err + } + defer file.Close() + + hasher := sha256.New() + if _, err := io.Copy(hasher, file); err != nil { + return "", err + } + return hex.EncodeToString(hasher.Sum(nil)), nil +} + +func EnsureDownloadFile(packageName, path, url, expectedSha256 string) error { + if actualHash, err := FileSHA256(path); err == nil { + if actualHash == expectedSha256 { + log.Printf("File already exists with correct hash: %s", path) + return nil + } + log.Printf("File exists but hash mismatch (expected %s, got %s), re-downloading: %s", expectedSha256, actualHash, path) + os.Remove(path) + } + + return DownloadFile(packageName, path, url, expectedSha256, false) +} diff --git a/utils/download/download_test.go b/utils/download/download_test.go new file mode 100644 index 0000000..1d2a046 --- /dev/null +++ b/utils/download/download_test.go @@ -0,0 +1,42 @@ +package download + +import ( + "os" + "path/filepath" + "testing" +) + +func TestEnsureDownloadFileSkipsValidFile(t *testing.T) { + dir := t.TempDir() + path := filepath.Join(dir, "test.txt") + content := []byte("hello") + if err := os.WriteFile(path, content, 0644); err != nil { + t.Fatalf("write file: %v", err) + } + + expectedHash, err := FileSHA256(path) + if err != nil { + t.Fatalf("hash file: %v", err) + } + + if err := EnsureDownloadFile("test", path, "https://example.com/test.txt", expectedHash); err != nil { + t.Fatalf("expected skip, got error: %v", err) + } +} + +func TestEnsureDownloadFileRejectsInvalidHash(t *testing.T) { + dir := t.TempDir() + path := filepath.Join(dir, "test.txt") + if err := os.WriteFile(path, []byte("hello"), 0644); err != nil { + t.Fatalf("write file: %v", err) + } + + err := EnsureDownloadFile("test", path, "https://invalid.test/no-such-file", "0000000000000000000000000000000000000000000000000000000000000000") + if err == nil { + t.Fatal("expected download error for invalid hash and unreachable URL") + } + + if _, statErr := os.Stat(path); statErr != nil { + t.Fatal("expected stale file to be removed before re-download attempt") + } +} diff --git a/utils/extract.go b/utils/extract.go index 1726bde..bd8d02a 100644 --- a/utils/extract.go +++ b/utils/extract.go @@ -52,6 +52,9 @@ func detectCommonPrefix(readerFactory readerFactory) (string, error) { if len(firstLevelDirs) == 1 && rootFiles == 0 { for dirName := range firstLevelDirs { + if (dirName == "native") { + return "", nil + } return dirName + "/", nil } } diff --git a/utils/git.go b/utils/git.go index a36137e..95027c2 100644 --- a/utils/git.go +++ b/utils/git.go @@ -13,6 +13,10 @@ import ( "github.com/mrcyjanek/simplybs/utils/download" ) +func BundleHasAllRefs(bundlePath string, refs []string) bool { + return verifyBundleHasRef(bundlePath, refs) +} + func verifyBundleHasRef(bundlePath string, refs []string) bool { tempVerifyDir := bundlePath + ".verify.tmp" defer RemoveAll(tempVerifyDir) @@ -146,31 +150,34 @@ func createBundleFromRepo(bundlePath, url string, refs []string) error { func DownloadGit(packageName, bundlePath, url string) error { log.Printf("Downloading %s to bundle %s", url, bundlePath) + return EnsureGitBundle(bundlePath, url) +} +func EnsureGitBundle(bundlePath, url string) error { sources, err := loadSourcesFile() if err != nil { - log.Fatalf("Failed to load sources.json: %v, falling back to single ref mode", err) + return fmt.Errorf("failed to load sources.json: %w", err) } - refs, exists := sources.Repositories[url] + repoInfo, exists := sources.Repositories[url] if !exists { - log.Fatalf("Repository %s not found in sources.json", url) + return fmt.Errorf("repository %s not found in sources.json", url) } if _, err := os.Stat(bundlePath); err == nil { - log.Printf("Bundle already exists, verifying it contains all refs %v", refs.Refs) - if verifyBundleHasRef(bundlePath, refs.Refs) { + log.Printf("Bundle already exists, verifying it contains all refs %v", repoInfo.Refs) + if verifyBundleHasRef(bundlePath, repoInfo.Refs) { log.Printf("Bundle is valid and contains all required refs") return nil } - log.Printf("Bundle does not contain all refs %v, removing and re-downloading", refs.Refs) + log.Printf("Bundle does not contain all refs %v, removing and re-downloading", repoInfo.Refs) os.Remove(bundlePath) } - err = downloadBundleFromMirrors(bundlePath, url, refs.Refs) + err = downloadBundleFromMirrors(bundlePath, url, repoInfo.Refs) if err != nil { log.Printf("Failed to download from mirrors: %v, creating bundle from original URL", err) - return createBundleFromRepo(bundlePath, url, refs.Refs) + return createBundleFromRepo(bundlePath, url, repoInfo.Refs) } return nil @@ -178,11 +185,23 @@ func DownloadGit(packageName, bundlePath, url string) error { type SourcesFile struct { Repositories map[string]RepositoryInfo `json:"repositories"` + Downloads []DownloadEntry `json:"downloads,omitempty"` } type RepositoryInfo struct { Refs []string `json:"refs"` - Packages []string `json:"packages"` + Packages []string `json:"packages,omitempty"` +} + +type DownloadEntry struct { + Kind string `json:"kind"` + URL string `json:"url"` + Sha256 string `json:"sha256"` + Path string `json:"path,omitempty"` +} + +func LoadSourcesFile() (*SourcesFile, error) { + return loadSourcesFile() } func loadSourcesFile() (*SourcesFile, error) { diff --git a/utils/historic_sources.go b/utils/historic_sources.go new file mode 100644 index 0000000..b96ce86 --- /dev/null +++ b/utils/historic_sources.go @@ -0,0 +1,68 @@ +package utils + +import ( + "fmt" + "log" + "os/exec" + "strings" +) + +func isGitRepo() bool { + cmd := exec.Command("git", "rev-parse", "--git-dir") + if err := cmd.Run(); err != nil { + return false + } + return true +} + +func gitOutput(args ...string) ([]byte, error) { + cmd := exec.Command("git", args...) + return cmd.Output() +} + +func CollectHistoricDownloads(s *SourcesFile) error { + if !isGitRepo() { + return fmt.Errorf("not inside a git repository") + } + + output, err := gitOutput("log", "--all", "--format=%H") + if err != nil { + return fmt.Errorf("git log failed: %w", err) + } + + commits := strings.Split(strings.TrimSpace(string(output)), "\n") + if len(commits) == 1 && commits[0] == "" { + return nil + } + + log.Printf("Scanning %d commits for historic download entries...", len(commits)) + + for i, commit := range commits { + if commit == "" { + continue + } + if (i+1)%10 == 0 || i == len(commits)-1 { + log.Printf(" Historic scan: commit %d/%d", i+1, len(commits)) + } + + treeOutput, err := gitOutput("ls-tree", "-r", "--name-only", commit) + if err != nil { + continue + } + + for _, filepath := range strings.Split(strings.TrimSpace(string(treeOutput)), "\n") { + if filepath == "" || !strings.HasSuffix(filepath, ".json") { + continue + } + + content, err := gitOutput("show", commit+":"+filepath) + if err != nil { + continue + } + + MergeDownloadsFromJSON(s, content) + } + } + + return nil +} diff --git a/utils/sourcepath.go b/utils/sourcepath.go new file mode 100644 index 0000000..08cb065 --- /dev/null +++ b/utils/sourcepath.go @@ -0,0 +1,26 @@ +package utils + +import ( + "path/filepath" + "strings" + + "github.com/mrcyjanek/simplybs/host" + "github.com/mrcyjanek/simplybs/utils/download" +) + +func SourcePathForGitURL(url string) string { + urlPath, err := download.URLToPath(url) + if err != nil { + return filepath.Join(host.DataDirRoot(), "source", filepath.Base(url)+".bundle") + } + urlPath = strings.TrimSuffix(urlPath, ".git") + return filepath.Join(host.DataDirRoot(), "source", urlPath+".bundle") +} + +func SourcePathForFileURL(url string) string { + urlPath, err := download.URLToPath(url) + if err != nil { + return filepath.Join(host.DataDirRoot(), "source", filepath.Base(url)) + } + return filepath.Join(host.DataDirRoot(), "source", urlPath) +} diff --git a/utils/sourcepath_test.go b/utils/sourcepath_test.go new file mode 100644 index 0000000..c101e9f --- /dev/null +++ b/utils/sourcepath_test.go @@ -0,0 +1,26 @@ +package utils + +import ( + "path/filepath" + "testing" +) + +func TestSourcePathForGitURL(t *testing.T) { + t.Setenv("SIMPLYBS_DATA_DIR", "/tmp/simplybs-test") + + path := SourcePathForGitURL("https://github.com/example/foo.git") + expected := filepath.Join("/tmp/simplybs-test", "source", "github.com", "example", "foo.bundle") + if path != expected { + t.Fatalf("expected %q, got %q", expected, path) + } +} + +func TestSourcePathForFileURL(t *testing.T) { + t.Setenv("SIMPLYBS_DATA_DIR", "/tmp/simplybs-test") + + path := SourcePathForFileURL("https://example.com/releases/foo.tar.gz") + expected := filepath.Join("/tmp/simplybs-test", "source", "example.com", "releases", "foo.tar.gz") + if path != expected { + t.Fatalf("expected %q, got %q", expected, path) + } +} diff --git a/utils/sources.go b/utils/sources.go new file mode 100644 index 0000000..7c11850 --- /dev/null +++ b/utils/sources.go @@ -0,0 +1,233 @@ +package utils + +import ( + "bytes" + "encoding/json" + "sort" + "strings" +) + +func NewSourcesFile() *SourcesFile { + return &SourcesFile{ + Repositories: make(map[string]RepositoryInfo), + } +} + +func AddGitRef(s *SourcesFile, url, ref string) bool { + if url == "" || ref == "" { + return false + } + repoInfo, exists := s.Repositories[url] + if exists { + for _, existing := range repoInfo.Refs { + if existing == ref { + return false + } + } + repoInfo.Refs = append(repoInfo.Refs, ref) + s.Repositories[url] = repoInfo + return true + } + s.Repositories[url] = RepositoryInfo{ + Refs: []string{ref}, + } + return true +} + +func downloadEntryKey(entry DownloadEntry) string { + data, err := json.Marshal(entry) + if err != nil { + return entry.Kind + "\x00" + entry.URL + "\x00" + entry.Sha256 + "\x00" + entry.Path + } + return string(data) +} + +func AddDownload(s *SourcesFile, entry DownloadEntry) bool { + if entry.Kind == "" || entry.URL == "" || entry.Sha256 == "" { + return false + } + key := downloadEntryKey(entry) + for _, existing := range s.Downloads { + if downloadEntryKey(existing) == key { + return false + } + } + s.Downloads = append(s.Downloads, entry) + return true +} + +func MergeDownloadMap(s *SourcesFile, download map[string]interface{}) { + kind, _ := download["kind"].(string) + if kind == "" || kind == "none" { + return + } + + url, _ := download["url"].(string) + sha256, _ := download["sha256"].(string) + + if kind == "git" { + AddGitRef(s, url, sha256) + return + } + + if url == "" || sha256 == "" { + return + } + + entry := DownloadEntry{ + Kind: kind, + URL: url, + Sha256: sha256, + } + if path, ok := download["path"].(string); ok && path != "" { + entry.Path = path + } + AddDownload(s, entry) +} + +func MergeDownloadsFromJSON(s *SourcesFile, content []byte) { + var data map[string]interface{} + if err := json.Unmarshal(content, &data); err != nil { + return + } + + downloads, ok := data["download"].([]interface{}) + if !ok { + return + } + + for _, downloadInterface := range downloads { + download, ok := downloadInterface.(map[string]interface{}) + if !ok { + continue + } + MergeDownloadMap(s, download) + } +} + +func SortSourcesFile(s *SourcesFile) { + for url, repoInfo := range s.Repositories { + sort.Strings(repoInfo.Refs) + s.Repositories[url] = repoInfo + } + + sort.Slice(s.Downloads, func(i, j int) bool { + a, b := s.Downloads[i], s.Downloads[j] + if a.Kind != b.Kind { + return a.Kind < b.Kind + } + if a.URL != b.URL { + return a.URL < b.URL + } + if a.Sha256 != b.Sha256 { + return a.Sha256 < b.Sha256 + } + return a.Path < b.Path + }) +} + +func MarshalSourcesFile(s *SourcesFile) ([]byte, error) { + SortSourcesFile(s) + + var buf bytes.Buffer + encoder := json.NewEncoder(&buf) + encoder.SetEscapeHTML(false) + encoder.SetIndent("", " ") + if err := encoder.Encode(s); err != nil { + return nil, err + } + return bytes.TrimSuffix(buf.Bytes(), []byte("\n")), nil +} + +func CountGitRefs(s *SourcesFile) int { + total := 0 + for _, repoInfo := range s.Repositories { + total += len(repoInfo.Refs) + } + return total +} + +func SourcesFileFromRepositoriesOnlyJSON(content []byte) (*SourcesFile, error) { + var sources SourcesFile + if err := json.Unmarshal(content, &sources); err != nil { + return nil, err + } + if sources.Repositories == nil { + sources.Repositories = make(map[string]RepositoryInfo) + } + return &sources, nil +} + +func AllGitRefPairs(s *SourcesFile) [][2]string { + pairs := make([][2]string, 0) + for url, repoInfo := range s.Repositories { + for _, ref := range repoInfo.Refs { + pairs = append(pairs, [2]string{url, ref}) + } + } + sort.Slice(pairs, func(i, j int) bool { + if pairs[i][0] != pairs[j][0] { + return pairs[i][0] < pairs[j][0] + } + return pairs[i][1] < pairs[j][1] + }) + return pairs +} + +func ContainsGitRef(s *SourcesFile, url, ref string) bool { + repoInfo, exists := s.Repositories[url] + if !exists { + return false + } + for _, existing := range repoInfo.Refs { + if existing == ref { + return true + } + } + return false +} + +func UniqueDownloads(entries []DownloadEntry) []DownloadEntry { + seen := make(map[string]bool) + unique := make([]DownloadEntry, 0, len(entries)) + + for _, entry := range entries { + key := entry.URL + "\x00" + entry.Sha256 + if seen[key] { + continue + } + seen[key] = true + unique = append(unique, entry) + } + + sort.Slice(unique, func(i, j int) bool { + a, b := unique[i], unique[j] + if a.URL != b.URL { + return a.URL < b.URL + } + return a.Sha256 < b.Sha256 + }) + + return unique +} + +func DownloadEntryFromMap(download map[string]interface{}) (DownloadEntry, bool) { + kind, _ := download["kind"].(string) + if kind == "" || kind == "none" || kind == "git" { + return DownloadEntry{}, false + } + url, _ := download["url"].(string) + sha256, _ := download["sha256"].(string) + if url == "" || sha256 == "" { + return DownloadEntry{}, false + } + entry := DownloadEntry{ + Kind: kind, + URL: url, + Sha256: sha256, + } + if path, ok := download["path"].(string); ok && strings.TrimSpace(path) != "" { + entry.Path = path + } + return entry, true +} diff --git a/utils/sources_test.go b/utils/sources_test.go new file mode 100644 index 0000000..af555f7 --- /dev/null +++ b/utils/sources_test.go @@ -0,0 +1,192 @@ +package utils + +import ( + "encoding/json" + "os" + "path/filepath" + "reflect" + "strings" + "testing" +) + +func TestLoadSourcesFileBackwardCompat(t *testing.T) { + fixture := `{ + "repositories": { + "https://example.com/foo.git": { + "refs": ["abc123"] + } + } +}` + + sources, err := SourcesFileFromRepositoriesOnlyJSON([]byte(fixture)) + if err != nil { + t.Fatalf("unmarshal fixture: %v", err) + } + if len(sources.Repositories) != 1 { + t.Fatalf("expected 1 repository, got %d", len(sources.Repositories)) + } + if len(sources.Downloads) != 0 { + t.Fatalf("expected no downloads, got %d", len(sources.Downloads)) + } + + repoRoot := filepath.Join("..", "sources.json") + if _, err := os.Stat(repoRoot); err == nil { + content, err := os.ReadFile(repoRoot) + if err != nil { + t.Fatalf("read sources.json: %v", err) + } + loaded, err := SourcesFileFromRepositoriesOnlyJSON(content) + if err != nil { + t.Fatalf("unmarshal sources.json: %v", err) + } + if len(loaded.Repositories) == 0 { + t.Fatal("expected repositories in sources.json") + } + } +} + +func TestMergeGitRefDedup(t *testing.T) { + s := NewSourcesFile() + + if !AddGitRef(s, "https://example.com/foo.git", "abc123") { + t.Fatal("expected first ref to be added") + } + if AddGitRef(s, "https://example.com/foo.git", "abc123") { + t.Fatal("expected duplicate ref to be ignored") + } + if len(s.Repositories["https://example.com/foo.git"].Refs) != 1 { + t.Fatalf("expected 1 ref, got %d", len(s.Repositories["https://example.com/foo.git"].Refs)) + } +} + +func TestMergeDownloadDedup(t *testing.T) { + s := NewSourcesFile() + + entry := DownloadEntry{ + Kind: "tar.gz", + URL: "https://example.com/foo.tar.gz", + Sha256: "deadbeef", + } + if !AddDownload(s, entry) { + t.Fatal("expected first download to be added") + } + if AddDownload(s, entry) { + t.Fatal("expected duplicate download to be ignored") + } + + other := DownloadEntry{ + Kind: "tar.gz", + URL: "https://example.com/foo.tar.gz", + Sha256: "cafebabe", + } + if !AddDownload(s, other) { + t.Fatal("expected differing sha256 to be added") + } + if len(s.Downloads) != 2 { + t.Fatalf("expected 2 downloads, got %d", len(s.Downloads)) + } +} + +func TestSourcesFileRoundTrip(t *testing.T) { + original := &SourcesFile{ + Repositories: map[string]RepositoryInfo{ + "https://example.com/foo.git": { + Refs: []string{"abc123", "def456"}, + }, + }, + Downloads: []DownloadEntry{ + { + Kind: "tar.gz", + URL: "https://example.com/foo.tar.gz", + Sha256: "deadbeef", + }, + }, + } + + encoded, err := MarshalSourcesFile(original) + if err != nil { + t.Fatalf("marshal: %v", err) + } + + var decoded SourcesFile + if err := json.Unmarshal(encoded, &decoded); err != nil { + t.Fatalf("unmarshal: %v", err) + } + + if !reflect.DeepEqual(original.Repositories, decoded.Repositories) { + t.Fatalf("repositories mismatch:\noriginal: %#v\ndecoded: %#v", original.Repositories, decoded.Repositories) + } + if !reflect.DeepEqual(original.Downloads, decoded.Downloads) { + t.Fatalf("downloads mismatch:\noriginal: %#v\ndecoded: %#v", original.Downloads, decoded.Downloads) + } +} + +func TestUniqueDownloads(t *testing.T) { + entries := []DownloadEntry{ + {Kind: "blob", URL: "https://example.com/a.tar.xz", Sha256: "aaa", Path: ".build/a.tar.xz"}, + {Kind: "blob", URL: "https://example.com/a.tar.xz", Sha256: "aaa", Path: "work/a.tar.xz"}, + {Kind: "tar.gz", URL: "https://example.com/b.tar.gz", Sha256: "bbb"}, + } + + unique := UniqueDownloads(entries) + if len(unique) != 2 { + t.Fatalf("expected 2 unique downloads, got %d", len(unique)) + } + if unique[0].URL != "https://example.com/a.tar.xz" || unique[1].URL != "https://example.com/b.tar.gz" { + t.Fatalf("unexpected sort order: %#v", unique) + } +} + +func TestPackageGitRefsCollected(t *testing.T) { + merged := NewSourcesFile() + packagesDir := filepath.Join("..", "packages") + err := filepath.WalkDir(packagesDir, func(path string, d os.DirEntry, err error) error { + if err != nil { + return err + } + if d.IsDir() || !strings.HasSuffix(path, ".json") { + return nil + } + + pkgContent, err := os.ReadFile(path) + if err != nil { + return err + } + + var data map[string]interface{} + if err := json.Unmarshal(pkgContent, &data); err != nil { + return err + } + + downloads, ok := data["download"].([]interface{}) + if !ok { + return nil + } + + for _, downloadInterface := range downloads { + download, ok := downloadInterface.(map[string]interface{}) + if !ok { + continue + } + kind, _ := download["kind"].(string) + if kind != "git" { + continue + } + url, _ := download["url"].(string) + ref, _ := download["sha256"].(string) + if url == "" || ref == "" { + continue + } + + MergeDownloadMap(merged, download) + if !ContainsGitRef(merged, url, ref) { + t.Fatalf("missing ref %s for %s after merging %s", ref, url, path) + } + } + + return nil + }) + if err != nil { + t.Fatalf("walk packages dir: %v", err) + } +} From 63484cd12115b46b586a793f4f66d11a7ab02749 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 9 Jun 2026 14:09:33 +0200 Subject: [PATCH 124/200] refactor: streamline environment variable handling and improve download functionality - Replaced shellOutput function with getToolFromEnv for cleaner environment variable retrieval in Builder. - Introduced filteredDependencyPackages and wipeDirContents functions to enhance package dependency management and directory cleanup. - Updated download functions to support resuming downloads and added retry logic for improved reliability. - Added NewIndentedEncoder for consistent JSON encoding with indentation across the codebase. - Refactored various functions to utilize new utility methods for better readability and maintainability. --- builder/default.go | 27 ++--- cmd/lint/lint.go | 5 +- host/main.go | 10 -- pack/build.go | 102 ++++++---------- pack/info.go | 62 +++------- pack/main.go | 5 +- utils/download/download.go | 208 ++++++++++++++++++++------------ utils/download/download_test.go | 2 +- utils/env.go | 5 +- utils/extract.go | 78 ++---------- utils/git.go | 37 ++---- utils/ifstring/ifstring.go | 16 +++ utils/jsonutil.go | 13 ++ utils/remove_all.go | 2 +- utils/sources.go | 28 +++-- 15 files changed, 264 insertions(+), 336 deletions(-) create mode 100644 utils/jsonutil.go diff --git a/builder/default.go b/builder/default.go index e012e23..6f7bb1e 100644 --- a/builder/default.go +++ b/builder/default.go @@ -1,7 +1,6 @@ package builder import ( - "os/exec" "runtime" "strings" @@ -18,30 +17,20 @@ type Builder struct { var Builders = []string{"darwin_arm64", "linux_amd64", "linux_arm64"} -func shellOutput(cmd string) string { - output, err := exec.Command("bash", "-c", cmd).Output() - if err != nil { - return "$(" + cmd + ")" - } - return strings.TrimSpace(string(output)) -} - -func (b *Builder) GetCC() string { +func (b *Builder) getToolFromEnv(prefix string) string { for _, env := range b.GlobalEnv { is := ifstring.ParseIfString(env) - if strings.HasPrefix(is.Content, "CC=") { - return is.Content[3:] + if strings.HasPrefix(is.Content, prefix) { + return is.Content[len(prefix):] } } return "" } +func (b *Builder) GetCC() string { + return b.getToolFromEnv("CC=") +} + func (b *Builder) GetCXX() string { - for _, env := range b.GlobalEnv { - is := ifstring.ParseIfString(env) - if strings.HasPrefix(is.Content, "CXX=") { - return is.Content[4:] - } - } - return "" + return b.getToolFromEnv("CXX=") } diff --git a/cmd/lint/lint.go b/cmd/lint/lint.go index b913385..90a64c4 100644 --- a/cmd/lint/lint.go +++ b/cmd/lint/lint.go @@ -104,10 +104,7 @@ func fixFormatting() { } var buf bytes.Buffer - encoder := json.NewEncoder(&buf) - encoder.SetEscapeHTML(false) - encoder.SetIndent("", " ") - err = encoder.Encode(ordered) + err = utils.NewIndentedEncoder(&buf).Encode(ordered) crash.Handle(err) contentNew := bytes.TrimSuffix(buf.Bytes(), []byte("\n")) diff --git a/host/main.go b/host/main.go index 0648f0f..6157952 100644 --- a/host/main.go +++ b/host/main.go @@ -2,10 +2,8 @@ package host import ( "os" - "os/exec" "path/filepath" "runtime" - "strings" "github.com/mrcyjanek/simplybs/crash" ) @@ -324,11 +322,3 @@ var SupportedHosts = map[string]*Host{ "*:*:LDFLAGS=$LDFLAGS -lc -lc++abi -lm"}, }, } - -func shellOutput(cmd string) string { - output, err := exec.Command("bash", "-c", cmd).Output() - if err != nil { - return "$(" + cmd + ")" - } - return strings.TrimSpace(string(output)) -} diff --git a/pack/build.go b/pack/build.go index b918c1b..b2cbb25 100644 --- a/pack/build.go +++ b/pack/build.go @@ -111,38 +111,42 @@ func (p *Package) BuildPackage(h *host.Host, buildDependencies bool) { p.buildPackageInternal(h, buildDependencies) } +func filteredDependencyPackages(deps []string, h *host.Host) []*Package { + var pkgs []*Package + for _, dep := range deps { + is := ifstring.ParseIfString(dep) + if !is.Matches(h.Triplet, builder.GetName()) { + continue + } + d, err := FindPackage(is.Content) + if err != nil { + log.Fatalf("Package %s not found in build", is.Content) + } + pkgs = append(pkgs, d) + } + return pkgs +} + +func wipeDirContents(dir string) { + if entries, err := os.ReadDir(dir); err == nil { + for _, entry := range entries { + utils.RemoveAll(filepath.Join(dir, entry.Name())) + } + } +} + func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { var deps []*Package if buildDependencies { - for _, dep := range p.Dependencies { - is := ifstring.ParseIfString(dep) - if !is.HostGlob().Match(h.Triplet) { - continue - } - if !is.BuilderGlob().Match(builder.GetName()) { - continue - } - dep = is.Content - d, err := FindPackage(dep) - if err != nil { - log.Fatalf("Package %s not found in build", dep) - } - deps = append(deps, d) + deps = filteredDependencyPackages(p.Dependencies, h) + for _, d := range deps { d.EnsureBuilt(h, false) } } envPath := h.GetEnvPath() - if entries, err := os.ReadDir(envPath); err == nil { - for _, entry := range entries { - utils.RemoveAll(filepath.Join(envPath, entry.Name())) - } - } + wipeDirContents(envPath) nativeEnvPath := h.GetNativeEnvPath() - if entries, err := os.ReadDir(nativeEnvPath); err == nil { - for _, entry := range entries { - utils.RemoveAll(filepath.Join(nativeEnvPath, entry.Name())) - } - } + wipeDirContents(nativeEnvPath) os.MkdirAll(envPath, 0755) for _, dep := range deps { dep.ExtractEnv(h, envPath, nativeEnvPath) @@ -153,31 +157,20 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { utils.RemoveAll(stagingPath) os.MkdirAll(buildPath, 0755) os.MkdirAll(stagingPath, 0755) - // defer os.RemoveAll(buildPath) - // defer os.RemoveAll(stagingPath) + defer utils.RemoveAll(buildPath) + defer utils.RemoveAll(stagingPath) p.ExtractSource(h, buildPath) - infoPath := filepath.Join(stagingPath, h.GetEnvPath(), ".buildlib", p.ShortName(h)+".txt") - if p.Type == "native" { - infoPath = filepath.Join(stagingPath, h.GetNativeEnvPath(), ".buildlib", p.ShortName(h)+".txt") - } + infoPath := filepath.Join(stagingPath, p.prefixPath(h), ".buildlib", p.ShortName(h)+".txt") os.MkdirAll(filepath.Dir(infoPath), 0755) err := os.WriteFile(infoPath, []byte(p.GeneratePackageInfo(h)), 0644) if err != nil { log.Fatalf("Failed to write build info %s: %v", infoPath, err) } - for _, step := range p.Build.Steps { - is := ifstring.ParseIfString(step) - if !is.HostGlob().Match(h.Triplet) { - continue - } - if !is.BuilderGlob().Match(builder.GetName()) { - continue - } - step = is.Content - + builderName := builder.GetName() + for _, step := range ifstring.FilterContent(p.Build.Steps, h.Triplet, builderName) { cmd := exec.Command("sh", "-c", step) cmd.Dir = buildPath pathEnv := utils.GetHostPath() @@ -282,19 +275,7 @@ func (p *Package) StartShell(h *host.Host) { os.MkdirAll(buildPath, 0755) log.Printf("Extracting source for package: %s", p.Package) - for _, depName := range p.Dependencies { - is := ifstring.ParseIfString(depName) - if !is.HostGlob().Match(h.Triplet) { - continue - } - if !is.BuilderGlob().Match(builder.GetName()) { - continue - } - depName = is.Content - dep, err := FindPackage(depName) - if err != nil { - log.Fatalf("Package %s not found in build", depName) - } + for _, dep := range filteredDependencyPackages(p.Dependencies, h) { dep.ExtractEnv(h, h.GetEnvPath(), h.GetNativeEnvPath()) } p.ExtractSource(h, buildPath) @@ -307,26 +288,19 @@ func (p *Package) StartShell(h *host.Host) { userShell = "/bin/sh" } fmt.Print("\n\n") - for _, step := range p.Build.Steps { - is := ifstring.ParseIfString(step) - if !is.HostGlob().Match(h.Triplet) { - continue - } - if !is.BuilderGlob().Match(builder.GetName()) { - continue - } - step = is.Content + builderName := builder.GetName() + for _, step := range ifstring.FilterContent(p.Build.Steps, h.Triplet, builderName) { fmt.Printf("%s;\n", utils.ExpandEnvFromMap(step, env)) } fmt.Print("\n\n") for _, step := range p.Build.Steps { is := ifstring.ParseIfString(step) - if !(is.HostGlob().Match(h.Triplet) && is.BuilderGlob().Match(builder.GetName())) { + if !is.Matches(h.Triplet, builderName) { log.Printf("[no match] %s", utils.ExpandEnvFromMap(step, env)) continue } - log.Printf(" [match] %s", utils.ExpandEnvFromMap(step, env)) + log.Printf(" [match] %s", utils.ExpandEnvFromMap(is.Content, env)) } fmt.Print("\n\n") log.Printf("Starting %s in %s with build environment for %s", userShell, buildPath, h.Triplet) diff --git a/pack/info.go b/pack/info.go index f771f96..742042e 100644 --- a/pack/info.go +++ b/pack/info.go @@ -18,6 +18,17 @@ import ( "github.com/mrcyjanek/simplybs/utils/ifstring" ) +func (p *Package) prefixPath(h *host.Host) string { + if p.Type == "native" { + return h.GetNativeEnvPath() + } + return h.GetEnvPath() +} + +func (p *Package) homePath(h *host.Host) string { + return p.prefixPath(h) + "/home/user" +} + func (p *Package) FilterForHost(h *host.Host) *Package { filtered := &Package{ Package: p.Package, @@ -26,41 +37,10 @@ func (p *Package) FilterForHost(h *host.Host) *Package { Download: p.Download, Dependencies: []string{}, } - filtered.Build.Env = []string{} - filtered.Build.Steps = []string{} - - for _, dep := range p.Dependencies { - is := ifstring.ParseIfString(dep) - if !is.HostGlob().Match(h.Triplet) { - continue - } - if !is.BuilderGlob().Match(builder.GetName()) { - continue - } - filtered.Dependencies = append(filtered.Dependencies, is.Content) - } - - for _, env := range p.Build.Env { - is := ifstring.ParseIfString(env) - if !is.HostGlob().Match(h.Triplet) { - continue - } - if !is.BuilderGlob().Match(builder.GetName()) { - continue - } - filtered.Build.Env = append(filtered.Build.Env, is.Content) - } - - for _, step := range p.Build.Steps { - is := ifstring.ParseIfString(step) - if !is.HostGlob().Match(h.Triplet) { - continue - } - if !is.BuilderGlob().Match(builder.GetName()) { - continue - } - filtered.Build.Steps = append(filtered.Build.Steps, is.Content) - } + builderName := builder.GetName() + filtered.Dependencies = ifstring.FilterContent(p.Dependencies, h.Triplet, builderName) + filtered.Build.Env = ifstring.FilterContent(p.Build.Env, h.Triplet, builderName) + filtered.Build.Steps = ifstring.FilterContent(p.Build.Steps, h.Triplet, builderName) return filtered } @@ -81,11 +61,7 @@ func (p *Package) GeneratePackageInfo(h *host.Host) string { delete(env, "PATH") delete(env, "PREFIX") pkgs["_env"] = env - if p.Type == "native" { - pkgs["_prefix"] = h.GetNativeEnvPath() - } else { - pkgs["_prefix"] = h.GetEnvPath() - } + pkgs["_prefix"] = p.prefixPath(h) info, err := json.MarshalIndent(pkgs, "", " ") crash.Handle(err) return string(info) @@ -136,16 +112,12 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { getwd, err := os.Getwd() crash.Handle(err) stagingPath := p.GenerateBuildPath(h, "staging") - home := h.GetEnvPath() + "/home/user" - if p.Type == "native" { - home = h.GetNativeEnvPath() + "/home/user" - } env := map[string]string{ "PATH": h.GetNativeEnvPath() + "/bin:" + h.GetNativeEnvPath() + "/_/bin:" + utils.GetHostPath(), "HOST": h.Triplet, "PREFIX": h.GetEnvPath(), "NATIVEPREFIX": h.GetNativeEnvPath(), - "HOME": home, + "HOME": p.homePath(h), "HOST_PREFIX": h.GetEnvPath(), "NUM_CORES": strconv.Itoa(getNumCores()), "PATCH_DIR": filepath.Join(getwd, "patches"), diff --git a/pack/main.go b/pack/main.go index b229784..708b744 100644 --- a/pack/main.go +++ b/pack/main.go @@ -339,10 +339,7 @@ func collectDependenciesByLevel(pkgName string, host string) [][]string { for _, dep := range pkg.Dependencies { is := ifstring.ParseIfString(dep) - if !is.HostGlob().Match(host) { - continue - } - if !is.BuilderGlob().Match(builder.GetName()) { + if !is.Matches(host, builder.GetName()) { continue } diff --git a/utils/download/download.go b/utils/download/download.go index e2ff5fd..286fad2 100644 --- a/utils/download/download.go +++ b/utils/download/download.go @@ -2,6 +2,7 @@ package download import ( "crypto/sha256" + "crypto/tls" "encoding/hex" "fmt" "io" @@ -15,6 +16,20 @@ import ( "time" ) +const maxDownloadRetries = 15 +const downloadRetryDelay = 5 * time.Second + +var defaultHTTPClient = &http.Client{ + Transport: &http.Transport{ + // Avoid HTTP/2 stream errors on large mirror downloads. + TLSNextProto: make(map[string]func(string, *tls.Conn) http.RoundTripper), + }, +} + +func downloadTempPath(path string) string { + return path + ".download.tmp" +} + type ProgressWriter struct { writer io.Writer total int64 @@ -61,6 +76,107 @@ func (pw *ProgressWriter) finish() { fmt.Printf("\r%s: Complete (%s)\n", pw.filename, formatBytes(pw.written)) } +func copyWithProgress(dst io.Writer, src io.Reader, total int64, filename string) (int64, error) { + pw := NewProgressWriter(dst, total, filename) + n, err := io.Copy(pw, src) + if err != nil { + return n, err + } + pw.finish() + return n, nil +} + +func contentLengthTotal(resp *http.Response, existing int64) int64 { + if contentLength := resp.Header.Get("Content-Length"); contentLength != "" { + if size, err := strconv.ParseInt(contentLength, 10, 64); err == nil { + return existing + size + } + } + return 0 +} + +func downloadToFileWithResume(destPath, url string) (int64, error) { + var fileSize int64 + var out *os.File + var err error + + if info, err := os.Stat(destPath); err == nil { + fileSize = info.Size() + out, err = os.OpenFile(destPath, os.O_APPEND|os.O_WRONLY, 0644) + if err != nil { + return 0, fmt.Errorf("failed to open file for append: %v", err) + } + } else { + out, err = os.Create(destPath) + if err != nil { + return 0, fmt.Errorf("failed to create file: %v", err) + } + } + defer out.Close() + + req, err := http.NewRequest("GET", url, nil) + if err != nil { + return 0, fmt.Errorf("failed to create request: %v", err) + } + + if fileSize > 0 { + req.Header.Set("Range", fmt.Sprintf("bytes=%d-", fileSize)) + log.Printf("Resuming download from byte %d", fileSize) + } + + resp, err := defaultHTTPClient.Do(req) + if err != nil { + return 0, fmt.Errorf("failed to download file: %v", err) + } + defer resp.Body.Close() + + if resp.StatusCode != http.StatusOK && resp.StatusCode != http.StatusPartialContent { + return 0, fmt.Errorf("HTTP %d %s", resp.StatusCode, resp.Status) + } + + if resp.StatusCode == http.StatusOK && fileSize > 0 { + out.Close() + out, err = os.Create(destPath) + if err != nil { + return 0, fmt.Errorf("failed to recreate file: %v", err) + } + fileSize = 0 + log.Printf("Server doesn't support resume, starting from beginning") + } + + filename := filepath.Base(destPath) + bytesRead, err := copyWithProgress(out, resp.Body, contentLengthTotal(resp, fileSize), filename) + if err != nil { + return fileSize + bytesRead, fmt.Errorf("failed to write file: %v", err) + } + + return fileSize + bytesRead, nil +} + +// DownloadURLWithRetries downloads url to destPath with progress, resume, and retries. +func DownloadURLWithRetries(url, destPath string) error { + for attempt := 0; attempt <= maxDownloadRetries; attempt++ { + if attempt > 0 { + log.Printf("Retry attempt %d/%d for %s", attempt, maxDownloadRetries, url) + time.Sleep(downloadRetryDelay) + } + + bytesReceived, err := downloadToFileWithResume(destPath, url) + if err != nil { + if bytesReceived == 0 && attempt == 0 { + return fmt.Errorf("no data received from server: %v", err) + } + if attempt == maxDownloadRetries { + return fmt.Errorf("failed after %d retries: %v", maxDownloadRetries, err) + } + log.Printf("Download failed: %v", err) + continue + } + return nil + } + return fmt.Errorf("download failed after all retries") +} + func formatBytes(bytes int64) string { const unit = 1024 if bytes < unit { @@ -119,21 +235,19 @@ func DownloadFile(packageName, path, url, expectedSha256 string, isMirror bool) os.MkdirAll(filepath.Dir(path), 0755) - maxRetries := 15 - for attempt := 0; attempt <= maxRetries; attempt++ { + for attempt := 0; attempt <= maxDownloadRetries; attempt++ { if attempt > 0 { - log.Printf("Retry attempt %d/%d for %s", attempt, maxRetries, url) - time.Sleep(5 * time.Second) + log.Printf("Retry attempt %d/%d for %s", attempt, maxDownloadRetries, url) + time.Sleep(downloadRetryDelay) } bytesReceived, err := downloadWithResume(path, url, expectedSha256) if err != nil { - // If no data was received on first try, give up immediately if bytesReceived == 0 && attempt == 0 { return fmt.Errorf("no data received from server: %v", err) } - if attempt == maxRetries { - return fmt.Errorf("failed after %d retries: %v", maxRetries, err) + if attempt == maxDownloadRetries { + return fmt.Errorf("failed after %d retries: %v", maxDownloadRetries, err) } log.Printf("Download failed: %v", err) continue @@ -147,78 +261,14 @@ func DownloadFile(packageName, path, url, expectedSha256 string, isMirror bool) } func downloadWithResume(path, url, expectedSha256 string) (int64, error) { - var fileSize int64 - var out *os.File - var err error - - // Check if partial file exists - if info, err := os.Stat(path); err == nil { - fileSize = info.Size() - out, err = os.OpenFile(path, os.O_APPEND|os.O_WRONLY, 0644) - if err != nil { - return 0, fmt.Errorf("failed to open file for append: %v", err) - } - } else { - out, err = os.Create(path) - if err != nil { - return 0, fmt.Errorf("failed to create file: %v", err) - } - } - defer out.Close() - - // Create request with Range header for resume - req, err := http.NewRequest("GET", url, nil) - if err != nil { - return 0, fmt.Errorf("failed to create request: %v", err) - } - - if fileSize > 0 { - req.Header.Set("Range", fmt.Sprintf("bytes=%d-", fileSize)) - log.Printf("Resuming download from byte %d", fileSize) - } + tempPath := downloadTempPath(path) - client := &http.Client{} - resp, err := client.Do(req) + bytesRead, err := downloadToFileWithResume(tempPath, url) if err != nil { - return 0, fmt.Errorf("failed to download file: %v", err) + return bytesRead, err } - defer resp.Body.Close() - // Accept both 200 (full content) and 206 (partial content) - if resp.StatusCode != http.StatusOK && resp.StatusCode != http.StatusPartialContent { - return 0, fmt.Errorf("HTTP %d %s", resp.StatusCode, resp.Status) - } - - // If server doesn't support resume (200 instead of 206), start over - if resp.StatusCode == http.StatusOK && fileSize > 0 { - out.Close() - out, err = os.Create(path) - if err != nil { - return 0, fmt.Errorf("failed to recreate file: %v", err) - } - fileSize = 0 - log.Printf("Server doesn't support resume, starting from beginning") - } - - var totalSize int64 - if contentLength := resp.Header.Get("Content-Length"); contentLength != "" { - if size, err := strconv.ParseInt(contentLength, 10, 64); err == nil { - totalSize = fileSize + size - } - } - - filename := filepath.Base(path) - progressWriter := NewProgressWriter(out, totalSize, filename) - - bytesRead, err := io.Copy(progressWriter, resp.Body) - if err != nil { - return bytesRead, fmt.Errorf("failed to write file: %v", err) - } - - progressWriter.finish() - - // Verify hash only if download is complete - file, err := os.Open(path) + file, err := os.Open(tempPath) if err != nil { return bytesRead, fmt.Errorf("failed to open file for verification: %v", err) } @@ -231,10 +281,15 @@ func downloadWithResume(path, url, expectedSha256 string) (int64, error) { actualHash := hex.EncodeToString(hasher.Sum(nil)) if actualHash != expectedSha256 { - os.Remove(path) + os.Remove(tempPath) return bytesRead, fmt.Errorf("SHA256 hash mismatch: expected %s, got %s", expectedSha256, actualHash) } + if err := os.Rename(tempPath, path); err != nil { + os.Remove(tempPath) + return bytesRead, fmt.Errorf("failed to move download into place: %v", err) + } + return bytesRead, nil } @@ -260,6 +315,7 @@ func EnsureDownloadFile(packageName, path, url, expectedSha256 string) error { } log.Printf("File exists but hash mismatch (expected %s, got %s), re-downloading: %s", expectedSha256, actualHash, path) os.Remove(path) + os.Remove(downloadTempPath(path)) } return DownloadFile(packageName, path, url, expectedSha256, false) diff --git a/utils/download/download_test.go b/utils/download/download_test.go index 1d2a046..52e25ae 100644 --- a/utils/download/download_test.go +++ b/utils/download/download_test.go @@ -36,7 +36,7 @@ func TestEnsureDownloadFileRejectsInvalidHash(t *testing.T) { t.Fatal("expected download error for invalid hash and unreachable URL") } - if _, statErr := os.Stat(path); statErr != nil { + if _, statErr := os.Stat(path); statErr == nil { t.Fatal("expected stale file to be removed before re-download attempt") } } diff --git a/utils/env.go b/utils/env.go index 9ec2820..5d69a6f 100644 --- a/utils/env.go +++ b/utils/env.go @@ -28,10 +28,7 @@ func AppendEnv(env map[string]string, newEnv []string, host *host.Host) map[stri if equalIndex == -1 { log.Fatalf("Invalid env var: %s. Vars needs to be in the form of *:KEY=VALUE", envVar) } - if !is.HostGlob().Match(host.Triplet) { - continue - } - if !is.BuilderGlob().Match(builder.GetName()) { + if !is.Matches(host.Triplet, builder.GetName()) { continue } k := is.Content[:equalIndex] diff --git a/utils/extract.go b/utils/extract.go index bd8d02a..fc56921 100644 --- a/utils/extract.go +++ b/utils/extract.go @@ -241,17 +241,13 @@ func createXzTarReader(archivePath string) (*tar.Reader, func(), error) { return tr, cleanup, nil } -func ExtractTarGz(archivePath, destPath string) error { +func extractTarArchive(archivePath, destPath, logLabel string, readerFactory func() (*tar.Reader, func(), error)) error { if _, err := os.Stat(archivePath); os.IsNotExist(err) { log.Printf("Archive not found: %s", archivePath) return err } - log.Printf("Extracting archive: %s into %s", archivePath, destPath) - - readerFactory := func() (*tar.Reader, func(), error) { - return createGzipTarReader(archivePath) - } + log.Printf("%s: %s into %s", logLabel, archivePath, destPath) commonPrefix, err := detectCommonPrefix(readerFactory) if err != nil { @@ -275,72 +271,22 @@ func ExtractTarGz(archivePath, destPath string) error { return nil } -func ExtractTarBz2(archivePath, destPath string) error { - if _, err := os.Stat(archivePath); os.IsNotExist(err) { - log.Printf("Archive not found: %s", archivePath) - return err - } - - log.Printf("Extracting bz2 archive: %s into %s", archivePath, destPath) +func ExtractTarGz(archivePath, destPath string) error { + return extractTarArchive(archivePath, destPath, "Extracting archive", func() (*tar.Reader, func(), error) { + return createGzipTarReader(archivePath) + }) +} - readerFactory := func() (*tar.Reader, func(), error) { +func ExtractTarBz2(archivePath, destPath string) error { + return extractTarArchive(archivePath, destPath, "Extracting bz2 archive", func() (*tar.Reader, func(), error) { return createBzip2TarReader(archivePath) - } - - commonPrefix, err := detectCommonPrefix(readerFactory) - if err != nil { - return err - } - - tr, cleanup, err := readerFactory() - if err != nil { - return err - } - defer cleanup() - - if err := extractTar(tr, destPath, commonPrefix); err != nil { - return err - } - - if commonPrefix != "" { - log.Printf("Stripped common directory prefix: %s", commonPrefix) - } - - return nil + }) } func ExtractTarXz(archivePath, destPath string) error { - if _, err := os.Stat(archivePath); os.IsNotExist(err) { - log.Printf("Archive not found: %s", archivePath) - return err - } - - log.Printf("Extracting xz archive: %s into %s", archivePath, destPath) - - readerFactory := func() (*tar.Reader, func(), error) { + return extractTarArchive(archivePath, destPath, "Extracting xz archive", func() (*tar.Reader, func(), error) { return createXzTarReader(archivePath) - } - - commonPrefix, err := detectCommonPrefix(readerFactory) - if err != nil { - return err - } - - tr, cleanup, err := readerFactory() - if err != nil { - return err - } - defer cleanup() - - if err := extractTar(tr, destPath, commonPrefix); err != nil { - return err - } - - if commonPrefix != "" { - log.Printf("Stripped common directory prefix: %s", commonPrefix) - } - - return nil + }) } func writeFileToTar(tw *tar.Writer, header *tar.Header, filePath string) error { diff --git a/utils/git.go b/utils/git.go index 95027c2..e4a0cee 100644 --- a/utils/git.go +++ b/utils/git.go @@ -4,7 +4,6 @@ import ( "encoding/json" "fmt" "log" - "net/http" "os" "os/exec" "path/filepath" @@ -13,10 +12,6 @@ import ( "github.com/mrcyjanek/simplybs/utils/download" ) -func BundleHasAllRefs(bundlePath string, refs []string) bool { - return verifyBundleHasRef(bundlePath, refs) -} - func verifyBundleHasRef(bundlePath string, refs []string) bool { tempVerifyDir := bundlePath + ".verify.tmp" defer RemoveAll(tempVerifyDir) @@ -53,46 +48,30 @@ func downloadBundleFromMirrors(bundlePath, originalURL string, refs []string) er mirrorPath := filepath.Join(filepath.Dir(urlPath), bundleFilename) mirrors := download.GetMirrors() + tempFile := bundlePath + ".download.tmp" + defer os.Remove(tempFile) + for _, mirror := range mirrors { + os.Remove(tempFile) + mirrorURL := mirror + mirrorPath log.Printf("Trying to download bundle from mirror: %s", mirrorURL) - resp, err := http.Get(mirrorURL) - if err != nil { + if err := download.DownloadURLWithRetries(mirrorURL, tempFile); err != nil { log.Printf("Failed to download from mirror %s: %v", mirror, err) continue } - defer resp.Body.Close() - - if resp.StatusCode != http.StatusOK { - log.Printf("Mirror %s returned HTTP %d", mirror, resp.StatusCode) - continue - } - - tempFile := bundlePath + ".download.tmp" - defer os.Remove(tempFile) - - out, err := os.Create(tempFile) - if err != nil { - log.Printf("Failed to create temp file: %v", err) - continue - } - - _, err = out.ReadFrom(resp.Body) - out.Close() - if err != nil { - log.Printf("Failed to download bundle: %v", err) - continue - } if !verifyBundleHasRef(tempFile, refs) { log.Printf("Mirror bundle does not contain all refs %v", refs) + os.Remove(tempFile) continue } os.MkdirAll(filepath.Dir(bundlePath), 0755) if err := os.Rename(tempFile, bundlePath); err != nil { log.Printf("Failed to move bundle to final location: %v", err) + os.Remove(tempFile) continue } diff --git a/utils/ifstring/ifstring.go b/utils/ifstring/ifstring.go index 20515dd..b15cfe5 100644 --- a/utils/ifstring/ifstring.go +++ b/utils/ifstring/ifstring.go @@ -20,6 +20,22 @@ func (is *IfString) HostGlob() glob.Glob { return glob.MustCompile(is.Host) } +func (is *IfString) Matches(hostTriplet, builderName string) bool { + return is.HostGlob().Match(hostTriplet) && is.BuilderGlob().Match(builderName) +} + +func FilterContent(items []string, hostTriplet, builderName string) []string { + filtered := make([]string, 0, len(items)) + for _, item := range items { + is := ParseIfString(item) + if !is.Matches(hostTriplet, builderName) { + continue + } + filtered = append(filtered, is.Content) + } + return filtered +} + func ParseIfString(str string) *IfString { is := &IfString{} is.Builder = strings.Split(str, ":")[0] diff --git a/utils/jsonutil.go b/utils/jsonutil.go new file mode 100644 index 0000000..8f136f8 --- /dev/null +++ b/utils/jsonutil.go @@ -0,0 +1,13 @@ +package utils + +import ( + "encoding/json" + "io" +) + +func NewIndentedEncoder(w io.Writer) *json.Encoder { + encoder := json.NewEncoder(w) + encoder.SetEscapeHTML(false) + encoder.SetIndent("", " ") + return encoder +} diff --git a/utils/remove_all.go b/utils/remove_all.go index 7087c61..1889939 100644 --- a/utils/remove_all.go +++ b/utils/remove_all.go @@ -16,7 +16,7 @@ func RemoveAll(path string) error { }) if err := os.RemoveAll(path); err != nil { - log.Fatalf("removeAll %s: %w", path, err) + log.Fatalf("removeAll %s: %v", path, err) } return nil } diff --git a/utils/sources.go b/utils/sources.go index 7c11850..31b18c7 100644 --- a/utils/sources.go +++ b/utils/sources.go @@ -56,14 +56,21 @@ func AddDownload(s *SourcesFile, entry DownloadEntry) bool { return true } -func MergeDownloadMap(s *SourcesFile, download map[string]interface{}) { - kind, _ := download["kind"].(string) +func downloadMapFields(download map[string]interface{}) (kind, url, sha256 string, ok bool) { + kind, _ = download["kind"].(string) if kind == "" || kind == "none" { - return + return "", "", "", false } + url, _ = download["url"].(string) + sha256, _ = download["sha256"].(string) + return kind, url, sha256, true +} - url, _ := download["url"].(string) - sha256, _ := download["sha256"].(string) +func MergeDownloadMap(s *SourcesFile, download map[string]interface{}) { + kind, url, sha256, ok := downloadMapFields(download) + if !ok { + return + } if kind == "git" { AddGitRef(s, url, sha256) @@ -130,10 +137,7 @@ func MarshalSourcesFile(s *SourcesFile) ([]byte, error) { SortSourcesFile(s) var buf bytes.Buffer - encoder := json.NewEncoder(&buf) - encoder.SetEscapeHTML(false) - encoder.SetIndent("", " ") - if err := encoder.Encode(s); err != nil { + if err := NewIndentedEncoder(&buf).Encode(s); err != nil { return nil, err } return bytes.TrimSuffix(buf.Bytes(), []byte("\n")), nil @@ -212,12 +216,10 @@ func UniqueDownloads(entries []DownloadEntry) []DownloadEntry { } func DownloadEntryFromMap(download map[string]interface{}) (DownloadEntry, bool) { - kind, _ := download["kind"].(string) - if kind == "" || kind == "none" || kind == "git" { + kind, url, sha256, ok := downloadMapFields(download) + if !ok || kind == "git" { return DownloadEntry{}, false } - url, _ := download["url"].(string) - sha256, _ := download["sha256"].(string) if url == "" || sha256 == "" { return DownloadEntry{}, false } From 5edbfa76fc7319d974b03b90c2088b609b3c5658 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 23 Jun 2026 20:45:04 +0200 Subject: [PATCH 125/200] wip rust --- pack/build.go | 14 +++-- pack/info.go | 20 +++---- packages/native/ct-tools.json | 2 +- packages/native/rust.json | 8 +-- packages/rust-hello-world.json | 3 +- packages/rust-std.json | 36 +++++++++++++ sources.json | 2 - utils/download/download.go | 99 ++++++++++++++++++++++++---------- utils/remove_all.go | 10 ++++ utils/sources.go | 42 ++++++++++++++- utils/sources_ignored_refs.txt | 3 ++ utils/sources_test.go | 32 +++++++++++ 12 files changed, 219 insertions(+), 52 deletions(-) create mode 100644 packages/rust-std.json create mode 100644 utils/sources_ignored_refs.txt diff --git a/pack/build.go b/pack/build.go index b2cbb25..9400e49 100644 --- a/pack/build.go +++ b/pack/build.go @@ -135,6 +135,15 @@ func wipeDirContents(dir string) { } } +func resetBuildDirs() { + for _, dir := range []string{ + filepath.Join(host.DataDir(), "work"), + filepath.Join(host.DataDir(), "staging"), + } { + utils.RemoveAll(dir) + } +} + func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { var deps []*Package if buildDependencies { @@ -151,10 +160,9 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { for _, dep := range deps { dep.ExtractEnv(h, envPath, nativeEnvPath) } + resetBuildDirs() buildPath := p.GenerateBuildPath(h, "work") stagingPath := p.GenerateBuildPath(h, "staging") - utils.RemoveAll(buildPath) - utils.RemoveAll(stagingPath) os.MkdirAll(buildPath, 0755) os.MkdirAll(stagingPath, 0755) defer utils.RemoveAll(buildPath) @@ -270,8 +278,8 @@ func shellEscape(value string) string { func (p *Package) StartShell(h *host.Host) { log.Printf("Starting shell for package: %s for host %s", p.Package, h.Triplet) + resetBuildDirs() buildPath := p.GenerateBuildPath(h, "work") - utils.RemoveAll(buildPath) os.MkdirAll(buildPath, 0755) log.Printf("Extracting source for package: %s", p.Package) diff --git a/pack/info.go b/pack/info.go index 742042e..43e8ca2 100644 --- a/pack/info.go +++ b/pack/info.go @@ -113,15 +113,17 @@ func (p *Package) GetEnv(h *host.Host) map[string]string { crash.Handle(err) stagingPath := p.GenerateBuildPath(h, "staging") env := map[string]string{ - "PATH": h.GetNativeEnvPath() + "/bin:" + h.GetNativeEnvPath() + "/_/bin:" + utils.GetHostPath(), - "HOST": h.Triplet, - "PREFIX": h.GetEnvPath(), - "NATIVEPREFIX": h.GetNativeEnvPath(), - "HOME": p.homePath(h), - "HOST_PREFIX": h.GetEnvPath(), - "NUM_CORES": strconv.Itoa(getNumCores()), - "PATCH_DIR": filepath.Join(getwd, "patches"), - "STAGING_DIR": stagingPath, + "PATH": h.GetNativeEnvPath() + "/bin:" + h.GetNativeEnvPath() + "/_/bin:" + utils.GetHostPath(), + "HOST": h.Triplet, + "PREFIX": h.GetEnvPath(), + "NATIVEPREFIX": h.GetNativeEnvPath(), + "HOME": p.homePath(h), + "HOST_PREFIX": h.GetEnvPath(), + "NUM_CORES": strconv.Itoa(getNumCores()), + "PATCH_DIR": filepath.Join(getwd, "patches"), + "STAGING_DIR": stagingPath, + "PKG_CONFIG_ALLOW_CROSS": "1", + "PKG_CONFIG_SYSROOT_DIR": h.GetEnvPath(), } env = utils.AppendEnv(env, builder.HostBuilder.GlobalEnv, h) diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 1b97c92..d6539a7 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -160,7 +160,7 @@ "*:{*-linux-gnu,*-w64-mingw32}:mkdir -p $STAGING_DIR/$NATIVEPREFIX", "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/* $STAGING_DIR/$NATIVEPREFIX", "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/bin/* $STAGING_DIR/$NATIVEPREFIX/bin", - "*:x86_64-linux-gnu:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-linux-gnu-*; do ln -sf $f ${x86_64-linux-gnu-}; done", + "*:x86_64-linux-gnu:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-linux-gnu-*; do ln -sf $f ${f#x86_64-linux-gnu-}; done", "*:aarch64-linux-gnu:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in aarch64-linux-gnu-*; do ln -sf $f ${f#aarch64-linux-gnu-}; done", "*:x86_64-linux-musl:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-linux-musl-*; do ln -sf $f ${f#x86_64-linux-musl-}; done", "*:x86_64-w64-mingw32:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-w64-mingw32-*; do ln -sf $f ${f#x86_64-w64-mingw32-}; done" diff --git a/packages/native/rust.json b/packages/native/rust.json index f42cc0c..dd7629a 100644 --- a/packages/native/rust.json +++ b/packages/native/rust.json @@ -17,25 +17,21 @@ "*:*:native/openssl", "*:*:native/pkgconf", "*:*:native/python@3.11", - "*:*:native/rust@1_93_0" + "*:*:native/rust@1_95_0" ], "build": { "env": [], "steps": [ "*:*:echo '[build]' > config.toml", - "linux_amd64:*:echo build = \\\"x86_64-unknown-linux-gnu\\\" >> config.toml", - "linux_amd64:*:echo host = [\\\"x86_64-unknown-linux-gnu\\\"] >> config.toml", - "*:*:echo 'target = [\"x86_64-unknown-linux-gnu\", \"aarch64-unknown-linux-gnu\"]' >> config.toml", "*:*:echo 'full-bootstrap = true' >> config.toml", "*:*:echo 'vendor = true' >> config.toml", "*:*:echo 'extended = true' >> config.toml", + "*:*:echo 'tools = [\"cargo\"]' >> config.toml", "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = true' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:echo '[rust]' >> config.toml", - "*:*:echo 'download-rustc = false' >> config.toml", "*:*:env -u ARFLAGS python3 ./x.py build --stage 3 --verbose -j $NUM_CORES", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", "*:*:cp -a build/*/stage3/lib $STAGING_DIR$NATIVEPREFIX/", diff --git a/packages/rust-hello-world.json b/packages/rust-hello-world.json index d4dbf3f..8c2ed84 100644 --- a/packages/rust-hello-world.json +++ b/packages/rust-hello-world.json @@ -11,7 +11,8 @@ ], "dependencies": [ "*:*:native/_", - "*:*:native/rust" + "*:*:native/rust", + "*:*:rust-std" ], "build": { "steps": [ diff --git a/packages/rust-std.json b/packages/rust-std.json new file mode 100644 index 0000000..4907c53 --- /dev/null +++ b/packages/rust-std.json @@ -0,0 +1,36 @@ +{ + "package": "rust-std", + "version": "1.95.0", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "ea9b82a83e46967537c3569ce9d6fa16811c043a96e651376c349e70241ca515", + "url": "http://static.rust-lang.org/dist/rustc-1.95.0-src.tar.gz" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/cmake", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/rust" + ], + "build": { + "env": [], + "steps": [ + "*:*:echo '[build]' > config.toml", + "*:*:echo 'vendor = true' >> config.toml", + "*:*:echo 'target = [\"x86_64-unknown-linux-gnu\"]' >> config.toml", + "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", + "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", + "*:*:echo '[llvm]' >> config.toml", + "*:*:echo 'ninja = true' >> config.toml", + "*:*:echo 'download-ci-llvm = false' >> config.toml", + "*:*:env -u ARFLAGS python3 ./x.py build library/std --stage 1 --target x86_64-unknown-linux-gnu -j1", + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib/rustlib/x86_64-unknown-linux-gnu", + "*:*:cp -a build/aarch64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu/release/deps/. $STAGING_DIR$NATIVEPREFIX/lib/rustlib/x86_64-unknown-linux-gnu/lib" + ] + } +} \ No newline at end of file diff --git a/sources.json b/sources.json index 1d07b9c..73583eb 100644 --- a/sources.json +++ b/sources.json @@ -963,10 +963,8 @@ "https://github.com/MrCyjaneK/osxcross.git": { "refs": [ "0d1b14468187636f5a23d4adb4f3e5830570bd49", - "504e4711cee972ff751ab20ac8c259bbcaa22bb3", "643bea6efcfd54769eaaa645dae5037dd7148c94", "a3e46b026467f0e37ff3c79a015f6c9331190180", - "c2b3d1e9ed841474b04671f06b0f005d03dede82", "ea17212e41970b9f602fb30898b5a4013a1fb7af" ] }, diff --git a/utils/download/download.go b/utils/download/download.go index 286fad2..8f568e3 100644 --- a/utils/download/download.go +++ b/utils/download/download.go @@ -30,23 +30,36 @@ func downloadTempPath(path string) string { return path + ".download.tmp" } +func fileSizeAt(path string) int64 { + if info, err := os.Stat(path); err == nil { + return info.Size() + } + return 0 +} + type ProgressWriter struct { writer io.Writer total int64 + offset int64 written int64 lastUpdate time.Time filename string } -func NewProgressWriter(writer io.Writer, total int64, filename string) *ProgressWriter { +func NewProgressWriter(writer io.Writer, total, offset int64, filename string) *ProgressWriter { return &ProgressWriter{ writer: writer, total: total, + offset: offset, filename: filename, lastUpdate: time.Now(), } } +func (pw *ProgressWriter) downloaded() int64 { + return pw.offset + pw.written +} + func (pw *ProgressWriter) Write(p []byte) (int, error) { n, err := pw.writer.Write(p) if err != nil { @@ -64,20 +77,24 @@ func (pw *ProgressWriter) Write(p []byte) (int, error) { } func (pw *ProgressWriter) displayProgress() { + downloaded := pw.downloaded() + var line string if pw.total <= 0 { - fmt.Printf("\r%s: Downloaded %s", pw.filename, formatBytes(pw.written)) + line = fmt.Sprintf("%s: Downloaded %s", pw.filename, formatBytes(downloaded)) } else { - percentage := float64(pw.written) / float64(pw.total) * 100 - fmt.Printf("\r%s: %.1f%% (%s / %s)", pw.filename, percentage, formatBytes(pw.written), formatBytes(pw.total)) + percentage := float64(downloaded) / float64(pw.total) * 100 + line = fmt.Sprintf("%s: %.1f%% (%s / %s)", pw.filename, percentage, formatBytes(downloaded), formatBytes(pw.total)) } + // Pad to erase leftover characters from shorter previous lines. + fmt.Printf("\r%-80s", line) } func (pw *ProgressWriter) finish() { - fmt.Printf("\r%s: Complete (%s)\n", pw.filename, formatBytes(pw.written)) + fmt.Printf("\r%s: Complete (%s)\n", pw.filename, formatBytes(pw.downloaded())) } -func copyWithProgress(dst io.Writer, src io.Reader, total int64, filename string) (int64, error) { - pw := NewProgressWriter(dst, total, filename) +func copyWithProgress(dst io.Writer, src io.Reader, total, offset int64, filename string) (int64, error) { + pw := NewProgressWriter(dst, total, offset, filename) n, err := io.Copy(pw, src) if err != nil { return n, err @@ -145,7 +162,10 @@ func downloadToFileWithResume(destPath, url string) (int64, error) { } filename := filepath.Base(destPath) - bytesRead, err := copyWithProgress(out, resp.Body, contentLengthTotal(resp, fileSize), filename) + if strings.HasSuffix(filename, ".download.tmp") { + filename = strings.TrimSuffix(filename, ".download.tmp") + } + bytesRead, err := copyWithProgress(out, resp.Body, contentLengthTotal(resp, fileSize), fileSize, filename) if err != nil { return fileSize + bytesRead, fmt.Errorf("failed to write file: %v", err) } @@ -155,24 +175,35 @@ func downloadToFileWithResume(destPath, url string) (int64, error) { // DownloadURLWithRetries downloads url to destPath with progress, resume, and retries. func DownloadURLWithRetries(url, destPath string) error { - for attempt := 0; attempt <= maxDownloadRetries; attempt++ { + attempt := 0 + for attempt <= maxDownloadRetries { if attempt > 0 { log.Printf("Retry attempt %d/%d for %s", attempt, maxDownloadRetries, url) time.Sleep(downloadRetryDelay) } + startSize := fileSizeAt(destPath) bytesReceived, err := downloadToFileWithResume(destPath, url) - if err != nil { - if bytesReceived == 0 && attempt == 0 { - return fmt.Errorf("no data received from server: %v", err) - } - if attempt == maxDownloadRetries { - return fmt.Errorf("failed after %d retries: %v", maxDownloadRetries, err) - } - log.Printf("Download failed: %v", err) + if err == nil { + return nil + } + + if bytesReceived == 0 && attempt == 0 { + return fmt.Errorf("no data received from server: %v", err) + } + + log.Printf("Download failed: %v", err) + + if bytesReceived > startSize { + log.Printf("Made progress (%s), resetting retry count", formatBytes(bytesReceived-startSize)) + attempt = 0 continue } - return nil + + attempt++ + if attempt > maxDownloadRetries { + return fmt.Errorf("failed after %d retries: %v", maxDownloadRetries, err) + } } return fmt.Errorf("download failed after all retries") } @@ -235,26 +266,36 @@ func DownloadFile(packageName, path, url, expectedSha256 string, isMirror bool) os.MkdirAll(filepath.Dir(path), 0755) - for attempt := 0; attempt <= maxDownloadRetries; attempt++ { + attempt := 0 + for attempt <= maxDownloadRetries { if attempt > 0 { log.Printf("Retry attempt %d/%d for %s", attempt, maxDownloadRetries, url) time.Sleep(downloadRetryDelay) } + startSize := fileSizeAt(downloadTempPath(path)) bytesReceived, err := downloadWithResume(path, url, expectedSha256) - if err != nil { - if bytesReceived == 0 && attempt == 0 { - return fmt.Errorf("no data received from server: %v", err) - } - if attempt == maxDownloadRetries { - return fmt.Errorf("failed after %d retries: %v", maxDownloadRetries, err) - } - log.Printf("Download failed: %v", err) + if err == nil { + log.Printf("Successfully downloaded and verified %s", path) + return nil + } + + if bytesReceived == 0 && attempt == 0 { + return fmt.Errorf("no data received from server: %v", err) + } + + log.Printf("Download failed: %v", err) + + if bytesReceived > startSize { + log.Printf("Made progress (%s), resetting retry count", formatBytes(bytesReceived-startSize)) + attempt = 0 continue } - log.Printf("Successfully downloaded and verified %s", path) - return nil + attempt++ + if attempt > maxDownloadRetries { + return fmt.Errorf("failed after %d retries: %v", maxDownloadRetries, err) + } } return fmt.Errorf("download failed after all retries") diff --git a/utils/remove_all.go b/utils/remove_all.go index 1889939..a792815 100644 --- a/utils/remove_all.go +++ b/utils/remove_all.go @@ -7,6 +7,10 @@ import ( ) func RemoveAll(path string) error { + if _, err := os.Stat(path); os.IsNotExist(err) { + return nil + } + filepath.WalkDir(path, func(p string, d os.DirEntry, err error) error { if err != nil { return nil @@ -18,5 +22,11 @@ func RemoveAll(path string) error { if err := os.RemoveAll(path); err != nil { log.Fatalf("removeAll %s: %v", path, err) } + + if _, err := os.Stat(path); err == nil { + log.Fatalf("removeAll %s: still exists after removal", path) + } else if !os.IsNotExist(err) { + log.Fatalf("removeAll %s: %v", path, err) + } return nil } diff --git a/utils/sources.go b/utils/sources.go index 31b18c7..7210034 100644 --- a/utils/sources.go +++ b/utils/sources.go @@ -2,11 +2,50 @@ package utils import ( "bytes" + _ "embed" "encoding/json" "sort" "strings" ) +//go:embed sources_ignored_refs.txt +var sourcesIgnoredRefsFile string + +var sourcesIgnoredRefs map[string]struct{} + +func init() { + sourcesIgnoredRefs = make(map[string]struct{}) + for _, line := range strings.Split(sourcesIgnoredRefsFile, "\n") { + line = strings.TrimSpace(line) + if line == "" || strings.HasPrefix(line, "#") { + continue + } + sourcesIgnoredRefs[line] = struct{}{} + } +} + +func IsIgnoredGitRef(ref string) bool { + _, ignored := sourcesIgnoredRefs[ref] + return ignored +} + +func FilterIgnoredGitRefs(s *SourcesFile) { + for url, repoInfo := range s.Repositories { + filtered := make([]string, 0, len(repoInfo.Refs)) + for _, ref := range repoInfo.Refs { + if !IsIgnoredGitRef(ref) { + filtered = append(filtered, ref) + } + } + if len(filtered) == 0 { + delete(s.Repositories, url) + continue + } + repoInfo.Refs = filtered + s.Repositories[url] = repoInfo + } +} + func NewSourcesFile() *SourcesFile { return &SourcesFile{ Repositories: make(map[string]RepositoryInfo), @@ -14,7 +53,7 @@ func NewSourcesFile() *SourcesFile { } func AddGitRef(s *SourcesFile, url, ref string) bool { - if url == "" || ref == "" { + if url == "" || ref == "" || IsIgnoredGitRef(ref) { return false } repoInfo, exists := s.Repositories[url] @@ -134,6 +173,7 @@ func SortSourcesFile(s *SourcesFile) { } func MarshalSourcesFile(s *SourcesFile) ([]byte, error) { + FilterIgnoredGitRefs(s) SortSourcesFile(s) var buf bytes.Buffer diff --git a/utils/sources_ignored_refs.txt b/utils/sources_ignored_refs.txt new file mode 100644 index 0000000..7d660b9 --- /dev/null +++ b/utils/sources_ignored_refs.txt @@ -0,0 +1,3 @@ +# Git refs that are invalid or unavailable upstream; excluded from sources.json. +504e4711cee972ff751ab20ac8c259bbcaa22bb3 +c2b3d1e9ed841474b04671f06b0f005d03dede82 diff --git a/utils/sources_test.go b/utils/sources_test.go index af555f7..47859c0 100644 --- a/utils/sources_test.go +++ b/utils/sources_test.go @@ -45,6 +45,38 @@ func TestLoadSourcesFileBackwardCompat(t *testing.T) { } } +func TestIgnoredGitRefs(t *testing.T) { + s := NewSourcesFile() + + if AddGitRef(s, "https://example.com/foo.git", "504e4711cee972ff751ab20ac8c259bbcaa22bb3") { + t.Fatal("expected ignored ref to be skipped") + } + if _, exists := s.Repositories["https://example.com/foo.git"]; exists { + t.Fatal("expected ignored ref not to create repository entry") + } + + s.Repositories["https://example.com/foo.git"] = RepositoryInfo{ + Refs: []string{ + "abc123", + "504e4711cee972ff751ab20ac8c259bbcaa22bb3", + "c2b3d1e9ed841474b04671f06b0f005d03dede82", + }, + } + encoded, err := MarshalSourcesFile(s) + if err != nil { + t.Fatalf("marshal: %v", err) + } + if strings.Contains(string(encoded), "504e4711cee972ff751ab20ac8c259bbcaa22bb3") { + t.Fatal("expected ignored ref to be filtered from marshaled output") + } + if strings.Contains(string(encoded), "c2b3d1e9ed841474b04671f06b0f005d03dede82") { + t.Fatal("expected ignored ref to be filtered from marshaled output") + } + if !strings.Contains(string(encoded), "abc123") { + t.Fatal("expected non-ignored ref to remain in marshaled output") + } +} + func TestMergeGitRefDedup(t *testing.T) { s := NewSourcesFile() From 1a45bdcc45d54c733520fdc9b1c1a5f4ce68c92a Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 26 Jun 2026 15:45:45 +0200 Subject: [PATCH 126/200] feat: use easybs for bootstrap --- builder/builder_linux_arm64.go | 17 +++++++--- packages/libiconv.json | 1 + packages/native/_.json | 1 + packages/native/_/_.json | 3 +- packages/native/_/darwin_arm64_clang21.json | 4 +-- packages/native/_/linux_amd64_clang21.json | 18 +++++++++++ packages/native/_/linux_arm64_clang21.json | 18 +++++++++++ packages/native/cctools-port.json | 5 ++- packages/native/ct-tools.json | 10 ++++++ packages/native/icu4c.json | 2 ++ packages/native/libc++.json | 15 +++------ packages/native/libtapi.json | 31 +++++++++++++++++-- packages/native/ncurses.json | 12 +++++-- packages/tor.json | 3 +- .../native/ct-tools/clang-widl-winnt.h.patch | 21 +++++++++++++ utils/path.go | 2 +- 16 files changed, 137 insertions(+), 26 deletions(-) create mode 100644 packages/native/_/linux_amd64_clang21.json create mode 100644 packages/native/_/linux_arm64_clang21.json create mode 100644 patches/native/ct-tools/clang-widl-winnt.h.patch diff --git a/builder/builder_linux_arm64.go b/builder/builder_linux_arm64.go index 1923b19..1902fb8 100644 --- a/builder/builder_linux_arm64.go +++ b/builder/builder_linux_arm64.go @@ -6,12 +6,19 @@ var HostBuilder = Builder{ GlobalEnv: []string{ "*:*:HOST=aarch64-linux-gnu", "*:*:TARGET=aarch64-linux-gnu", - "*:*:CC=/usr/bin/clang", - "*:*:CXX=/usr/bin/clang++", - "*:*:AR=/usr/bin/ar", - "*:*:RANLIB=/usr/bin/ranlib", - "*:*:INSTALL_NAME_TOOL=install_name_tool", + "*:*:CC=$NATIVEPREFIX/_/bin/clang", + "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "*:*:AR=$NATIVEPREFIX/_/bin/ar", + "*:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", + "*:*:STRIP=$NATIVEPREFIX/_/bin/strip", + "*:*:NM=$NATIVEPREFIX/_/bin/nm", "*:*:BUILDER_GOOS=" + runtime.GOOS, "*:*:BUILDER_GOARCH=" + runtime.GOARCH, + // lt_cv_prog_gnu_ld=no + // helps with resolving ld64.lld pretending to be GNU on while it's actually not, this occured in libtool and pkgconf + // so I assume this is better here as a general fix. + // ld64.lld: error: unknown argument '-soname' + // ld64.lld: error: unknown argument '-retain-symbols-file' + // "*:*:lt_cv_prog_gnu_ld=no", }, } diff --git a/packages/libiconv.json b/packages/libiconv.json index 82d0d5f..a16022e 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -16,6 +16,7 @@ "*:*:native/gawk", "*:*:native/grep", "*:*:native/coreutils", + "*:*:native/findutils", "*:*:native/config", "*:*:native/make" ], diff --git a/packages/native/_.json b/packages/native/_.json index 33ef40e..750fd4c 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -5,6 +5,7 @@ "dependencies": [ "*:*:native/_/_", "*:*-android*:native/android_ndk", + "*:*-apple-*:native/libc++", "*:*-apple-*:native/cctools-port", "*:*-apple-*:native/libtapi", "*:*-apple-*:native/libxml2", diff --git a/packages/native/_/_.json b/packages/native/_/_.json index 8db4ff0..5bc2072 100644 --- a/packages/native/_/_.json +++ b/packages/native/_/_.json @@ -3,7 +3,8 @@ "version": "0.0.0", "type": "native", "dependencies": [ - "darwin_arm64:*:native/_/darwin_arm64_clang21" + "darwin_arm64:*:native/_/darwin_arm64_clang21", + "linux_arm64:*:native/_/linux_arm64_clang21" ], "build": { "env": [ diff --git a/packages/native/_/darwin_arm64_clang21.json b/packages/native/_/darwin_arm64_clang21.json index 946d419..8403738 100644 --- a/packages/native/_/darwin_arm64_clang21.json +++ b/packages/native/_/darwin_arm64_clang21.json @@ -5,8 +5,8 @@ "download": [ { "kind": "tar.xz", - "sha256": "735e9433e8961ab960b9a7c68a1f4ded5d0a6eecf8de58cd7bad80550ae184f1", - "url": "https://static.mrcyjanek.net/bootstrap/clang21-aarch64-apple-darwin.tar.xz" + "sha256": "f08445d419c7ac00e47e458618575cf3cb24db27d9c2e8636845288d8884b3c8", + "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-apple-darwin.tar.xz" } ], "build": { diff --git a/packages/native/_/linux_amd64_clang21.json b/packages/native/_/linux_amd64_clang21.json new file mode 100644 index 0000000..2712fa9 --- /dev/null +++ b/packages/native/_/linux_amd64_clang21.json @@ -0,0 +1,18 @@ +{ + "package": "native/_/linux_amd64_clang21", + "version": "0.0.0", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "80b749abd76d6ef01b17c4dc0fd8eb0b7ae7a88bfacad559625fa94da0ae6477", + "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-x86_64-linux-gnu.tar.xz" + } + ], + "build": { + "steps": [ + "*:*:./bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/_/", + "*:*:./bin/cp -a * $STAGING_DIR$NATIVEPREFIX/_/" + ] + } +} \ No newline at end of file diff --git a/packages/native/_/linux_arm64_clang21.json b/packages/native/_/linux_arm64_clang21.json new file mode 100644 index 0000000..259d99f --- /dev/null +++ b/packages/native/_/linux_arm64_clang21.json @@ -0,0 +1,18 @@ +{ + "package": "native/_/linux_arm64_clang21", + "version": "0.0.0", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "a32317df0c3985f5da430bd6f9a8b9b1b194810d9755a51faa9a46f7c7cec1c0", + "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-linux-gnu.tar.xz" + } + ], + "build": { + "steps": [ + "*:*:./bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/_/", + "*:*:./bin/cp -a * $STAGING_DIR$NATIVEPREFIX/_/" + ] + } +} \ No newline at end of file diff --git a/packages/native/cctools-port.json b/packages/native/cctools-port.json index 296172d..ac7b6ae 100644 --- a/packages/native/cctools-port.json +++ b/packages/native/cctools-port.json @@ -11,6 +11,7 @@ ], "dependencies": [ "*:*-apple-*:native/bzip2", + "*:*-apple-*:native/libc++", "*:*-apple-*:native/libtapi", "*:*-apple-*:native/make", "*:*-apple-*:native/openssl", @@ -29,7 +30,9 @@ "*:*-apple-*:config_opts=$config_opts --with-libtapi=$NATIVEPREFIX", "*:*-apple-*:config_opts=$config_opts --with-libxar=$NATIVEPREFIX", "*:*-apple-*:CC=clang", - "*:*-apple-*:CXX=clang++" + "*:*-apple-*:CXX=clang++", + "linux_arm64:*-apple-*:CXXFLAGS=$CXXFLAGS -stdlib=libc++ -I$NATIVEPREFIX/include/c++/v1", + "linux_arm64:*-apple-*:LIBS=-lc++abi -lunwind" ], "steps": [ "*:*-apple-*:sed -i.bak '3182d' cctools/configure", diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index d6539a7..e8308b6 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -128,8 +128,10 @@ "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/coreutils", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/crosstool-ng", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/file", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/findutils", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/flex", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gawk", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/grep", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gettext", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gmp_shared", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/help2man", @@ -146,6 +148,9 @@ "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/xz", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/zlib" ], + "patches": [ + "clang-widl-winnt.h.patch" + ], "build": { "env": [ "*:x86_64-linux-gnu:TOOL_TARGET=x86_64-linux-gnu", @@ -154,6 +159,11 @@ "*:x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32" ], "steps": [ + "linux_arm64:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/_/bin/gcc", + "linux_arm64:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/_/bin/g++", + "linux_arm64:x86_64-w64-mingw32:mkdir -p patches/mingw-w64 && cp $PATCH_DIR/native/ct-tools/clang-widl-winnt.h.patch patches/mingw-w64/", + "linux_arm64:x86_64-w64-mingw32:sed -i '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_MINGW_W64_PATCH_LOCAL y\\n put_new_config CT_MINGW_W64_PATCH_ORDER \"local,bundled\"\\n put_new_config CT_PATCH_USE_LOCAL y\\n put_new_config CT_LOCAL_PATCH_DIR \"'\"$(pwd)/patches\"'\"' run.sh", + "*:{*-linux-gnu,*-w64-mingw32}:sed -i 's|install=\"./scripts/install-sh -c\"|install=\"'$NATIVEPREFIX'/bin/install -c\"|g' $NATIVEPREFIX/share/crosstool-ng/paths.sh", "*:{*-linux-gnu,*-w64-mingw32}:env -i PATH=$PATH PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET/* $STAGING_DIR/$PREFIX", "*:{*-linux-gnu,*-w64-mingw32}:rm -rf $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET", diff --git a/packages/native/icu4c.json b/packages/native/icu4c.json index 1e73c13..d3dd2ff 100644 --- a/packages/native/icu4c.json +++ b/packages/native/icu4c.json @@ -27,6 +27,8 @@ "*:*-w64-mingw32:patch -p1 < $PATCH_DIR/icu4c/icu-001-dont-build-static-dynamic-twice.patch", "*:*-w64-mingw32:mkdir -p $NATIVEPREFIX/share/", "*:*-w64-mingw32:cp -av . $NATIVEPREFIX/share/icu4c_55.2", + "linux_arm64:*-w64-mingw32:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/_/bin/gcc", + "linux_arm64:*-w64-mingw32:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/_/bin/g++", "*:*-w64-mingw32:WD=$PWD && unset HOST TARGET && cd $NATIVEPREFIX/share/icu4c_55.2 && bash $WD/source/runConfigureICU $ICU_PLATFORM --prefix=$NATIVEPREFIX/share/icu4c_55.2", "*:*-w64-mingw32:unset HOST TARGET && cd $NATIVEPREFIX/share/icu4c_55.2 && make -j$NUM_CORES", "*:*-w64-mingw32:mkdir -p $STAGING_DIR$NATIVEPREFIX/share", diff --git a/packages/native/libc++.json b/packages/native/libc++.json index a28e4eb..217e1a4 100644 --- a/packages/native/libc++.json +++ b/packages/native/libc++.json @@ -12,25 +12,20 @@ "dependencies": [ "*:*:native/_/_", "*:*:native/bash", + "*:*:native/coreutils", + "*:*:native/cmake", "*:*:native/cmake", "*:*:native/ninja" ], "build": { - "env": [ - "*:*:config_opts=-DLLVM_ENABLE_RUNTIMES='libunwind;libcxx;libcxxabi'", - "*:*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", - "*:*:config_opts=$config_opts -DLIBCXX_ENABLE_SHARED=OFF", - "*:*:config_opts=$config_opts -DLIBCXX_ENABLE_STATIC=ON", - "*:*:config_opts=$config_opts -DLIBCXX_INCLUDE_TESTS=OFF", - "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$NATIVEPREFIX" - ], + "env": [], "steps": [ "*:*:mkdir build && cd build", - "*:*:cd build && cmake -G Ninja ../runtimes $config_opts", + "*:*:cd build && cmake -G Ninja ../runtimes -DLLVM_ENABLE_RUNTIMES='libunwind;libcxx;libcxxabi' -DCMAKE_BUILD_TYPE=Release -DLIBCXX_ENABLE_SHARED=OFF -DLIBCXX_ENABLE_STATIC=ON -DLIBCXX_INCLUDE_TESTS=OFF -DCMAKE_INSTALL_PREFIX=$NATIVEPREFIX", "*:*:cd build && ninja unwind cxx cxxabi", "*:*:cd build && DESTDIR=$STAGING_DIR ninja install-unwind", "*:*:cd build && DESTDIR=$STAGING_DIR ninja install-cxx", "*:*:cd build && DESTDIR=$STAGING_DIR ninja install-cxxabi" ] } -} \ No newline at end of file +} diff --git a/packages/native/libtapi.json b/packages/native/libtapi.json index 6d4bfe6..7970c91 100644 --- a/packages/native/libtapi.json +++ b/packages/native/libtapi.json @@ -11,15 +11,42 @@ ], "dependencies": [ "*:*:native/_/_", + "*:*:native/bash", "*:*:native/cmake", + "*:*:native/libc++", "*:*:native/ninja" ], "build": { "env": [ - "*:*:PATH=/usr/bin:/bin:$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin" + "*:*:config_opts=-G Ninja -S src/llvm -B build", + "*:*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", + "*:*:config_opts=$config_opts -DLLVM_ENABLE_PROJECTS='clang;tapi'", + "*:*:config_opts=$config_opts -DLLVM_INCLUDE_TESTS=OFF", + "*:*:config_opts=$config_opts -DLLVM_INCLUDE_BENCHMARKS=OFF", + "*:*:config_opts=$config_opts -DLLVM_ENABLE_TERMINFO=OFF", + "*:*:config_opts=$config_opts -DLLVM_ENABLE_WARNINGS=OFF", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$NATIVEPREFIX", + "*:*:config_opts=$config_opts -DTAPI_REPOSITORY_STRING=1300.6.5", + "*:*:config_opts=$config_opts -DTAPI_FULL_VERSION=1300.6.5", + "darwin_arm64:*:config_opts=$config_opts -DLLVM_HOST_TRIPLE=aarch64-apple-darwin", + "darwin_arm64:*:config_opts=$config_opts -DCMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG=-Wl,-rpath,", + "darwin_arm64:*:config_opts=$config_opts -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk", + "darwin_arm64:*:config_opts=$config_opts -DCMAKE_CXX_FLAGS=-stdlib=libc++", + "darwin_arm64:*:CMAKE_EXE_LINKER_FLAGS=-stdlib=libc++ -lc++ -lc++abi", + "darwin_arm64:*:CMAKE_SHARED_LINKER_FLAGS=-stdlib=libc++ -lc++ -lc++abi", + "linux_arm64:*:CC=$NATIVEPREFIX/_/bin/clang", + "linux_arm64:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "linux_arm64:*:config_opts=$config_opts -DLLVM_HOST_TRIPLE=aarch64-linux-gnu", + "linux_arm64:*:config_opts=$config_opts -DLLVM_ENABLE_LIBCXX=ON", + "linux_arm64:*:config_opts=$config_opts -DCMAKE_C_COMPILER=$NATIVEPREFIX/_/bin/clang", + "linux_arm64:*:config_opts=$config_opts -DCMAKE_CXX_COMPILER=$NATIVEPREFIX/_/bin/clang++", + "linux_arm64:*:CMAKE_CXX_FLAGS=-stdlib=libc++ -I$NATIVEPREFIX/include/c++/v1", + "linux_arm64:*:CMAKE_EXE_LINKER_FLAGS=-stdlib=libc++ -lc++ -lc++abi -lunwind -latomic", + "linux_arm64:*:CMAKE_SHARED_LINKER_FLAGS=-stdlib=libc++ -lc++ -lc++abi -lunwind" ], "steps": [ - "*:*:cmake -G Ninja -S src/llvm -B build -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS='clang;tapi' -DLLVM_HOST_TRIPLE=aarch64-apple-darwin -DLLVM_INCLUDE_TESTS=OFF -DLLVM_INCLUDE_BENCHMARKS=OFF -DLLVM_ENABLE_TERMINFO=OFF -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk -DCMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG=-Wl,-rpath, -DCMAKE_INSTALL_PREFIX=$NATIVEPREFIX -DTAPI_REPOSITORY_STRING=1300.6.5 -DTAPI_FULL_VERSION=1300.6.5 -DCMAKE_CXX_FLAGS=-stdlib=libc++ -DCMAKE_EXE_LINKER_FLAGS=\"-stdlib=libc++ -lc++ -lc++abi\" -DCMAKE_SHARED_LINKER_FLAGS=\"-stdlib=libc++ -lc++ -lc++abi\"", + "darwin_arm64:*:cmake $config_opts -DCMAKE_EXE_LINKER_FLAGS=\"$CMAKE_EXE_LINKER_FLAGS\" -DCMAKE_SHARED_LINKER_FLAGS=\"$CMAKE_SHARED_LINKER_FLAGS\"", + "linux_arm64:*:cmake $config_opts -DCMAKE_CXX_FLAGS=\"$CMAKE_CXX_FLAGS\" -DCMAKE_EXE_LINKER_FLAGS=\"$CMAKE_EXE_LINKER_FLAGS\" -DCMAKE_SHARED_LINKER_FLAGS=\"$CMAKE_SHARED_LINKER_FLAGS\"", "*:*:cmake --build build --target clangBasic libtapi -j$NUM_CORES", "*:*:DESTDIR=$STAGING_DIR ninja -C build install-libtapi install-tapi-headers" ] diff --git a/packages/native/ncurses.json b/packages/native/ncurses.json index 25feb2c..fea9325 100644 --- a/packages/native/ncurses.json +++ b/packages/native/ncurses.json @@ -12,6 +12,9 @@ "dependencies": [ "*:*:native/_/_", "*:*:native/bash", + "*:*:native/diffutils", + "*:*:native/coreutils", + "*:*:native/sed", "*:*:native/make" ], "build": { @@ -29,7 +32,7 @@ "*:*:config_opts=$config_opts --without-tests", "*:*:config_opts=$config_opts --without-tack", "*:*:config_opts=$config_opts --without-manpages", - "*:*:config_opts=$config_opts --with-termlib", + "*:*:config_opts=$config_opts --without-termlib", "*:*:config_opts=$config_opts --disable-tic-depends", "*:*:config_opts=$config_opts --disable-big-strings", "*:*:config_opts=$config_opts --disable-ext-colors", @@ -39,7 +42,7 @@ "*:*:config_opts=$config_opts --disable-rpath", "*:*:config_opts=$config_opts --disable-colorfgbg", "*:*:config_opts=$config_opts --disable-ext-mouse", - "*:*:config_opts=$config_opts --disable-symlinks", + "*:*:config_opts=$config_opts --enable-symlinks", "*:*:config_opts=$config_opts --enable-warnings", "*:*:config_opts=$config_opts --enable-assertions", "*:*:config_opts=$config_opts --with-default-terminfo-dir=/etc/_terminfo_", @@ -54,7 +57,10 @@ "*:*:cp $PATCH_DIR/ncurses/fallback.c ncurses", "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES $build_opts", - "*:*:make install.libs DESTDIR=$STAGING_DIR" + "*:*:make install.libs install.includes DESTDIR=$STAGING_DIR", + "*:*:ln -sf ncursesw/panel.h $STAGING_DIR$NATIVEPREFIX/include/panel.h", + "*:*:ln -sf ncursesw/form.h $STAGING_DIR$NATIVEPREFIX/include/form.h", + "*:*:ln -sf libncursesw.a $STAGING_DIR$NATIVEPREFIX/lib/libncurses.a" ] } } \ No newline at end of file diff --git a/packages/tor.json b/packages/tor.json index 318c5c9..b896b6c 100644 --- a/packages/tor.json +++ b/packages/tor.json @@ -12,6 +12,7 @@ "dependencies": [ "*:*:native/_", "*:*:native/autoconf", + "*:*:native/bash", "*:*:native/automake", "*:*:native/coreutils", "*:*:native/findutils", @@ -62,7 +63,7 @@ "*:*:cp src/config/geoip $STAGING_DIR$PREFIX/share/tor", "*:*:cp src/config/geoip6 $STAGING_DIR$PREFIX/share/tor", "*:*:mkdir -p $STAGING_DIR$PREFIX/include/tor", - "*:*:cd src && find . -name '*.h' -exec sh -c 'mkdir -p \"$STAGING_DIR$PREFIX/include/tor/$(dirname \"$1\")\" && cp \"$1\" \"$STAGING_DIR$PREFIX/include/tor/$1\"' _ {} \\;" + "*:*:cd src && find . -name '*.h' -exec bash -c 'mkdir -p \"$STAGING_DIR$PREFIX/include/tor/$(dirname \"$1\")\" && cp \"$1\" \"$STAGING_DIR$PREFIX/include/tor/$1\"' _ {} \\;" ] } } \ No newline at end of file diff --git a/patches/native/ct-tools/clang-widl-winnt.h.patch b/patches/native/ct-tools/clang-widl-winnt.h.patch new file mode 100644 index 0000000..51fc22a --- /dev/null +++ b/patches/native/ct-tools/clang-widl-winnt.h.patch @@ -0,0 +1,21 @@ +--- a/mingw-w64-tools/widl/include/winnt.h ++++ b/mingw-w64-tools/widl/include/winnt.h +@@ -2466,11 +2466,16 @@ static FORCEINLINE struct _TEB * WINAPI NtCurrentTeb(void) + { + return (struct _TEB *)__readfsdword( 0x18 ); + } +-#elif (defined(__aarch64__) || defined(__arm64ec__)) && defined(__GNUC__) ++#elif (defined(__aarch64__) || defined(__arm64ec__)) && defined(__GNUC__) && !defined(__clang__) + register struct _TEB *__wine_current_teb __asm__("x18"); + static FORCEINLINE struct _TEB * WINAPI NtCurrentTeb(void) + { + return __wine_current_teb; + } ++#elif (defined(__aarch64__) || defined(__arm64ec__)) && defined(__clang__) ++static FORCEINLINE struct _TEB * WINAPI NtCurrentTeb(void) ++{ ++ return (struct _TEB *)0; ++} + #elif (defined(__aarch64__) || defined(__arm64ec__)) && defined(_MSC_VER) + static FORCEINLINE struct _TEB * WINAPI NtCurrentTeb(void) + { diff --git a/utils/path.go b/utils/path.go index 0d31a9b..99d7c20 100644 --- a/utils/path.go +++ b/utils/path.go @@ -10,7 +10,7 @@ func GetHostPath() string { case "darwin": return "" case "linux": - return "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" + return "" default: log.Fatalln("Unsupported OS: ", runtime.GOOS) return "" From 23d3006f6022e406a71e3c8d2fba478cd4b8c769 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 26 Jun 2026 21:32:35 +0200 Subject: [PATCH 127/200] fix: build issues --- packages/native/cctools-port.json | 2 +- packages/native/git.json | 7 ++++--- packages/native/libtapi.json | 4 ++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/native/cctools-port.json b/packages/native/cctools-port.json index ac7b6ae..13edfc0 100644 --- a/packages/native/cctools-port.json +++ b/packages/native/cctools-port.json @@ -32,7 +32,7 @@ "*:*-apple-*:CC=clang", "*:*-apple-*:CXX=clang++", "linux_arm64:*-apple-*:CXXFLAGS=$CXXFLAGS -stdlib=libc++ -I$NATIVEPREFIX/include/c++/v1", - "linux_arm64:*-apple-*:LIBS=-lc++abi -lunwind" + "linux_arm64:*-apple-*:LIBS=-L$NATIVEPREFIX/lib -lc++abi -lunwind" ], "steps": [ "*:*-apple-*:sed -i.bak '3182d' cctools/configure", diff --git a/packages/native/git.json b/packages/native/git.json index dd6ef2b..aa6522e 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -25,9 +25,10 @@ "build": { "env": [], "steps": [ - "linux_*:*:make -j$NUM_CORES prefix=$NATIVEPREFIX EXTLIBS='-liconv -lz -lgettextpo' CC=$CC", - "darwin_*:*:make -j$NUM_CORES prefix=$NATIVEPREFIX EXTLIBS='-liconv -lz -lgettextpo -lintl' CC=$CC", - "*:*:make prefix=$NATIVEPREFIX DESTDIR=$STAGING_DIR install CC=$CC", + "linux_*:*:make -j$NUM_CORES prefix=$NATIVEPREFIX LDFLAGS=\"$LDFLAGS\" EXTLIBS='-liconv -lz -lgettextpo' CC=$CC", + "darwin_*:*:make -j$NUM_CORES prefix=$NATIVEPREFIX LDFLAGS=\"$LDFLAGS\" EXTLIBS='-liconv -lz -lgettextpo -lintl' CC=$CC", + "linux_*:*:make prefix=$NATIVEPREFIX DESTDIR=$STAGING_DIR LDFLAGS=\"$LDFLAGS\" EXTLIBS='-liconv -lz -lgettextpo' install CC=$CC", + "darwin_*:*:make prefix=$NATIVEPREFIX DESTDIR=$STAGING_DIR LDFLAGS=\"$LDFLAGS\" EXTLIBS='-liconv -lz -lgettextpo -lintl' install CC=$CC", "*:*:mkdir -p $STAGING_DIR$HOME", "*:*:echo '[user]' >> $STAGING_DIR$HOME/.gitconfig", "*:*:echo '\tname = simplybs' >> $STAGING_DIR$HOME/.gitconfig", diff --git a/packages/native/libtapi.json b/packages/native/libtapi.json index 7970c91..9fc5483 100644 --- a/packages/native/libtapi.json +++ b/packages/native/libtapi.json @@ -41,8 +41,8 @@ "linux_arm64:*:config_opts=$config_opts -DCMAKE_C_COMPILER=$NATIVEPREFIX/_/bin/clang", "linux_arm64:*:config_opts=$config_opts -DCMAKE_CXX_COMPILER=$NATIVEPREFIX/_/bin/clang++", "linux_arm64:*:CMAKE_CXX_FLAGS=-stdlib=libc++ -I$NATIVEPREFIX/include/c++/v1", - "linux_arm64:*:CMAKE_EXE_LINKER_FLAGS=-stdlib=libc++ -lc++ -lc++abi -lunwind -latomic", - "linux_arm64:*:CMAKE_SHARED_LINKER_FLAGS=-stdlib=libc++ -lc++ -lc++abi -lunwind" + "linux_arm64:*:CMAKE_EXE_LINKER_FLAGS=-L$NATIVEPREFIX/lib -stdlib=libc++ -lc++ -lc++abi -lunwind -latomic", + "linux_arm64:*:CMAKE_SHARED_LINKER_FLAGS=-L$NATIVEPREFIX/lib -stdlib=libc++ -lc++ -lc++abi -lunwind" ], "steps": [ "darwin_arm64:*:cmake $config_opts -DCMAKE_EXE_LINKER_FLAGS=\"$CMAKE_EXE_LINKER_FLAGS\" -DCMAKE_SHARED_LINKER_FLAGS=\"$CMAKE_SHARED_LINKER_FLAGS\"", From d2f8557090a8f28837051adedf99ab37c38ff6ba Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 27 Jun 2026 17:36:38 +0200 Subject: [PATCH 128/200] export-env --- builder/builder_darwin_arm64.go | 27 -- builder/builder_linux_amd64.go | 15 -- builder/builder_linux_arm64.go | 23 -- builder/default.go | 29 +-- cmd/lint/lint.go | 10 + host/main.go | 274 +------------------- host/main_test.go | 67 +++-- pack/export_env.go | 98 +++++++ pack/info.go | 62 ++--- pack/main.go | 1 + packages/boost@1_83_0.json | 2 +- packages/boost@1_90_0.json | 2 +- packages/expat.json | 6 +- packages/libevent.json | 14 +- packages/libiconv.json | 10 +- packages/native/7zip.json | 4 +- packages/native/_.json | 220 +++++++++++++++- packages/native/_/_.json | 37 ++- packages/native/_/darwin_arm64_clang21.json | 2 +- packages/native/apple-sdk.json | 2 +- packages/native/binutils@2.42.json | 6 +- packages/native/binutils@2.46.0.json | 8 +- packages/native/cctools-port.json | 9 +- packages/native/coreutils.json | 4 +- packages/native/crosstool-ng.json | 2 +- packages/native/ct-tools.json | 2 +- packages/native/dart@3.5.0-278.0.dev.json | 2 +- packages/native/findutils.json | 8 +- packages/native/flex.json | 4 +- packages/native/git.json | 2 +- packages/native/help2man.json | 4 +- packages/native/libc++.json | 4 +- packages/native/libtapi.json | 10 +- packages/native/libtool.json | 4 +- packages/native/ncurses.json | 6 +- packages/native/ninja.json | 4 +- packages/native/osx-cross.json | 6 +- packages/native/rust@1_90_0-mrustc.json | 2 +- packages/native/xar.json | 2 +- packages/native/xmlto.json | 2 +- packages/native/xz.json | 2 +- packages/openssl.json | 6 +- packages/protobuf.json | 10 +- packages/sodium.json | 12 +- packages/tor.json | 6 +- packages/unbound.json | 6 +- packages/xz.json | 18 +- packages/zeromq.json | 12 +- packages/zlib.json | 6 +- packages/zstd.json | 2 +- sources.json | 51 ++++ 51 files changed, 596 insertions(+), 531 deletions(-) create mode 100644 pack/export_env.go diff --git a/builder/builder_darwin_arm64.go b/builder/builder_darwin_arm64.go index 723932f..e647fb2 100644 --- a/builder/builder_darwin_arm64.go +++ b/builder/builder_darwin_arm64.go @@ -1,28 +1 @@ package builder - -import "runtime" - -var HostBuilder = Builder{ - GlobalEnv: []string{ - "*:*:HOST=aarch64-apple-darwin", - "*:*:TARGET=aarch64-apple-darwin", - "*:*:OSX_MIN_VERSION=13", - "*:*:CC=$NATIVEPREFIX/_/bin/clang", - "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", - "*:*:LDFLAGS=$LDFLAGS -stdlib=libc++ -lc++ -lc++abi", - "*:*:AR=$NATIVEPREFIX/_/bin/ar", - "*:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", - "*:*:STRIP=$NATIVEPREFIX/_/bin/strip", - "*:*:NM=$NATIVEPREFIX/_/bin/nm", - "*:*:OTOOL=$NATIVEPREFIX/_/bin/otool", - "*:*:INSTALL_NAME_TOOL=$NATIVEPREFIX/_/bin/install_name_tool", - "*:*:BUILDER_GOOS=" + runtime.GOOS, - "*:*:BUILDER_GOARCH=" + runtime.GOARCH, - // lt_cv_prog_gnu_ld=no - // helps with resolving ld64.lld pretending to be GNU on while it's actually not, this occured in libtool and pkgconf - // so I assume this is better here as a general fix. - // ld64.lld: error: unknown argument '-soname' - // ld64.lld: error: unknown argument '-retain-symbols-file' - "*:*:lt_cv_prog_gnu_ld=no", - }, -} diff --git a/builder/builder_linux_amd64.go b/builder/builder_linux_amd64.go index 31e922c..e647fb2 100644 --- a/builder/builder_linux_amd64.go +++ b/builder/builder_linux_amd64.go @@ -1,16 +1 @@ package builder - -import "runtime" - -var HostBuilder = Builder{ - GlobalEnv: []string{ - "*:*:HOST=x86_64-linux-gnu", - "*:*:TARGET=x86_64-linux-gnu", - "*:*:CC=/usr/bin/clang", - "*:*:CXX=/usr/bin/clang++", - "*:*:AR=/usr/bin/ar", - "*:*:RANLIB=/usr/bin/ranlib", - "*:*:BUILDER_GOOS=" + runtime.GOOS, - "*:*:BUILDER_GOARCH=" + runtime.GOARCH, - }, -} diff --git a/builder/builder_linux_arm64.go b/builder/builder_linux_arm64.go index 1902fb8..e647fb2 100644 --- a/builder/builder_linux_arm64.go +++ b/builder/builder_linux_arm64.go @@ -1,24 +1 @@ package builder - -import "runtime" - -var HostBuilder = Builder{ - GlobalEnv: []string{ - "*:*:HOST=aarch64-linux-gnu", - "*:*:TARGET=aarch64-linux-gnu", - "*:*:CC=$NATIVEPREFIX/_/bin/clang", - "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", - "*:*:AR=$NATIVEPREFIX/_/bin/ar", - "*:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", - "*:*:STRIP=$NATIVEPREFIX/_/bin/strip", - "*:*:NM=$NATIVEPREFIX/_/bin/nm", - "*:*:BUILDER_GOOS=" + runtime.GOOS, - "*:*:BUILDER_GOARCH=" + runtime.GOARCH, - // lt_cv_prog_gnu_ld=no - // helps with resolving ld64.lld pretending to be GNU on while it's actually not, this occured in libtool and pkgconf - // so I assume this is better here as a general fix. - // ld64.lld: error: unknown argument '-soname' - // ld64.lld: error: unknown argument '-retain-symbols-file' - // "*:*:lt_cv_prog_gnu_ld=no", - }, -} diff --git a/builder/default.go b/builder/default.go index 6f7bb1e..85109fc 100644 --- a/builder/default.go +++ b/builder/default.go @@ -1,36 +1,9 @@ package builder -import ( - "runtime" - "strings" - - "github.com/mrcyjanek/simplybs/utils/ifstring" -) +import "runtime" func GetName() string { return runtime.GOOS + "_" + runtime.GOARCH } -type Builder struct { - GlobalEnv []string -} - var Builders = []string{"darwin_arm64", "linux_amd64", "linux_arm64"} - -func (b *Builder) getToolFromEnv(prefix string) string { - for _, env := range b.GlobalEnv { - is := ifstring.ParseIfString(env) - if strings.HasPrefix(is.Content, prefix) { - return is.Content[len(prefix):] - } - } - return "" -} - -func (b *Builder) GetCC() string { - return b.getToolFromEnv("CC=") -} - -func (b *Builder) GetCXX() string { - return b.getToolFromEnv("CXX=") -} diff --git a/cmd/lint/lint.go b/cmd/lint/lint.go index 90a64c4..a790f53 100644 --- a/cmd/lint/lint.go +++ b/cmd/lint/lint.go @@ -25,6 +25,7 @@ type OrderedPackage struct { Dependencies []string `json:"dependencies,omitempty"` Patches []string `json:"patches,omitempty"` Build map[string]interface{} `json:"build,omitempty"` + ExportEnv []string `json:"export-env,omitempty"` } func Lint() { @@ -102,6 +103,15 @@ func fixFormatting() { if v, ok := data["build"].(map[string]interface{}); ok { ordered.Build = v } + if v, ok := data["export-env"].([]interface{}); ok { + exportEnv := make([]string, len(v)) + for i, env := range v { + if s, ok := env.(string); ok { + exportEnv[i] = s + } + } + ordered.ExportEnv = exportEnv + } var buf bytes.Buffer err = utils.NewIndentedEncoder(&buf).Encode(ordered) diff --git a/host/main.go b/host/main.go index 6157952..2967397 100644 --- a/host/main.go +++ b/host/main.go @@ -10,7 +10,6 @@ import ( type Host struct { Triplet string - Env []string } func GetPackagesDir() string { @@ -58,267 +57,14 @@ func (h *Host) GetEnvPath() string { } var SupportedHosts = map[string]*Host{ - "aarch64-apple-darwin": { - Triplet: "aarch64-apple-darwin", - Env: []string{ - "*:*:HOST=aarch64-apple-darwin", - "*:*:TARGET=aarch64-apple-darwin", - "*:*:RUST_TRIPLET=aarch64-apple-darwin", - "*:*:ARCH=aarch64", - "*:*:CMAKE_SYSTEM_NAME=Darwin", - "*:*:SDK_VERSION=26.1", - "*:*:SDK_PATH=$NATIVEPREFIX/SDK/MacOSX$SDK_VERSION.sdk", - "*:*:OSX_MIN_VERSION=13.0", - "*:*:LD64_VERSION=609", - "*:*:CC_target=arm64-apple-darwin", - "*:*:CC=$NATIVEPREFIX/bin/aarch64-apple-darwin-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXX=$NATIVEPREFIX/bin/aarch64-apple-darwin-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:*:RANLIB=$NATIVEPREFIX/bin/llvm-ranlib", - "*:*:STRIP=$NATIVEPREFIX/bin/strip", - "*:*:AR=$NATIVEPREFIX/bin/llvm-ar", - "*:*:NM=$NATIVEPREFIX/bin/llvm-nm", - "*:*:LIBTOOL=$NATIVEPREFIX/bin/llvm-libtool-darwin", - "*:*:LDFLAGS=-L$PREFIX/lib -lc++ -lc++abi", - }, - }, - "x86_64-apple-darwin": { - Triplet: "x86_64-apple-darwin", - Env: []string{ - "*:*:HOST=x86_64-apple-darwin", - "*:*:TARGET=x86_64-apple-darwin", - "*:*:RUST_TRIPLET=x86_64-apple-darwin", - "*:*:ARCH=x86_64", - "*:*:CMAKE_SYSTEM_NAME=Darwin", - "*:*:SDK_VERSION=26.1", - "*:*:SDK_PATH=$NATIVEPREFIX/SDK/MacOSX$SDK_VERSION.sdk", - "*:*:OSX_MIN_VERSION=10.16", - "*:*:LD64_VERSION=609", - "*:*:CC_target=x86_64-apple-darwin", - "*:*:CC=$NATIVEPREFIX/bin/x86_64-apple-darwin-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXX=$NATIVEPREFIX/bin/x86_64-apple-darwin-clang++ -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:*:RANLIB=$NATIVEPREFIX/bin/ranlib", - "*:*:AR=$NATIVEPREFIX/bin/ar", - "*:*:STRIP=$NATIVEPREFIX/bin/strip", - "*:*:NM=$NATIVEPREFIX/bin/nm", - "*:*:LIBTOOL=$NATIVEPREFIX/bin/llvm-libtool-darwin", - "*:*:LDFLAGS=-L$PREFIX/lib -lc++ -lc++abi", - }, - }, - "aarch64-apple-ios": { - Triplet: "aarch64-apple-ios", - Env: []string{ - "*:*:HOST=aarch64-apple-ios", - "*:*:TARGET=aarch64-apple-ios", - "*:*:RUST_TRIPLET=aarch64-apple-ios", - "*:*:ARCH=aarch64", - "*:*:CMAKE_SYSTEM_NAME=iOS", - "*:*:IOS_MIN_VERSION=12", - "*:*:LD64_VERSION=609", - "*:*:SDK_VERSION=26.1", - "*:*:SDK_PATH=$NATIVEPREFIX/SDK/iPhoneOS$SDK_VERSION.sdk", - "*:*:CC_target=aarch64-apple-ios", - "*:*:CC=$NATIVEPREFIX/bin/aarch64-apple-ios-clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXX=$NATIVEPREFIX/bin/aarch64-apple-ios-clang++ -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:*:RANLIB=$NATIVEPREFIX/bin/ranlib", - "*:*:AR=$NATIVEPREFIX/bin/ar", - "*:*:NM=$NATIVEPREFIX/bin/nm", - "*:*:STRIP=$NATIVEPREFIX/bin/strip", - "*:*:LIBTOOL=$NATIVEPREFIX/bin/libtool", - "*:*:LDFLAGS=-lc++ -lc++abi", - "*:*:LD=$NATIVEPREFIX/bin/lld", - }, - }, - "aarch64-apple-ios-simulator": { - Triplet: "aarch64-apple-ios-simulator", - Env: []string{ - "*:*:HOST=aarch64-apple-ios-simulator", - "*:*:TARGET=aarch64-apple-ios-simulator", - "*:*:RUST_TRIPLET=aarch64-apple-ios-sim", - "*:*:ARCH=aarch64", - "*:*:CMAKE_SYSTEM_NAME=iOS", - "*:*:IOS_MIN_VERSION=12", - "*:*:LD64_VERSION=609", - "*:*:SDK_VERSION=26.1", - "*:*:SDK_PATH=$NATIVEPREFIX/SDK/iPhoneSimulator$SDK_VERSION.sdk", - "*:*:CC_target=aarch64-apple-ios-simulator", - "*:*:CC=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXX=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang++ -target $CC_target -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:*:CXXFLAGS=$CFLAGS -stdlib=libc++", - "*:*:RANLIB=$NATIVEPREFIX/bin/ranlib", - "*:*:AR=$NATIVEPREFIX/bin/ar", - "*:*:NM=$NATIVEPREFIX/bin/nm", - "*:*:STRIP=$NATIVEPREFIX/bin/strip", - "*:*:LIBTOOL=$NATIVEPREFIX/bin/libtool", - "*:*:LDFLAGS=-lc++ -lc++abi", - }, - }, - // "x86_64-linux-musl": { - // Triplet: "x86_64-linux-musl", - // Env: []string{ - // "*:*:HOST=x86_64-linux-musl", - // "*:*:TARGET=x86_64-linux-musl", - // "*:*:CC_target=x86_64-linux-musl", - // "*:*:CC=x86_64-linux-musl-gcc", - // "*:*:CXX=x86_64-linux-musl-g++", - // "*:*:CXXFLAGS=$CFLAGS", - // "*:*:RANLIB=x86_64-linux-musl-ranlib", - // "*:*:AR=x86_64-linux-musl-ar", - // "*:*:AS=x86_64-linux-musl-as", - // "*:*:LIBTOOL=x86_64-linux-musl-libtool", - // "*:*:OBJCOPY=x86_64-linux-musl-objcopy", - // "*:*:OBJDUMP=x86_64-linux-musl-objdump", - // "*:*:STRIP=x86_64-linux-musl-strip", - // "*:*:READELF=x86_64-linux-musl-readelf", - // "*:*:LD=x86_64-linux-musl-ld", - // "*:*:NM=x86_64-linux-musl-nm", - // }, - // }, - "x86_64-w64-mingw32": { - Triplet: "x86_64-w64-mingw32", - Env: []string{ - "*:*:HOST=x86_64-w64-mingw32", - "*:*:TARGET=x86_64-w64-mingw32", - "*:*:RUST_TRIPLET=x86_64-pc-windows-gnu", - "*:*:ARCH=x86_64", - "*:*:CMAKE_SYSTEM_NAME=Windows", - "*:*:CC_target=x86_64-w64-mingw32", - "*:*:RC=x86_64-w64-mingw32-windres", - "*:*:RCFLAGS=-I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CC=$NATIVEPREFIX/bin/x86_64-w64-mingw32-gcc", - "*:*:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CXX=$NATIVEPREFIX/bin/x86_64-w64-mingw32-g++", - "*:*:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-w64-mingw32 -I$PREFIX/usr/include", - "*:*:CPPFLAGS=-I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:RANLIB=$NATIVEPREFIX/bin/x86_64-w64-mingw32-ranlib", - "*:*:AR=$NATIVEPREFIX/bin/x86_64-w64-mingw32-ar", - "*:*:AS=$NATIVEPREFIX/bin/x86_64-w64-mingw32-as", - "*:*:LIBTOOL=$NATIVEPREFIX/bin/x86_64-w64-mingw32-libtool", - "*:*:OBJCOPY=$NATIVEPREFIX/bin/x86_64-w64-mingw32-objcopy", - "*:*:OBJDUMP=$NATIVEPREFIX/bin/x86_64-w64-mingw32-objdump", - "*:*:STRIP=$NATIVEPREFIX/bin/x86_64-w64-mingw32-strip", - "*:*:READELF=$NATIVEPREFIX/bin/x86_64-w64-mingw32-readelf", - "*:*:LD=$NATIVEPREFIX/bin/x86_64-w64-mingw32-ld", - "*:*:NM=$NATIVEPREFIX/bin/x86_64-w64-mingw32-nm", - }, - }, - "x86_64-linux-gnu": { - Triplet: "x86_64-linux-gnu", - Env: []string{ - "*:*:HOST=x86_64-linux-gnu", - "*:*:TARGET=x86_64-linux-gnu", - "*:*:RUST_TRIPLET=x86_64-unknown-linux-gnu", - "*:*:ARCH=x86_64", - "*:*:CMAKE_SYSTEM_NAME=Linux", - "*:*:CC_target=x86_64-linux-gnu", - "*:*:CC=$NATIVEPREFIX/bin/x86_64-linux-gnu-gcc", - "*:*:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CXX=$NATIVEPREFIX/bin/x86_64-linux-gnu-g++", - "*:*:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-linux-gnu -I$PREFIX/usr/include", - "*:*:CPPFLAGS=-I$PREFIX/include -I$PREFIX/usr/include", - "*:*:RANLIB=$NATIVEPREFIX/bin/x86_64-linux-gnu-ranlib", - "*:*:AR=$NATIVEPREFIX/bin/x86_64-linux-gnu-ar", - "*:*:AS=$NATIVEPREFIX/bin/x86_64-linux-gnu-as", - "*:*:LIBTOOL=$NATIVEPREFIX/bin/x86_64-linux-gnu-libtool", - "*:*:OBJCOPY=$NATIVEPREFIX/bin/x86_64-linux-gnu-objcopy", - "*:*:OBJDUMP=$NATIVEPREFIX/bin/x86_64-linux-gnu-objdump", - "*:*:STRIP=$NATIVEPREFIX/bin/x86_64-linux-gnu-strip", - "*:*:READELF=$NATIVEPREFIX/bin/x86_64-linux-gnu-readelf", - "*:*:LD=$NATIVEPREFIX/bin/x86_64-linux-gnu-ld", - "*:*:NM=$NATIVEPREFIX/bin/x86_64-linux-gnu-nm", - }, - }, - "aarch64-linux-gnu": { - Triplet: "aarch64-linux-gnu", - Env: []string{ - "*:*:HOST=aarch64-linux-gnu", - "*:*:TARGET=aarch64-linux-gnu", - "*:*:RUST_TRIPLET=aarch64-unknown-linux-gnu", - "*:*:ARCH=aarch64", - "*:*:CMAKE_SYSTEM_NAME=Linux", - "*:*:CC_target=aarch64-linux-gnu", - "*:*:CC=$NATIVEPREFIX/bin/aarch64-linux-gnu-gcc", - "*:*:CXX=$NATIVEPREFIX/bin/aarch64-linux-gnu-g++", - "*:*:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/aarch64-linux-gnu -I$PREFIX/usr/include", - "*:*:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", - "*:*:CPPFLAGS=-I$PREFIX/include -I$PREFIX/usr/include", - "*:*:RANLIB=$NATIVEPREFIX/bin/aarch64-linux-gnu-ranlib", - "*:*:AR=$NATIVEPREFIX/bin/aarch64-linux-gnu-ar", - "*:*:AS=$NATIVEPREFIX/bin/aarch64-linux-gnu-as", - "*:*:LIBTOOL=$NATIVEPREFIX/bin/aarch64-linux-gnu-libtool", - "*:*:OBJCOPY=$NATIVEPREFIX/bin/aarch64-linux-gnu-objcopy", - "*:*:OBJDUMP=$NATIVEPREFIX/bin/aarch64-linux-gnu-objdump", - "*:*:STRIP=$NATIVEPREFIX/bin/aarch64-linux-gnu-strip", - "*:*:READELF=$NATIVEPREFIX/bin/aarch64-linux-gnu-readelf", - "*:*:LD=$NATIVEPREFIX/bin/aarch64-linux-gnu-ld", - "*:*:NM=$NATIVEPREFIX/bin/aarch64-linux-gnu-nm", - }, - }, - "aarch64-linux-android": { - Triplet: "aarch64-linux-android", - Env: []string{ - "*:*:HOST=aarch64-linux-android", - "*:*:TARGET=aarch64-linux-android", - "*:*:RUST_TRIPLET=aarch64-linux-android", - "*:*:ARCH=aarch64", - "*:*:CMAKE_SYSTEM_NAME=Android", - "*:*:CC_target=aarch64-linux-android", - "*:*:CC=$NATIVEPREFIX/bin/aarch64-linux-android21-clang", - "*:*:CXX=$NATIVEPREFIX/bin/aarch64-linux-android21-clang++", - "*:*:CXXFLAGS=$CXXFLAGS -stdlib=libc++", - "*:*:RANLIB=$NATIVEPREFIX/bin/llvm-ranlib", - "*:*:AR=$NATIVEPREFIX/bin/llvm-ar", - "*:*:STRIP=$NATIVEPREFIX/bin/llvm-strip", - "*:*:NM=$NATIVEPREFIX/bin/llvm-nm", - "*:*:AS=$NATIVEPREFIX/bin/llvm-as", - "*:*:LIBTOOL=$NATIVEPREFIX/bin/libtool", - "*:*:ANDROID_NDK_HOME=$NATIVEPREFIX/", - "*:*:LDFLAGS=$LDFLAGS -lc -lc++abi -lm", - }, - }, - "x86_64-linux-android": { - Triplet: "x86_64-linux-android", - Env: []string{ - "*:*:HOST=x86_64-linux-android", - "*:*:TARGET=x86_64-linux-android", - "*:*:RUST_TRIPLET=x86_64-linux-android", - "*:*:ARCH=x86_64", - "*:*:CMAKE_SYSTEM_NAME=Android", - "*:*:CC_target=x86_64-linux-android", - "*:*:CC=$NATIVEPREFIX/bin/x86_64-linux-android21-clang", - "*:*:CXX=$NATIVEPREFIX/bin/x86_64-linux-android21-clang++", - "*:*:CXXFLAGS=$CXXFLAGS -stdlib=libc++", - "*:*:RANLIB=$NATIVEPREFIX/bin/llvm-ranlib", - "*:*:AR=$NATIVEPREFIX/bin/llvm-ar", - "*:*:NM=$NATIVEPREFIX/bin/llvm-nm", - "*:*:STRIP=$NATIVEPREFIX/bin/llvm-strip", - "*:*:AS=$NATIVEPREFIX/bin/llvm-as", - "*:*:LIBTOOL=$NATIVEPREFIX/bin/libtool", - "*:*:ANDROID_NDK_HOME=$NATIVEPREFIX/", - "*:*:LDFLAGS=$LDFLAGS -lc -lc++abi -lm", - }, - }, - "armv7a-linux-androideabi": { - Triplet: "armv7a-linux-androideabi", - Env: []string{ - "*:*:HOST=armv7a-linux-androideabi", - "*:*:TARGET=armv7a-linux-androideabi", - "*:*:RUST_TRIPLET=armv7-linux-androideabi", - "*:*:ARCH=armv7a", - "*:*:CMAKE_SYSTEM_NAME=Android", - "*:*:CC_target=armv7a-linux-androideabi", - "*:*:CC=$NATIVEPREFIX/bin/armv7a-linux-androideabi21-clang", - "*:*:CXX=$NATIVEPREFIX/bin/armv7a-linux-androideabi21-clang++", - "*:*:CXXFLAGS=$CXXFLAGS -stdlib=libc++", - "*:*:RANLIB=$NATIVEPREFIX/bin/llvm-ranlib", - "*:*:AR=$NATIVEPREFIX/bin/llvm-ar", - "*:*:NM=$NATIVEPREFIX/bin/llvm-nm", - "*:*:STRIP=$NATIVEPREFIX/bin/llvm-strip", - "*:*:AS=$NATIVEPREFIX/bin/llvm-as", - "*:*:LIBTOOL=$NATIVEPREFIX/bin/libtool", - "*:*:ANDROID_NDK_HOME=$NATIVEPREFIX/", - "*:*:LDFLAGS=$LDFLAGS -lc -lc++abi -lm"}, - }, + "aarch64-apple-darwin": {Triplet: "aarch64-apple-darwin"}, + "x86_64-apple-darwin": {Triplet: "x86_64-apple-darwin"}, + "aarch64-apple-ios": {Triplet: "aarch64-apple-ios"}, + "aarch64-apple-ios-simulator": {Triplet: "aarch64-apple-ios-simulator"}, + "x86_64-w64-mingw32": {Triplet: "x86_64-w64-mingw32"}, + "x86_64-linux-gnu": {Triplet: "x86_64-linux-gnu"}, + "aarch64-linux-gnu": {Triplet: "aarch64-linux-gnu"}, + "aarch64-linux-android": {Triplet: "aarch64-linux-android"}, + "x86_64-linux-android": {Triplet: "x86_64-linux-android"}, + "armv7a-linux-androideabi": {Triplet: "armv7a-linux-androideabi"}, } diff --git a/host/main_test.go b/host/main_test.go index 0d55578..5df9e34 100644 --- a/host/main_test.go +++ b/host/main_test.go @@ -2,27 +2,59 @@ package host_test import ( "fmt" + "os" + "path/filepath" "strings" "testing" + "github.com/mrcyjanek/simplybs/builder" "github.com/mrcyjanek/simplybs/host" + "github.com/mrcyjanek/simplybs/pack" "github.com/mrcyjanek/simplybs/utils/ifstring" ) +func chdirRepoRoot(t *testing.T) { + t.Helper() + wd, err := os.Getwd() + if err != nil { + t.Fatal(err) + } + for { + if _, err := os.Stat(filepath.Join(wd, "packages", "native", "_.json")); err == nil { + if err := os.Chdir(wd); err != nil { + t.Fatal(err) + } + return + } + parent := filepath.Dir(wd) + if parent == wd { + t.Fatal("could not find repo root (packages/native/_.json)") + } + wd = parent + } +} + func TestHosts(t *testing.T) { - for i := range host.SupportedHosts { - t.Run("Env vars: "+i, func(t *testing.T) { - assertEnv(t, i) + chdirRepoRoot(t) + meta, err := pack.FindPackage("native/_") + if err != nil { + t.Fatal(err) + } + for triplet := range host.SupportedHosts { + t.Run("Env vars: "+triplet, func(t *testing.T) { + assertEnv(t, triplet, meta.ExportEnv) }) } } -func assertEnv(t *testing.T, i string) { - env := host.SupportedHosts[i].Env +func assertEnv(t *testing.T, triplet string, exportEnv []string) { keys := []string{} - for _, envVar := range env { - parsed := ifstring.ParseIfString(envVar) - key := strings.Split(parsed.Content, "=")[0] + for _, envVar := range exportEnv { + is := ifstring.ParseIfString(envVar) + if !is.Matches(triplet, builder.GetName()) { + continue + } + key := strings.Split(is.Content, "=")[0] keys = append(keys, key) } var required = []string{ @@ -47,24 +79,9 @@ func assertEnv(t *testing.T, i string) { exists = true } } - if exists == false { - fmt.Println(i, "doesn't have", req) + if !exists { + fmt.Println(triplet, "doesn't have", req) t.Fail() } } - // cat | sed -e "s|@HOST@|$(host)|g" \ <-- $TARGET - // -e "s|@CC@|$(host_CC)|g" \ <--- $CC - // -e "s|@CXX@|$(host_CXX)|g" \ <--- $CXX - // -e "s|@AR@|$(toolchain_path)$(host_AR)|g" \ <--- $AR - // -e "s|@RANLIB@|$(toolchain_path)$(host_RANLIB)|g" \ <--- $RANLIB - // -e "s|@NM@|$(toolchain_path)$(host_NM)|g" \ <--- $NM - // -e "s|@STRIP@|$(toolchain_path)$(host_STRIP)|g" \ <--- $STRIP - // -e "s|@CFLAGS@|$(strip $(host_CFLAGS) $(host_$(release_type)_CFLAGS))|g" \ <--- $CFLAGS - // -e "s|@CXXFLAGS@|$(strip $(host_CXXFLAGS) $(host_$(release_type)_CXXFLAGS))|g" \ <-- $CXXFLAGS - // -e "s|@CPPFLAGS@|$(strip $(host_CPPFLAGS) $(host_$(release_type)_CPPFLAGS))|g" \ <-- $CPPFLAGS - // -e "s|@LDFLAGS@|$(strip $(host_LDFLAGS) $(host_$(release_type)_LDFLAGS))|g" \ <-- $LDFLAGS - // -e "s|@cmake_system_name@|$($(host_os)_cmake_system)|g" \ $CMAKE_SYSTEM_NAME - // -e "s|@prefix@|$($(host_arch)_$(host_os)_prefix)|g"\ ---> $PREFIX - // -e "s|@arch@|$(host_arch)|g"\ ---> aarch64/arm64/x86_64 - // > $outfile < Date: Mon, 29 Jun 2026 14:26:34 +0200 Subject: [PATCH 129/200] wip --- packages/native/_/darwin_arm64_clang21.json | 2 +- packages/native/_/linux_amd64_clang21.json | 2 +- packages/native/_/linux_arm64_clang21.json | 2 +- sources.json | 5 ----- 4 files changed, 3 insertions(+), 8 deletions(-) diff --git a/packages/native/_/darwin_arm64_clang21.json b/packages/native/_/darwin_arm64_clang21.json index 726c6c0..1c1d9c6 100644 --- a/packages/native/_/darwin_arm64_clang21.json +++ b/packages/native/_/darwin_arm64_clang21.json @@ -5,7 +5,7 @@ "download": [ { "kind": "tar.xz", - "sha256": "125e86a1f93fb5572d07453e6ec2160066be94aed77a1625dfe5e5df12a58247", + "sha256": "fc16c4af5eb4af3a2a065404679a59db0f8ebeb4f22346ecf954b35bd05a49b0", "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-apple-darwin.tar.xz" } ], diff --git a/packages/native/_/linux_amd64_clang21.json b/packages/native/_/linux_amd64_clang21.json index 2712fa9..01d6fa5 100644 --- a/packages/native/_/linux_amd64_clang21.json +++ b/packages/native/_/linux_amd64_clang21.json @@ -5,7 +5,7 @@ "download": [ { "kind": "tar.xz", - "sha256": "80b749abd76d6ef01b17c4dc0fd8eb0b7ae7a88bfacad559625fa94da0ae6477", + "sha256": "bad39866fe2a91d1c399e09094c109c38ab911277f7c2367eb850cd423f7d78d", "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-x86_64-linux-gnu.tar.xz" } ], diff --git a/packages/native/_/linux_arm64_clang21.json b/packages/native/_/linux_arm64_clang21.json index 259d99f..1f126f2 100644 --- a/packages/native/_/linux_arm64_clang21.json +++ b/packages/native/_/linux_arm64_clang21.json @@ -5,7 +5,7 @@ "download": [ { "kind": "tar.xz", - "sha256": "a32317df0c3985f5da430bd6f9a8b9b1b194810d9755a51faa9a46f7c7cec1c0", + "sha256": "b50f5b89157206e013f1e37f922c812d3fdc960e512dda6b5c69e692538ffd0c", "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-linux-gnu.tar.xz" } ], diff --git a/sources.json b/sources.json index f243066..1038702 100644 --- a/sources.json +++ b/sources.json @@ -1010,11 +1010,6 @@ "e0bd5e08395bcd5ae105ad279d8d3ba67e8b738b" ] }, - "https://github.com/justxd22/monero-ndk": { - "refs": [ - "f0894a6c06fc53542ab5505088f0a2feb5f14f4d" - ] - }, "https://github.com/libffi/libffi.git": { "refs": [ "e2eda0cf72a0598b44278cc91860ea402273fa29" From b9ab847a3feac626bf25ed1c3ea16f1c493d1399 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 30 Jun 2026 20:00:41 +0200 Subject: [PATCH 130/200] build fixes --- packages/native/_.json | 1 - packages/native/_/_.json | 2 +- packages/native/_/darwin_arm64_clang21.json | 2 +- packages/native/_/linux_amd64_clang21.json | 2 +- packages/native/_/linux_arm64_clang21.json | 2 +- packages/native/cctools-port.json | 1 - packages/native/ct-tools.json | 8 ++++---- packages/native/libtapi.json | 19 ++++++++++--------- packages/native/perl.json | 2 +- packages/native/pkgconf.json | 2 +- packages/zstd.json | 1 + 11 files changed, 21 insertions(+), 21 deletions(-) diff --git a/packages/native/_.json b/packages/native/_.json index 2b3a5e8..8dfbd46 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -51,7 +51,6 @@ "*:*:INSTALL_NAME_TOOL=$INSTALL_NAME_TOOL", "*:*:OTOOL=$OTOOL", "*:*:OSX_MIN_VERSION=$OSX_MIN_VERSION", - "*:*:lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ld", "*:aarch64-apple-darwin:HOST=aarch64-apple-darwin", "*:aarch64-apple-darwin:TARGET=aarch64-apple-darwin", "*:aarch64-apple-darwin:RUST_TRIPLET=aarch64-apple-darwin", diff --git a/packages/native/_/_.json b/packages/native/_/_.json index 2ff947c..57011c7 100644 --- a/packages/native/_/_.json +++ b/packages/native/_/_.json @@ -37,7 +37,7 @@ "linux_amd64:*:AR=$NATIVEPREFIX/_/bin/ar", "linux_amd64:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", "linux_amd64:*:STRIP=$NATIVEPREFIX/_/bin/strip", - "linux_amd64:*:NM=$NATIVEPREFIX/_/bin/NM", + "linux_amd64:*:NM=$NATIVEPREFIX/_/bin/nm", "linux_arm64:*:CC=$NATIVEPREFIX/_/bin/clang", "linux_arm64:*:CXX=$NATIVEPREFIX/_/bin/clang++", "linux_arm64:*:AR=$NATIVEPREFIX/_/bin/ar", diff --git a/packages/native/_/darwin_arm64_clang21.json b/packages/native/_/darwin_arm64_clang21.json index 1c1d9c6..30ef413 100644 --- a/packages/native/_/darwin_arm64_clang21.json +++ b/packages/native/_/darwin_arm64_clang21.json @@ -5,7 +5,7 @@ "download": [ { "kind": "tar.xz", - "sha256": "fc16c4af5eb4af3a2a065404679a59db0f8ebeb4f22346ecf954b35bd05a49b0", + "sha256": "af55cf7e7aaa6f387fd4b91ed9f994efb866a2c87897da562bb098b8540170d2", "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-apple-darwin.tar.xz" } ], diff --git a/packages/native/_/linux_amd64_clang21.json b/packages/native/_/linux_amd64_clang21.json index 01d6fa5..0df1f88 100644 --- a/packages/native/_/linux_amd64_clang21.json +++ b/packages/native/_/linux_amd64_clang21.json @@ -5,7 +5,7 @@ "download": [ { "kind": "tar.xz", - "sha256": "bad39866fe2a91d1c399e09094c109c38ab911277f7c2367eb850cd423f7d78d", + "sha256": "9442ba966d3a1d3134e55ab21bf55ee3d4f281c0b850e3ef476a6314d373524d", "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-x86_64-linux-gnu.tar.xz" } ], diff --git a/packages/native/_/linux_arm64_clang21.json b/packages/native/_/linux_arm64_clang21.json index 1f126f2..87dbb72 100644 --- a/packages/native/_/linux_arm64_clang21.json +++ b/packages/native/_/linux_arm64_clang21.json @@ -5,7 +5,7 @@ "download": [ { "kind": "tar.xz", - "sha256": "b50f5b89157206e013f1e37f922c812d3fdc960e512dda6b5c69e692538ffd0c", + "sha256": "9962a2889f1782e904baa34a77e9e12d2fe7feecb845287f378999c7e442d001", "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-linux-gnu.tar.xz" } ], diff --git a/packages/native/cctools-port.json b/packages/native/cctools-port.json index 290c3b3..5d03547 100644 --- a/packages/native/cctools-port.json +++ b/packages/native/cctools-port.json @@ -23,7 +23,6 @@ "build": { "env": [ "*:*-apple-*:config_opts=--prefix=$NATIVEPREFIX", - "*:*-apple*:config_opts=$config_opts --target=$TARGET", "*:*-apple-*:config_opts=$config_opts --with-libtapi=$NATIVEPREFIX", "*:*-apple-*:config_opts=$config_opts --with-libxar=$NATIVEPREFIX", "*:*-apple-*:CC=clang", diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index e4945b2..91ce91a 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -159,10 +159,10 @@ "*:x86_64-w64-mingw32:TOOL_TARGET=x86_64-w64-mingw32" ], "steps": [ - "linux_arm64:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/_/bin/gcc", - "linux_arm64:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/_/bin/g++", - "linux_arm64:x86_64-w64-mingw32:mkdir -p patches/mingw-w64 && cp $PATCH_DIR/native/ct-tools/clang-widl-winnt.h.patch patches/mingw-w64/", - "linux_arm64:x86_64-w64-mingw32:sed -i '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_MINGW_W64_PATCH_LOCAL y\\n put_new_config CT_MINGW_W64_PATCH_ORDER \"local,bundled\"\\n put_new_config CT_PATCH_USE_LOCAL y\\n put_new_config CT_LOCAL_PATCH_DIR \"'\"$(pwd)/patches\"'\"' run.sh", + "linux_*:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/_/bin/gcc", + "linux_*:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/_/bin/g++", + "linux_*:x86_64-w64-mingw32:mkdir -p patches/mingw-w64 && cp $PATCH_DIR/native/ct-tools/clang-widl-winnt.h.patch patches/mingw-w64/", + "linux_*:x86_64-w64-mingw32:sed -i '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_MINGW_W64_PATCH_LOCAL y\\n put_new_config CT_MINGW_W64_PATCH_ORDER \"local,bundled\"\\n put_new_config CT_PATCH_USE_LOCAL y\\n put_new_config CT_LOCAL_PATCH_DIR \"'\"$(pwd)/patches\"'\"' run.sh", "*:{*-linux-gnu,*-w64-mingw32}:sed -i 's|install=\"./scripts/install-sh -c\"|install=\"'$NATIVEPREFIX'/bin/install -c\"|g' $NATIVEPREFIX/share/crosstool-ng/paths.sh", "*:{*-linux-gnu,*-w64-mingw32}:env -i PATH=$PATH PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET/* $STAGING_DIR/$PREFIX", diff --git a/packages/native/libtapi.json b/packages/native/libtapi.json index e1af166..7a4a40f 100644 --- a/packages/native/libtapi.json +++ b/packages/native/libtapi.json @@ -35,20 +35,21 @@ "darwin_arm64:*:config_opts=$config_opts -DCMAKE_CXX_FLAGS=-stdlib=libc++", "darwin_arm64:*:CMAKE_EXE_LINKER_FLAGS=-stdlib=libc++ -lc++ -lc++abi", "darwin_arm64:*:CMAKE_SHARED_LINKER_FLAGS=-stdlib=libc++ -lc++ -lc++abi", - "linux_arm64:*:CC=$NATIVEPREFIX/_/bin/clang", - "linux_arm64:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "linux_*:*:CC=$NATIVEPREFIX/_/bin/clang", + "linux_*:*:CXX=$NATIVEPREFIX/_/bin/clang++", "linux_arm64:*:config_opts=$config_opts -DLLVM_HOST_TRIPLE=aarch64-linux-gnu", - "linux_arm64:*:config_opts=$config_opts -DLLVM_ENABLE_LIBCXX=ON", - "linux_arm64:*:config_opts=$config_opts -DCMAKE_C_COMPILER=$NATIVEPREFIX/_/bin/clang", - "linux_arm64:*:config_opts=$config_opts -DCMAKE_CXX_COMPILER=$NATIVEPREFIX/_/bin/clang++", - "linux_arm64:*:CMAKE_CXX_FLAGS=-stdlib=libc++ -I$NATIVEPREFIX/include/c++/v1", - "linux_arm64:*:CMAKE_EXE_LINKER_FLAGS=-L$NATIVEPREFIX/lib -stdlib=libc++ -lc++ -lc++abi -lunwind -latomic", - "linux_arm64:*:CMAKE_SHARED_LINKER_FLAGS=-L$NATIVEPREFIX/lib -stdlib=libc++ -lc++ -lc++abi -lunwind" + "linux_amd64:*:config_opts=$config_opts -DLLVM_HOST_TRIPLE=aarch64-linux-gnu", + "linux_*:*:config_opts=$config_opts -DLLVM_ENABLE_LIBCXX=ON", + "linux_*:*:config_opts=$config_opts -DCMAKE_C_COMPILER=$NATIVEPREFIX/_/bin/clang", + "linux_*:*:config_opts=$config_opts -DCMAKE_CXX_COMPILER=$NATIVEPREFIX/_/bin/clang++", + "linux_*:*:CMAKE_CXX_FLAGS=-I$NATIVEPREFIX/include/c++/v1", + "linux_*:*:CMAKE_EXE_LINKER_FLAGS=-L$NATIVEPREFIX/lib -latomic", + "linux_*:*:CMAKE_SHARED_LINKER_FLAGS=-L$NATIVEPREFIX/lib" ], "steps": [ "darwin_arm64:*:sed -i.bak '/add_clang_subdirectory(IndexStore)/d; /add_clang_subdirectory(libclang)/d' src/clang/tools/CMakeLists.txt", "darwin_arm64:*:cmake $config_opts -DCMAKE_EXE_LINKER_FLAGS=\"$CMAKE_EXE_LINKER_FLAGS\" -DCMAKE_SHARED_LINKER_FLAGS=\"$CMAKE_SHARED_LINKER_FLAGS\"", - "linux_arm64:*:cmake $config_opts -DCMAKE_CXX_FLAGS=\"$CMAKE_CXX_FLAGS\" -DCMAKE_EXE_LINKER_FLAGS=\"$CMAKE_EXE_LINKER_FLAGS\" -DCMAKE_SHARED_LINKER_FLAGS=\"$CMAKE_SHARED_LINKER_FLAGS\"", + "linux_*:*:cmake $config_opts -DCMAKE_CXX_FLAGS=\"$CMAKE_CXX_FLAGS\" -DCMAKE_EXE_LINKER_FLAGS=\"$CMAKE_EXE_LINKER_FLAGS\" -DCMAKE_SHARED_LINKER_FLAGS=\"$CMAKE_SHARED_LINKER_FLAGS\"", "*:*:cmake --build build --target clangBasic libtapi -j$NUM_CORES", "*:*:DESTDIR=$STAGING_DIR ninja -C build install-libtapi install-tapi-headers" ] diff --git a/packages/native/perl.json b/packages/native/perl.json index cd5b698..56d6f51 100644 --- a/packages/native/perl.json +++ b/packages/native/perl.json @@ -20,7 +20,7 @@ "steps": [ "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib $NATIVEPREFIX/lib", "*:*:sed -i.bak '/^#ifndef PERL_BUILD_DATE$/,/^#endif$/{/^#ifndef PERL_BUILD_DATE$/!d; s/.*/\\#define PERL_BUILD_DATE \"Jan 1 1970 00:00:01\"/;}' perl.c", - "*:*:bash ./Configure -des -Dprefix=$NATIVEPREFIX -Duseithreads -Dall_static -Dcc=$CC", + "*:*:bash ./Configure -des -Dprefix=$NATIVEPREFIX -Duseithreads -Dall_static -Dcc=$CC -Dlibs=\"-lpthread -ldl -lm -lutil -lc\"", "*:*:make -j$NUM_CORES CC=$CC", "*:*:make DESTDIR=$STAGING_DIR install CC=$CC" ] diff --git a/packages/native/pkgconf.json b/packages/native/pkgconf.json index d5829a9..bf3d074 100644 --- a/packages/native/pkgconf.json +++ b/packages/native/pkgconf.json @@ -24,7 +24,7 @@ "*:*:PKGCONFIG_DIR=$NATIVEPREFIX/lib/pkgconfig:$PREFIX/lib/pkgconfig" ], "steps": [ - "*:*:sh ./autogen.sh", + "*:*:bash ./autogen.sh", "*:*:bash ./configure --prefix=$NATIVEPREFIX --with-pkg-config-dir=$PKGCONFIG_DIR", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", diff --git a/packages/zstd.json b/packages/zstd.json index 0d76bac..62a08a9 100644 --- a/packages/zstd.json +++ b/packages/zstd.json @@ -11,6 +11,7 @@ ], "dependencies": [ "*:*:native/_", + "*:*:native/bash", "*:*:native/coreutils", "*:*:native/grep", "*:*:native/make", From 3273b96c9fee5e50bbbdd26ec7f31a797455d8f3 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 1 Jul 2026 16:40:24 +0200 Subject: [PATCH 131/200] wip --- builder/default.go | 19 ++++++++++++++++++- pack/build.go | 14 ++++++++++++-- pack/info.go | 10 ++++++++-- packages/native/_/_.json | 4 ++++ packages/native/libtapi.json | 8 ++++---- 5 files changed, 46 insertions(+), 9 deletions(-) diff --git a/builder/default.go b/builder/default.go index 85109fc..119468e 100644 --- a/builder/default.go +++ b/builder/default.go @@ -1,9 +1,26 @@ package builder -import "runtime" +import ( + "log" + "runtime" +) func GetName() string { return runtime.GOOS + "_" + runtime.GOARCH } +func NativeTriplet() string { + switch GetName() { + case "darwin_arm64": + return "aarch64-apple-darwin" + case "linux_amd64": + return "x86_64-linux-gnu" + case "linux_arm64": + return "aarch64-linux-gnu" + default: + log.Fatalf("unknown builder: %s", GetName()) + return "" + } +} + var Builders = []string{"darwin_arm64", "linux_amd64", "linux_arm64"} diff --git a/pack/build.go b/pack/build.go index 9400e49..022b067 100644 --- a/pack/build.go +++ b/pack/build.go @@ -184,9 +184,14 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { pathEnv := utils.GetHostPath() env := p.GetEnv(h) + hostTriplet := h.Triplet + if p.Type == "native" { + hostTriplet = builder.NativeTriplet() + } + cmd.Env = append(cmd.Env, []string{ "STAGING_DIR=" + stagingPath, - "HOST=" + h.Triplet, + "HOST=" + hostTriplet, "PREFIX=" + h.GetEnvPath(), "NATIVEPREFIX=" + h.GetNativeEnvPath(), "PATH=" + h.GetNativeEnvPath() + "/bin:" + env["PATH"] + ":" + pathEnv + ":" + h.GetEnvPath() + "/bin" + ":" + h.GetNativeEnvPath() + "/_/bin", @@ -320,8 +325,13 @@ func (p *Package) StartShell(h *host.Host) { cmd.Stdout = os.Stdout cmd.Stderr = os.Stderr + hostTriplet := h.Triplet + if p.Type == "native" { + hostTriplet = builder.NativeTriplet() + } + cmd.Env = append(cmd.Env, []string{ - "HOST=" + h.Triplet, + "HOST=" + hostTriplet, "PREFIX=" + h.GetEnvPath(), "NATIVEPREFIX=" + h.GetNativeEnvPath(), "PATH=" + h.GetNativeEnvPath() + "/bin:" + env["PATH"] + ":" + pathEnv, diff --git a/pack/info.go b/pack/info.go index c701dbf..bbcfa2c 100644 --- a/pack/info.go +++ b/pack/info.go @@ -120,10 +120,16 @@ func getNumCores() int { func (p *Package) minimalEnvWithStaging(h *host.Host, stagingPath string) map[string]string { getwd, err := os.Getwd() crash.Handle(err) + hostTriplet := h.Triplet + targetTriplet := h.Triplet + if p.Type == "native" { + hostTriplet = builder.NativeTriplet() + targetTriplet = builder.NativeTriplet() + } return map[string]string{ "PATH": h.GetNativeEnvPath() + "/bin:" + h.GetNativeEnvPath() + "/_/bin:" + utils.GetHostPath(), - "HOST": h.Triplet, - "TARGET": h.Triplet, + "HOST": hostTriplet, + "TARGET": targetTriplet, "PREFIX": h.GetEnvPath(), "NATIVEPREFIX": h.GetNativeEnvPath(), "HOME": p.homePath(h), diff --git a/packages/native/_/_.json b/packages/native/_/_.json index 57011c7..fbca124 100644 --- a/packages/native/_/_.json +++ b/packages/native/_/_.json @@ -32,12 +32,16 @@ "darwin_arm64:*:OTOOL=$NATIVEPREFIX/_/bin/otool", "darwin_arm64:*:INSTALL_NAME_TOOL=$NATIVEPREFIX/_/bin/install_name_tool", "darwin_arm64:*:lt_cv_prog_gnu_ld=no", + "linux_amd64:*:HOST=x86_64-linux-gnu", + "linux_amd64:*:TARGET=x86_64-linux-gnu", "linux_amd64:*:CC=$NATIVEPREFIX/_/bin/clang", "linux_amd64:*:CXX=$NATIVEPREFIX/_/bin/clang++", "linux_amd64:*:AR=$NATIVEPREFIX/_/bin/ar", "linux_amd64:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", "linux_amd64:*:STRIP=$NATIVEPREFIX/_/bin/strip", "linux_amd64:*:NM=$NATIVEPREFIX/_/bin/nm", + "linux_arm64:*:HOST=aarch64-linux-gnu", + "linux_arm64:*:TARGET=aarch64-linux-gnu", "linux_arm64:*:CC=$NATIVEPREFIX/_/bin/clang", "linux_arm64:*:CXX=$NATIVEPREFIX/_/bin/clang++", "linux_arm64:*:AR=$NATIVEPREFIX/_/bin/ar", diff --git a/packages/native/libtapi.json b/packages/native/libtapi.json index 7a4a40f..73a05bc 100644 --- a/packages/native/libtapi.json +++ b/packages/native/libtapi.json @@ -38,13 +38,13 @@ "linux_*:*:CC=$NATIVEPREFIX/_/bin/clang", "linux_*:*:CXX=$NATIVEPREFIX/_/bin/clang++", "linux_arm64:*:config_opts=$config_opts -DLLVM_HOST_TRIPLE=aarch64-linux-gnu", - "linux_amd64:*:config_opts=$config_opts -DLLVM_HOST_TRIPLE=aarch64-linux-gnu", + "linux_amd64:*:config_opts=$config_opts -DLLVM_HOST_TRIPLE=x86_64-linux-gnu", "linux_*:*:config_opts=$config_opts -DLLVM_ENABLE_LIBCXX=ON", "linux_*:*:config_opts=$config_opts -DCMAKE_C_COMPILER=$NATIVEPREFIX/_/bin/clang", "linux_*:*:config_opts=$config_opts -DCMAKE_CXX_COMPILER=$NATIVEPREFIX/_/bin/clang++", - "linux_*:*:CMAKE_CXX_FLAGS=-I$NATIVEPREFIX/include/c++/v1", - "linux_*:*:CMAKE_EXE_LINKER_FLAGS=-L$NATIVEPREFIX/lib -latomic", - "linux_*:*:CMAKE_SHARED_LINKER_FLAGS=-L$NATIVEPREFIX/lib" + "linux_*:*:CMAKE_CXX_FLAGS=-stdlib=libc++ -I$NATIVEPREFIX/include/c++/v1", + "linux_*:*:CMAKE_EXE_LINKER_FLAGS=-L$NATIVEPREFIX/lib -stdlib=libc++ -lc++ -lc++abi -lunwind -latomic", + "linux_*:*:CMAKE_SHARED_LINKER_FLAGS=-L$NATIVEPREFIX/lib -stdlib=libc++ -lc++ -lc++abi -lunwind" ], "steps": [ "darwin_arm64:*:sed -i.bak '/add_clang_subdirectory(IndexStore)/d; /add_clang_subdirectory(libclang)/d' src/clang/tools/CMakeLists.txt", From fbfbbca3fa90b480ddeb1304b12484d53e23fe01 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 2 Jul 2026 10:52:26 +0200 Subject: [PATCH 132/200] sources.json update --- sources.json | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/sources.json b/sources.json index 1038702..04283c8 100644 --- a/sources.json +++ b/sources.json @@ -1010,6 +1010,11 @@ "e0bd5e08395bcd5ae105ad279d8d3ba67e8b738b" ] }, + "https://github.com/justxd22/monero-ndk": { + "refs": [ + "f0894a6c06fc53542ab5505088f0a2feb5f14f4d" + ] + }, "https://github.com/libffi/libffi.git": { "refs": [ "e2eda0cf72a0598b44278cc91860ea402273fa29" @@ -2329,21 +2334,51 @@ "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-apple-darwin.tar.xz", "sha256": "125e86a1f93fb5572d07453e6ec2160066be94aed77a1625dfe5e5df12a58247" }, + { + "kind": "tar.xz", + "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-apple-darwin.tar.xz", + "sha256": "af55cf7e7aaa6f387fd4b91ed9f994efb866a2c87897da562bb098b8540170d2" + }, { "kind": "tar.xz", "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-apple-darwin.tar.xz", "sha256": "f08445d419c7ac00e47e458618575cf3cb24db27d9c2e8636845288d8884b3c8" }, + { + "kind": "tar.xz", + "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-apple-darwin.tar.xz", + "sha256": "fc16c4af5eb4af3a2a065404679a59db0f8ebeb4f22346ecf954b35bd05a49b0" + }, + { + "kind": "tar.xz", + "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-linux-gnu.tar.xz", + "sha256": "9962a2889f1782e904baa34a77e9e12d2fe7feecb845287f378999c7e442d001" + }, { "kind": "tar.xz", "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-linux-gnu.tar.xz", "sha256": "a32317df0c3985f5da430bd6f9a8b9b1b194810d9755a51faa9a46f7c7cec1c0" }, + { + "kind": "tar.xz", + "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-linux-gnu.tar.xz", + "sha256": "b50f5b89157206e013f1e37f922c812d3fdc960e512dda6b5c69e692538ffd0c" + }, { "kind": "tar.xz", "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-x86_64-linux-gnu.tar.xz", "sha256": "80b749abd76d6ef01b17c4dc0fd8eb0b7ae7a88bfacad559625fa94da0ae6477" }, + { + "kind": "tar.xz", + "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-x86_64-linux-gnu.tar.xz", + "sha256": "9442ba966d3a1d3134e55ab21bf55ee3d4f281c0b850e3ef476a6314d373524d" + }, + { + "kind": "tar.xz", + "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-x86_64-linux-gnu.tar.xz", + "sha256": "bad39866fe2a91d1c399e09094c109c38ab911277f7c2367eb850cd423f7d78d" + }, { "kind": "tar.xz", "url": "https://static.mrcyjanek.net/bootstrap/clang21-aarch64-apple-darwin.tar.xz", From 36340a19771f36d0f7ae5bc0af1ee10e3eb6b666 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 2 Jul 2026 10:54:42 +0200 Subject: [PATCH 133/200] minor fixes --- packages/native/cctools-port.json | 6 +++--- packages/native/libtapi.json | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/native/cctools-port.json b/packages/native/cctools-port.json index 5d03547..d4196a1 100644 --- a/packages/native/cctools-port.json +++ b/packages/native/cctools-port.json @@ -18,7 +18,7 @@ "*:*-apple-*:native/xz", "*:*-apple-*:native/zlib", "*:*:native/_/_", - "linux_arm64:*-apple-*:native/libc++" + "*:*-apple-*:native/libc++" ], "build": { "env": [ @@ -27,8 +27,8 @@ "*:*-apple-*:config_opts=$config_opts --with-libxar=$NATIVEPREFIX", "*:*-apple-*:CC=clang", "*:*-apple-*:CXX=clang++", - "linux_arm64:*-apple-*:CXXFLAGS=$CXXFLAGS -stdlib=libc++ -I$NATIVEPREFIX/include/c++/v1", - "linux_arm64:*-apple-*:LIBS=-L$NATIVEPREFIX/lib -lc++abi -lunwind" + "linux_*:*-apple-*:CXXFLAGS=$CXXFLAGS -stdlib=libc++ -I$NATIVEPREFIX/include/c++/v1", + "linux_*:*-apple-*:LIBS=-L$NATIVEPREFIX/lib -lc++abi" ], "steps": [ "*:*-apple-*:sed -i.bak '3182d' cctools/configure", diff --git a/packages/native/libtapi.json b/packages/native/libtapi.json index 73a05bc..57496de 100644 --- a/packages/native/libtapi.json +++ b/packages/native/libtapi.json @@ -14,7 +14,7 @@ "*:*:native/bash", "*:*:native/cmake", "*:*:native/ninja", - "linux_arm64:*:native/libc++" + "*:*:native/libc++" ], "build": { "env": [ @@ -47,7 +47,7 @@ "linux_*:*:CMAKE_SHARED_LINKER_FLAGS=-L$NATIVEPREFIX/lib -stdlib=libc++ -lc++ -lc++abi -lunwind" ], "steps": [ - "darwin_arm64:*:sed -i.bak '/add_clang_subdirectory(IndexStore)/d; /add_clang_subdirectory(libclang)/d' src/clang/tools/CMakeLists.txt", + "*:*:sed -i.bak '/add_clang_subdirectory(IndexStore)/d; /add_clang_subdirectory(libclang)/d' src/clang/tools/CMakeLists.txt", "darwin_arm64:*:cmake $config_opts -DCMAKE_EXE_LINKER_FLAGS=\"$CMAKE_EXE_LINKER_FLAGS\" -DCMAKE_SHARED_LINKER_FLAGS=\"$CMAKE_SHARED_LINKER_FLAGS\"", "linux_*:*:cmake $config_opts -DCMAKE_CXX_FLAGS=\"$CMAKE_CXX_FLAGS\" -DCMAKE_EXE_LINKER_FLAGS=\"$CMAKE_EXE_LINKER_FLAGS\" -DCMAKE_SHARED_LINKER_FLAGS=\"$CMAKE_SHARED_LINKER_FLAGS\"", "*:*:cmake --build build --target clangBasic libtapi -j$NUM_CORES", From 87a52edc5d825c45cf392ab6613107447c1a9d6b Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 7 Jul 2026 08:13:08 +0200 Subject: [PATCH 134/200] rust fixes wip --- packages/native/rust.json | 11 ++++++++++- packages/native/rust@1_90_0-bin.json | 5 +++++ packages/native/rust@1_90_0.json | 13 +++++++++++-- packages/native/rust@1_91_0.json | 11 ++++++++++- packages/native/rust@1_92_0.json | 11 ++++++++++- packages/native/rust@1_93_0.json | 11 ++++++++++- packages/native/rust@1_94_0.json | 12 +++++++++++- packages/native/rust@1_95_0.json | 12 +++++++++++- 8 files changed, 78 insertions(+), 8 deletions(-) diff --git a/packages/native/rust.json b/packages/native/rust.json index dd7629a..4238ee5 100644 --- a/packages/native/rust.json +++ b/packages/native/rust.json @@ -11,6 +11,7 @@ ], "dependencies": [ "*:*:native/_/_", + "*:*:native/bash", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja", @@ -20,7 +21,15 @@ "*:*:native/rust@1_95_0" ], "build": { - "env": [], + "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH", + "linux_amd64:*:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_amd64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "linux_arm64:*:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "darwin_arm64:*:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$NATIVEPREFIX/_/bin/clang", + "darwin_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib" + ], "steps": [ "*:*:echo '[build]' > config.toml", "*:*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_90_0-bin.json b/packages/native/rust@1_90_0-bin.json index bdd0f69..b2575fc 100644 --- a/packages/native/rust@1_90_0-bin.json +++ b/packages/native/rust@1_90_0-bin.json @@ -23,10 +23,15 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/bash", + "*:*:native/gzip", "*:*:native/tar" ], "build": { + "env": [ + "*:*:PATH=$NATIVEPREFIX/_/bin:$PATH" + ], "steps": [ "linux_amd64:*:tar -xzf rust-1.90.0-x86_64-unknown-linux-gnu.tar.gz", "linux_amd64:*:cd rust-1.90.0-x86_64-unknown-linux-gnu && ./install.sh --prefix=$STAGING_DIR$NATIVEPREFIX --disable-ldconfig", diff --git a/packages/native/rust@1_90_0.json b/packages/native/rust@1_90_0.json index 7a73116..dd8d736 100644 --- a/packages/native/rust@1_90_0.json +++ b/packages/native/rust@1_90_0.json @@ -11,17 +11,26 @@ ], "dependencies": [ "*:*:native/_/_", + "*:*:native/bash", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja", "*:*:native/openssl", "*:*:native/pkgconf", "*:*:native/python@3.11", - "*_amd64:*:native/rust@1_90_0-mrustc", + "*_amd64:*:native/rust@1_90_0-bin", "*_arm64:*:native/rust@1_90_0-bin" ], "build": { - "env": [], + "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH", + "linux_amd64:*:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_amd64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "linux_arm64:*:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "darwin_arm64:*:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$NATIVEPREFIX/_/bin/clang", + "darwin_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib" + ], "steps": [ "*:*:echo '[build]' > config.toml", "*:*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_91_0.json b/packages/native/rust@1_91_0.json index f6a00a7..d4b9ef5 100644 --- a/packages/native/rust@1_91_0.json +++ b/packages/native/rust@1_91_0.json @@ -11,6 +11,7 @@ ], "dependencies": [ "*:*:native/_/_", + "*:*:native/bash", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja", @@ -20,7 +21,15 @@ "*:*:native/rust@1_90_0" ], "build": { - "env": [], + "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH", + "linux_amd64:*:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_amd64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "linux_arm64:*:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "darwin_arm64:*:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$NATIVEPREFIX/_/bin/clang", + "darwin_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib" + ], "steps": [ "*:*:echo '[build]' > config.toml", "*:*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_92_0.json b/packages/native/rust@1_92_0.json index d54a99e..8be5847 100644 --- a/packages/native/rust@1_92_0.json +++ b/packages/native/rust@1_92_0.json @@ -11,6 +11,7 @@ ], "dependencies": [ "*:*:native/_/_", + "*:*:native/bash", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja", @@ -20,7 +21,15 @@ "*:*:native/rust@1_91_0" ], "build": { - "env": [], + "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH", + "linux_amd64:*:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_amd64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "linux_arm64:*:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "darwin_arm64:*:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$NATIVEPREFIX/_/bin/clang", + "darwin_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib" + ], "steps": [ "*:*:echo '[build]' > config.toml", "*:*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_93_0.json b/packages/native/rust@1_93_0.json index 7f71114..20fd0fd 100644 --- a/packages/native/rust@1_93_0.json +++ b/packages/native/rust@1_93_0.json @@ -11,6 +11,7 @@ ], "dependencies": [ "*:*:native/_/_", + "*:*:native/bash", "*:*:native/cmake", "*:*:native/make", "*:*:native/ninja", @@ -20,7 +21,15 @@ "*:*:native/rust@1_92_0" ], "build": { - "env": [], + "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH", + "linux_amd64:*:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_amd64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "linux_arm64:*:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "darwin_arm64:*:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$NATIVEPREFIX/_/bin/clang", + "darwin_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib" + ], "steps": [ "*:*:echo '[build]' > config.toml", "*:*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_94_0.json b/packages/native/rust@1_94_0.json index 197e8ec..c57af63 100644 --- a/packages/native/rust@1_94_0.json +++ b/packages/native/rust@1_94_0.json @@ -10,7 +10,9 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/cmake", + "*:*:native/bash", "*:*:native/make", "*:*:native/ninja", "*:*:native/openssl", @@ -19,7 +21,15 @@ "*:*:native/rust@1_93_0" ], "build": { - "env": [], + "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH", + "linux_amd64:*:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_amd64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "linux_arm64:*:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "darwin_arm64:*:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$NATIVEPREFIX/_/bin/clang", + "darwin_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib" + ], "steps": [ "*:*:echo '[build]' > config.toml", "*:*:echo 'full-bootstrap = true' >> config.toml", diff --git a/packages/native/rust@1_95_0.json b/packages/native/rust@1_95_0.json index e55a226..74831c1 100644 --- a/packages/native/rust@1_95_0.json +++ b/packages/native/rust@1_95_0.json @@ -10,7 +10,9 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/cmake", + "*:*:native/bash", "*:*:native/make", "*:*:native/ninja", "*:*:native/openssl", @@ -19,7 +21,15 @@ "*:*:native/rust@1_94_0" ], "build": { - "env": [], + "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH", + "linux_amd64:*:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_amd64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "linux_arm64:*:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", + "linux_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", + "darwin_arm64:*:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$NATIVEPREFIX/_/bin/clang", + "darwin_arm64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib" + ], "steps": [ "*:*:echo '[build]' > config.toml", "*:*:echo 'full-bootstrap = true' >> config.toml", From 684ec2cc3c6de4e3b144f03249990dee356f0be6 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 9 Jul 2026 07:28:23 +0200 Subject: [PATCH 135/200] fix: rust bootstrap --- packages/native/_/clang@19.json | 52 ++++++++++++++++++++++ packages/native/_/gcc@15_2_0.json | 58 +++++++++++++++++++++++++ packages/native/rust@1_90_0-mrustc.json | 35 ++++++++++----- packages/native/rust@1_90_0.json | 2 +- 4 files changed, 135 insertions(+), 12 deletions(-) create mode 100644 packages/native/_/clang@19.json create mode 100644 packages/native/_/gcc@15_2_0.json diff --git a/packages/native/_/clang@19.json b/packages/native/_/clang@19.json new file mode 100644 index 0000000..b3721b2 --- /dev/null +++ b/packages/native/_/clang@19.json @@ -0,0 +1,52 @@ +{ + "package": "native/_/clang@19", + "version": "19.1.7", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "82401fea7b79d0078043f7598b835284d6650a75b93e64b6f761ea7b63097501", + "url": "https://github.com/llvm/llvm-project/releases/download/llvmorg-19.1.7/llvm-project-19.1.7.src.tar.xz" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", + "*:*:native/cmake", + "*:*:native/libc++", + "*:*:native/make", + "*:*:native/ninja", + "*:*:native/python@3.11", + "*:*:native/zlib" + ], + "build": { + "env": [ + "*:*:config_opts=-G Ninja -S llvm -B build", + "*:*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$NATIVEPREFIX/clang@19", + "*:*:config_opts=$config_opts -DLLVM_ENABLE_PROJECTS='clang;lld'", + "*:*:config_opts=$config_opts -DLLVM_INCLUDE_TESTS=OFF", + "*:*:config_opts=$config_opts -DLLVM_INCLUDE_BENCHMARKS=OFF", + "*:*:config_opts=$config_opts -DLLVM_ENABLE_TERMINFO=OFF", + "*:*:config_opts=$config_opts -DLLVM_ENABLE_LIBCXX=ON", + "linux_amd64:*:config_opts=$config_opts -DLLVM_HOST_TRIPLE=x86_64-linux-gnu", + "linux_amd64:*:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='X86;AArch64'", + "linux_arm64:*:config_opts=$config_opts -DLLVM_HOST_TRIPLE=aarch64-linux-gnu", + "linux_arm64:*:config_opts=$config_opts -DLLVM_TARGETS_TO_BUILD='AArch64;X86'", + "linux_*:*:CC=$NATIVEPREFIX/_/bin/clang", + "linux_*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "linux_*:*:config_opts=$config_opts -DCMAKE_C_COMPILER=$NATIVEPREFIX/_/bin/clang", + "linux_*:*:config_opts=$config_opts -DCMAKE_CXX_COMPILER=$NATIVEPREFIX/_/bin/clang++", + "linux_*:*:CMAKE_CXX_FLAGS=-stdlib=libc++ -I$NATIVEPREFIX/include/c++/v1", + "linux_*:*:CMAKE_EXE_LINKER_FLAGS=-L$NATIVEPREFIX/lib -stdlib=libc++ -lc++ -lc++abi -lunwind -latomic -Wl,-rpath,$NATIVEPREFIX/lib", + "linux_*:*:CMAKE_SHARED_LINKER_FLAGS=-L$NATIVEPREFIX/lib -stdlib=libc++ -lc++ -lc++abi -lunwind -Wl,-rpath,$NATIVEPREFIX/lib" + ], + "steps": [ + "linux_*:*:cmake $config_opts -DCMAKE_CXX_FLAGS=\"$CMAKE_CXX_FLAGS\" -DCMAKE_EXE_LINKER_FLAGS=\"$CMAKE_EXE_LINKER_FLAGS\" -DCMAKE_SHARED_LINKER_FLAGS=\"$CMAKE_SHARED_LINKER_FLAGS\"", + "*:*:cmake --build build --target clang lld -j$NUM_CORES", + "*:*:DESTDIR=$STAGING_DIR cmake --install build --component clang", + "*:*:DESTDIR=$STAGING_DIR cmake --install build --component clang-resource-headers", + "*:*:DESTDIR=$STAGING_DIR cmake --install build --component lld" + ] + } +} diff --git a/packages/native/_/gcc@15_2_0.json b/packages/native/_/gcc@15_2_0.json new file mode 100644 index 0000000..2f5ac09 --- /dev/null +++ b/packages/native/_/gcc@15_2_0.json @@ -0,0 +1,58 @@ +{ + "package": "native/_/gcc@15_2_0", + "version": "15.2.0", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "438fd996826b0c82485a29da03a72d71d6e3541a83ec702df4271f6fe025d24e", + "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-15.2.0/gcc-15.2.0.tar.xz" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", + "*:*:native/binutils@2.46.0", + "*:*:native/coreutils", + "*:*:native/diffutils", + "*:*:native/gawk", + "*:*:native/gmp_shared", + "*:*:native/grep", + "*:*:native/make", + "*:*:native/mpc", + "*:*:native/mpfr", + "*:*:native/sed", + "*:*:native/tar", + "*:*:native/zlib" + ], + "build": { + "env": [ + "linux_*:*:CC=$NATIVEPREFIX/_/bin/clang", + "linux_*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "*:*:config_opts=--prefix=$NATIVEPREFIX --disable-multilib --enable-languages=c,c++ --disable-bootstrap --disable-libsanitizer --disable-libvtv --disable-libphobos --disable-libssp --disable-libquadmath --disable-libgomp --without-isl --with-system-zlib --with-gmp=$NATIVEPREFIX --with-mpfr=$NATIVEPREFIX --with-mpc=$NATIVEPREFIX --disable-nls" + ], + "steps": [ + "*:*:$NATIVEPREFIX/bin/mkdir -p build", + "*:*:cd build && env -u LIBRARY_PATH ../configure $config_opts CC=\"$CC\" CXX=\"$CXX\"", + "*:*:cd build && env -u LIBRARY_PATH make -j$NUM_CORES all-gcc all-target-libgcc all-target-libstdc++-v3 all-target-libatomic", + "*:*:cd build && env -u LIBRARY_PATH make DESTDIR=$STAGING_DIR install-gcc install-target-libgcc install-target-libstdc++-v3 install-target-libatomic", + "*:*:$NATIVEPREFIX/bin/ln -sf gcc $STAGING_DIR$NATIVEPREFIX/bin/cc" + ] + }, + "export-env": [ + "linux_amd64:*:CC=$NATIVEPREFIX/bin/gcc", + "linux_amd64:*:CXX=$NATIVEPREFIX/bin/g++", + "linux_amd64:*:AR=$NATIVEPREFIX/bin/ar", + "linux_amd64:*:RANLIB=$NATIVEPREFIX/bin/ranlib", + "linux_amd64:*:STRIP=$NATIVEPREFIX/bin/strip", + "linux_amd64:*:NM=$NATIVEPREFIX/bin/nm", + "linux_amd64:*:LDFLAGS=$LDFLAGS -L$NATIVEPREFIX/lib/gcc/x86_64-pc-linux-gnu/15.2.0", + "linux_arm64:*:CC=$NATIVEPREFIX/bin/gcc", + "linux_arm64:*:CXX=$NATIVEPREFIX/bin/g++", + "linux_arm64:*:AR=$NATIVEPREFIX/bin/ar", + "linux_arm64:*:RANLIB=$NATIVEPREFIX/bin/ranlib", + "linux_arm64:*:STRIP=$NATIVEPREFIX/bin/strip", + "linux_arm64:*:NM=$NATIVEPREFIX/bin/nm", + "linux_arm64:*:LDFLAGS=$LDFLAGS -L$NATIVEPREFIX/lib/gcc/aarch64-linux-gnu/15.2.0" + ] +} diff --git a/packages/native/rust@1_90_0-mrustc.json b/packages/native/rust@1_90_0-mrustc.json index d32e791..2c404aa 100644 --- a/packages/native/rust@1_90_0-mrustc.json +++ b/packages/native/rust@1_90_0-mrustc.json @@ -18,37 +18,50 @@ "dependencies": [ "*:*:native/_/_", "*:*:native/bash", + "*:*:native/binutils@2.46.0", "*:*:native/cmake", + "*:*:native/coreutils", + "*:*:native/findutils", + "*:*:native/gawk", + "*:*:native/_/gcc@15_2_0", + "*:*:native/git", + "*:*:native/grep", + "*:*:native/gzip", "*:*:native/make", "*:*:native/openssl", "*:*:native/patch", "*:*:native/perl", "*:*:native/pkgconf", "*:*:native/sed", + "*:*:native/tar", "*:*:native/zlib" ], "build": { "env": [ + "*:*:SHELL=$NATIVEPREFIX/bin/bash", "*:*:PARLEVEL=$NUM_CORES", "linux_arm64:*:RUSTC_TARGET=aarch64-unknown-linux-gnu" ], "steps": [ - "*:*:sed -i.bak 's/^make$/make $@/' build-1.90.0.sh", - "darwin_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-apple-darwin/RUSTC_TARGET ?= aarch64-apple-darwin/' run_rustc/Makefile", - "linux_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-unknown-linux-gnu/RUSTC_TARGET ?= aarch64-unknown-linux-gnu/' run_rustc/Makefile", - "linux_arm64:*:sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-unknown-linux-gnu/RUSTC_TARGET ?= aarch64-unknown-linux-gnu/' ./minicargo.mk", + "*:*:$NATIVEPREFIX/bin/sed -i.bak 's/^make$/make $@/' build-1.90.0.sh", + "linux_amd64:*:$NATIVEPREFIX/bin/sed -i.bak '/samples\\/no_core-1_90.rs/d' build-1.90.0.sh", + "darwin_arm64:*:$NATIVEPREFIX/bin/sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-apple-darwin/RUSTC_TARGET ?= aarch64-apple-darwin/' run_rustc/Makefile", + "linux_arm64:*:$NATIVEPREFIX/bin/sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-unknown-linux-gnu/RUSTC_TARGET ?= aarch64-unknown-linux-gnu/' run_rustc/Makefile", + "linux_arm64:*:$NATIVEPREFIX/bin/sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-unknown-linux-gnu/RUSTC_TARGET ?= aarch64-unknown-linux-gnu/' ./minicargo.mk", + "*:*:$NATIVEPREFIX/bin/sed -i.bak 's/LLVM_ENABLE_ZLIB=OFF/LLVM_ENABLE_ZLIB=OFF LLVM_ENABLE_ZSTD=OFF/' minicargo.mk", + "linux_amd64:*:REP=$NATIVEPREFIX/lib && $NATIVEPREFIX/bin/sed -i.bak \"s|^RUSTC_ENV_VARS += LD_LIBRARY_PATH=|RUSTC_ENV_VARS += LD_LIBRARY_PATH=$REP:|\" minicargo.mk", "*:*:echo >> build-1.90.0.sh", "*:*:echo make -C run_rustc >> build-1.90.0.sh", - "*:*:env -i CXXFLAGS_EXTRA=\"$CFLAGS\" LINKFLAGS_EXTRA=\"$LDFLAGS\" PATH=$PATH PARLEVEL=$NUM_CORES CC=\"$CC\" CXX=\"$CXX\" AR=\"$AR\" bash ./build-1.90.0.sh -j$NUM_CORES", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib", - "*:*:cp -a run_rustc/output-1.90.0/prefix/bin/* $STAGING_DIR$NATIVEPREFIX/bin", - "linux_*:*:cp -a run_rustc/output-1.90.0/prefix/lib/rustlib/*/lib/*.so $STAGING_DIR$NATIVEPREFIX/lib", - "*:*:cp -a run_rustc/output-1.90.0/prefix/lib/* $STAGING_DIR$NATIVEPREFIX/lib", + "*:*:env -u TARGET -u LIBRARY_PATH PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin CXXFLAGS_EXTRA=\"$CFLAGS\" LINKFLAGS_EXTRA=\"$LDFLAGS\" $NATIVEPREFIX/bin/bash ./build-1.90.0.sh -j$NUM_CORES", + "*:*:$NATIVEPREFIX/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:$NATIVEPREFIX/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/lib", + "*:*:$NATIVEPREFIX/bin/cp -a run_rustc/output-1.90.0/prefix/bin/* $STAGING_DIR$NATIVEPREFIX/bin", + "linux_*:*:$NATIVEPREFIX/bin/cp -a run_rustc/output-1.90.0/prefix/lib/rustlib/*/lib/*.so $STAGING_DIR$NATIVEPREFIX/lib", + "*:*:$NATIVEPREFIX/bin/cp -a run_rustc/output-1.90.0/prefix/lib/* $STAGING_DIR$NATIVEPREFIX/lib", "*:none:# FIXME bad dylib paths embedded in the rustc binary, forcing install_name_tool dark magic", "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.90.0/build-rustc/aarch64-apple-darwin/release/deps/librustc_driver.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib $STAGING_DIR$NATIVEPREFIX/bin/rustc_binary", "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.90.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/../lib/rustlib/aarch64-apple-darwin/lib/libstd.dylib $STAGING_DIR$NATIVEPREFIX/bin/rustc_binary", "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.90.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/libstd.dylib $STAGING_DIR$NATIVEPREFIX/lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib" ] } -} \ No newline at end of file +} diff --git a/packages/native/rust@1_90_0.json b/packages/native/rust@1_90_0.json index dd8d736..e7e2cd2 100644 --- a/packages/native/rust@1_90_0.json +++ b/packages/native/rust@1_90_0.json @@ -18,7 +18,7 @@ "*:*:native/openssl", "*:*:native/pkgconf", "*:*:native/python@3.11", - "*_amd64:*:native/rust@1_90_0-bin", + "*_amd64:*:native/rust@1_90_0-mrustc", "*_arm64:*:native/rust@1_90_0-bin" ], "build": { From 855d5bd73e19d84c7a208fe7d1bdf75744c878b5 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 9 Jul 2026 19:09:24 +0200 Subject: [PATCH 136/200] add Qt@6.11.1 --- packages/dbus@1_14_10.json | 43 + packages/expat.json | 3 + packages/fontconfig@2_12_6.json | 41 + packages/freetype@2_14_1.json | 36 + packages/libXau@1_0_12.json | 40 + packages/libffi@3_5_2.json | 35 + packages/libxcb@1_17_0.json | 44 + packages/libxcb_util@0_4_1.json | 39 + packages/libxcb_util_cursor@0_1_6.json | 43 + packages/libxcb_util_image@0_4_1.json | 40 + packages/libxcb_util_keysyms@0_4_1.json | 39 + packages/libxcb_util_render@0_3_10.json | 39 + packages/libxcb_util_wm@0_4_2.json | 40 + packages/libxkbcommon@1_13_1.json | 45 + packages/native/libffi@3_5_2.json | 27 + packages/native/qt@6_11_1.json | 62 + packages/native/wayland@1_25_0.json | 29 + packages/qt@6_11_1.json | 373 +++ packages/wayland@1_25_0.json | 41 + packages/xcb_proto@1_17_0.json | 35 + packages/xorgproto@2025_1.json | 33 + patches/dbus/remove-DDBUS_STATIC_BUILD.patch | 10 + patches/fontconfig/gperf_header_regen.patch | 24 + patches/libXau/toolchain.txt | 17 + patches/libxcb/remove_pthread_stubs.patch | 14 + patches/libxkbcommon/no-test-x11.patch | 55 + patches/libxkbcommon/toolchain.txt | 21 + patches/native_qt/guix_cross_lib_path.patch | 17 + .../qtbase-moc-ignore-gcc-macro.patch | 17 + .../native_qt/rcc_hardcode_timestamp.patch | 25 + patches/native_qt/root_CMakeLists.txt | 51 + ..._static_qt_darwin_camera_permissions.patch | 27 + patches/qt/libxau-fix.patch | 12 + patches/qt/rcc_hardcode_timestamp.patch | 25 + patches/qt/root_CMakeLists.txt | 51 + patches/qt/toolchain.cmake | 36 + patches/qt/v4l2.patch | 2602 +++++++++++++++++ patches/qt/windows_func_fix.patch | 48 + patches/wayland/toolchain.txt | 15 + utils/download/download.go | 19 +- utils/download/download_test.go | 24 + 41 files changed, 4234 insertions(+), 3 deletions(-) create mode 100644 packages/dbus@1_14_10.json create mode 100644 packages/fontconfig@2_12_6.json create mode 100644 packages/freetype@2_14_1.json create mode 100644 packages/libXau@1_0_12.json create mode 100644 packages/libffi@3_5_2.json create mode 100644 packages/libxcb@1_17_0.json create mode 100644 packages/libxcb_util@0_4_1.json create mode 100644 packages/libxcb_util_cursor@0_1_6.json create mode 100644 packages/libxcb_util_image@0_4_1.json create mode 100644 packages/libxcb_util_keysyms@0_4_1.json create mode 100644 packages/libxcb_util_render@0_3_10.json create mode 100644 packages/libxcb_util_wm@0_4_2.json create mode 100644 packages/libxkbcommon@1_13_1.json create mode 100644 packages/native/libffi@3_5_2.json create mode 100644 packages/native/qt@6_11_1.json create mode 100644 packages/native/wayland@1_25_0.json create mode 100644 packages/qt@6_11_1.json create mode 100644 packages/wayland@1_25_0.json create mode 100644 packages/xcb_proto@1_17_0.json create mode 100644 packages/xorgproto@2025_1.json create mode 100644 patches/dbus/remove-DDBUS_STATIC_BUILD.patch create mode 100644 patches/fontconfig/gperf_header_regen.patch create mode 100644 patches/libXau/toolchain.txt create mode 100644 patches/libxcb/remove_pthread_stubs.patch create mode 100644 patches/libxkbcommon/no-test-x11.patch create mode 100644 patches/libxkbcommon/toolchain.txt create mode 100644 patches/native_qt/guix_cross_lib_path.patch create mode 100644 patches/native_qt/qtbase-moc-ignore-gcc-macro.patch create mode 100644 patches/native_qt/rcc_hardcode_timestamp.patch create mode 100644 patches/native_qt/root_CMakeLists.txt create mode 100644 patches/qt/fix_static_qt_darwin_camera_permissions.patch create mode 100644 patches/qt/libxau-fix.patch create mode 100644 patches/qt/rcc_hardcode_timestamp.patch create mode 100644 patches/qt/root_CMakeLists.txt create mode 100644 patches/qt/toolchain.cmake create mode 100644 patches/qt/v4l2.patch create mode 100644 patches/qt/windows_func_fix.patch create mode 100644 patches/wayland/toolchain.txt diff --git a/packages/dbus@1_14_10.json b/packages/dbus@1_14_10.json new file mode 100644 index 0000000..f604fb3 --- /dev/null +++ b/packages/dbus@1_14_10.json @@ -0,0 +1,43 @@ +{ + "package": "dbus@1_14_10", + "version": "1_14_10", + "type": "host", + "download": [ + { + "kind": "tar.xz", + "sha256": "ba1f21d2bd9d339da2d4aa8780c09df32fea87998b73da24f49ab9df1e36a50f", + "url": "https://dbus.freedesktop.org/releases/dbus/dbus-1.14.10.tar.xz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/diffutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/make", + "*:x86_64-linux-gnu:native/patch", + "*:x86_64-linux-gnu:expat", + "*:x86_64-linux-gnu:native/sed" + ], + "patches": [ + "remove-DDBUS_STATIC_BUILD.patch" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:CPP=$CC -E", + "*:x86_64-linux-gnu:CXXCPP=$CXX $CXXFLAGS -E", + "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-maintainer-mode --disable-xml-docs --disable-doxygen-docs --disable-ducktype-docs" + ], + "steps": [ + "*:x86_64-linux-gnu:patch -p1 < $PATCH_DIR/dbus/remove-DDBUS_STATIC_BUILD.patch", + "*:x86_64-linux-gnu:bash ./configure $config_opts", + "*:x86_64-linux-gnu:make -j$NUM_CORES", + "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:x86_64-linux-gnu:rm -f $STAGING_DIR$PREFIX/lib/*.la" + ] + } +} diff --git a/packages/expat.json b/packages/expat.json index e57f183..7f53f31 100644 --- a/packages/expat.json +++ b/packages/expat.json @@ -18,12 +18,15 @@ "*:*:native/grep", "*:*:native/make", "*:*:native/sed", + "*:*:native/diffutils", "*:*:libiconv" ], "build": { "env": [ "*:*:CFLAGS=$CFLAGS -fPIC", "*:*:LDFLAGS=$LDFLAGS -fPIC", + "*:*:CPP=$CC -E", + "*:*:CXXCPP=$CXX $CXXFLAGS -E", "*:*:BUILD_HOST=$HOST", "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios" ], diff --git a/packages/fontconfig@2_12_6.json b/packages/fontconfig@2_12_6.json new file mode 100644 index 0000000..31bf180 --- /dev/null +++ b/packages/fontconfig@2_12_6.json @@ -0,0 +1,41 @@ +{ + "package": "fontconfig@2_12_6", + "version": "2_12_6", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "064b9ebf060c9e77011733ac9dc0e2ce92870b574cca2405e11f5353a683c334", + "url": "https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.12.6.tar.gz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/make", + "*:x86_64-linux-gnu:native/patch", + "*:x86_64-linux-gnu:native/sed", + "*:x86_64-linux-gnu:freetype@2_14_1", + "*:x86_64-linux-gnu:expat" + ], + "patches": [ + "gperf_header_regen.patch" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-docs --disable-libxml2 --disable-iconv --disable-dependency-tracking --enable-option-checking" + ], + "steps": [ + "*:x86_64-linux-gnu:patch -p1 < $PATCH_DIR/fontconfig/gperf_header_regen.patch", + "*:x86_64-linux-gnu:bash ./configure $config_opts", + "*:x86_64-linux-gnu:make -j$NUM_CORES", + "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/var $STAGING_DIR$PREFIX/lib/*.la" + ] + } +} diff --git a/packages/freetype@2_14_1.json b/packages/freetype@2_14_1.json new file mode 100644 index 0000000..ddade8c --- /dev/null +++ b/packages/freetype@2_14_1.json @@ -0,0 +1,36 @@ +{ + "package": "freetype@2_14_1", + "version": "2_14_1", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "174d9e53402e1bf9ec7277e22ec199ba3e55a6be2c0740cb18c0ee9850fc8c34", + "url": "https://download.savannah.gnu.org/releases/freetype/freetype-2.14.1.tar.gz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/diffutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/make", + "*:x86_64-linux-gnu:native/sed" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --without-zlib --without-png --without-harfbuzz --without-bzip2 --enable-option-checking --without-brotli --with-pic" + ], + "steps": [ + "*:x86_64-linux-gnu:rm -rf docs", + "*:x86_64-linux-gnu:CC_BUILD='env PATH=/usr/bin:/bin LD=/usr/bin/ld /usr/bin/cc' bash ./configure $config_opts", + "*:x86_64-linux-gnu:make -j$NUM_CORES", + "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share/man $STAGING_DIR$PREFIX/lib/*.la" + ] + } +} diff --git a/packages/libXau@1_0_12.json b/packages/libXau@1_0_12.json new file mode 100644 index 0000000..a27c48b --- /dev/null +++ b/packages/libXau@1_0_12.json @@ -0,0 +1,40 @@ +{ + "package": "libXau@1_0_12", + "version": "1_0_12", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "2402dd938da4d0a332349ab3d3586606175e19cb32cb9fe013c19f1dc922dcee", + "url": "https://xorg.freedesktop.org/releases/individual/lib/libXau-1.0.12.tar.gz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/meson", + "*:x86_64-linux-gnu:native/ninja", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/python@3.11", + "*:x86_64-linux-gnu:xorgproto@2025_1", + "*:x86_64-linux-gnu:native/sed" + ], + "patches": [ + "toolchain.txt" + ], + "build": { + "env": [], + "steps": [ + "*:x86_64-linux-gnu:cp $PATCH_DIR/libXau/toolchain.txt toolchain.txt", + "*:x86_64-linux-gnu:sed -i -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@cc@|$CC|\" -e \"s|@cxx@|$CXX|\" -e \"s|@ar@|$AR|\" -e \"s|@strip@|$STRIP|\" -e \"s|@arch@|$ARCH|\" toolchain.txt", + "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/share/pkgconfig:$PREFIX/lib/pkgconfig $NATIVEPREFIX/bin/meson setup --cross-file toolchain.txt build", + "*:x86_64-linux-gnu:ninja -C build", + "*:x86_64-linux-gnu:DESTDIR=$STAGING_DIR ninja -C build install", + "*:x86_64-linux-gnu:sed -i 's/Requires: xproto//g' $STAGING_DIR$PREFIX/lib/pkgconfig/xau.pc" + ] + } +} diff --git a/packages/libffi@3_5_2.json b/packages/libffi@3_5_2.json new file mode 100644 index 0000000..ee67e18 --- /dev/null +++ b/packages/libffi@3_5_2.json @@ -0,0 +1,35 @@ +{ + "package": "libffi@3_5_2", + "version": "3_5_2", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "f3a3082a23b37c293a4fcd1053147b371f2ff91fa7ea1b2a52e335676bac82dc", + "url": "https://github.com/libffi/libffi/releases/download/v3.5.2/libffi-3.5.2.tar.gz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/diffutils", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/make", + "*:x86_64-linux-gnu:native/sed" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:CPP=$CC -E", + "*:x86_64-linux-gnu:CXXCPP=$CXX $CXXFLAGS -E", + "*:x86_64-linux-gnu:CFLAGS=$CFLAGS -fPIC", + "*:x86_64-linux-gnu:LDFLAGS=$LDFLAGS -fPIC" + ], + "steps": [ + "*:x86_64-linux-gnu:bash ./configure --host=$HOST --prefix=$PREFIX --enable-static --disable-shared --disable-docs --with-pic", + "*:x86_64-linux-gnu:make -j$NUM_CORES", + "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install" + ] + } +} diff --git a/packages/libxcb@1_17_0.json b/packages/libxcb@1_17_0.json new file mode 100644 index 0000000..dece6ae --- /dev/null +++ b/packages/libxcb@1_17_0.json @@ -0,0 +1,44 @@ +{ + "package": "libxcb@1_17_0", + "version": "1_17_0", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "2c69287424c9e2128cb47ffe92171e10417041ec2963bceafb65cb3fcf8f0b85", + "url": "https://xcb.freedesktop.org/dist/libxcb-1.17.0.tar.gz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/make", + "*:x86_64-linux-gnu:native/patch", + "*:x86_64-linux-gnu:native/python@3.11", + "*:x86_64-linux-gnu:native/sed", + "*:x86_64-linux-gnu:xcb_proto@1_17_0", + "*:x86_64-linux-gnu:xorgproto@2025_1", + "*:x86_64-linux-gnu:libXau@1_0_12" + ], + "patches": [ + "remove_pthread_stubs.patch" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/share/pkgconfig:$PREFIX/lib/pkgconfig", + "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --without-launchd --disable-dependency-tracking --enable-option-checking --disable-composite --disable-damage --disable-dpms --disable-dri2 --disable-dri3 --disable-glx --disable-present --disable-record --disable-resource --disable-screensaver --disable-xevie --disable-xfree86-dri --disable-xinput --disable-xprint --disable-selinux --disable-xtest --disable-xv --disable-xvmc" + ], + "steps": [ + "*:x86_64-linux-gnu:patch -p1 < $PATCH_DIR/libxcb/remove_pthread_stubs.patch", + "*:x86_64-linux-gnu:bash ./configure $config_opts", + "*:x86_64-linux-gnu:make -j$NUM_CORES", + "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + ] + } +} diff --git a/packages/libxcb_util@0_4_1.json b/packages/libxcb_util@0_4_1.json new file mode 100644 index 0000000..e101cf9 --- /dev/null +++ b/packages/libxcb_util@0_4_1.json @@ -0,0 +1,39 @@ +{ + "package": "libxcb_util@0_4_1", + "version": "0_4_1", + "type": "host", + "download": [ + { + "kind": "tar.xz", + "sha256": "5abe3bbbd8e54f0fa3ec945291b7e8fa8cfd3cccc43718f8758430f94126e512", + "url": "https://xcb.freedesktop.org/dist/xcb-util-0.4.1.tar.xz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/diffutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/make", + "*:x86_64-linux-gnu:libxcb@1_17_0", + "*:x86_64-linux-gnu:libXau@1_0_12", + "*:x86_64-linux-gnu:xorgproto@2025_1", + "*:x86_64-linux-gnu:native/sed" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", + "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" + ], + "steps": [ + "*:x86_64-linux-gnu:bash ./configure $config_opts", + "*:x86_64-linux-gnu:make -j$NUM_CORES", + "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + ] + } +} diff --git a/packages/libxcb_util_cursor@0_1_6.json b/packages/libxcb_util_cursor@0_1_6.json new file mode 100644 index 0000000..cf277e1 --- /dev/null +++ b/packages/libxcb_util_cursor@0_1_6.json @@ -0,0 +1,43 @@ +{ + "package": "libxcb_util_cursor@0_1_6", + "version": "0_1_6", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "eae38b2dfc5c529a886e507ef576b12d2a20aa1f149608e4853af760f31be60b", + "url": "https://xcb.freedesktop.org/dist/xcb-util-cursor-0.1.6.tar.gz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/diffutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/make", + "*:x86_64-linux-gnu:native/m4", + "*:x86_64-linux-gnu:libxcb@1_17_0", + "*:x86_64-linux-gnu:libXau@1_0_12", + "*:x86_64-linux-gnu:xorgproto@2025_1", + "*:x86_64-linux-gnu:libxcb_util@0_4_1", + "*:x86_64-linux-gnu:libxcb_util_image@0_4_1", + "*:x86_64-linux-gnu:libxcb_util_render@0_3_10", + "*:x86_64-linux-gnu:native/sed" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", + "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" + ], + "steps": [ + "*:x86_64-linux-gnu:bash ./configure $config_opts", + "*:x86_64-linux-gnu:make -j$NUM_CORES", + "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + ] + } +} diff --git a/packages/libxcb_util_image@0_4_1.json b/packages/libxcb_util_image@0_4_1.json new file mode 100644 index 0000000..2923213 --- /dev/null +++ b/packages/libxcb_util_image@0_4_1.json @@ -0,0 +1,40 @@ +{ + "package": "libxcb_util_image@0_4_1", + "version": "0_4_1", + "type": "host", + "download": [ + { + "kind": "tar.xz", + "sha256": "ccad8ee5dadb1271fd4727ad14d9bd77a64e505608766c4e98267d9aede40d3d", + "url": "https://xcb.freedesktop.org/dist/xcb-util-image-0.4.1.tar.xz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/diffutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/make", + "*:x86_64-linux-gnu:libxcb@1_17_0", + "*:x86_64-linux-gnu:libXau@1_0_12", + "*:x86_64-linux-gnu:xorgproto@2025_1", + "*:x86_64-linux-gnu:libxcb_util@0_4_1", + "*:x86_64-linux-gnu:native/sed" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", + "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" + ], + "steps": [ + "*:x86_64-linux-gnu:bash ./configure $config_opts", + "*:x86_64-linux-gnu:make -j$NUM_CORES -C image", + "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR -C image install", + "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + ] + } +} diff --git a/packages/libxcb_util_keysyms@0_4_1.json b/packages/libxcb_util_keysyms@0_4_1.json new file mode 100644 index 0000000..0a3b894 --- /dev/null +++ b/packages/libxcb_util_keysyms@0_4_1.json @@ -0,0 +1,39 @@ +{ + "package": "libxcb_util_keysyms@0_4_1", + "version": "0_4_1", + "type": "host", + "download": [ + { + "kind": "tar.xz", + "sha256": "7c260a5294412aed429df1da2f8afd3bd07b7cba3fec772fba15a613a6d5c638", + "url": "https://xcb.freedesktop.org/dist/xcb-util-keysyms-0.4.1.tar.xz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/diffutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/make", + "*:x86_64-linux-gnu:libxcb@1_17_0", + "*:x86_64-linux-gnu:libXau@1_0_12", + "*:x86_64-linux-gnu:xorgproto@2025_1", + "*:x86_64-linux-gnu:native/sed" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", + "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" + ], + "steps": [ + "*:x86_64-linux-gnu:bash ./configure $config_opts", + "*:x86_64-linux-gnu:make -j$NUM_CORES", + "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + ] + } +} diff --git a/packages/libxcb_util_render@0_3_10.json b/packages/libxcb_util_render@0_3_10.json new file mode 100644 index 0000000..d76508f --- /dev/null +++ b/packages/libxcb_util_render@0_3_10.json @@ -0,0 +1,39 @@ +{ + "package": "libxcb_util_render@0_3_10", + "version": "0_3_10", + "type": "host", + "download": [ + { + "kind": "tar.xz", + "sha256": "3e15d4f0e22d8ddbfbb9f5d77db43eacd7a304029bf25a6166cc63caa96d04ba", + "url": "https://xcb.freedesktop.org/dist/xcb-util-renderutil-0.3.10.tar.xz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/diffutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/make", + "*:x86_64-linux-gnu:libxcb@1_17_0", + "*:x86_64-linux-gnu:libXau@1_0_12", + "*:x86_64-linux-gnu:xorgproto@2025_1", + "*:x86_64-linux-gnu:native/sed" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", + "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" + ], + "steps": [ + "*:x86_64-linux-gnu:bash ./configure $config_opts", + "*:x86_64-linux-gnu:make -j$NUM_CORES", + "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + ] + } +} diff --git a/packages/libxcb_util_wm@0_4_2.json b/packages/libxcb_util_wm@0_4_2.json new file mode 100644 index 0000000..25bf07d --- /dev/null +++ b/packages/libxcb_util_wm@0_4_2.json @@ -0,0 +1,40 @@ +{ + "package": "libxcb_util_wm@0_4_2", + "version": "0_4_2", + "type": "host", + "download": [ + { + "kind": "tar.xz", + "sha256": "62c34e21d06264687faea7edbf63632c9f04d55e72114aa4a57bb95e4f888a0b", + "url": "https://xcb.freedesktop.org/dist/xcb-util-wm-0.4.2.tar.xz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/diffutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/make", + "*:x86_64-linux-gnu:native/m4", + "*:x86_64-linux-gnu:libxcb@1_17_0", + "*:x86_64-linux-gnu:libXau@1_0_12", + "*:x86_64-linux-gnu:xorgproto@2025_1", + "*:x86_64-linux-gnu:native/sed" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", + "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" + ], + "steps": [ + "*:x86_64-linux-gnu:bash ./configure $config_opts", + "*:x86_64-linux-gnu:make -j$NUM_CORES", + "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + ] + } +} diff --git a/packages/libxkbcommon@1_13_1.json b/packages/libxkbcommon@1_13_1.json new file mode 100644 index 0000000..62ea047 --- /dev/null +++ b/packages/libxkbcommon@1_13_1.json @@ -0,0 +1,45 @@ +{ + "package": "libxkbcommon@1_13_1", + "version": "1_13_1", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "aeb951964c2f7ecc08174cb5517962d157595e9e3f38fc4a130b91dc2f9fec18", + "url": "https://github.com/xkbcommon/libxkbcommon/archive/refs/tags/xkbcommon-1.13.1.tar.gz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/bison", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/m4", + "*:x86_64-linux-gnu:native/meson", + "*:x86_64-linux-gnu:native/ninja", + "*:x86_64-linux-gnu:native/patch", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/python@3.11", + "*:x86_64-linux-gnu:libxcb@1_17_0", + "*:x86_64-linux-gnu:libXau@1_0_12", + "*:x86_64-linux-gnu:native/sed" + ], + "patches": [ + "no-test-x11.patch", + "toolchain.txt" + ], + "build": { + "env": [], + "steps": [ + "*:x86_64-linux-gnu:patch -p1 < $PATCH_DIR/libxkbcommon/no-test-x11.patch", + "*:x86_64-linux-gnu:cp $PATCH_DIR/libxkbcommon/toolchain.txt toolchain.txt", + "*:x86_64-linux-gnu:sed -i -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@cc@|$CC|\" -e \"s|@cxx@|$CXX|\" -e \"s|@ar@|$AR|\" -e \"s|@strip@|$STRIP|\" -e \"s|@arch@|$ARCH|\" toolchain.txt", + "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig $NATIVEPREFIX/bin/meson setup --cross-file toolchain.txt build -Dxkb-config-root=/usr/share/X11/xkb -Dxkb-config-extra-path=/app/share/X11/xkb", + "*:x86_64-linux-gnu:ninja -C build", + "*:x86_64-linux-gnu:DESTDIR=$STAGING_DIR ninja -C build install" + ] + } +} diff --git a/packages/native/libffi@3_5_2.json b/packages/native/libffi@3_5_2.json new file mode 100644 index 0000000..7258162 --- /dev/null +++ b/packages/native/libffi@3_5_2.json @@ -0,0 +1,27 @@ +{ + "package": "native/libffi@3_5_2", + "version": "3_5_2", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "f3a3082a23b37c293a4fcd1053147b371f2ff91fa7ea1b2a52e335676bac82dc", + "url": "https://github.com/libffi/libffi/releases/download/v3.5.2/libffi-3.5.2.tar.gz" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/make" + ], + "build": { + "env": [ + "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*:LDFLAGS=$LDFLAGS -fPIC" + ], + "steps": [ + "*:*:./configure --prefix=$NATIVEPREFIX --enable-static --disable-shared --disable-docs --with-pic", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} diff --git a/packages/native/qt@6_11_1.json b/packages/native/qt@6_11_1.json new file mode 100644 index 0000000..cc71b07 --- /dev/null +++ b/packages/native/qt@6_11_1.json @@ -0,0 +1,62 @@ +{ + "package": "native/qt@6_11_1", + "version": "6_11_1", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "path": "qtbase", + "sha256": "d9594a31228aa23ad6b531719a29b45f0f3989fe6c136d45767ea179f233c1ac", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtbase-everywhere-src-6.11.1.tar.xz" + }, + { + "kind": "tar.xz", + "path": "qttools", + "sha256": "8e61835a679c93fa9c6065b142353c2071ba68e297898937c32a03777fcaf50d", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qttools-everywhere-src-6.11.1.tar.xz" + }, + { + "kind": "tar.xz", + "path": "qtshadertools", + "sha256": "2075052f9b23bcf9de045bbd180037084942f82cce870aab14a1454902c982fc", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtshadertools-everywhere-src-6.11.1.tar.xz" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/cmake", + "*:*:native/ninja", + "*:*:native/patch", + "*:*:native/perl", + "*:*:native/pkgconf", + "*:*:native/sed", + "*:*-linux-*:native/wayland@1_25_0" + ], + "patches": [ + "root_CMakeLists.txt", + "rcc_hardcode_timestamp.patch", + "guix_cross_lib_path.patch", + "qtbase-moc-ignore-gcc-macro.patch" + ], + "export-env": [ + "*:*:QT_HOST_PATH=$NATIVEPREFIX/qt-host", + "*:*:PATH=$NATIVEPREFIX/qt-host/bin:$PATH" + ], + "build": { + "env": [ + "*:*:config_opts=-release -libexecdir $NATIVEPREFIX/qt-host/bin -c++std c++17 -confirm-license -opensource -pkg-config -prefix $NATIVEPREFIX/qt-host -static -platform linux-g++ -xplatform linux-g++", + "*:*-linux-*:config_opts=$config_opts -xplatform linux-clang-libc++", + "*:*:config_opts=$config_opts -no-cups -no-egl -no-eglfs -no-evdev -no-feature-colordialog -no-feature-dial -no-feature-fontcombobox -no-feature-fontconfig -no-feature-freetype -no-feature-harfbuzz -no-feature-image_heuristic_mask -no-feature-keysequenceedit -no-feature-lcdnumber -no-feature-networkdiskcache -no-feature-pdf -no-feature-printdialog -no-feature-printer -no-feature-printpreviewdialog -no-feature-printpreviewwidget -no-feature-qmake -no-feature-sessionmanager -no-feature-sql -no-feature-syntaxhighlighter -no-feature-testlib -no-feature-textmarkdownwriter -no-feature-textodfwriter -no-feature-topleveldomain -no-feature-undocommand -no-feature-undogroup -no-feature-undostack -no-feature-undoview -no-feature-vnc -no-feature-vulkan -no-feature-widgets -no-feature-xkbcommon -no-feature-xlib -no-gif -no-glib -no-ico -no-icu -no-kms -no-libjpeg -no-libudev -no-linuxfb -nomake examples -nomake tests -no-mtdev -no-opengl -no-openssl -no-openvg -no-pch -no-reduce-relocations -no-sbom -no-schannel -no-sctp -no-securetransport -no-system-proxies -no-use-gold-linker -no-xcb-xlib -no-zstd" + ], + "steps": [ + "*:*:for mod in qtbase qttools qtshadertools; do inner=$mod/$mod-everywhere-src-*; if [ -d $inner ]; then mv $inner/* $mod/ && rmdir $inner; fi; done", + "*:*:cp $PATCH_DIR/native_qt/root_CMakeLists.txt CMakeLists.txt", + "*:*:patch -p1 < $PATCH_DIR/native_qt/qtbase-moc-ignore-gcc-macro.patch", + "*:*:patch -p1 < $PATCH_DIR/native_qt/rcc_hardcode_timestamp.patch", + "*:*:patch -p1 < $PATCH_DIR/native_qt/guix_cross_lib_path.patch", + "*:*:cd qtbase && ./configure -top-level $config_opts", + "*:*:cmake --build . --parallel", + "*:*:DESTDIR=$STAGING_DIR cmake --install ." + ] + } +} diff --git a/packages/native/wayland@1_25_0.json b/packages/native/wayland@1_25_0.json new file mode 100644 index 0000000..807896d --- /dev/null +++ b/packages/native/wayland@1_25_0.json @@ -0,0 +1,29 @@ +{ + "package": "native/wayland@1_25_0", + "version": "1_25_0", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "95413723f6cd0462770eda207a1c78d142d0a1bba9b0572a4ed1da6a9b27059c", + "url": "https://gitlab.freedesktop.org/wayland/wayland/-/archive/1.25.0/wayland-1.25.0.tar.gz" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/expat", + "*:*:native/libffi@3_5_2", + "*:*:native/meson", + "*:*:native/ninja", + "*:*:native/pkgconf", + "*:*:native/python@3.11" + ], + "build": { + "env": [], + "steps": [ + "*:*:$NATIVEPREFIX/bin/meson setup build --prefix=$NATIVEPREFIX -Ddtd_validation=false -Ddocumentation=false -Dtests=false", + "*:*:ninja -C build", + "*:*:DESTDIR=$STAGING_DIR ninja -C build install" + ] + } +} diff --git a/packages/qt@6_11_1.json b/packages/qt@6_11_1.json new file mode 100644 index 0000000..f256544 --- /dev/null +++ b/packages/qt@6_11_1.json @@ -0,0 +1,373 @@ +{ + "package": "qt@6_11_1", + "version": "6_11_1", + "type": "host", + "download": [ + { + "kind": "tar.xz", + "path": "qtbase", + "sha256": "d9594a31228aa23ad6b531719a29b45f0f3989fe6c136d45767ea179f233c1ac", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtbase-everywhere-src-6.11.1.tar.xz" + }, + { + "kind": "tar.xz", + "path": "qtsvg", + "sha256": "7f3cf02f4824bf03c2c5859ea6db173bf1482a1daf24e6cdf7bc78cfa26a8a94", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtsvg-everywhere-src-6.11.1.tar.xz" + }, + { + "kind": "tar.xz", + "path": "qtwebsockets", + "sha256": "243e3aa11924c8c5c1645e892f62d013caa3766c57512ca926d5b58146646fbf", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtwebsockets-everywhere-src-6.11.1.tar.xz" + }, + { + "kind": "tar.xz", + "path": "qtshadertools", + "sha256": "2075052f9b23bcf9de045bbd180037084942f82cce870aab14a1454902c982fc", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtshadertools-everywhere-src-6.11.1.tar.xz" + }, + { + "kind": "tar.xz", + "path": "qtmultimedia", + "sha256": "390f8e52ddee3aca5c4de7eead900c84c4fa61ff6d1f0ebea9c7543365c09b0a", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtmultimedia-everywhere-src-6.11.1.tar.xz" + }, + { + "kind": "tar.xz", + "path": "qtwayland", + "sha256": "95788aa502f75441d4edf65932b235f76523084e13dbbb7b9ee2d207b32bd9b3", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtwayland-everywhere-src-6.11.1.tar.xz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/cmake", + "*:x86_64-linux-gnu:native/ninja", + "*:x86_64-linux-gnu:native/patch", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/sed", + "*:x86_64-linux-gnu:native/qt@6_11_1", + "*:x86_64-linux-gnu:native/wayland@1_25_0", + "*:x86_64-linux-gnu:openssl", + "*:x86_64-linux-gnu:freetype@2_14_1", + "*:x86_64-linux-gnu:fontconfig@2_12_6", + "*:x86_64-linux-gnu:libxcb@1_17_0", + "*:x86_64-linux-gnu:libXau@1_0_12", + "*:x86_64-linux-gnu:libxkbcommon@1_13_1", + "*:x86_64-linux-gnu:libxcb_util@0_4_1", + "*:x86_64-linux-gnu:libxcb_util_render@0_3_10", + "*:x86_64-linux-gnu:libxcb_util_keysyms@0_4_1", + "*:x86_64-linux-gnu:libxcb_util_image@0_4_1", + "*:x86_64-linux-gnu:libxcb_util_wm@0_4_2", + "*:x86_64-linux-gnu:libxcb_util_cursor@0_1_6", + "*:x86_64-linux-gnu:dbus@1_14_10", + "*:x86_64-linux-gnu:wayland@1_25_0", + "*:x86_64-apple-darwin:native/_", + "*:x86_64-apple-darwin:native/bash", + "*:x86_64-apple-darwin:native/coreutils", + "*:x86_64-apple-darwin:native/cmake", + "*:x86_64-apple-darwin:native/ninja", + "*:x86_64-apple-darwin:native/patch", + "*:x86_64-apple-darwin:native/sed", + "*:x86_64-apple-darwin:native/qt@6_11_1", + "*:x86_64-apple-darwin:openssl", + "*:x86_64-w64-mingw32:native/_", + "*:x86_64-w64-mingw32:native/bash", + "*:x86_64-w64-mingw32:native/coreutils", + "*:x86_64-w64-mingw32:native/cmake", + "*:x86_64-w64-mingw32:native/ninja", + "*:x86_64-w64-mingw32:native/patch", + "*:x86_64-w64-mingw32:native/sed", + "*:x86_64-w64-mingw32:native/qt@6_11_1", + "*:x86_64-w64-mingw32:openssl" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:OPENSSL_LIBS=-lssl -lcrypto -lpthread -ldl", + "*:x86_64-linux-gnu:PKG_CONFIG_SYSROOT_DIR=/", + "*:x86_64-linux-gnu:PKG_CONFIG_LIBDIR=$PREFIX/lib/pkgconfig", + "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", + "*:x86_64-linux-gnu:config_opts=-G Ninja", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_HOST_PATH=$QT_HOST_PATH", + "*:x86_64-linux-gnu:config_opts=$config_opts -DCMAKE_PREFIX_PATH=$QT_HOST_PATH/lib/cmake", + "*:x86_64-linux-gnu:config_opts=$config_opts -DBUILD_SHARED_LIBS=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_BUILD_EXAMPLES=FALSE", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_BUILD_TESTS=FALSE", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_GENERATE_SBOM=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_cups=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_qmake=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_egl=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_egl_x11=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_xcb_egl_plugin=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_xcb_glx_plugin=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_eglfs=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_evdev=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_gif=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_glib=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_icu=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_ico=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_kms=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_linuxfb=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_libudev=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_mtdev=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_openssl=ON", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_openssl_linked=ON", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_openvg=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_permissions=ON", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_reduce_relocations=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_schannel=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_sctp=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_securetransport=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_system_proxies=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_use_gold_linker_alias=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_zstd=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_pkg_config=ON", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_system_png=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_system_pcre2=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_system_harfbuzz=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_system_zlib=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_colordialog=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_dial=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_fontcombobox=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_image_heuristic_mask=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_keysequenceedit=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_lcdnumber=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_networkdiskcache=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_pdf=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_printdialog=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_printer=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_printpreviewdialog=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_printpreviewwidget=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_printsupport=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_sessionmanager=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_spatialaudio=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_sql=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_syntaxhighlighter=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_tabletevent=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_textmarkdownwriter=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_textodfwriter=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_topleveldomain=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_undocommand=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_undogroup=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_undostack=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_undoview=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_vnc=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_QMAKE_TARGET_MKSPEC=linux-g++", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_xcb=ON", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_xcb_xlib=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_xlib=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_freetype=ON", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_system_freetype=ON", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_fontconfig=ON", + "*:x86_64-linux-gnu:config_opts=$config_opts -DINPUT_opengl=no", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengl=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengles2=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengles3=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengles31=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengles32=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengl_desktop=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_vulkan=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_backtrace=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_dbus=ON", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_dbus_linked=ON", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland_client=ON", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland_server=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland_drm_egl_server_buffer=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-shm-emulation-server-buffer=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-fullscreen-shell-v1=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-ivi-shell=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-wl-shell=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-xdg-shell-v5=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-xdg-shell-v6=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DBUILD_WITH_PCH=OFF", + "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_linux_v4l=OFF", + "*:x86_64-apple-darwin:OPENSSL_LIBS=-lssl -lcrypto", + "*:x86_64-apple-darwin:QT_MAC_SDK_NO_VERSION_CHECK=1", + "*:x86_64-apple-darwin:config_opts=-G Ninja", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_HOST_PATH=$QT_HOST_PATH", + "*:x86_64-apple-darwin:config_opts=$config_opts -DCMAKE_PREFIX_PATH=$QT_HOST_PATH/lib/cmake", + "*:x86_64-apple-darwin:config_opts=$config_opts -DBUILD_SHARED_LIBS=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_BUILD_EXAMPLES=FALSE", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_BUILD_TESTS=FALSE", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_GENERATE_SBOM=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_cups=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_qmake=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_egl=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_egl_x11=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_xcb_egl_plugin=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_xcb_glx_plugin=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_eglfs=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_evdev=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_gif=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_glib=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_icu=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_ico=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_kms=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_linuxfb=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_libudev=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_mtdev=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_openssl=ON", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_openssl_linked=ON", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_openvg=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_permissions=ON", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_reduce_relocations=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_schannel=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_sctp=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_securetransport=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_system_proxies=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_use_gold_linker_alias=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_zstd=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_system_png=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_system_pcre2=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_system_harfbuzz=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_system_zlib=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_colordialog=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_dial=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_fontcombobox=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_image_heuristic_mask=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_keysequenceedit=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_lcdnumber=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_networkdiskcache=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_pdf=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_printdialog=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_printer=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_printpreviewdialog=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_printpreviewwidget=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_printsupport=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_sessionmanager=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_spatialaudio=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_sql=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_syntaxhighlighter=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_tabletevent=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_textmarkdownwriter=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_textodfwriter=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_topleveldomain=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_undocommand=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_undogroup=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_undostack=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_undoview=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_vnc=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_QMAKE_TARGET_MKSPEC=macx-clang", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_accessibility=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_dbus=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_freetype=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_ffmpeg=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DBUILD_WITH_PCH=OFF", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_NO_APPLE_SDK_AND_XCODE_CHECK=ON", + "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_appstore_compliant=ON", + "*:x86_64-w64-mingw32:OPENSSL_LIBS=-lssl -lcrypto -lws2_32", + "*:x86_64-w64-mingw32:config_opts=-G Ninja", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_HOST_PATH=$QT_HOST_PATH", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DCMAKE_PREFIX_PATH=$QT_HOST_PATH/lib/cmake", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DBUILD_SHARED_LIBS=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_BUILD_EXAMPLES=FALSE", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_BUILD_TESTS=FALSE", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_GENERATE_SBOM=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_cups=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_qmake=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_egl=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_egl_x11=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_xcb_egl_plugin=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_xcb_glx_plugin=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_eglfs=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_evdev=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_gif=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_glib=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_icu=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_ico=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_kms=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_linuxfb=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_libudev=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_mtdev=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_openssl=ON", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_openssl_linked=ON", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_openvg=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_permissions=ON", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_reduce_relocations=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_schannel=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_sctp=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_securetransport=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_system_proxies=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_use_gold_linker_alias=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_zstd=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_system_png=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_system_pcre2=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_system_harfbuzz=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_system_zlib=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_colordialog=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_dial=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_fontcombobox=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_image_heuristic_mask=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_keysequenceedit=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_lcdnumber=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_networkdiskcache=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_pdf=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_printdialog=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_printer=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_printpreviewdialog=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_printpreviewwidget=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_printsupport=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_sessionmanager=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_spatialaudio=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_sql=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_syntaxhighlighter=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_tabletevent=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_textmarkdownwriter=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_textodfwriter=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_topleveldomain=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_undocommand=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_undogroup=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_undostack=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_undoview=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_vnc=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_QMAKE_TARGET_MKSPEC=win32-g++", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DINPUT_opengl=no", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_dbus=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_freetype=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_ffmpeg=OFF", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_wmf=ON", + "*:x86_64-w64-mingw32:config_opts=$config_opts -DBUILD_WITH_PCH=ON" + ], + "steps": [ + "*:x86_64-linux-gnu:for mod in qtbase qtsvg qtwebsockets qtshadertools qtmultimedia qtwayland; do inner=$mod/$mod-everywhere-src-*; if [ -d $inner ]; then mv $inner/* $mod/ && rmdir $inner; fi; done", + "*:x86_64-linux-gnu:cp $PATCH_DIR/qt/root_CMakeLists.txt CMakeLists.txt", + "*:x86_64-linux-gnu:patch -p1 < $PATCH_DIR/qt/rcc_hardcode_timestamp.patch", + "*:x86_64-linux-gnu:patch -p1 < $PATCH_DIR/qt/windows_func_fix.patch", + "*:x86_64-linux-gnu:cp $PATCH_DIR/qt/toolchain.cmake toolchain.cmake", + "*:x86_64-linux-gnu:sed -i -e \"s|@cmake_system_name@|Linux|\" -e \"s|@target@|$HOST|\" -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@sdk_path@||\" -e \"s|@cc@||\" -e \"s|@cxx@||\" -e \"s|@osx_min_version@||\" -e \"s|@cmake_c_flags@||\" -e \"s|@cmake_cxx_flags@||\" -e \"s|@cmake_ld_flags@||\" -e \"s|@wmf_libs@||\" toolchain.cmake", + "*:x86_64-linux-gnu:cd qtbase && patch -p1 < $PATCH_DIR/qt/libxau-fix.patch", + "*:x86_64-linux-gnu:cd qtmultimedia && patch -p1 < $PATCH_DIR/qt/v4l2.patch", + "*:x86_64-linux-gnu:cmake . $config_opts", + "*:x86_64-linux-gnu:LD_LIBRARY_PATH=$NATIVEPREFIX/lib env -u C_INCLUDE_PATH -u CPLUS_INCLUDE_PATH -u OBJC_INCLUDE_PATH -u OBJCPLUS_INCLUDE_PATH -u CPATH -u LIBRARY_PATH cmake --build . --parallel $NUM_CORES", + "*:x86_64-linux-gnu:DESTDIR=$STAGING_DIR cmake --install .", + "*:x86_64-apple-darwin:for mod in qtbase qtsvg qtwebsockets qtshadertools qtmultimedia qtwayland; do inner=$mod/$mod-everywhere-src-*; if [ -d $inner ]; then mv $inner/* $mod/ && rmdir $inner; fi; done", + "*:x86_64-apple-darwin:cp $PATCH_DIR/qt/root_CMakeLists.txt CMakeLists.txt", + "*:x86_64-apple-darwin:patch -p1 < $PATCH_DIR/qt/rcc_hardcode_timestamp.patch", + "*:x86_64-apple-darwin:patch -p1 < $PATCH_DIR/qt/windows_func_fix.patch", + "*:x86_64-apple-darwin:cp $PATCH_DIR/qt/toolchain.cmake toolchain.cmake", + "*:x86_64-apple-darwin:sed -i -e \"s|@cmake_system_name@|Darwin|\" -e \"s|@target@|$HOST|\" -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@sdk_path@|$SDK_PATH|\" -e \"s|@cc@|$NATIVEPREFIX/bin/$HOST-clang|\" -e \"s|@cxx@|$NATIVEPREFIX/bin/$HOST-clang++|\" -e \"s|@osx_min_version@|$OSX_MIN_VERSION|\" -e \"s|@cmake_c_flags@|-mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH|\" -e \"s|@cmake_cxx_flags@|-mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -stdlib=libc++|\" -e \"s|@cmake_ld_flags@|$LDFLAGS|\" -e \"s|@wmf_libs@||\" toolchain.cmake", + "*:x86_64-apple-darwin:cd qtbase && patch -p1 < $PATCH_DIR/qt/fix_static_qt_darwin_camera_permissions.patch", + "*:x86_64-apple-darwin:cmake . $config_opts -DQT_QMAKE_DEVICE_OPTIONS=MAC_SDK_PATH=$SDK_PATH\\;MAC_SDK_VERSION=$SDK_VERSION\\;CROSS_COMPILE=$HOST-\\;MAC_TARGET=$HOST\\;XCODE_VERSION=$SDK_VERSION", + "*:x86_64-apple-darwin:LD_LIBRARY_PATH=$NATIVEPREFIX/lib env -u C_INCLUDE_PATH -u CPLUS_INCLUDE_PATH -u OBJC_INCLUDE_PATH -u OBJCPLUS_INCLUDE_PATH -u CPATH -u LIBRARY_PATH cmake --build . --parallel $NUM_CORES", + "*:x86_64-apple-darwin:DESTDIR=$STAGING_DIR cmake --install .", + "*:x86_64-w64-mingw32:for mod in qtbase qtsvg qtwebsockets qtshadertools qtmultimedia qtwayland; do inner=$mod/$mod-everywhere-src-*; if [ -d $inner ]; then mv $inner/* $mod/ && rmdir $inner; fi; done", + "*:x86_64-w64-mingw32:cp $PATCH_DIR/qt/root_CMakeLists.txt CMakeLists.txt", + "*:x86_64-w64-mingw32:patch -p1 < $PATCH_DIR/qt/rcc_hardcode_timestamp.patch", + "*:x86_64-w64-mingw32:patch -p1 < $PATCH_DIR/qt/windows_func_fix.patch", + "*:x86_64-w64-mingw32:cp $PATCH_DIR/qt/toolchain.cmake toolchain.cmake", + "*:x86_64-w64-mingw32:sed -i -e \"s|@cmake_system_name@|Windows|\" -e \"s|@target@|$HOST|\" -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@sdk_path@||\" -e \"s|@cc@||\" -e \"s|@cxx@||\" -e \"s|@osx_min_version@||\" -e \"s|@cmake_c_flags@|$CFLAGS|\" -e \"s|@cmake_cxx_flags@|$CXXFLAGS|\" -e \"s|@cmake_ld_flags@|$LDFLAGS|\" -e \"s|@wmf_libs@||\" toolchain.cmake", + "*:x86_64-w64-mingw32:cmake . $config_opts", + "*:x86_64-w64-mingw32:LD_LIBRARY_PATH=$NATIVEPREFIX/lib env -u C_INCLUDE_PATH -u CPLUS_INCLUDE_PATH -u OBJC_INCLUDE_PATH -u OBJCPLUS_INCLUDE_PATH -u CPATH -u LIBRARY_PATH cmake --build . --parallel $NUM_CORES", + "*:x86_64-w64-mingw32:DESTDIR=$STAGING_DIR cmake --install ." + ] + } +} diff --git a/packages/wayland@1_25_0.json b/packages/wayland@1_25_0.json new file mode 100644 index 0000000..eb4f9bd --- /dev/null +++ b/packages/wayland@1_25_0.json @@ -0,0 +1,41 @@ +{ + "package": "wayland@1_25_0", + "version": "1_25_0", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "95413723f6cd0462770eda207a1c78d142d0a1bba9b0572a4ed1da6a9b27059c", + "url": "https://gitlab.freedesktop.org/wayland/wayland/-/archive/1.25.0/wayland-1.25.0.tar.gz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/meson", + "*:x86_64-linux-gnu:native/ninja", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/python@3.11", + "*:x86_64-linux-gnu:native/wayland@1_25_0", + "*:x86_64-linux-gnu:expat", + "*:x86_64-linux-gnu:libffi@3_5_2", + "*:x86_64-linux-gnu:native/sed" + ], + "patches": [ + "toolchain.txt" + ], + "build": { + "env": [], + "steps": [ + "*:x86_64-linux-gnu:cp $PATCH_DIR/wayland/toolchain.txt toolchain.txt", + "*:x86_64-linux-gnu:sed -i -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@cc@|$CC|\" -e \"s|@cxx@|$CXX|\" -e \"s|@ar@|$AR|\" -e \"s|@strip@|$STRIP|\" -e \"s|@arch@|$ARCH|\" toolchain.txt", + "*:x86_64-linux-gnu:PKG_CONFIG_LIBDIR=$PREFIX/lib/pkgconfig:$NATIVEPREFIX/lib/pkgconfig PKG_CONFIG_PATH=$NATIVEPREFIX/lib/pkgconfig $NATIVEPREFIX/bin/meson setup --cross-file toolchain.txt build -Ddtd_validation=false -Ddocumentation=false -Dprefer_static=true -Ddefault_library=static -Dtests=false -Dscanner=false", + "*:x86_64-linux-gnu:ninja -C build", + "*:x86_64-linux-gnu:DESTDIR=$STAGING_DIR ninja -C build install" + ] + } +} diff --git a/packages/xcb_proto@1_17_0.json b/packages/xcb_proto@1_17_0.json new file mode 100644 index 0000000..60b50fa --- /dev/null +++ b/packages/xcb_proto@1_17_0.json @@ -0,0 +1,35 @@ +{ + "package": "xcb_proto@1_17_0", + "version": "1_17_0", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "392d3c9690f8c8202a68fdb89c16fd55159ab8d65000a6da213f4a1576e97a16", + "url": "https://xorg.freedesktop.org/archive/individual/proto/xcb-proto-1.17.0.tar.gz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/make", + "*:x86_64-linux-gnu:native/python@3.14", + "*:x86_64-linux-gnu:native/sed" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX" + ], + "steps": [ + "*:x86_64-linux-gnu:bash ./configure $config_opts", + "*:x86_64-linux-gnu:make -j$NUM_CORES", + "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/lib/python*/site-packages/xcbgen/__pycache__" + ] + } +} diff --git a/packages/xorgproto@2025_1.json b/packages/xorgproto@2025_1.json new file mode 100644 index 0000000..49a0a90 --- /dev/null +++ b/packages/xorgproto@2025_1.json @@ -0,0 +1,33 @@ +{ + "package": "xorgproto@2025_1", + "version": "2025_1", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "d6f89f65bafb8c9b735e0515882b8a1511e8e864dde5e9513e191629369f2256", + "url": "https://xorg.freedesktop.org/archive/individual/proto/xorgproto-2025.1.tar.gz" + } + ], + "dependencies": [ + "*:x86_64-linux-gnu:native/_", + "*:x86_64-linux-gnu:native/bash", + "*:x86_64-linux-gnu:native/coreutils", + "*:x86_64-linux-gnu:native/findutils", + "*:x86_64-linux-gnu:native/gawk", + "*:x86_64-linux-gnu:native/grep", + "*:x86_64-linux-gnu:native/make", + "*:x86_64-linux-gnu:native/pkgconf", + "*:x86_64-linux-gnu:native/sed" + ], + "build": { + "env": [ + "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --without-fop --without-xmlto --without-xsltproc --disable-specs --disable-dependency-tracking --enable-option-checking" + ], + "steps": [ + "*:x86_64-linux-gnu:bash ./configure $config_opts", + "*:x86_64-linux-gnu:make -j$NUM_CORES", + "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install" + ] + } +} diff --git a/patches/dbus/remove-DDBUS_STATIC_BUILD.patch b/patches/dbus/remove-DDBUS_STATIC_BUILD.patch new file mode 100644 index 0000000..f873efd --- /dev/null +++ b/patches/dbus/remove-DDBUS_STATIC_BUILD.patch @@ -0,0 +1,10 @@ +diff --git a/dbus-1.pc.in b/dbus-1.pc.in +index 3581be6e..ef422589 100644 +--- a/dbus-1.pc.in ++++ b/dbus-1.pc.in +@@ -18,4 +18,4 @@ Description: Free desktop message bus + Version: @VERSION@ + Libs: -L${libdir} -ldbus-1 + Libs.private: @LIBDBUS_LIBS@ +-Cflags: -I${includedir}/dbus-1.0 -I${libdir}/dbus-1.0/include @DBUS_STATIC_BUILD_CPPFLAGS@ ++Cflags: -I${includedir}/dbus-1.0 -I${libdir}/dbus-1.0/include diff --git a/patches/fontconfig/gperf_header_regen.patch b/patches/fontconfig/gperf_header_regen.patch new file mode 100644 index 0000000..b1a70d5 --- /dev/null +++ b/patches/fontconfig/gperf_header_regen.patch @@ -0,0 +1,24 @@ +commit 7b6eb33ecd88768b28c67ce5d2d68a7eed5936b6 +Author: fanquake +Date: Tue Aug 25 14:34:53 2020 +0800 + + Remove rule that causes inadvertent header regeneration + + Otherwise the makefile will needlessly attempt to re-generate the + headers with gperf. This can be dropped once the upstream build is fixed. + + See #10851. + +diff --git a/src/Makefile.in b/src/Makefile.in +index f4626ad..4ae1b00 100644 +--- a/src/Makefile.in ++++ b/src/Makefile.in +@@ -912,7 +912,7 @@ + ' - > $@.tmp && \ + mv -f $@.tmp fcobjshash.gperf && touch $@ || ( $(RM) $@.tmp && false ) + +-fcobjshash.h: Makefile fcobjshash.gperf ++fcobjshash.h: + $(AM_V_GEN) $(GPERF) --pic -m 100 fcobjshash.gperf > $@.tmp && \ + mv -f $@.tmp $@ || ( $(RM) $@.tmp && false ) + diff --git a/patches/libXau/toolchain.txt b/patches/libXau/toolchain.txt new file mode 100644 index 0000000..a01dc0d --- /dev/null +++ b/patches/libXau/toolchain.txt @@ -0,0 +1,17 @@ +[binaries] +c = '@cc@' +cpp = '@cxx@' +ar = '@ar@' +strip = '@strip@' +pkgconfig = 'pkg-config' + +[host_machine] +system = 'linux' +cpu_family = '@arch@' +cpu = '@arch@' +endian = 'little' + +[built-in options] +default_library = 'static' +prefer_static = true +prefix = '@host_prefix@' diff --git a/patches/libxcb/remove_pthread_stubs.patch b/patches/libxcb/remove_pthread_stubs.patch new file mode 100644 index 0000000..b948cdb --- /dev/null +++ b/patches/libxcb/remove_pthread_stubs.patch @@ -0,0 +1,14 @@ +Remove uneeded pthread-stubs dependency +diff --git a/configure b/configure +index 969e8ac..0ab13c7 100755 +--- a/configure ++++ b/configure +@@ -21483,7 +21483,7 @@ fi + NEEDED="xau >= 0.99.2" + case $host_os in + linux*|darwin*|solaris*|dragonfly*|freebsd*|netbsd*) ;; +- *) NEEDED="$NEEDED pthread-stubs" ;; ++ *) NEEDED="$NEEDED" ;; + esac + + pkg_failed=no diff --git a/patches/libxkbcommon/no-test-x11.patch b/patches/libxkbcommon/no-test-x11.patch new file mode 100644 index 0000000..8612ab0 --- /dev/null +++ b/patches/libxkbcommon/no-test-x11.patch @@ -0,0 +1,55 @@ +diff --git a/meson.build b/meson.build +index 92483c54..651f7a60 100644 +--- a/meson.build ++++ b/meson.build +@@ -1192,36 +1192,6 @@ test( + dependencies: test_dep), + env: test_env, + ) +-if get_option('enable-x11') +- has_xvfb = find_program('Xvfb', required: false) +- has_xkbcomp = find_program('xkbcomp', required: false) +- # We only warn because the build machine may not be the same +- # as the host/test machine. +- if not has_xvfb.found() +- warning('Xvfb program not found, but is required to run X11 tests.') +- endif +- if not has_xkbcomp.found() +- warning('xkbcomp program not found, but is required to run X11 tests.') +- endif +- test( +- 'x11', +- executable('test-x11', 'test/x11.c', dependencies: x11_xvfb_test_dep), +- env: test_env, +- is_parallel : false, +- ) +- test( +- 'x11comp', +- executable( +- 'test-x11comp', +- 'test/x11comp.c', +- 'test/utils-text.c', +- 'test/utils-text.h', +- dependencies: x11_xvfb_test_dep +- ), +- env: test_env, +- is_parallel : false, +- ) +-endif + if get_option('enable-xkbregistry') + test( + 'registry', +@@ -1365,13 +1335,6 @@ benchmark( + executable('bench-atom', 'bench/atom.c', dependencies: test_dep), + env: bench_env, + ) +-if get_option('enable-x11') +- benchmark( +- 'x11', +- executable('bench-x11', 'bench/x11.c', dependencies: x11_test_dep), +- env: bench_env, +- ) +-endif + + + # Documentation. diff --git a/patches/libxkbcommon/toolchain.txt b/patches/libxkbcommon/toolchain.txt new file mode 100644 index 0000000..e209e79 --- /dev/null +++ b/patches/libxkbcommon/toolchain.txt @@ -0,0 +1,21 @@ +[binaries] +c = '@cc@' +cpp = '@cxx@' +ar = '@ar@' +strip = '@strip@' +pkgconfig = 'pkg-config' + +[host_machine] +system = 'linux' +cpu_family = '@arch@' +cpu = '@arch@' +endian = 'little' + +[project options] +enable-xkbregistry = false +enable-docs = false +enable-tools = false + +[built-in options] +default_library = 'static' +prefix = '@host_prefix@' \ No newline at end of file diff --git a/patches/native_qt/guix_cross_lib_path.patch b/patches/native_qt/guix_cross_lib_path.patch new file mode 100644 index 0000000..7911dc2 --- /dev/null +++ b/patches/native_qt/guix_cross_lib_path.patch @@ -0,0 +1,17 @@ +Facilitate guix building with CROSS_LIBRARY_PATH + +See discussion in https://github.com/bitcoin/bitcoin/pull/15277. + +--- a/qtbase/mkspecs/features/toolchain.prf ++++ b/qtbase/mkspecs/features/toolchain.prf +@@ -236,8 +236,8 @@ isEmpty($${target_prefix}.INCDIRS) { + add_libraries = false + for (line, output) { + line ~= s/^[ \\t]*// # remove leading spaces +- contains(line, "LIBRARY_PATH=.*") { +- line ~= s/^LIBRARY_PATH=// # remove leading LIBRARY_PATH= ++ contains(line, "(CROSS_)?LIBRARY_PATH=.*") { ++ line ~= s/^(CROSS_)?LIBRARY_PATH=// # remove leading (CROSS_)?LIBRARY_PATH= + equals(QMAKE_HOST.os, Windows): \ + paths = $$split(line, ;) + else: \ diff --git a/patches/native_qt/qtbase-moc-ignore-gcc-macro.patch b/patches/native_qt/qtbase-moc-ignore-gcc-macro.patch new file mode 100644 index 0000000..9b848cc --- /dev/null +++ b/patches/native_qt/qtbase-moc-ignore-gcc-macro.patch @@ -0,0 +1,17 @@ +The moc executable loops through headers on CPLUS_INCLUDE_PATH and stumbles +on the GCC internal _GLIBCXX_VISIBILITY macro. Tell it to ignore it as it is +not supposed to be looking there to begin with. + +Upstream report: https://bugreports.qt.io/browse/QTBUG-83160 + +diff --git a/qtbase/src/tools/moc/main.cpp b/qtbase/src/tools/moc/main.cpp +--- a/qtbase/src/tools/moc/main.cpp ++++ b/qtbase/src/tools/moc/main.cpp +@@ -197,6 +197,7 @@ int runMoc(int argc, char **argv) + dummyVariadicFunctionMacro.arguments += Symbol(0, PP_IDENTIFIER, "__VA_ARGS__"); + pp.macros["__attribute__"] = dummyVariadicFunctionMacro; + pp.macros["__declspec"] = dummyVariadicFunctionMacro; ++ pp.macros["_GLIBCXX_VISIBILITY"] = dummyVariadicFunctionMacro; + + QString filename; + QString output; diff --git a/patches/native_qt/rcc_hardcode_timestamp.patch b/patches/native_qt/rcc_hardcode_timestamp.patch new file mode 100644 index 0000000..591ecaa --- /dev/null +++ b/patches/native_qt/rcc_hardcode_timestamp.patch @@ -0,0 +1,25 @@ +Hardcode last modified timestamp in Qt RCC + +This change allows the already built qt package to be reused even with +the SOURCE_DATE_EPOCH variable set, e.g., for Guix builds. + +diff --git a/qtbase/src/tools/rcc/rcc.cpp b/qtbase/src/tools/rcc/rcc.cpp +index e461ab6294..256dc0ba29 100644 +--- a/qtbase/src/tools/rcc/rcc.cpp ++++ b/qtbase/src/tools/rcc/rcc.cpp +@@ -201,14 +201,7 @@ void RCCFileInfo::writeDataInfo(RCCResourceLibrary &lib) + + if (lib.formatVersion() >= 2) { + // last modified time stamp +- const QDateTime lastModified = m_fileInfo.lastModified(QTimeZone::UTC); +- quint64 lastmod = quint64(lastModified.isValid() ? lastModified.toMSecsSinceEpoch() : 0); +- static const quint64 sourceDate = 1000 * qgetenv("QT_RCC_SOURCE_DATE_OVERRIDE").toULongLong(); +- if (sourceDate != 0) +- lastmod = sourceDate; +- static const quint64 sourceDate2 = 1000 * qgetenv("SOURCE_DATE_EPOCH").toULongLong(); +- if (sourceDate2 != 0) +- lastmod = sourceDate2; ++ quint64 lastmod = quint64(1); + lib.writeNumber8(lastmod); + if (text || pass1) + lib.writeChar('\n'); diff --git a/patches/native_qt/root_CMakeLists.txt b/patches/native_qt/root_CMakeLists.txt new file mode 100644 index 0000000..8ad7584 --- /dev/null +++ b/patches/native_qt/root_CMakeLists.txt @@ -0,0 +1,51 @@ +# The real minimum version will be checked by the qtbase project. +# 3.16 is the absolute minimum though. +cmake_minimum_required(VERSION 3.16...3.20) + +# Include qtbase's .cmake.conf for access to QT_REPO_MODULE_VERSION +set(__qt6_qtbase_src_path "${CMAKE_CURRENT_SOURCE_DIR}/qtbase") +include("${__qt6_qtbase_src_path}/.cmake.conf") + +# Run platform auto-detection /before/ the first project() call and thus +# before the toolchain file is loaded. +include("${__qt6_qtbase_src_path}/cmake/QtAutoDetect.cmake") + +project(Qt + VERSION "${QT_REPO_MODULE_VERSION}" + DESCRIPTION "Qt Libraries" + HOMEPAGE_URL "https://qt.io/" + LANGUAGES CXX C ASM +) + +# Required so we can call ctest from the root build directory +enable_testing() + +set(qt_module_prop_prefix "__qt_prop_") + +list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") +list(APPEND CMAKE_MODULE_PATH "${__qt6_qtbase_src_path}/cmake") +list(APPEND CMAKE_MODULE_PATH + "${__qt6_qtbase_src_path}/cmake/3rdparty/extra-cmake-modules/find-modules") +list(APPEND CMAKE_MODULE_PATH "${__qt6_qtbase_src_path}/cmake/3rdparty/kwin") + +# Also make sure the CMake config files do not recreate the already-existing targets +set(QT_NO_CREATE_TARGETS TRUE) +set(QT_SUPERBUILD TRUE) + +set(QT_BUILD_SUBMODULES "qtbase;qttools;qtshadertools" CACHE STRING "Submodules to build") + +foreach(module IN LISTS QT_BUILD_SUBMODULES) + message(NOTICE "Configuring '${module}'") + add_subdirectory("${module}") + + if(module STREQUAL "qtbase") + list(APPEND CMAKE_PREFIX_PATH "${QtBase_BINARY_DIR}/lib/cmake") + list(APPEND CMAKE_FIND_ROOT_PATH "${QtBase_BINARY_DIR}") + endif() +endforeach() + +# Display a summary of everything +include(QtBuildInformation) +include(QtPlatformSupport) +qt_print_feature_summary() +qt_print_build_instructions() diff --git a/patches/qt/fix_static_qt_darwin_camera_permissions.patch b/patches/qt/fix_static_qt_darwin_camera_permissions.patch new file mode 100644 index 0000000..f8b8391 --- /dev/null +++ b/patches/qt/fix_static_qt_darwin_camera_permissions.patch @@ -0,0 +1,27 @@ +diff --git a/src/corelib/platform/darwin/qdarwinpermissionplugin_camera.mm b/src/corelib/platform/darwin/qdarwinpermissionplugin_camera.mm +index 51c517d6f3..ed3135fba3 100644 +--- a/src/corelib/platform/darwin/qdarwinpermissionplugin_camera.mm ++++ b/src/corelib/platform/darwin/qdarwinpermissionplugin_camera.mm +@@ -7,8 +7,6 @@ + + QT_DEFINE_PERMISSION_STATUS_CONVERTER(AVAuthorizationStatus); + +-#ifndef BUILDING_PERMISSION_REQUEST +- + @implementation QDarwinCameraPermissionHandler + - (Qt::PermissionStatus)checkPermission:(QPermission)permission + { +@@ -25,8 +23,6 @@ QT_DEFINE_PERMISSION_STATUS_CONVERTER(AVAuthorizationStatus); + + #include "moc_qdarwinpermissionplugin_p_p.cpp" + +-#else // Building request +- + @implementation QDarwinCameraPermissionHandler (Request) + - (void)requestPermission:(QPermission)permission withCallback:(PermissionCallback)callback + { +@@ -39,4 +35,3 @@ QT_DEFINE_PERMISSION_STATUS_CONVERTER(AVAuthorizationStatus); + } + @end + +-#endif // BUILDING_PERMISSION_REQUEST diff --git a/patches/qt/libxau-fix.patch b/patches/qt/libxau-fix.patch new file mode 100644 index 0000000..b3e4c9e --- /dev/null +++ b/patches/qt/libxau-fix.patch @@ -0,0 +1,12 @@ +diff --git a/src/gui/configure.cmake b/src/gui/configure.cmake +index 1ff24eebaf..1ce02f058e 100644 +--- a/src/gui/configure.cmake ++++ b/src/gui/configure.cmake +@@ -499,6 +499,7 @@ qt_config_compile_test(xcb_syslibs + XCB::XFIXES + XCB::XKB + XCB::XCB ++ X11::Xau + CODE + "// xkb.h is using a variable called 'explicit', which is a reserved keyword in C++ + #define explicit dont_use_cxx_explicit diff --git a/patches/qt/rcc_hardcode_timestamp.patch b/patches/qt/rcc_hardcode_timestamp.patch new file mode 100644 index 0000000..591ecaa --- /dev/null +++ b/patches/qt/rcc_hardcode_timestamp.patch @@ -0,0 +1,25 @@ +Hardcode last modified timestamp in Qt RCC + +This change allows the already built qt package to be reused even with +the SOURCE_DATE_EPOCH variable set, e.g., for Guix builds. + +diff --git a/qtbase/src/tools/rcc/rcc.cpp b/qtbase/src/tools/rcc/rcc.cpp +index e461ab6294..256dc0ba29 100644 +--- a/qtbase/src/tools/rcc/rcc.cpp ++++ b/qtbase/src/tools/rcc/rcc.cpp +@@ -201,14 +201,7 @@ void RCCFileInfo::writeDataInfo(RCCResourceLibrary &lib) + + if (lib.formatVersion() >= 2) { + // last modified time stamp +- const QDateTime lastModified = m_fileInfo.lastModified(QTimeZone::UTC); +- quint64 lastmod = quint64(lastModified.isValid() ? lastModified.toMSecsSinceEpoch() : 0); +- static const quint64 sourceDate = 1000 * qgetenv("QT_RCC_SOURCE_DATE_OVERRIDE").toULongLong(); +- if (sourceDate != 0) +- lastmod = sourceDate; +- static const quint64 sourceDate2 = 1000 * qgetenv("SOURCE_DATE_EPOCH").toULongLong(); +- if (sourceDate2 != 0) +- lastmod = sourceDate2; ++ quint64 lastmod = quint64(1); + lib.writeNumber8(lastmod); + if (text || pass1) + lib.writeChar('\n'); diff --git a/patches/qt/root_CMakeLists.txt b/patches/qt/root_CMakeLists.txt new file mode 100644 index 0000000..6b7f6a7 --- /dev/null +++ b/patches/qt/root_CMakeLists.txt @@ -0,0 +1,51 @@ +# The real minimum version will be checked by the qtbase project. +# 3.16 is the absolute minimum though. +cmake_minimum_required(VERSION 3.16...3.20) + +# Include qtbase's .cmake.conf for access to QT_REPO_MODULE_VERSION +set(__qt6_qtbase_src_path "${CMAKE_CURRENT_SOURCE_DIR}/qtbase") +include("${__qt6_qtbase_src_path}/.cmake.conf") + +# Run platform auto-detection /before/ the first project() call and thus +# before the toolchain file is loaded. +include("${__qt6_qtbase_src_path}/cmake/QtAutoDetect.cmake") + +project(Qt + VERSION "${QT_REPO_MODULE_VERSION}" + DESCRIPTION "Qt Libraries" + HOMEPAGE_URL "https://qt.io/" + LANGUAGES CXX C ASM +) + +# Required so we can call ctest from the root build directory +enable_testing() + +set(qt_module_prop_prefix "__qt_prop_") + +list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") +list(APPEND CMAKE_MODULE_PATH "${__qt6_qtbase_src_path}/cmake") +list(APPEND CMAKE_MODULE_PATH + "${__qt6_qtbase_src_path}/cmake/3rdparty/extra-cmake-modules/find-modules") +list(APPEND CMAKE_MODULE_PATH "${__qt6_qtbase_src_path}/cmake/3rdparty/kwin") + +# Also make sure the CMake config files do not recreate the already-existing targets +set(QT_NO_CREATE_TARGETS TRUE) +set(QT_SUPERBUILD TRUE) + +set(QT_BUILD_SUBMODULES "qtbase;qtsvg;qtwebsockets;qtshadertools;qtmultimedia;qtwayland" CACHE STRING "Submodules to build") + +foreach(module IN LISTS QT_BUILD_SUBMODULES) + message(NOTICE "Configuring '${module}'") + add_subdirectory("${module}") + + if(module STREQUAL "qtbase") + list(APPEND CMAKE_PREFIX_PATH "${QtBase_BINARY_DIR}/lib/cmake") + list(APPEND CMAKE_FIND_ROOT_PATH "${QtBase_BINARY_DIR}") + endif() +endforeach() + +# Display a summary of everything +include(QtBuildInformation) +include(QtPlatformSupport) +qt_print_feature_summary() +qt_print_build_instructions() diff --git a/patches/qt/toolchain.cmake b/patches/qt/toolchain.cmake new file mode 100644 index 0000000..2ee7921 --- /dev/null +++ b/patches/qt/toolchain.cmake @@ -0,0 +1,36 @@ +set(CMAKE_SYSTEM_NAME @cmake_system_name@) + +set(CMAKE_C_COMPILER @target@-gcc) +set(CMAKE_CXX_COMPILER @target@-g++) +set(CMAKE_FIND_ROOT_PATH @host_prefix@) + +set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) + +set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) + +set(CMAKE_FIND_ROOT_PATH @host_prefix@) + +if(CMAKE_SYSTEM_NAME STREQUAL "Windows") + set(CMAKE_FIND_ROOT_PATH @host_prefix@;@wmf_libs@) +endif() + +if(CMAKE_SYSTEM_NAME STREQUAL "Darwin") + set(TARGET_SYSROOT @sdk_path@) + set(CMAKE_SYSROOT ${TARGET_SYSROOT}) + set(CMAKE_OSX_SYSROOT ${TARGET_SYSROOT}) + + set(CMAKE_C_COMPILER @cc@) + set(CMAKE_CXX_COMPILER @cxx@) + + set(CMAKE_C_FLAGS "@cmake_c_flags@") + set(CMAKE_CXX_FLAGS "@cmake_cxx_flags@") + set(CMAKE_OBJC_FLAGS "@cmake_c_flags@") + set(CMAKE_OBJCXX_FLAGS "@cmake_cxx_flags@") + set(CMAKE_EXE_LINKER_FLAGS "@cmake_ld_flags@") + set(CMAKE_MODULE_LINKER_FLAGS "@cmake_ld_flags@") + set(CMAKE_SHARED_LINKER_FLAGS "@cmake_ld_flags@") + SET(CMAKE_OSX_DEPLOYMENT_TARGET "@osx_min_version@") + + set(CMAKE_INSTALL_NAME_TOOL @target@-install_name_tool) +endif() \ No newline at end of file diff --git a/patches/qt/v4l2.patch b/patches/qt/v4l2.patch new file mode 100644 index 0000000..92d4626 --- /dev/null +++ b/patches/qt/v4l2.patch @@ -0,0 +1,2602 @@ +diff --git a/src/multimedia/configure.cmake b/src/multimedia/configure.cmake +index 7bb46abc6..785fe5faa 100644 +--- a/src/multimedia/configure.cmake ++++ b/src/multimedia/configure.cmake +@@ -63,28 +63,6 @@ if(TARGET EGL::EGL) + endif() + qt_find_package(EGL PROVIDED_TARGETS EGL::EGL) + +-# If FFMPEG_DIR is specified, we require FFmpeg to be present. This makes +-# configuration problems easier to detect, and reduces risk of silent +-# fallback to native backends. +-if (DEFINED FFMPEG_DIR) +- set(ffmpeg_required REQUIRED) +-endif() +- +-qt_find_package(FFmpeg OPTIONAL_COMPONENTS AVCODEC AVFORMAT AVUTIL SWRESAMPLE SWSCALE PROVIDED_TARGETS FFmpeg::avcodec FFmpeg::avformat FFmpeg::avutil FFmpeg::swresample FFmpeg::swscale MODULE_NAME multimedia QMAKE_LIB ffmpeg ${ffmpeg_required}) +-qt_find_package_extend_sbom( +- TARGETS +- FFmpeg::avcodec +- FFmpeg::avformat +- FFmpeg::avutil +- FFmpeg::swresample +- FFmpeg::swscale +- USE_ATTRIBUTION_FILES +- ATTRIBUTION_FILE_DIR_PATHS +- # Need to pass an absolute path here, otherwise the file will be relative to the root of +- # the source tree, not the current dir, because system libraries are processed in the +- # source root directory. +- ${CMAKE_CURRENT_SOURCE_DIR}/../3rdparty/ffmpeg +-) + qt_find_package(PipeWire PROVIDED_TARGETS PipeWire::PipeWire MODULE_NAME multimedia QMAKE_LIB pipewire) + qt_find_package(VAAPI COMPONENTS VA DRM PROVIDED_TARGETS VAAPI::VAAPI MODULE_NAME multimedia QMAKE_LIB vaapi) + +@@ -236,9 +214,7 @@ qt_feature("ffmpeg" PRIVATE + LABEL "FFmpeg" + ENABLE INPUT_ffmpeg STREQUAL 'yes' + DISABLE INPUT_ffmpeg STREQUAL 'no' +- CONDITION FFmpeg_FOUND +- AND (APPLE OR WIN32 OR ANDROID OR QNX OR QT_FEATURE_pulseaudio OR QT_FEATURE_pipewire) +- AND QT_FEATURE_thread ++ CONDITION UNIX OR WIN32 + ) + + # Caveat: FEATURE_ffmpeg_stubs cannot really be used to disable stubbing, it is just used to inform +diff --git a/src/plugins/multimedia/CMakeLists.txt b/src/plugins/multimedia/CMakeLists.txt +index f42a84da5..2f529b508 100644 +--- a/src/plugins/multimedia/CMakeLists.txt ++++ b/src/plugins/multimedia/CMakeLists.txt +@@ -2,7 +2,7 @@ + # SPDX-License-Identifier: BSD-3-Clause + + if(QT_FEATURE_ffmpeg) +- add_subdirectory(ffmpeg) ++ add_subdirectory(v4l2) + endif() + if(QT_FEATURE_gstreamer) + add_subdirectory(gstreamer) +diff --git a/src/plugins/multimedia/v4l2/CMakeLists.txt b/src/plugins/multimedia/v4l2/CMakeLists.txt +new file mode 100644 +index 000000000..f20612c29 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/CMakeLists.txt +@@ -0,0 +1,24 @@ ++qt_internal_add_plugin(QFFmpegMediaPlugin ++ OUTPUT_NAME ffmpegmediaplugin ++ PLUGIN_TYPE multimedia ++ SOURCES ++ qffmpegmediametadata.cpp qffmpegmediametadata_p.h ++ qffmpegvideosink.cpp qffmpegvideosink_p.h ++ qffmpegmediaformatinfo.cpp qffmpegmediaformatinfo_p.h ++ qffmpegmediaintegration.cpp qffmpegmediaintegration_p.h ++ qffmpegimagecapture.cpp qffmpegimagecapture_p.h ++ qffmpegmediacapturesession.cpp qffmpegmediacapturesession_p.h ++ DEFINES ++ QT_COMPILING_FFMPEG ++ LIBRARIES ++ Qt::MultimediaPrivate ++ Qt::CorePrivate ++) ++ ++qt_internal_extend_target(QFFmpegMediaPlugin CONDITION QT_FEATURE_linux_v4l ++ SOURCES ++ qv4l2camera.cpp qv4l2camera_p.h ++ qv4l2filedescriptor.cpp qv4l2filedescriptor_p.h ++ qv4l2memorytransfer.cpp qv4l2memorytransfer_p.h ++ qv4l2cameradevices.cpp qv4l2cameradevices_p.h ++) +diff --git a/src/plugins/multimedia/v4l2/ffmpeg.json b/src/plugins/multimedia/v4l2/ffmpeg.json +new file mode 100644 +index 000000000..d8e7e4456 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/ffmpeg.json +@@ -0,0 +1,3 @@ ++{ ++ "Keys": [ "ffmpeg" ] ++} +diff --git a/src/plugins/multimedia/v4l2/qffmpegimagecapture.cpp b/src/plugins/multimedia/v4l2/qffmpegimagecapture.cpp +new file mode 100644 +index 000000000..9ee4e1db8 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qffmpegimagecapture.cpp +@@ -0,0 +1,269 @@ ++// Copyright (C) 2016 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#include "qffmpegimagecapture_p.h" ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++#include ++#include ++ ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++Q_LOGGING_CATEGORY(qLcImageCapture, "qt.multimedia.imageCapture") ++ ++QFFmpegImageCapture::QFFmpegImageCapture(QImageCapture *parent) ++ : QPlatformImageCapture(parent) ++{ ++} ++ ++QFFmpegImageCapture::~QFFmpegImageCapture() ++{ ++} ++ ++bool QFFmpegImageCapture::isReadyForCapture() const ++{ ++ return m_isReadyForCapture; ++} ++ ++static const char *extensionForFormat(QImageCapture::FileFormat format) ++{ ++ const char *fmt = "jpg"; ++ switch (format) { ++ case QImageCapture::UnspecifiedFormat: ++ case QImageCapture::JPEG: ++ fmt = "jpg"; ++ break; ++ case QImageCapture::PNG: ++ fmt = "png"; ++ break; ++ case QImageCapture::WebP: ++ fmt = "webp"; ++ break; ++ case QImageCapture::Tiff: ++ fmt = "tiff"; ++ break; ++ } ++ return fmt; ++} ++ ++int QFFmpegImageCapture::capture(const QString &fileName) ++{ ++ QString path = QMediaStorageLocation::generateFileName(fileName, QStandardPaths::PicturesLocation, QLatin1String(extensionForFormat(m_settings.format()))); ++ return doCapture(path); ++} ++ ++int QFFmpegImageCapture::captureToBuffer() ++{ ++ return doCapture(QString()); ++} ++ ++int QFFmpegImageCapture::doCapture(const QString &fileName) ++{ ++ qCDebug(qLcImageCapture) << "do capture"; ++ if (!m_session) { ++ //emit error in the next event loop, ++ //so application can associate it with returned request id. ++ QMetaObject::invokeMethod(this, "error", Qt::QueuedConnection, ++ Q_ARG(int, -1), ++ Q_ARG(int, QImageCapture::ResourceError), ++ Q_ARG(QString, QPlatformImageCapture::msgImageCaptureNotSet())); ++ ++ qCDebug(qLcImageCapture) << "error 1"; ++ return -1; ++ } ++ if (!m_camera) { ++ //emit error in the next event loop, ++ //so application can associate it with returned request id. ++ QMetaObject::invokeMethod(this, "error", Qt::QueuedConnection, ++ Q_ARG(int, -1), ++ Q_ARG(int, QImageCapture::ResourceError), ++ Q_ARG(QString,tr("No camera available."))); ++ ++ qCDebug(qLcImageCapture) << "error 2"; ++ return -1; ++ } ++ if (passImage) { ++ //emit error in the next event loop, ++ //so application can associate it with returned request id. ++ QMetaObject::invokeMethod(this, "error", Qt::QueuedConnection, ++ Q_ARG(int, -1), ++ Q_ARG(int, QImageCapture::NotReadyError), ++ Q_ARG(QString, QPlatformImageCapture::msgCameraNotReady())); ++ ++ qCDebug(qLcImageCapture) << "error 3"; ++ return -1; ++ } ++ m_lastId++; ++ ++ pendingImages.enqueue({m_lastId, fileName, QMediaMetaData{}}); ++ // let one image pass the pipeline ++ passImage = true; ++ ++ updateReadyForCapture(); ++ return m_lastId; ++} ++ ++void QFFmpegImageCapture::setCaptureSession(QPlatformMediaCaptureSession *session) ++{ ++ auto *captureSession = static_cast(session); ++ if (m_session == captureSession) ++ return; ++ ++ if (m_session) { ++ disconnect(m_session, nullptr, this, nullptr); ++ m_lastId = 0; ++ pendingImages.clear(); ++ passImage = false; ++ cameraActive = false; ++ } ++ ++ m_session = captureSession; ++ if (m_session) ++ connect(m_session, &QPlatformMediaCaptureSession::cameraChanged, this, &QFFmpegImageCapture::onCameraChanged); ++ ++ onCameraChanged(); ++ updateReadyForCapture(); ++} ++ ++void QFFmpegImageCapture::updateReadyForCapture() ++{ ++ bool ready = m_session && !passImage && cameraActive; ++ if (ready == m_isReadyForCapture) ++ return; ++ m_isReadyForCapture = ready; ++ emit readyForCaptureChanged(m_isReadyForCapture); ++} ++ ++void QFFmpegImageCapture::cameraActiveChanged(bool active) ++{ ++ qCDebug(qLcImageCapture) << "cameraActiveChanged" << cameraActive << active; ++ if (cameraActive == active) ++ return; ++ cameraActive = active; ++ qCDebug(qLcImageCapture) << "isReady" << isReadyForCapture(); ++ updateReadyForCapture(); ++} ++ ++void QFFmpegImageCapture::newVideoFrame(const QVideoFrame &frame) ++{ ++ if (!passImage) ++ return; ++ ++ passImage = false; ++ Q_ASSERT(!pendingImages.isEmpty()); ++ auto pending = pendingImages.dequeue(); ++ ++ emit imageExposed(pending.id); ++ // ### Add metadata from the AVFrame ++ emit imageMetadataAvailable(pending.id, pending.metaData); ++ emit imageAvailable(pending.id, frame); ++ QImage image = frame.toImage(); ++ if (m_settings.resolution().isValid() && m_settings.resolution() != image.size()) ++ image = image.scaled(m_settings.resolution()); ++ ++ emit imageCaptured(pending.id, image); ++ if (!pending.filename.isEmpty()) { ++ const char *fmt = nullptr; ++ switch (m_settings.format()) { ++ case QImageCapture::UnspecifiedFormat: ++ case QImageCapture::JPEG: ++ fmt = "jpeg"; ++ break; ++ case QImageCapture::PNG: ++ fmt = "png"; ++ break; ++ case QImageCapture::WebP: ++ fmt = "webp"; ++ break; ++ case QImageCapture::Tiff: ++ fmt = "tiff"; ++ break; ++ } ++ int quality = -1; ++ switch (m_settings.quality()) { ++ case QImageCapture::VeryLowQuality: ++ quality = 25; ++ break; ++ case QImageCapture::LowQuality: ++ quality = 50; ++ break; ++ case QImageCapture::NormalQuality: ++ break; ++ case QImageCapture::HighQuality: ++ quality = 75; ++ break; ++ case QImageCapture::VeryHighQuality: ++ quality = 99; ++ break; ++ } ++ ++ QImageWriter writer(pending.filename, fmt); ++ writer.setQuality(quality); ++ ++ if (writer.write(image)) { ++ emit imageSaved(pending.id, pending.filename); ++ } else { ++ QImageCapture::Error err = QImageCapture::ResourceError; ++ if (writer.error() == QImageWriter::UnsupportedFormatError) ++ err = QImageCapture::FormatError; ++ emit error(pending.id, err, writer.errorString()); ++ } ++ } ++ updateReadyForCapture(); ++} ++ ++void QFFmpegImageCapture::onCameraChanged() ++{ ++ auto *camera = m_session ? m_session->camera() : nullptr; ++ if (m_camera == camera) ++ return; ++ ++ if (m_camera) ++ disconnect(m_camera); ++ ++ m_camera = camera; ++ ++ if (camera) { ++ cameraActiveChanged(camera->isActive()); ++ connect(camera, &QPlatformCamera::activeChanged, this, &QFFmpegImageCapture::cameraActiveChanged); ++ connect(camera, &QPlatformCamera::newVideoFrame, this, &QFFmpegImageCapture::newVideoFrame); ++ } else { ++ cameraActiveChanged(false); ++ } ++} ++ ++QImageEncoderSettings QFFmpegImageCapture::imageSettings() const ++{ ++ return m_settings; ++} ++ ++void QFFmpegImageCapture::setImageSettings(const QImageEncoderSettings &settings) ++{ ++ auto s = settings; ++ const auto supportedFormats = QPlatformMediaIntegration::instance()->formatInfo()->imageFormats; ++ if (supportedFormats.isEmpty()) { ++ emit error(-1, QImageCapture::FormatError, "No image formats supported, can't capture."); ++ return; ++ } ++ if (s.format() == QImageCapture::UnspecifiedFormat) { ++ auto f = QImageCapture::JPEG; ++ if (!supportedFormats.contains(f)) ++ f = supportedFormats.first(); ++ s.setFormat(f); ++ } else if (!supportedFormats.contains(settings.format())) { ++ emit error(-1, QImageCapture::FormatError, "Image format not supported."); ++ return; ++ } ++ ++ m_settings = settings; ++} ++ ++QT_END_NAMESPACE +diff --git a/src/plugins/multimedia/v4l2/qffmpegimagecapture_p.h b/src/plugins/multimedia/v4l2/qffmpegimagecapture_p.h +new file mode 100644 +index 000000000..de54fe7cb +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qffmpegimagecapture_p.h +@@ -0,0 +1,72 @@ ++// Copyright (C) 2016 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++ ++#ifndef QFFMPEGIMAGECAPTURE_H ++#define QFFMPEGIMAGECAPTURE_H ++ ++// ++// W A R N I N G ++// ------------- ++// ++// This file is not part of the Qt API. It exists purely as an ++// implementation detail. This header file may change from version to ++// version without notice, or even be removed. ++// ++// We mean it. ++// ++ ++#include ++#include "qffmpegmediacapturesession_p.h" ++ ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++class QFFmpegImageCapture : public QPlatformImageCapture ++ ++{ ++ Q_OBJECT ++public: ++ QFFmpegImageCapture(QImageCapture *parent); ++ virtual ~QFFmpegImageCapture(); ++ ++ bool isReadyForCapture() const override; ++ int capture(const QString &fileName) override; ++ int captureToBuffer() override; ++ ++ QImageEncoderSettings imageSettings() const override; ++ void setImageSettings(const QImageEncoderSettings &settings) override; ++ ++ void setCaptureSession(QPlatformMediaCaptureSession *session); ++ ++ void updateReadyForCapture(); ++ ++public Q_SLOTS: ++ void cameraActiveChanged(bool active); ++ void newVideoFrame(const QVideoFrame &frame); ++ void onCameraChanged(); ++ ++private: ++ int doCapture(const QString &fileName); ++ ++ QFFmpegMediaCaptureSession *m_session = nullptr; ++ int m_lastId = 0; ++ QImageEncoderSettings m_settings; ++ QPlatformCamera *m_camera = nullptr; ++ ++ struct PendingImage { ++ int id; ++ QString filename; ++ QMediaMetaData metaData; ++ }; ++ ++ QQueue pendingImages; ++ bool passImage = false; ++ bool cameraActive = false; ++ bool m_isReadyForCapture = false; ++}; ++ ++QT_END_NAMESPACE ++ ++#endif // QGSTREAMERCAPTURECORNTROL_H +diff --git a/src/plugins/multimedia/v4l2/qffmpegmediacapturesession.cpp b/src/plugins/multimedia/v4l2/qffmpegmediacapturesession.cpp +new file mode 100644 +index 000000000..b6865761c +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qffmpegmediacapturesession.cpp +@@ -0,0 +1,114 @@ ++// Copyright (C) 2016 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#include "qffmpegmediacapturesession_p.h" ++ ++#include "private/qplatformaudioinput_p.h" ++#include "private/qplatformaudiooutput_p.h" ++#include "qffmpegimagecapture_p.h" ++#include "private/qplatformcamera_p.h" ++#include "qvideosink.h" ++ ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++Q_LOGGING_CATEGORY(qLcMediaCapture, "qt.multimedia.capture") ++ ++ ++ ++QFFmpegMediaCaptureSession::QFFmpegMediaCaptureSession() ++{ ++} ++ ++QFFmpegMediaCaptureSession::~QFFmpegMediaCaptureSession() ++{ ++} ++ ++QPlatformCamera *QFFmpegMediaCaptureSession::camera() ++{ ++ return m_camera; ++} ++ ++void QFFmpegMediaCaptureSession::setCamera(QPlatformCamera *camera) ++{ ++ if (m_camera == camera) ++ return; ++ if (m_camera) { ++ m_camera->disconnect(this); ++ m_camera->setCaptureSession(nullptr); ++ } ++ ++ m_camera = camera; ++ ++ if (m_camera) { ++ connect(m_camera, &QPlatformCamera::newVideoFrame, this, &QFFmpegMediaCaptureSession::newVideoFrame); ++ m_camera->setCaptureSession(this); ++ } ++ ++ emit cameraChanged(); ++} ++ ++QPlatformImageCapture *QFFmpegMediaCaptureSession::imageCapture() ++{ ++ return m_imageCapture; ++} ++ ++void QFFmpegMediaCaptureSession::setImageCapture(QPlatformImageCapture *imageCapture) ++{ ++ if (m_imageCapture == imageCapture) ++ return; ++ ++ if (m_imageCapture) ++ m_imageCapture->setCaptureSession(nullptr); ++ ++ m_imageCapture = static_cast(imageCapture); ++ ++ if (m_imageCapture) ++ m_imageCapture->setCaptureSession(this); ++ ++ emit imageCaptureChanged(); ++} ++ ++void QFFmpegMediaCaptureSession::setMediaRecorder(QPlatformMediaRecorder *recorder) ++{ ++ return; ++} ++ ++QPlatformMediaRecorder *QFFmpegMediaCaptureSession::mediaRecorder() ++{ ++ return nullptr; ++} ++ ++void QFFmpegMediaCaptureSession::setAudioInput(QPlatformAudioInput *input) ++{ ++ if (m_audioInput == input) ++ return; ++ ++ m_audioInput = input; ++} ++ ++void QFFmpegMediaCaptureSession::setVideoPreview(QVideoSink *sink) ++{ ++ if (m_videoSink == sink) ++ return; ++ ++ m_videoSink = sink; ++} ++ ++void QFFmpegMediaCaptureSession::setAudioOutput(QPlatformAudioOutput *output) ++{ ++ if (m_audioOutput == output) ++ return; ++ ++ m_audioOutput = output; ++} ++ ++void QFFmpegMediaCaptureSession::newVideoFrame(const QVideoFrame &frame) ++{ ++ if (m_videoSink) ++ m_videoSink->setVideoFrame(frame); ++} ++ ++ ++QT_END_NAMESPACE +diff --git a/src/plugins/multimedia/v4l2/qffmpegmediacapturesession_p.h b/src/plugins/multimedia/v4l2/qffmpegmediacapturesession_p.h +new file mode 100644 +index 000000000..858a537cc +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qffmpegmediacapturesession_p.h +@@ -0,0 +1,63 @@ ++// Copyright (C) 2016 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#ifndef QFFMPEGMEDIACAPTURESESSION_H ++#define QFFMPEGMEDIACAPTURESESSION_H ++ ++// ++// W A R N I N G ++// ------------- ++// ++// This file is not part of the Qt API. It exists purely as an ++// implementation detail. This header file may change from version to ++// version without notice, or even be removed. ++// ++// We mean it. ++// ++ ++#include ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++class QFFmpegMediaRecorder; ++class QFFmpegImageCapture; ++class QVideoFrame; ++ ++class QFFmpegMediaCaptureSession : public QPlatformMediaCaptureSession ++{ ++ Q_OBJECT ++ ++public: ++ QFFmpegMediaCaptureSession(); ++ virtual ~QFFmpegMediaCaptureSession(); ++ ++ QPlatformCamera *camera() override; ++ void setCamera(QPlatformCamera *camera) override; ++ ++ QPlatformImageCapture *imageCapture() override; ++ void setImageCapture(QPlatformImageCapture *imageCapture) override; ++ ++ QPlatformMediaRecorder *mediaRecorder() override; ++ void setMediaRecorder(QPlatformMediaRecorder *recorder) override; ++ ++ void setAudioInput(QPlatformAudioInput *input) override; ++ QPlatformAudioInput *audioInput() { return m_audioInput; } ++ ++ void setVideoPreview(QVideoSink *sink) override; ++ void setAudioOutput(QPlatformAudioOutput *output) override; ++ ++public Q_SLOTS: ++ void newVideoFrame(const QVideoFrame &frame); ++ ++private: ++ QPlatformCamera *m_camera = nullptr; ++ QPlatformAudioInput *m_audioInput = nullptr; ++ QFFmpegImageCapture *m_imageCapture = nullptr; ++ QPlatformAudioOutput *m_audioOutput = nullptr; ++ QVideoSink *m_videoSink = nullptr; ++}; ++ ++QT_END_NAMESPACE ++ ++#endif // QGSTREAMERCAPTURESERVICE_H +diff --git a/src/plugins/multimedia/v4l2/qffmpegmediaformatinfo.cpp b/src/plugins/multimedia/v4l2/qffmpegmediaformatinfo.cpp +new file mode 100644 +index 000000000..00b838d50 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qffmpegmediaformatinfo.cpp +@@ -0,0 +1,32 @@ ++// Copyright (C) 2021 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#include "qffmpegmediaformatinfo_p.h" ++#include "qaudioformat.h" ++#include "qimagewriter.h" ++ ++QT_BEGIN_NAMESPACE ++ ++QFFmpegMediaFormatInfo::QFFmpegMediaFormatInfo() ++{ ++ // Add image formats we support. We currently simply use Qt's built-in image write ++ // to save images. That doesn't give us HDR support or support for larger bit depths, ++ // but most cameras can currently not generate those anyway. ++ const auto imgFormats = QImageWriter::supportedImageFormats(); ++ for (const auto &f : imgFormats) { ++ if (f == "png") ++ imageFormats.append(QImageCapture::PNG); ++ else if (f == "jpeg") ++ imageFormats.append(QImageCapture::JPEG); ++ else if (f == "tiff") ++ imageFormats.append(QImageCapture::Tiff); ++ else if (f == "webp") ++ imageFormats.append(QImageCapture::WebP); ++ } ++ ++} ++ ++QFFmpegMediaFormatInfo::~QFFmpegMediaFormatInfo() = default; ++ ++ ++QT_END_NAMESPACE +diff --git a/src/plugins/multimedia/v4l2/qffmpegmediaformatinfo_p.h b/src/plugins/multimedia/v4l2/qffmpegmediaformatinfo_p.h +new file mode 100644 +index 000000000..e34005bbf +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qffmpegmediaformatinfo_p.h +@@ -0,0 +1,34 @@ ++// Copyright (C) 2021 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#ifndef QFFmpegMediaFormatInfo_H ++#define QFFmpegMediaFormatInfo_H ++ ++// ++// W A R N I N G ++// ------------- ++// ++// This file is not part of the Qt API. It exists purely as an ++// implementation detail. This header file may change from version to ++// version without notice, or even be removed. ++// ++// We mean it. ++// ++ ++#include ++#include ++#include ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++class QFFmpegMediaFormatInfo : public QPlatformMediaFormatInfo ++{ ++public: ++ QFFmpegMediaFormatInfo(); ++ ~QFFmpegMediaFormatInfo(); ++}; ++ ++QT_END_NAMESPACE ++ ++#endif +diff --git a/src/plugins/multimedia/v4l2/qffmpegmediaintegration.cpp b/src/plugins/multimedia/v4l2/qffmpegmediaintegration.cpp +new file mode 100644 +index 000000000..90f338172 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qffmpegmediaintegration.cpp +@@ -0,0 +1,131 @@ ++// Copyright (C) 2021 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#include ++#include ++#include "qffmpegmediaintegration_p.h" ++#include "qffmpegmediaformatinfo_p.h" ++#include "qffmpegvideosink_p.h" ++#include "qffmpegmediacapturesession_p.h" ++#include "qffmpegimagecapture_p.h" ++ ++#ifdef Q_OS_MACOS ++#include ++#endif ++ ++#ifdef Q_OS_DARWIN ++#include "qavfcamera_p.h" ++#elif defined(Q_OS_WINDOWS) ++#include "../windows/mediacapture/qwindowscamera_p.h" ++#include "../windows/qwindowsvideodevices_p.h" ++#endif ++ ++#if QT_CONFIG(linux_v4l) ++#include "qv4l2camera_p.h" ++#include "qv4l2cameradevices_p.h" ++#endif ++ ++QT_BEGIN_NAMESPACE ++ ++class QFFmpegMediaPlugin : public QPlatformMediaPlugin ++{ ++ Q_OBJECT ++ Q_PLUGIN_METADATA(IID QPlatformMediaPlugin_iid FILE "ffmpeg.json") ++ ++public: ++ QFFmpegMediaPlugin() ++ : QPlatformMediaPlugin() ++ {} ++ ++ QPlatformMediaIntegration* create(const QString &name) override ++ { ++ if (name == QLatin1String("ffmpeg")) ++ return new QFFmpegMediaIntegration; ++ return nullptr; ++ } ++}; ++ ++QFFmpegMediaIntegration::QFFmpegMediaIntegration() ++ : QPlatformMediaIntegration(QLatin1String("ffmpeg")) ++{ ++#ifndef QT_NO_DEBUG ++ qDebug() << "Available HW decoding frameworks:"; ++ AVHWDeviceType type = AV_HWDEVICE_TYPE_NONE; ++ while ((type = av_hwdevice_iterate_types(type)) != AV_HWDEVICE_TYPE_NONE) ++ qDebug() << " " << av_hwdevice_get_type_name(type); ++#endif ++} ++ ++QPlatformMediaFormatInfo *QFFmpegMediaIntegration::createFormatInfo() ++{ ++ return new QFFmpegMediaFormatInfo(); ++} ++ ++QPlatformVideoDevices *QFFmpegMediaIntegration::createVideoDevices() ++{ ++#if defined(Q_OS_ANDROID) ++ return new QAndroidVideoDevices(this); ++#elif QT_CONFIG(linux_v4l) ++ return new QV4L2CameraDevices(this); ++#elif defined Q_OS_DARWIN ++ return new QAVFVideoDevices(this); ++#elif defined(Q_OS_WINDOWS) ++ return new QWindowsVideoDevices(this); ++#else ++ return nullptr; ++#endif ++} ++ ++q23::expected QFFmpegMediaIntegration::createCaptureSession() ++{ ++ return new QFFmpegMediaCaptureSession(); ++} ++ ++q23::expected QFFmpegMediaIntegration::createCamera(QCamera *camera) ++{ ++#ifdef Q_OS_DARWIN ++ return new QAVFCamera(camera); ++#elif QT_CONFIG(linux_v4l) ++ return new QV4L2Camera(camera); ++#elif defined(Q_OS_WINDOWS) ++ return new QWindowsCamera(camera); ++#else ++ Q_UNUSED(camera); ++ return nullptr;//new QFFmpegCamera(camera); ++#endif ++} ++ ++q23::expected QFFmpegMediaIntegration::createImageCapture(QImageCapture *imageCapture) ++{ ++ return new QFFmpegImageCapture(imageCapture); ++} ++ ++q23::expected QFFmpegMediaIntegration::createVideoSink(QVideoSink *sink) ++{ ++ return new QFFmpegVideoSink(sink); ++} ++ ++#ifdef Q_OS_ANDROID ++Q_DECL_EXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void * /*reserved*/) ++{ ++ static bool initialized = false; ++ if (initialized) ++ return JNI_VERSION_1_6; ++ initialized = true; ++ ++ QT_USE_NAMESPACE ++ void *environment; ++ if (vm->GetEnv(&environment, JNI_VERSION_1_6)) ++ return JNI_ERR; ++ ++ // setting our javavm into ffmpeg. ++ if (av_jni_set_java_vm(vm, nullptr)) ++ return JNI_ERR; ++ ++ return JNI_VERSION_1_6; ++} ++#endif ++ ++QT_END_NAMESPACE ++ ++#include "qffmpegmediaintegration.moc" +diff --git a/src/plugins/multimedia/v4l2/qffmpegmediaintegration_p.h b/src/plugins/multimedia/v4l2/qffmpegmediaintegration_p.h +new file mode 100644 +index 000000000..70d525df2 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qffmpegmediaintegration_p.h +@@ -0,0 +1,47 @@ ++// Copyright (C) 2021 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#ifndef QGSTREAMERINTEGRATION_H ++#define QGSTREAMERINTEGRATION_H ++ ++// ++// W A R N I N G ++// ------------- ++// ++// This file is not part of the Qt API. It exists purely as an ++// implementation detail. This header file may change from version to ++// version without notice, or even be removed. ++// ++// We mean it. ++// ++ ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++class QFFmpegMediaFormatInfo; ++ ++class QFFmpegMediaIntegration : public QPlatformMediaIntegration ++{ ++public: ++ QFFmpegMediaIntegration(); ++ ++ static QFFmpegMediaIntegration *instance() ++ { ++ return static_cast(QPlatformMediaIntegration::instance()); ++ } ++ ++ q23::expected createCaptureSession() override; ++ q23::expected createCamera(QCamera *) override; ++ q23::expected createImageCapture(QImageCapture *) override; ++ q23::expected createVideoSink(QVideoSink *sink) override; ++ ++protected: ++ QPlatformMediaFormatInfo *createFormatInfo() override; ++ ++ QPlatformVideoDevices *createVideoDevices() override; ++}; ++ ++QT_END_NAMESPACE ++ ++#endif +diff --git a/src/plugins/multimedia/v4l2/qffmpegmediametadata.cpp b/src/plugins/multimedia/v4l2/qffmpegmediametadata.cpp +new file mode 100644 +index 000000000..dda577d44 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qffmpegmediametadata.cpp +@@ -0,0 +1,72 @@ ++// Copyright (C) 2022 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#include "qffmpegmediametadata_p.h" ++#include ++#include ++#include ++#include ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++namespace { ++ ++struct { ++ const char *tag; ++ QMediaMetaData::Key key; ++} ffmpegTagToMetaDataKey[] = { ++ { "title", QMediaMetaData::Title }, ++ { "comment", QMediaMetaData::Comment }, ++ { "description", QMediaMetaData::Description }, ++ { "genre", QMediaMetaData::Genre }, ++ { "date", QMediaMetaData::Date }, ++ { "year", QMediaMetaData::Date }, ++ { "creation_time", QMediaMetaData::Date }, ++ ++ { "language", QMediaMetaData::Language }, ++ ++ { "copyright", QMediaMetaData::Copyright }, ++ ++ // Music ++ { "album", QMediaMetaData::AlbumTitle }, ++ { "album_artist", QMediaMetaData::AlbumArtist }, ++ { "artist", QMediaMetaData::ContributingArtist }, ++ { "track", QMediaMetaData::TrackNumber }, ++ ++ // Movie ++ { "performer", QMediaMetaData::LeadPerformer }, ++ ++ { nullptr, QMediaMetaData::Title } ++}; ++ ++} ++ ++static QMediaMetaData::Key tagToKey(const char *tag) ++{ ++ auto *map = ffmpegTagToMetaDataKey; ++ while (map->tag) { ++ if (!strcmp(map->tag, tag)) ++ return map->key; ++ ++map; ++ } ++ return QMediaMetaData::Key(-1); ++} ++ ++static const char *keyToTag(QMediaMetaData::Key key) ++{ ++ auto *map = ffmpegTagToMetaDataKey; ++ while (map->tag) { ++ if (map->key == key) ++ return map->tag; ++ ++map; ++ } ++ return nullptr; ++} ++ ++QByteArray QFFmpegMetaData::value(const QMediaMetaData &metaData, QMediaMetaData::Key key) ++{ ++ return {}; ++} ++ ++QT_END_NAMESPACE +diff --git a/src/plugins/multimedia/v4l2/qffmpegmediametadata_p.h b/src/plugins/multimedia/v4l2/qffmpegmediametadata_p.h +new file mode 100644 +index 000000000..95b069b64 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qffmpegmediametadata_p.h +@@ -0,0 +1,30 @@ ++// Copyright (C) 2022 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#ifndef QFFMPEGMEDIAMETADATA_H ++#define QFFMPEGMEDIAMETADATA_H ++ ++// ++// W A R N I N G ++// ------------- ++// ++// This file is not part of the Qt API. It exists purely as an ++// implementation detail. This header file may change from version to ++// version without notice, or even be removed. ++// ++// We mean it. ++// ++ ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++class QFFmpegMetaData : public QMediaMetaData ++{ ++public: ++ static QByteArray value(const QMediaMetaData &metaData, QMediaMetaData::Key key); ++}; ++ ++QT_END_NAMESPACE ++ ++#endif // QFFMPEGMEDIAMETADATA_H +diff --git a/src/plugins/multimedia/v4l2/qffmpegvideosink.cpp b/src/plugins/multimedia/v4l2/qffmpegvideosink.cpp +new file mode 100644 +index 000000000..128ce2f56 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qffmpegvideosink.cpp +@@ -0,0 +1,17 @@ ++// Copyright (C) 2021 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++QFFmpegVideoSink::QFFmpegVideoSink(QVideoSink *sink) ++ : QPlatformVideoSink(sink) ++{ ++} ++ ++void QFFmpegVideoSink::onVideoFrameChanged(const QVideoFrame &frame) ++{ ++ ++} ++ ++QT_END_NAMESPACE +diff --git a/src/plugins/multimedia/v4l2/qffmpegvideosink_p.h b/src/plugins/multimedia/v4l2/qffmpegvideosink_p.h +new file mode 100644 +index 000000000..9eac79129 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qffmpegvideosink_p.h +@@ -0,0 +1,40 @@ ++// Copyright (C) 2021 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#ifndef QFFMPEGVIDEOSINK_H ++#define QFFMPEGVIDEOSINK_H ++ ++// ++// W A R N I N G ++// ------------- ++// ++// This file is not part of the Qt API. It exists purely as an ++// implementation detail. This header file may change from version to ++// version without notice, or even be removed. ++// ++// We mean it. ++// ++ ++#include ++//#include ++ ++QT_BEGIN_NAMESPACE ++ ++// Required for QDoc workaround ++class QString; ++ ++class QFFmpegVideoSink : public QPlatformVideoSink ++{ ++ Q_OBJECT ++ ++public: ++ QFFmpegVideoSink(QVideoSink *sink); ++ ++protected: ++ void onVideoFrameChanged(const QVideoFrame &frame) override; ++}; ++ ++QT_END_NAMESPACE ++ ++ ++#endif +diff --git a/src/plugins/multimedia/v4l2/qv4l2camera.cpp b/src/plugins/multimedia/v4l2/qv4l2camera.cpp +new file mode 100644 +index 000000000..1ba05364d +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qv4l2camera.cpp +@@ -0,0 +1,707 @@ ++// Copyright (C) 2021 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#include "qv4l2camera_p.h" ++#include "qv4l2filedescriptor_p.h" ++#include "qv4l2memorytransfer_p.h" ++ ++#include ++#include ++#include ++#include ++ ++#include ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++static Q_LOGGING_CATEGORY(qLcV4L2Camera, "qt.multimedia.ffmpeg.v4l2camera"); ++ ++static const struct { ++ QVideoFrameFormat::PixelFormat fmt; ++ uint32_t v4l2Format; ++} formatMap[] = { ++ // ### How do we handle V4L2_PIX_FMT_H264 and V4L2_PIX_FMT_MPEG4? ++ { QVideoFrameFormat::Format_YUV420P, V4L2_PIX_FMT_YUV420 }, ++ { QVideoFrameFormat::Format_YUV422P, V4L2_PIX_FMT_YUV422P }, ++ { QVideoFrameFormat::Format_YUYV, V4L2_PIX_FMT_YUYV }, ++ { QVideoFrameFormat::Format_UYVY, V4L2_PIX_FMT_UYVY }, ++ { QVideoFrameFormat::Format_XBGR8888, V4L2_PIX_FMT_XBGR32 }, ++ { QVideoFrameFormat::Format_XRGB8888, V4L2_PIX_FMT_XRGB32 }, ++ { QVideoFrameFormat::Format_ABGR8888, V4L2_PIX_FMT_ABGR32 }, ++ { QVideoFrameFormat::Format_ARGB8888, V4L2_PIX_FMT_ARGB32 }, ++ { QVideoFrameFormat::Format_BGRX8888, V4L2_PIX_FMT_BGR32 }, ++ { QVideoFrameFormat::Format_RGBX8888, V4L2_PIX_FMT_RGB32 }, ++ { QVideoFrameFormat::Format_BGRA8888, V4L2_PIX_FMT_BGRA32 }, ++ { QVideoFrameFormat::Format_RGBA8888, V4L2_PIX_FMT_RGBA32 }, ++ { QVideoFrameFormat::Format_Y8, V4L2_PIX_FMT_GREY }, ++ { QVideoFrameFormat::Format_Y16, V4L2_PIX_FMT_Y16 }, ++ { QVideoFrameFormat::Format_NV12, V4L2_PIX_FMT_NV12 }, ++ { QVideoFrameFormat::Format_NV21, V4L2_PIX_FMT_NV21 }, ++ { QVideoFrameFormat::Format_Jpeg, V4L2_PIX_FMT_MJPEG }, ++ { QVideoFrameFormat::Format_Jpeg, V4L2_PIX_FMT_JPEG }, ++ { QVideoFrameFormat::Format_Invalid, 0 }, ++}; ++ ++QVideoFrameFormat::PixelFormat formatForV4L2Format(uint32_t v4l2Format) ++{ ++ auto *f = formatMap; ++ while (f->v4l2Format) { ++ if (f->v4l2Format == v4l2Format) ++ return f->fmt; ++ ++f; ++ } ++ return QVideoFrameFormat::Format_Invalid; ++} ++ ++uint32_t v4l2FormatForPixelFormat(QVideoFrameFormat::PixelFormat format) ++{ ++ auto *f = formatMap; ++ while (f->v4l2Format) { ++ if (f->fmt == format) ++ return f->v4l2Format; ++ ++f; ++ } ++ return 0; ++} ++ ++QV4L2Camera::QV4L2Camera(QCamera *camera) ++ : QPlatformCamera(camera) ++{ ++} ++ ++QV4L2Camera::~QV4L2Camera() ++{ ++ stopCapturing(); ++ closeV4L2Fd(); ++} ++ ++bool QV4L2Camera::isActive() const ++{ ++ return m_active; ++} ++ ++void QV4L2Camera::setActive(bool active) ++{ ++ if (m_active == active) ++ return; ++ if (m_cameraDevice.isNull() && active) ++ return; ++ ++ if (m_cameraFormat.isNull()) ++ resolveCameraFormat({}); ++ ++ m_active = active; ++ if (m_active) ++ startCapturing(); ++ else ++ stopCapturing(); ++ ++ emit newVideoFrame({}); ++ ++ emit activeChanged(active); ++} ++ ++void QV4L2Camera::setCamera(const QCameraDevice &camera) ++{ ++ if (m_cameraDevice == camera) ++ return; ++ ++ stopCapturing(); ++ closeV4L2Fd(); ++ ++ m_cameraDevice = camera; ++ resolveCameraFormat({}); ++ ++ initV4L2Controls(); ++ ++ if (m_active) ++ startCapturing(); ++} ++ ++bool QV4L2Camera::setCameraFormat(const QCameraFormat &format) ++{ ++ if (!format.isNull() && !m_cameraDevice.videoFormats().contains(format)) ++ return false; ++ ++ if (!resolveCameraFormat(format)) ++ return true; ++ ++ if (m_active) { ++ stopCapturing(); ++ closeV4L2Fd(); ++ ++ initV4L2Controls(); ++ startCapturing(); ++ } ++ ++ return true; ++} ++ ++bool QV4L2Camera::resolveCameraFormat(const QCameraFormat &format) ++{ ++ auto fmt = format; ++ if (fmt.isNull()) ++ fmt = findBestCameraFormat(m_cameraDevice); ++ ++ if (fmt == m_cameraFormat) ++ return false; ++ ++ m_cameraFormat = fmt; ++ return true; ++} ++ ++void QV4L2Camera::setFocusMode(QCamera::FocusMode mode) ++{ ++ if (mode == focusMode()) ++ return; ++ ++ bool focusDist = supportedFeatures() & QCamera::Feature::FocusDistance; ++ if (!focusDist && !m_v4l2Info.rangedFocus) ++ return; ++ ++ switch (mode) { ++ default: ++ case QCamera::FocusModeAuto: ++ setV4L2Parameter(V4L2_CID_FOCUS_AUTO, 1); ++ if (m_v4l2Info.rangedFocus) ++ setV4L2Parameter(V4L2_CID_AUTO_FOCUS_RANGE, V4L2_AUTO_FOCUS_RANGE_AUTO); ++ break; ++ case QCamera::FocusModeAutoNear: ++ setV4L2Parameter(V4L2_CID_FOCUS_AUTO, 1); ++ if (m_v4l2Info.rangedFocus) ++ setV4L2Parameter(V4L2_CID_AUTO_FOCUS_RANGE, V4L2_AUTO_FOCUS_RANGE_MACRO); ++ else if (focusDist) ++ setV4L2Parameter(V4L2_CID_FOCUS_ABSOLUTE, m_v4l2Info.minFocus); ++ break; ++ case QCamera::FocusModeAutoFar: ++ setV4L2Parameter(V4L2_CID_FOCUS_AUTO, 1); ++ if (m_v4l2Info.rangedFocus) ++ setV4L2Parameter(V4L2_CID_AUTO_FOCUS_RANGE, V4L2_AUTO_FOCUS_RANGE_INFINITY); ++ break; ++ case QCamera::FocusModeInfinity: ++ setV4L2Parameter(V4L2_CID_FOCUS_AUTO, 0); ++ setV4L2Parameter(V4L2_CID_FOCUS_ABSOLUTE, m_v4l2Info.maxFocus); ++ break; ++ case QCamera::FocusModeManual: ++ setV4L2Parameter(V4L2_CID_FOCUS_AUTO, 0); ++ setFocusDistance(focusDistance()); ++ break; ++ } ++ focusModeChanged(mode); ++} ++ ++void QV4L2Camera::setFocusDistance(float d) ++{ ++ int distance = m_v4l2Info.minFocus + int((m_v4l2Info.maxFocus - m_v4l2Info.minFocus) * d); ++ setV4L2Parameter(V4L2_CID_FOCUS_ABSOLUTE, distance); ++ focusDistanceChanged(d); ++} ++ ++void QV4L2Camera::zoomTo(float factor, float) ++{ ++ if (m_v4l2Info.maxZoom == m_v4l2Info.minZoom) ++ return; ++ factor = qBound(1., factor, 2.); ++ int zoom = m_v4l2Info.minZoom + (factor - 1.) * (m_v4l2Info.maxZoom - m_v4l2Info.minZoom); ++ setV4L2Parameter(V4L2_CID_ZOOM_ABSOLUTE, zoom); ++ zoomFactorChanged(factor); ++} ++ ++bool QV4L2Camera::isFocusModeSupported(QCamera::FocusMode mode) const ++{ ++ if (supportedFeatures() & QCamera::Feature::FocusDistance && ++ (mode == QCamera::FocusModeManual || mode == QCamera::FocusModeAutoNear || mode == QCamera::FocusModeInfinity)) ++ return true; ++ ++ return mode == QCamera::FocusModeAuto; ++} ++ ++void QV4L2Camera::setFlashMode(QCamera::FlashMode mode) ++{ ++ if (!m_v4l2Info.flashSupported || mode == QCamera::FlashOn) ++ return; ++ setV4L2Parameter(V4L2_CID_FLASH_LED_MODE, mode == QCamera::FlashAuto ? V4L2_FLASH_LED_MODE_FLASH : V4L2_FLASH_LED_MODE_NONE); ++ flashModeChanged(mode); ++} ++ ++bool QV4L2Camera::isFlashModeSupported(QCamera::FlashMode mode) const ++{ ++ if (m_v4l2Info.flashSupported && mode == QCamera::FlashAuto) ++ return true; ++ return mode == QCamera::FlashOff; ++} ++ ++bool QV4L2Camera::isFlashReady() const ++{ ++ struct v4l2_queryctrl queryControl; ++ ::memset(&queryControl, 0, sizeof(queryControl)); ++ queryControl.id = V4L2_CID_AUTO_WHITE_BALANCE; ++ ++ return m_v4l2FileDescriptor && m_v4l2FileDescriptor->call(VIDIOC_QUERYCTRL, &queryControl); ++} ++ ++void QV4L2Camera::setTorchMode(QCamera::TorchMode mode) ++{ ++ if (!m_v4l2Info.torchSupported || mode == QCamera::TorchOn) ++ return; ++ setV4L2Parameter(V4L2_CID_FLASH_LED_MODE, mode == QCamera::TorchOn ? V4L2_FLASH_LED_MODE_TORCH : V4L2_FLASH_LED_MODE_NONE); ++ torchModeChanged(mode); ++} ++ ++bool QV4L2Camera::isTorchModeSupported(QCamera::TorchMode mode) const ++{ ++ if (mode == QCamera::TorchOn) ++ return m_v4l2Info.torchSupported; ++ return mode == QCamera::TorchOff; ++} ++ ++void QV4L2Camera::setExposureMode(QCamera::ExposureMode mode) ++{ ++ if (m_v4l2Info.autoExposureSupported && m_v4l2Info.manualExposureSupported) { ++ if (mode != QCamera::ExposureAuto && mode != QCamera::ExposureManual) ++ return; ++ int value = QCamera::ExposureAuto ? V4L2_EXPOSURE_AUTO : V4L2_EXPOSURE_MANUAL; ++ setV4L2Parameter(V4L2_CID_EXPOSURE_AUTO, value); ++ exposureModeChanged(mode); ++ return; ++ } ++} ++ ++bool QV4L2Camera::isExposureModeSupported(QCamera::ExposureMode mode) const ++{ ++ if (mode == QCamera::ExposureAuto) ++ return true; ++ if (m_v4l2Info.manualExposureSupported && m_v4l2Info.autoExposureSupported) ++ return mode == QCamera::ExposureManual; ++ return false; ++} ++ ++void QV4L2Camera::setExposureCompensation(float compensation) ++{ ++ if ((m_v4l2Info.minExposureAdjustment != 0 || m_v4l2Info.maxExposureAdjustment != 0)) { ++ int value = qBound(m_v4l2Info.minExposureAdjustment, (int)(compensation * 1000), ++ m_v4l2Info.maxExposureAdjustment); ++ setV4L2Parameter(V4L2_CID_AUTO_EXPOSURE_BIAS, value); ++ exposureCompensationChanged(value/1000.); ++ return; ++ } ++} ++ ++void QV4L2Camera::setManualIsoSensitivity(int iso) ++{ ++ if (!(supportedFeatures() & QCamera::Feature::IsoSensitivity)) ++ return; ++ setV4L2Parameter(V4L2_CID_ISO_SENSITIVITY_AUTO, iso <= 0 ? V4L2_ISO_SENSITIVITY_AUTO : V4L2_ISO_SENSITIVITY_MANUAL); ++ if (iso > 0) { ++ iso = qBound(minIso(), iso, maxIso()); ++ setV4L2Parameter(V4L2_CID_ISO_SENSITIVITY, iso); ++ } ++ return; ++} ++ ++int QV4L2Camera::isoSensitivity() const ++{ ++ if (!(supportedFeatures() & QCamera::Feature::IsoSensitivity)) ++ return -1; ++ return getV4L2Parameter(V4L2_CID_ISO_SENSITIVITY); ++} ++ ++void QV4L2Camera::setManualExposureTime(float secs) ++{ ++ if (m_v4l2Info.manualExposureSupported && m_v4l2Info.autoExposureSupported) { ++ int exposure = ++ qBound(m_v4l2Info.minExposure, qRound(secs * 10000.), m_v4l2Info.maxExposure); ++ setV4L2Parameter(V4L2_CID_EXPOSURE_ABSOLUTE, exposure); ++ exposureTimeChanged(exposure/10000.); ++ return; ++ } ++} ++ ++float QV4L2Camera::exposureTime() const ++{ ++ return getV4L2Parameter(V4L2_CID_EXPOSURE_ABSOLUTE)/10000.; ++} ++ ++bool QV4L2Camera::isWhiteBalanceModeSupported(QCamera::WhiteBalanceMode mode) const ++{ ++ if (m_v4l2Info.autoWhiteBalanceSupported && m_v4l2Info.colorTemperatureSupported) ++ return true; ++ ++ return mode == QCamera::WhiteBalanceAuto; ++} ++ ++void QV4L2Camera::setWhiteBalanceMode(QCamera::WhiteBalanceMode mode) ++{ ++ Q_ASSERT(isWhiteBalanceModeSupported(mode)); ++ ++ int temperature = colorTemperatureForWhiteBalance(mode); ++ int t = setV4L2ColorTemperature(temperature); ++ if (t == 0) ++ mode = QCamera::WhiteBalanceAuto; ++ whiteBalanceModeChanged(mode); ++} ++ ++void QV4L2Camera::setColorTemperature(int temperature) ++{ ++ if (temperature == 0) { ++ setWhiteBalanceMode(QCamera::WhiteBalanceAuto); ++ return; ++ } ++ ++ Q_ASSERT(isWhiteBalanceModeSupported(QCamera::WhiteBalanceManual)); ++ ++ int t = setV4L2ColorTemperature(temperature); ++ if (t) ++ colorTemperatureChanged(t); ++} ++ ++void QV4L2Camera::readFrame() ++{ ++ Q_ASSERT(m_memoryTransfer); ++ ++ auto buffer = m_memoryTransfer->dequeueBuffer(); ++ if (!buffer) { ++ qCWarning(qLcV4L2Camera) << "Cannot take buffer"; ++ ++ if (errno == ENODEV) { ++ // camera got removed while being active ++ stopCapturing(); ++ closeV4L2Fd(); ++ } ++ ++ return; ++ } ++ ++ auto videoBuffer = new QMemoryVideoBuffer(buffer->data, m_bytesPerLine); ++ QVideoFrame frame(videoBuffer, frameFormat()); ++ ++ auto &v4l2Buffer = buffer->v4l2Buffer; ++ ++ if (m_firstFrameTime.tv_sec == -1) ++ m_firstFrameTime = v4l2Buffer.timestamp; ++ qint64 secs = v4l2Buffer.timestamp.tv_sec - m_firstFrameTime.tv_sec; ++ qint64 usecs = v4l2Buffer.timestamp.tv_usec - m_firstFrameTime.tv_usec; ++ frame.setStartTime(secs*1000000 + usecs); ++ frame.setEndTime(frame.startTime() + m_frameDuration); ++ ++ emit newVideoFrame(frame); ++ ++ if (!m_memoryTransfer->enqueueBuffer(v4l2Buffer.index)) ++ qCWarning(qLcV4L2Camera) << "Cannot add buffer"; ++} ++ ++void QV4L2Camera::setCameraBusy() ++{ ++ m_cameraBusy = true; ++ updateError(QCamera::CameraError, QLatin1String("Camera is in use")); ++} ++ ++void QV4L2Camera::initV4L2Controls() ++{ ++ m_v4l2Info = {}; ++ QCamera::Features features; ++ ++ const QByteArray deviceName = m_cameraDevice.id(); ++ Q_ASSERT(!deviceName.isEmpty()); ++ ++ closeV4L2Fd(); ++ ++ const int descriptor = qt_safe_open(deviceName.constData(), O_RDWR); ++ if (descriptor == -1) { ++ qCWarning(qLcV4L2Camera) << "Unable to open the camera" << deviceName ++ << "for read to query the parameter info:" ++ << qt_error_string(errno); ++ updateError(QCamera::CameraError, QLatin1String("Cannot open camera")); ++ return; ++ } ++ ++ m_v4l2FileDescriptor = std::make_shared(descriptor); ++ ++ qCDebug(qLcV4L2Camera) << "FD=" << descriptor; ++ ++ struct v4l2_queryctrl queryControl; ++ ::memset(&queryControl, 0, sizeof(queryControl)); ++ queryControl.id = V4L2_CID_AUTO_WHITE_BALANCE; ++ ++ if (m_v4l2FileDescriptor->call(VIDIOC_QUERYCTRL, &queryControl)) { ++ m_v4l2Info.autoWhiteBalanceSupported = true; ++ setV4L2Parameter(V4L2_CID_AUTO_WHITE_BALANCE, true); ++ } ++ ++ ::memset(&queryControl, 0, sizeof(queryControl)); ++ queryControl.id = V4L2_CID_WHITE_BALANCE_TEMPERATURE; ++ if (m_v4l2FileDescriptor->call(VIDIOC_QUERYCTRL, &queryControl)) { ++ m_v4l2Info.minColorTemp = queryControl.minimum; ++ m_v4l2Info.maxColorTemp = queryControl.maximum; ++ m_v4l2Info.colorTemperatureSupported = true; ++ features |= QCamera::Feature::ColorTemperature; ++ } ++ ++ ::memset(&queryControl, 0, sizeof(queryControl)); ++ queryControl.id = V4L2_CID_EXPOSURE_AUTO; ++ if (m_v4l2FileDescriptor->call(VIDIOC_QUERYCTRL, &queryControl)) { ++ m_v4l2Info.autoExposureSupported = true; ++ } ++ ++ ::memset(&queryControl, 0, sizeof(queryControl)); ++ queryControl.id = V4L2_CID_EXPOSURE_ABSOLUTE; ++ if (m_v4l2FileDescriptor->call(VIDIOC_QUERYCTRL, &queryControl)) { ++ m_v4l2Info.manualExposureSupported = true; ++ m_v4l2Info.minExposure = queryControl.minimum; ++ m_v4l2Info.maxExposure = queryControl.maximum; ++ features |= QCamera::Feature::ManualExposureTime; ++ } ++ ++ ::memset(&queryControl, 0, sizeof(queryControl)); ++ queryControl.id = V4L2_CID_AUTO_EXPOSURE_BIAS; ++ if (m_v4l2FileDescriptor->call(VIDIOC_QUERYCTRL, &queryControl)) { ++ m_v4l2Info.minExposureAdjustment = queryControl.minimum; ++ m_v4l2Info.maxExposureAdjustment = queryControl.maximum; ++ features |= QCamera::Feature::ExposureCompensation; ++ } ++ ++ ::memset(&queryControl, 0, sizeof(queryControl)); ++ queryControl.id = V4L2_CID_ISO_SENSITIVITY_AUTO; ++ if (m_v4l2FileDescriptor->call(VIDIOC_QUERYCTRL, &queryControl)) { ++ queryControl.id = V4L2_CID_ISO_SENSITIVITY; ++ if (m_v4l2FileDescriptor->call(VIDIOC_QUERYCTRL, &queryControl)) { ++ features |= QCamera::Feature::IsoSensitivity; ++ minIsoChanged(queryControl.minimum); ++ maxIsoChanged(queryControl.minimum); ++ } ++ } ++ ++ ::memset(&queryControl, 0, sizeof(queryControl)); ++ queryControl.id = V4L2_CID_FOCUS_ABSOLUTE; ++ if (m_v4l2FileDescriptor->call(VIDIOC_QUERYCTRL, &queryControl)) { ++ m_v4l2Info.minExposureAdjustment = queryControl.minimum; ++ m_v4l2Info.maxExposureAdjustment = queryControl.maximum; ++ features |= QCamera::Feature::FocusDistance; ++ } ++ ++ ::memset(&queryControl, 0, sizeof(queryControl)); ++ queryControl.id = V4L2_CID_AUTO_FOCUS_RANGE; ++ if (m_v4l2FileDescriptor->call(VIDIOC_QUERYCTRL, &queryControl)) { ++ m_v4l2Info.rangedFocus = true; ++ } ++ ++ ::memset(&queryControl, 0, sizeof(queryControl)); ++ queryControl.id = V4L2_CID_FLASH_LED_MODE; ++ if (m_v4l2FileDescriptor->call(VIDIOC_QUERYCTRL, &queryControl)) { ++ m_v4l2Info.flashSupported = queryControl.minimum <= V4L2_FLASH_LED_MODE_FLASH ++ && queryControl.maximum >= V4L2_FLASH_LED_MODE_FLASH; ++ m_v4l2Info.torchSupported = queryControl.minimum <= V4L2_FLASH_LED_MODE_TORCH ++ && queryControl.maximum >= V4L2_FLASH_LED_MODE_TORCH; ++ } ++ ++ ::memset(&queryControl, 0, sizeof(queryControl)); ++ queryControl.id = V4L2_CID_ZOOM_ABSOLUTE; ++ if (m_v4l2FileDescriptor->call(VIDIOC_QUERYCTRL, &queryControl)) { ++ m_v4l2Info.minZoom = queryControl.minimum; ++ m_v4l2Info.maxZoom = queryControl.maximum; ++ } ++ // zoom factors are in arbitrary units, so we simply normalize them to go from 1 to 2 ++ // if they are different ++ minimumZoomFactorChanged(1); ++ maximumZoomFactorChanged(m_v4l2Info.minZoom != m_v4l2Info.maxZoom ? 2 : 1); ++ ++ supportedFeaturesChanged(features); ++} ++ ++void QV4L2Camera::closeV4L2Fd() ++{ ++ Q_ASSERT(!m_memoryTransfer); ++ ++ m_v4l2Info = {}; ++ m_cameraBusy = false; ++ m_v4l2FileDescriptor = nullptr; ++} ++ ++int QV4L2Camera::setV4L2ColorTemperature(int temperature) ++{ ++ struct v4l2_control control; ++ ::memset(&control, 0, sizeof(control)); ++ ++ if (m_v4l2Info.autoWhiteBalanceSupported) { ++ setV4L2Parameter(V4L2_CID_AUTO_WHITE_BALANCE, temperature == 0 ? true : false); ++ } else if (temperature == 0) { ++ temperature = 5600; ++ } ++ ++ if (temperature != 0 && m_v4l2Info.colorTemperatureSupported) { ++ temperature = qBound(m_v4l2Info.minColorTemp, temperature, m_v4l2Info.maxColorTemp); ++ if (!setV4L2Parameter( ++ V4L2_CID_WHITE_BALANCE_TEMPERATURE, ++ qBound(m_v4l2Info.minColorTemp, temperature, m_v4l2Info.maxColorTemp))) ++ temperature = 0; ++ } else { ++ temperature = 0; ++ } ++ ++ return temperature; ++} ++ ++bool QV4L2Camera::setV4L2Parameter(quint32 id, qint32 value) ++{ ++ v4l2_control control{ id, value }; ++ if (!m_v4l2FileDescriptor->call(VIDIOC_S_CTRL, &control)) { ++ qWarning() << "Unable to set the V4L2 Parameter" << Qt::hex << id << "to" << value << qt_error_string(errno); ++ return false; ++ } ++ return true; ++} ++ ++int QV4L2Camera::getV4L2Parameter(quint32 id) const ++{ ++ struct v4l2_control control{id, 0}; ++ if (!m_v4l2FileDescriptor->call(VIDIOC_G_CTRL, &control)) { ++ qWarning() << "Unable to get the V4L2 Parameter" << Qt::hex << id << qt_error_string(errno); ++ return 0; ++ } ++ return control.value; ++} ++ ++void QV4L2Camera::setV4L2CameraFormat() ++{ ++ if (m_v4l2Info.formatInitialized || !m_v4l2FileDescriptor) ++ return; ++ ++ Q_ASSERT(!m_cameraFormat.isNull()); ++ qCDebug(qLcV4L2Camera) << "XXXXX" << this << m_cameraDevice.id() << m_cameraFormat.pixelFormat() ++ << m_cameraFormat.resolution(); ++ ++ v4l2_format fmt = {}; ++ fmt.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; ++ ++ auto size = m_cameraFormat.resolution(); ++ fmt.fmt.pix.width = size.width(); ++ fmt.fmt.pix.height = size.height(); ++ fmt.fmt.pix.pixelformat = v4l2FormatForPixelFormat(m_cameraFormat.pixelFormat()); ++ fmt.fmt.pix.field = V4L2_FIELD_ANY; ++ ++ qCDebug(qLcV4L2Camera) << "setting camera format to" << size << fmt.fmt.pix.pixelformat; ++ ++ if (!m_v4l2FileDescriptor->call(VIDIOC_S_FMT, &fmt)) { ++ if (errno == EBUSY) { ++ setCameraBusy(); ++ return; ++ } ++ qWarning() << "Couldn't set video format on v4l2 camera" << strerror(errno); ++ } ++ ++ m_v4l2Info.formatInitialized = true; ++ m_cameraBusy = false; ++ ++ m_bytesPerLine = fmt.fmt.pix.bytesperline; ++ m_imageSize = std::max(fmt.fmt.pix.sizeimage, m_bytesPerLine * fmt.fmt.pix.height); ++ ++ switch (v4l2_colorspace(fmt.fmt.pix.colorspace)) { ++ default: ++ case V4L2_COLORSPACE_DCI_P3: ++ m_colorSpace = QVideoFrameFormat::ColorSpace_Undefined; ++ break; ++ case V4L2_COLORSPACE_REC709: ++ m_colorSpace = QVideoFrameFormat::ColorSpace_BT709; ++ break; ++ case V4L2_COLORSPACE_JPEG: ++ m_colorSpace = QVideoFrameFormat::ColorSpace_AdobeRgb; ++ break; ++ case V4L2_COLORSPACE_SRGB: ++ // ##### is this correct??? ++ m_colorSpace = QVideoFrameFormat::ColorSpace_BT601; ++ break; ++ case V4L2_COLORSPACE_BT2020: ++ m_colorSpace = QVideoFrameFormat::ColorSpace_BT2020; ++ break; ++ } ++ ++ v4l2_streamparm streamParam = {}; ++ streamParam.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; ++ ++ streamParam.parm.capture.capability = V4L2_CAP_TIMEPERFRAME; ++ auto [num, den] = qRealToFraction(1./m_cameraFormat.maxFrameRate()); ++ streamParam.parm.capture.timeperframe = { (uint)num, (uint)den }; ++ m_v4l2FileDescriptor->call(VIDIOC_S_PARM, &streamParam); ++ ++ m_frameDuration = 1000000 * streamParam.parm.capture.timeperframe.numerator ++ / streamParam.parm.capture.timeperframe.denominator; ++} ++ ++void QV4L2Camera::initV4L2MemoryTransfer() ++{ ++ if (m_cameraBusy) ++ return; ++ ++ Q_ASSERT(!m_memoryTransfer); ++ ++ m_memoryTransfer = makeUserPtrMemoryTransfer(m_v4l2FileDescriptor, m_imageSize); ++ ++ if (m_memoryTransfer) ++ return; ++ ++ if (errno == EBUSY) { ++ setCameraBusy(); ++ return; ++ } ++ ++ qCDebug(qLcV4L2Camera) << "Cannot init V4L2_MEMORY_USERPTR; trying V4L2_MEMORY_MMAP"; ++ ++ m_memoryTransfer = makeMMapMemoryTransfer(m_v4l2FileDescriptor); ++ ++ if (!m_memoryTransfer) { ++ qCWarning(qLcV4L2Camera) << "Cannot init v4l2 memory transfer," << qt_error_string(errno); ++ updateError(QCamera::CameraError, QLatin1String("Cannot init V4L2 memory transfer")); ++ } ++} ++ ++void QV4L2Camera::stopCapturing() ++{ ++ if (!m_memoryTransfer || !m_v4l2FileDescriptor) ++ return; ++ ++ m_notifier = nullptr; ++ ++ if (!m_v4l2FileDescriptor->stopStream()) { ++ // TODO: handle the case carefully to avoid possible memory corruption ++ if (errno != ENODEV) ++ qWarning() << "failed to stop capture"; ++ } ++ ++ m_memoryTransfer = nullptr; ++ m_cameraBusy = false; ++} ++ ++void QV4L2Camera::startCapturing() ++{ ++ if (!m_v4l2FileDescriptor) ++ return; ++ ++ setV4L2CameraFormat(); ++ initV4L2MemoryTransfer(); ++ ++ if (m_cameraBusy || !m_memoryTransfer) ++ return; ++ ++ if (!m_v4l2FileDescriptor->startStream()) { ++ qWarning() << "Couldn't start v4l2 camera stream"; ++ return; ++ } ++ ++ m_notifier = ++ std::make_unique(m_v4l2FileDescriptor->get(), QSocketNotifier::Read); ++ connect(m_notifier.get(), &QSocketNotifier::activated, this, &QV4L2Camera::readFrame); ++ ++ m_firstFrameTime = { -1, -1 }; ++} ++ ++QVideoFrameFormat QV4L2Camera::frameFormat() const ++{ ++ auto result = QPlatformCamera::frameFormat(); ++ result.setColorSpace(m_colorSpace); ++ return result; ++} ++ ++QT_END_NAMESPACE ++ ++#include "moc_qv4l2camera_p.cpp" +diff --git a/src/plugins/multimedia/v4l2/qv4l2camera_p.h b/src/plugins/multimedia/v4l2/qv4l2camera_p.h +new file mode 100644 +index 000000000..79cc3cfa9 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qv4l2camera_p.h +@@ -0,0 +1,133 @@ ++// Copyright (C) 2021 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#ifndef QV4L2CAMERA_H ++#define QV4L2CAMERA_H ++ ++// ++// W A R N I N G ++// ------------- ++// ++// This file is not part of the Qt API. It exists purely as an ++// implementation detail. This header file may change from version to ++// version without notice, or even be removed. ++// ++// We mean it. ++// ++ ++#include ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++class QV4L2FileDescriptor; ++class QV4L2MemoryTransfer; ++class QSocketNotifier; ++ ++struct V4L2CameraInfo ++{ ++ bool formatInitialized = false; ++ ++ bool autoWhiteBalanceSupported = false; ++ bool colorTemperatureSupported = false; ++ bool autoExposureSupported = false; ++ bool manualExposureSupported = false; ++ bool flashSupported = false; ++ bool torchSupported = false; ++ qint32 minColorTemp = 5600; // Daylight... ++ qint32 maxColorTemp = 5600; ++ qint32 minExposure = 0; ++ qint32 maxExposure = 0; ++ qint32 minExposureAdjustment = 0; ++ qint32 maxExposureAdjustment = 0; ++ qint32 minFocus = 0; ++ qint32 maxFocus = 0; ++ qint32 rangedFocus = false; ++ ++ int minZoom = 0; ++ int maxZoom = 0; ++}; ++ ++QVideoFrameFormat::PixelFormat formatForV4L2Format(uint32_t v4l2Format); ++uint32_t v4l2FormatForPixelFormat(QVideoFrameFormat::PixelFormat format); ++ ++class Q_MULTIMEDIA_EXPORT QV4L2Camera : public QPlatformCamera ++{ ++ Q_OBJECT ++ ++public: ++ explicit QV4L2Camera(QCamera *parent); ++ ~QV4L2Camera(); ++ ++ bool isActive() const override; ++ void setActive(bool active) override; ++ ++ void setCamera(const QCameraDevice &camera) override; ++ bool setCameraFormat(const QCameraFormat &format) override; ++ bool resolveCameraFormat(const QCameraFormat &format); ++ ++ bool isFocusModeSupported(QCamera::FocusMode mode) const override; ++ void setFocusMode(QCamera::FocusMode /*mode*/) override; ++ ++// void setCustomFocusPoint(const QPointF &/*point*/) override; ++ void setFocusDistance(float) override; ++ void zoomTo(float /*newZoomFactor*/, float /*rate*/ = -1.) override; ++ ++ void setFlashMode(QCamera::FlashMode /*mode*/) override; ++ bool isFlashModeSupported(QCamera::FlashMode mode) const override; ++ bool isFlashReady() const override; ++ ++ void setTorchMode(QCamera::TorchMode /*mode*/) override; ++ bool isTorchModeSupported(QCamera::TorchMode mode) const override; ++ ++ void setExposureMode(QCamera::ExposureMode) override; ++ bool isExposureModeSupported(QCamera::ExposureMode mode) const override; ++ void setExposureCompensation(float) override; ++ int isoSensitivity() const override; ++ void setManualIsoSensitivity(int) override; ++ void setManualExposureTime(float) override; ++ float exposureTime() const override; ++ ++ bool isWhiteBalanceModeSupported(QCamera::WhiteBalanceMode mode) const override; ++ void setWhiteBalanceMode(QCamera::WhiteBalanceMode /*mode*/) override; ++ void setColorTemperature(int /*temperature*/) override; ++ ++ QVideoFrameFormat frameFormat() const override; ++ ++private Q_SLOTS: ++ void readFrame(); ++ ++private: ++ void setCameraBusy(); ++ void initV4L2Controls(); ++ void closeV4L2Fd(); ++ int setV4L2ColorTemperature(int temperature); ++ bool setV4L2Parameter(quint32 id, qint32 value); ++ int getV4L2Parameter(quint32 id) const; ++ ++ void setV4L2CameraFormat(); ++ void initV4L2MemoryTransfer(); ++ void startCapturing(); ++ void stopCapturing(); ++ ++private: ++ bool m_active = false; ++ QCameraDevice m_cameraDevice; ++ ++ std::unique_ptr m_notifier; ++ std::unique_ptr m_memoryTransfer; ++ std::shared_ptr m_v4l2FileDescriptor; ++ ++ V4L2CameraInfo m_v4l2Info; ++ ++ timeval m_firstFrameTime = { -1, -1 }; ++ quint32 m_bytesPerLine = 0; ++ quint32 m_imageSize = 0; ++ QVideoFrameFormat::ColorSpace m_colorSpace = QVideoFrameFormat::ColorSpace_Undefined; ++ qint64 m_frameDuration = -1; ++ bool m_cameraBusy = false; ++}; ++ ++QT_END_NAMESPACE ++ ++#endif // QV4L2CAMERA_H +diff --git a/src/plugins/multimedia/v4l2/qv4l2cameradevices.cpp b/src/plugins/multimedia/v4l2/qv4l2cameradevices.cpp +new file mode 100644 +index 000000000..c89ff69c6 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qv4l2cameradevices.cpp +@@ -0,0 +1,168 @@ ++// Copyright (C) 2023 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#include "qv4l2cameradevices_p.h" ++#include "qv4l2filedescriptor_p.h" ++#include "qv4l2camera_p.h" ++ ++#include ++#include ++ ++#include ++#include ++#include ++#include ++ ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++static Q_LOGGING_CATEGORY(qLcV4L2CameraDevices, "qt.multimedia.ffmpeg.v4l2cameradevices"); ++ ++static bool areCamerasEqual(QList a, QList b) ++{ ++ auto areCamerasDataEqual = [](const QCameraDevice &a, const QCameraDevice &b) { ++ Q_ASSERT(QCameraDevicePrivate::handle(a)); ++ Q_ASSERT(QCameraDevicePrivate::handle(b)); ++ return *QCameraDevicePrivate::handle(a) == *QCameraDevicePrivate::handle(b); ++ }; ++ ++ return std::equal(a.cbegin(), a.cend(), b.cbegin(), b.cend(), areCamerasDataEqual); ++} ++ ++QV4L2CameraDevices::QV4L2CameraDevices(QPlatformMediaIntegration *integration) ++ : QPlatformVideoDevices(integration) ++{ ++ m_deviceWatcher.addPath(QLatin1String("/dev")); ++ connect(&m_deviceWatcher, &QFileSystemWatcher::directoryChanged, this, ++ &QV4L2CameraDevices::checkCameras); ++ doCheckCameras(); ++} ++ ++QList QV4L2CameraDevices::findVideoInputs() const ++{ ++ return m_cameras; ++} ++ ++void QV4L2CameraDevices::checkCameras() ++{ ++ if (doCheckCameras()) ++ onVideoInputsChanged(); ++} ++ ++bool QV4L2CameraDevices::doCheckCameras() ++{ ++ QList newCameras; ++ ++ QDir dir(QLatin1String("/dev")); ++ const auto devices = dir.entryList(QDir::System); ++ ++ bool first = true; ++ ++ for (auto device : devices) { ++ // qCDebug(qLcV4L2Camera) << "device:" << device; ++ if (!device.startsWith(QLatin1String("video"))) ++ continue; ++ ++ QByteArray file = QFile::encodeName(dir.filePath(device)); ++ const int fd = open(file.constData(), O_RDONLY); ++ if (fd < 0) ++ continue; ++ ++ auto fileCloseGuard = qScopeGuard([fd]() { close(fd); }); ++ ++ v4l2_fmtdesc formatDesc = {}; ++ ++ struct v4l2_capability cap; ++ if (xioctl(fd, VIDIOC_QUERYCAP, &cap) < 0) ++ continue; ++ ++ if (cap.device_caps & V4L2_CAP_META_CAPTURE) ++ continue; ++ if (!(cap.capabilities & V4L2_CAP_VIDEO_CAPTURE)) ++ continue; ++ if (!(cap.capabilities & V4L2_CAP_STREAMING)) ++ continue; ++ ++ auto camera = std::make_unique(); ++ ++ camera->id = file; ++ camera->description = QString::fromUtf8((const char *)cap.card); ++ qCDebug(qLcV4L2CameraDevices) << "found camera" << camera->id << camera->description; ++ ++ formatDesc.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; ++ ++ while (!xioctl(fd, VIDIOC_ENUM_FMT, &formatDesc)) { ++ auto pixelFmt = formatForV4L2Format(formatDesc.pixelformat); ++ qCDebug(qLcV4L2CameraDevices) << " " << pixelFmt; ++ ++ if (pixelFmt == QVideoFrameFormat::Format_Invalid) { ++ ++formatDesc.index; ++ continue; ++ } ++ ++ qCDebug(qLcV4L2CameraDevices) << "frame sizes:"; ++ v4l2_frmsizeenum frameSize = {}; ++ frameSize.pixel_format = formatDesc.pixelformat; ++ ++ while (!xioctl(fd, VIDIOC_ENUM_FRAMESIZES, &frameSize)) { ++ ++frameSize.index; ++ if (frameSize.type != V4L2_FRMSIZE_TYPE_DISCRETE) ++ continue; ++ ++ QSize resolution(frameSize.discrete.width, frameSize.discrete.height); ++ float min = 1e10; ++ float max = 0; ++ ++ v4l2_frmivalenum frameInterval = {}; ++ frameInterval.pixel_format = formatDesc.pixelformat; ++ frameInterval.width = frameSize.discrete.width; ++ frameInterval.height = frameSize.discrete.height; ++ ++ while (!xioctl(fd, VIDIOC_ENUM_FRAMEINTERVALS, &frameInterval)) { ++ ++frameInterval.index; ++ if (frameInterval.type != V4L2_FRMIVAL_TYPE_DISCRETE) ++ continue; ++ float rate = float(frameInterval.discrete.denominator) ++ / float(frameInterval.discrete.numerator); ++ if (rate > max) ++ max = rate; ++ if (rate < min) ++ min = rate; ++ } ++ ++ qCDebug(qLcV4L2CameraDevices) << " " << resolution << min << max; ++ ++ if (min <= max) { ++ auto fmt = std::make_unique(); ++ fmt->pixelFormat = pixelFmt; ++ fmt->resolution = resolution; ++ fmt->minFrameRate = min; ++ fmt->maxFrameRate = max; ++ camera->videoFormats.append(fmt.release()->create()); ++ camera->photoResolutions.append(resolution); ++ } ++ } ++ ++ ++formatDesc.index; ++ } ++ ++ if (camera->videoFormats.empty()) ++ continue; ++ ++ // first camera is default ++ camera->isDefault = std::exchange(first, false); ++ ++ newCameras.append(camera.release()->create()); ++ } ++ ++ if (areCamerasEqual(m_cameras, newCameras)) ++ return false; ++ ++ m_cameras = std::move(newCameras); ++ return true; ++} ++ ++QT_END_NAMESPACE ++ ++#include "moc_qv4l2cameradevices_p.cpp" +diff --git a/src/plugins/multimedia/v4l2/qv4l2cameradevices_p.h b/src/plugins/multimedia/v4l2/qv4l2cameradevices_p.h +new file mode 100644 +index 000000000..22ac44027 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qv4l2cameradevices_p.h +@@ -0,0 +1,47 @@ ++// Copyright (C) 2023 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#ifndef QV4L2CAMERADEVICES_P_H ++#define QV4L2CAMERADEVICES_P_H ++ ++// ++// W A R N I N G ++// ------------- ++// ++// This file is not part of the Qt API. It exists purely as an ++// implementation detail. This header file may change from version to ++// version without notice, or even be removed. ++// ++// We mean it. ++// ++ ++#include ++#include ++ ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++class QV4L2CameraDevices : public QPlatformVideoDevices ++{ ++ Q_OBJECT ++public: ++ QV4L2CameraDevices(QPlatformMediaIntegration *integration); ++ ++public Q_SLOTS: ++ void checkCameras(); ++ ++protected: ++ QList findVideoInputs() const override; ++ ++private: ++ bool doCheckCameras(); ++ ++private: ++ QList m_cameras; ++ QFileSystemWatcher m_deviceWatcher; ++}; ++ ++QT_END_NAMESPACE ++ ++#endif // QV4L2CAMERADEVICES_P_H +diff --git a/src/plugins/multimedia/v4l2/qv4l2filedescriptor.cpp b/src/plugins/multimedia/v4l2/qv4l2filedescriptor.cpp +new file mode 100644 +index 000000000..7f7b099c7 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qv4l2filedescriptor.cpp +@@ -0,0 +1,71 @@ ++// Copyright (C) 2023 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#include "qv4l2filedescriptor_p.h" ++ ++#include ++#include ++ ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++int xioctl(int fd, int request, void *arg) ++{ ++ int res; ++ ++ do { ++ res = ::ioctl(fd, request, arg); ++ } while (res == -1 && EINTR == errno); ++ ++ return res; ++} ++ ++QV4L2FileDescriptor::QV4L2FileDescriptor(int descriptor) : m_descriptor(descriptor) ++{ ++ Q_ASSERT(descriptor >= 0); ++} ++ ++QV4L2FileDescriptor::~QV4L2FileDescriptor() ++{ ++ qt_safe_close(m_descriptor); ++} ++ ++bool QV4L2FileDescriptor::call(int request, void *arg) const ++{ ++ return ::xioctl(m_descriptor, request, arg) >= 0; ++} ++ ++bool QV4L2FileDescriptor::requestBuffers(quint32 memoryType, quint32 &buffersCount) const ++{ ++ v4l2_requestbuffers req = {}; ++ req.count = buffersCount; ++ req.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; ++ req.memory = memoryType; ++ ++ if (!call(VIDIOC_REQBUFS, &req)) ++ return false; ++ ++ buffersCount = req.count; ++ return true; ++} ++ ++bool QV4L2FileDescriptor::startStream() ++{ ++ int type = V4L2_BUF_TYPE_VIDEO_CAPTURE; ++ if (!call(VIDIOC_STREAMON, &type)) ++ return false; ++ ++ m_streamStarted = true; ++ return true; ++} ++ ++bool QV4L2FileDescriptor::stopStream() ++{ ++ int type = V4L2_BUF_TYPE_VIDEO_CAPTURE; ++ auto result = call(VIDIOC_STREAMOFF, &type); ++ m_streamStarted = false; ++ return result; ++} ++ ++QT_END_NAMESPACE +diff --git a/src/plugins/multimedia/v4l2/qv4l2filedescriptor_p.h b/src/plugins/multimedia/v4l2/qv4l2filedescriptor_p.h +new file mode 100644 +index 000000000..1058c7a82 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qv4l2filedescriptor_p.h +@@ -0,0 +1,50 @@ ++// Copyright (C) 2023 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#ifndef QV4L2FILEDESCRIPTOR_P_H ++#define QV4L2FILEDESCRIPTOR_P_H ++ ++#include ++ ++// ++// W A R N I N G ++// ------------- ++// ++// This file is not part of the Qt API. It exists purely as an ++// implementation detail. This header file may change from version to ++// version without notice, or even be removed. ++// ++// We mean it. ++// ++ ++QT_BEGIN_NAMESPACE ++ ++int xioctl(int fd, int request, void *arg); ++ ++class QV4L2FileDescriptor ++{ ++public: ++ QV4L2FileDescriptor(int descriptor); ++ ++ ~QV4L2FileDescriptor(); ++ ++ bool call(int request, void *arg) const; ++ ++ int get() const { return m_descriptor; } ++ ++ bool requestBuffers(quint32 memoryType, quint32 &buffersCount) const; ++ ++ bool startStream(); ++ ++ bool stopStream(); ++ ++ bool streamStarted() const { return m_streamStarted; } ++ ++private: ++ int m_descriptor; ++ bool m_streamStarted = false; ++}; ++ ++QT_END_NAMESPACE ++ ++#endif // QV4L2FILEDESCRIPTOR_P_H +diff --git a/src/plugins/multimedia/v4l2/qv4l2memorytransfer.cpp b/src/plugins/multimedia/v4l2/qv4l2memorytransfer.cpp +new file mode 100644 +index 000000000..32ee4f8f8 +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qv4l2memorytransfer.cpp +@@ -0,0 +1,223 @@ ++// Copyright (C) 2023 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#include "qv4l2memorytransfer_p.h" ++#include "qv4l2filedescriptor_p.h" ++ ++#include ++#include ++#include ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++static Q_LOGGING_CATEGORY(qLcV4L2MemoryTransfer, "qt.multimedia.ffmpeg.v4l2camera.memorytransfer"); ++ ++namespace { ++ ++v4l2_buffer makeV4l2Buffer(quint32 memoryType, quint32 index = 0) ++{ ++ v4l2_buffer buf = {}; ++ buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; ++ buf.memory = memoryType; ++ buf.index = index; ++ return buf; ++} ++ ++class UserPtrMemoryTransfer : public QV4L2MemoryTransfer ++{ ++public: ++ static QV4L2MemoryTransferUPtr create(QV4L2FileDescriptorPtr fileDescriptor, quint32 imageSize) ++ { ++ quint32 buffersCount = 2; ++ if (!fileDescriptor->requestBuffers(V4L2_MEMORY_USERPTR, buffersCount)) { ++ qCWarning(qLcV4L2MemoryTransfer) << "Cannot request V4L2_MEMORY_USERPTR buffers"; ++ return {}; ++ } ++ ++ std::unique_ptr result( ++ new UserPtrMemoryTransfer(std::move(fileDescriptor), buffersCount, imageSize)); ++ ++ return result->enqueueBuffers() ? std::move(result) : nullptr; ++ } ++ ++ std::optional dequeueBuffer() override ++ { ++ auto v4l2Buffer = makeV4l2Buffer(V4L2_MEMORY_USERPTR); ++ if (!fileDescriptor().call(VIDIOC_DQBUF, &v4l2Buffer)) ++ return {}; ++ ++ Q_ASSERT(v4l2Buffer.index < m_byteArrays.size()); ++ Q_ASSERT(!m_byteArrays[v4l2Buffer.index].isEmpty()); ++ ++ return Buffer{ v4l2Buffer, std::move(m_byteArrays[v4l2Buffer.index]) }; ++ } ++ ++ bool enqueueBuffer(quint32 index) override ++ { ++ Q_ASSERT(index < m_byteArrays.size()); ++ Q_ASSERT(m_byteArrays[index].isEmpty()); ++ ++ auto buf = makeV4l2Buffer(V4L2_MEMORY_USERPTR, index); ++ static_assert(sizeof(decltype(buf.m.userptr)) == sizeof(size_t), "Not compatible sizes"); ++ ++ m_byteArrays[index] = QByteArray(static_cast(m_imageSize), Qt::Uninitialized); ++ ++ buf.m.userptr = (decltype(buf.m.userptr))m_byteArrays[index].data(); ++ buf.length = m_byteArrays[index].size(); ++ ++ if (!fileDescriptor().call(VIDIOC_QBUF, &buf)) { ++ qWarning() << "Couldn't add V4L2 buffer" << errno << strerror(errno) << index; ++ return false; ++ } ++ ++ return true; ++ } ++ ++ quint32 buffersCount() const override { return static_cast(m_byteArrays.size()); } ++ ++private: ++ UserPtrMemoryTransfer(QV4L2FileDescriptorPtr fileDescriptor, quint32 buffersCount, ++ quint32 imageSize) ++ : QV4L2MemoryTransfer(std::move(fileDescriptor)), ++ m_imageSize(imageSize), ++ m_byteArrays(buffersCount) ++ { ++ } ++ ++private: ++ quint32 m_imageSize; ++ std::vector m_byteArrays; ++}; ++ ++class MMapMemoryTransfer : public QV4L2MemoryTransfer ++{ ++public: ++ struct MemorySpan ++ { ++ void *data = nullptr; ++ size_t size = 0; ++ bool inQueue = false; ++ }; ++ ++ static QV4L2MemoryTransferUPtr create(QV4L2FileDescriptorPtr fileDescriptor) ++ { ++ quint32 buffersCount = 2; ++ if (!fileDescriptor->requestBuffers(V4L2_MEMORY_MMAP, buffersCount)) { ++ qCWarning(qLcV4L2MemoryTransfer) << "Cannot request V4L2_MEMORY_MMAP buffers"; ++ return {}; ++ } ++ ++ std::unique_ptr result( ++ new MMapMemoryTransfer(std::move(fileDescriptor))); ++ ++ return result->init(buffersCount) ? std::move(result) : nullptr; ++ } ++ ++ bool init(quint32 buffersCount) ++ { ++ for (quint32 index = 0; index < buffersCount; ++index) { ++ auto buf = makeV4l2Buffer(V4L2_MEMORY_MMAP, index); ++ ++ if (!fileDescriptor().call(VIDIOC_QUERYBUF, &buf)) { ++ qWarning() << "Can't map buffer" << index; ++ return false; ++ } ++ ++ auto mappedData = mmap(nullptr, buf.length, PROT_READ | PROT_WRITE, MAP_SHARED, ++ fileDescriptor().get(), buf.m.offset); ++ ++ if (mappedData == MAP_FAILED) { ++ qWarning() << "mmap failed" << index << buf.length << buf.m.offset; ++ return false; ++ } ++ ++ m_spans.push_back(MemorySpan{ mappedData, buf.length, false }); ++ } ++ ++ m_spans.shrink_to_fit(); ++ ++ return enqueueBuffers(); ++ } ++ ++ ~MMapMemoryTransfer() override ++ { ++ for (const auto &span : m_spans) ++ munmap(span.data, span.size); ++ } ++ ++ std::optional dequeueBuffer() override ++ { ++ auto v4l2Buffer = makeV4l2Buffer(V4L2_MEMORY_MMAP); ++ if (!fileDescriptor().call(VIDIOC_DQBUF, &v4l2Buffer)) ++ return {}; ++ ++ const auto index = v4l2Buffer.index; ++ ++ Q_ASSERT(index < m_spans.size()); ++ ++ auto &span = m_spans[index]; ++ ++ Q_ASSERT(span.inQueue); ++ span.inQueue = false; ++ ++ return Buffer{ v4l2Buffer, ++ QByteArray(reinterpret_cast(span.data), span.size) }; ++ } ++ ++ bool enqueueBuffer(quint32 index) override ++ { ++ Q_ASSERT(index < m_spans.size()); ++ Q_ASSERT(!m_spans[index].inQueue); ++ ++ auto buf = makeV4l2Buffer(V4L2_MEMORY_MMAP, index); ++ if (!fileDescriptor().call(VIDIOC_QBUF, &buf)) ++ return false; ++ ++ m_spans[index].inQueue = true; ++ return true; ++ } ++ ++ quint32 buffersCount() const override { return static_cast(m_spans.size()); } ++ ++private: ++ using QV4L2MemoryTransfer::QV4L2MemoryTransfer; ++ ++private: ++ std::vector m_spans; ++}; ++} // namespace ++ ++QV4L2MemoryTransfer::QV4L2MemoryTransfer(QV4L2FileDescriptorPtr fileDescriptor) ++ : m_fileDescriptor(std::move(fileDescriptor)) ++{ ++ Q_ASSERT(m_fileDescriptor); ++ Q_ASSERT(!m_fileDescriptor->streamStarted()); ++} ++ ++QV4L2MemoryTransfer::~QV4L2MemoryTransfer() ++{ ++ Q_ASSERT(!m_fileDescriptor->streamStarted()); // to avoid possible corruptions ++} ++ ++bool QV4L2MemoryTransfer::enqueueBuffers() ++{ ++ for (quint32 i = 0; i < buffersCount(); ++i) ++ if (!enqueueBuffer(i)) ++ return false; ++ ++ return true; ++} ++ ++QV4L2MemoryTransferUPtr makeUserPtrMemoryTransfer(QV4L2FileDescriptorPtr fileDescriptor, ++ quint32 imageSize) ++{ ++ return UserPtrMemoryTransfer::create(std::move(fileDescriptor), imageSize); ++} ++ ++QV4L2MemoryTransferUPtr makeMMapMemoryTransfer(QV4L2FileDescriptorPtr fileDescriptor) ++{ ++ return MMapMemoryTransfer::create(std::move(fileDescriptor)); ++} ++ ++QT_END_NAMESPACE +diff --git a/src/plugins/multimedia/v4l2/qv4l2memorytransfer_p.h b/src/plugins/multimedia/v4l2/qv4l2memorytransfer_p.h +new file mode 100644 +index 000000000..6b5e3913f +--- /dev/null ++++ b/src/plugins/multimedia/v4l2/qv4l2memorytransfer_p.h +@@ -0,0 +1,66 @@ ++// Copyright (C) 2023 The Qt Company Ltd. ++// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only ++ ++#ifndef QV4L2MEMORYTRANSFER_P_H ++#define QV4L2MEMORYTRANSFER_P_H ++ ++#include ++#include ++#include ++ ++#include ++ ++QT_BEGIN_NAMESPACE ++ ++// ++// W A R N I N G ++// ------------- ++// ++// This file is not part of the Qt API. It exists purely as an ++// implementation detail. This header file may change from version to ++// version without notice, or even be removed. ++// ++// We mean it. ++// ++ ++class QV4L2FileDescriptor; ++using QV4L2FileDescriptorPtr = std::shared_ptr; ++ ++class QV4L2MemoryTransfer ++{ ++public: ++ struct Buffer ++ { ++ v4l2_buffer v4l2Buffer = {}; ++ QByteArray data; ++ }; ++ ++ QV4L2MemoryTransfer(QV4L2FileDescriptorPtr fileDescriptor); ++ ++ virtual ~QV4L2MemoryTransfer(); ++ ++ virtual std::optional dequeueBuffer() = 0; ++ ++ virtual bool enqueueBuffer(quint32 index) = 0; ++ ++ virtual quint32 buffersCount() const = 0; ++ ++protected: ++ bool enqueueBuffers(); ++ ++ const QV4L2FileDescriptor &fileDescriptor() const { return *m_fileDescriptor; } ++ ++private: ++ QV4L2FileDescriptorPtr m_fileDescriptor; ++}; ++ ++using QV4L2MemoryTransferUPtr = std::unique_ptr; ++ ++QV4L2MemoryTransferUPtr makeUserPtrMemoryTransfer(QV4L2FileDescriptorPtr fileDescriptor, ++ quint32 imageSize); ++ ++QV4L2MemoryTransferUPtr makeMMapMemoryTransfer(QV4L2FileDescriptorPtr fileDescriptor); ++ ++QT_END_NAMESPACE ++ ++#endif // QV4L2MEMORYTRANSFER_P_H diff --git a/patches/qt/windows_func_fix.patch b/patches/qt/windows_func_fix.patch new file mode 100644 index 0000000..1ea952a --- /dev/null +++ b/patches/qt/windows_func_fix.patch @@ -0,0 +1,48 @@ +From aaae4d700b339491d9c90d12f38ac26186980305 Mon Sep 17 00:00:00 2001 +From: tobtoht +Date: Tue, 15 Nov 2022 15:48:09 +0100 +Subject: [PATCH] Windows: don't use GetFileVersionInfoSize, + GetFileVersionInfo, VerQueryValue + +--- + src/corelib/kernel/qcoreapplication_win.cpp | 24 --------------------- + 1 file changed, 24 deletions(-) + +diff --git a/qtbase/src/corelib/kernel/qcoreapplication_win.cpp b/qtbase/src/corelib/kernel/qcoreapplication_win.cpp +index 0fe14af798..e46384a6a5 100644 +--- a/qtbase/src/corelib/kernel/qcoreapplication_win.cpp ++++ b/qtbase/src/corelib/kernel/qcoreapplication_win.cpp +@@ -60,30 +60,6 @@ QString QCoreApplicationPrivate::appName() const + QString QCoreApplicationPrivate::appVersion() const + { + QString applicationVersion; +-#ifndef QT_BOOTSTRAPPED +- const QString appFileName = qAppFileName(); +- QVarLengthArray buffer(appFileName.size() + 1); +- buffer[appFileName.toWCharArray(buffer.data())] = 0; +- +- DWORD versionInfoSize = GetFileVersionInfoSize(buffer.data(), nullptr); +- if (versionInfoSize) { +- QVarLengthArray info(static_cast(versionInfoSize)); +- if (GetFileVersionInfo(buffer.data(), 0, versionInfoSize, info.data())) { +- UINT size; +- DWORD *fi; +- +- if (VerQueryValue(info.data(), __TEXT("\\"), +- reinterpret_cast(&fi), &size) && size) { +- const VS_FIXEDFILEINFO *verInfo = reinterpret_cast(fi); +- applicationVersion = QStringLiteral("%1.%2.%3.%4") +- .arg(HIWORD(verInfo->dwProductVersionMS)) +- .arg(LOWORD(verInfo->dwProductVersionMS)) +- .arg(HIWORD(verInfo->dwProductVersionLS)) +- .arg(LOWORD(verInfo->dwProductVersionLS)); +- } +- } +- } +-#endif + return applicationVersion; + } + +-- +2.38.1 + diff --git a/patches/wayland/toolchain.txt b/patches/wayland/toolchain.txt new file mode 100644 index 0000000..ab8da46 --- /dev/null +++ b/patches/wayland/toolchain.txt @@ -0,0 +1,15 @@ +[binaries] +c = '@cc@' +cpp = '@cxx@' +ar = '@ar@' +strip = '@strip@' +pkgconfig = 'pkg-config' + +[host_machine] +system = 'linux' +cpu_family = '@arch@' +cpu = '@arch@' +endian = 'little' + +[built-in options] +prefix = '@host_prefix@' diff --git a/utils/download/download.go b/utils/download/download.go index 8f568e3..f7553c9 100644 --- a/utils/download/download.go +++ b/utils/download/download.go @@ -4,6 +4,7 @@ import ( "crypto/sha256" "crypto/tls" "encoding/hex" + "errors" "fmt" "io" "log" @@ -19,6 +20,8 @@ import ( const maxDownloadRetries = 15 const downloadRetryDelay = 5 * time.Second +var ErrHashMismatch = errors.New("sha256 hash mismatch") + var defaultHTTPClient = &http.Client{ Transport: &http.Transport{ // Avoid HTTP/2 stream errors on large mirror downloads. @@ -173,6 +176,16 @@ func downloadToFileWithResume(destPath, url string) (int64, error) { return fileSize + bytesRead, nil } +func shouldResetRetryCount(err error, partialPath string, startSize, bytesReceived int64) bool { + if bytesReceived <= startSize { + return false + } + if errors.Is(err, ErrHashMismatch) { + return false + } + return fileSizeAt(partialPath) > startSize +} + // DownloadURLWithRetries downloads url to destPath with progress, resume, and retries. func DownloadURLWithRetries(url, destPath string) error { attempt := 0 @@ -194,7 +207,7 @@ func DownloadURLWithRetries(url, destPath string) error { log.Printf("Download failed: %v", err) - if bytesReceived > startSize { + if shouldResetRetryCount(err, destPath, startSize, bytesReceived) { log.Printf("Made progress (%s), resetting retry count", formatBytes(bytesReceived-startSize)) attempt = 0 continue @@ -286,7 +299,7 @@ func DownloadFile(packageName, path, url, expectedSha256 string, isMirror bool) log.Printf("Download failed: %v", err) - if bytesReceived > startSize { + if shouldResetRetryCount(err, downloadTempPath(path), startSize, bytesReceived) { log.Printf("Made progress (%s), resetting retry count", formatBytes(bytesReceived-startSize)) attempt = 0 continue @@ -323,7 +336,7 @@ func downloadWithResume(path, url, expectedSha256 string) (int64, error) { actualHash := hex.EncodeToString(hasher.Sum(nil)) if actualHash != expectedSha256 { os.Remove(tempPath) - return bytesRead, fmt.Errorf("SHA256 hash mismatch: expected %s, got %s", expectedSha256, actualHash) + return bytesRead, fmt.Errorf("%w: expected %s, got %s", ErrHashMismatch, expectedSha256, actualHash) } if err := os.Rename(tempPath, path); err != nil { diff --git a/utils/download/download_test.go b/utils/download/download_test.go index 52e25ae..eee41f7 100644 --- a/utils/download/download_test.go +++ b/utils/download/download_test.go @@ -1,6 +1,7 @@ package download import ( + "fmt" "os" "path/filepath" "testing" @@ -40,3 +41,26 @@ func TestEnsureDownloadFileRejectsInvalidHash(t *testing.T) { t.Fatal("expected stale file to be removed before re-download attempt") } } + +func TestShouldResetRetryCount(t *testing.T) { + dir := t.TempDir() + partial := filepath.Join(dir, "partial.bin") + + if shouldResetRetryCount(fmt.Errorf("network"), partial, 0, 0) { + t.Fatal("expected no reset without progress") + } + + if err := os.WriteFile(partial, make([]byte, 128), 0644); err != nil { + t.Fatalf("write partial: %v", err) + } + if !shouldResetRetryCount(fmt.Errorf("network"), partial, 0, 128) { + t.Fatal("expected reset when partial file remains") + } + + if err := os.Remove(partial); err != nil { + t.Fatalf("remove partial: %v", err) + } + if shouldResetRetryCount(fmt.Errorf("%w: expected x, got y", ErrHashMismatch), partial, 0, 128) { + t.Fatal("hash mismatch must not reset retry count") + } +} From 91bd6d982f83d27edb9e5f47ff73eb7d9772b9df Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 13 Jul 2026 19:11:31 +0200 Subject: [PATCH 137/200] rust --- packages/native/_.json | 108 ++++++++++++++++++++++++++++++++- packages/rust-hello-world.json | 15 ++++- packages/rust-std.json | 89 ++++++++++++++++++++++++--- 3 files changed, 200 insertions(+), 12 deletions(-) diff --git a/packages/native/_.json b/packages/native/_.json index 8dfbd46..969c5d9 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -151,6 +151,7 @@ "*:x86_64-w64-mingw32:READELF=$NATIVEPREFIX/bin/x86_64-w64-mingw32-readelf", "*:x86_64-w64-mingw32:LD=$NATIVEPREFIX/bin/x86_64-w64-mingw32-ld", "*:x86_64-w64-mingw32:NM=$NATIVEPREFIX/bin/x86_64-w64-mingw32-nm", + "*:x86_64-w64-mingw32:LDFLAGS=--sysroot=$PREFIX/sysroot", "*:x86_64-linux-gnu:HOST=x86_64-linux-gnu", "*:x86_64-linux-gnu:TARGET=x86_64-linux-gnu", "*:x86_64-linux-gnu:RUST_TRIPLET=x86_64-unknown-linux-gnu", @@ -243,6 +244,111 @@ "*:armv7a-linux-androideabi:AS=$NATIVEPREFIX/bin/llvm-as", "*:armv7a-linux-androideabi:LIBTOOL=$NATIVEPREFIX/bin/libtool", "*:armv7a-linux-androideabi:ANDROID_NDK_HOME=$NATIVEPREFIX/", - "*:armv7a-linux-androideabi:LDFLAGS=$LDFLAGS -lc -lc++abi -lm" + "*:armv7a-linux-androideabi:LDFLAGS=$LDFLAGS -lc -lc++abi -lm", + "*:*-apple-*:CRATE_CC_NO_DEFAULTS=1", + "*:aarch64-apple-darwin:RUST_CC=$NATIVEPREFIX/bin/aarch64-apple-darwin-clang", + "*:aarch64-apple-darwin:RUST_CXX=$NATIVEPREFIX/bin/aarch64-apple-darwin-clang++", + "*:aarch64-apple-darwin:RUST_AR=$NATIVEPREFIX/bin/llvm-ar", + "*:aarch64-apple-darwin:RUST_LINKER=$NATIVEPREFIX/bin/aarch64-apple-darwin-clang", + "*:aarch64-apple-darwin:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$RUST_CC", + "*:aarch64-apple-darwin:CC_aarch64_apple_darwin=$RUST_CC", + "*:aarch64-apple-darwin:CXX_aarch64_apple_darwin=$RUST_CXX", + "*:aarch64-apple-darwin:AR_aarch64_apple_darwin=$RUST_AR", + "*:aarch64-apple-darwin:CFLAGS_aarch64_apple_darwin=-target aarch64-apple-darwin -isysroot $SDK_PATH -I$PREFIX/include", + "*:aarch64-apple-darwin:CXXFLAGS_aarch64_apple_darwin=-target aarch64-apple-darwin -isysroot $SDK_PATH -I$PREFIX/include -stdlib=libc++", + "*:aarch64-apple-darwin:CARGO_TARGET_AARCH64_APPLE_DARWIN_RUSTFLAGS=-Clinker=$RUST_CC -Clink-arg=-mmacosx-version-min=$OSX_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi", + "*:x86_64-apple-darwin:RUST_CC=$NATIVEPREFIX/bin/x86_64-apple-darwin-clang", + "*:x86_64-apple-darwin:RUST_CXX=$NATIVEPREFIX/bin/x86_64-apple-darwin-clang++", + "*:x86_64-apple-darwin:RUST_AR=$NATIVEPREFIX/bin/ar", + "*:x86_64-apple-darwin:RUST_LINKER=$NATIVEPREFIX/bin/x86_64-apple-darwin-clang", + "*:x86_64-apple-darwin:CARGO_TARGET_X86_64_APPLE_DARWIN_LINKER=$RUST_CC", + "*:x86_64-apple-darwin:CC_x86_64_apple_darwin=$RUST_CC", + "*:x86_64-apple-darwin:CXX_x86_64_apple_darwin=$RUST_CXX", + "*:x86_64-apple-darwin:AR_x86_64_apple_darwin=$RUST_AR", + "*:x86_64-apple-darwin:CFLAGS_x86_64_apple_darwin=-target x86_64-apple-darwin -isysroot $SDK_PATH -I$PREFIX/include", + "*:x86_64-apple-darwin:CXXFLAGS_x86_64_apple_darwin=-target x86_64-apple-darwin -isysroot $SDK_PATH -I$PREFIX/include -stdlib=libc++", + "*:x86_64-apple-darwin:CARGO_TARGET_X86_64_APPLE_DARWIN_RUSTFLAGS=-Clinker=$RUST_CC -Clink-arg=-mmacosx-version-min=$OSX_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi", + "*:aarch64-apple-ios:RUST_CC=$NATIVEPREFIX/bin/aarch64-apple-ios-clang", + "*:aarch64-apple-ios:RUST_CXX=$NATIVEPREFIX/bin/aarch64-apple-ios-clang++", + "*:aarch64-apple-ios:RUST_AR=$NATIVEPREFIX/bin/ar", + "*:aarch64-apple-ios:RUST_LINKER=$NATIVEPREFIX/bin/aarch64-apple-ios-clang", + "*:aarch64-apple-ios:CARGO_TARGET_AARCH64_APPLE_IOS_LINKER=$RUST_CC", + "*:aarch64-apple-ios:CC_aarch64_apple_ios=$RUST_CC", + "*:aarch64-apple-ios:CXX_aarch64_apple_ios=$RUST_CXX", + "*:aarch64-apple-ios:AR_aarch64_apple_ios=$RUST_AR", + "*:aarch64-apple-ios:CFLAGS_aarch64_apple_ios=-target aarch64-apple-ios -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:aarch64-apple-ios:CXXFLAGS_aarch64_apple_ios=-target aarch64-apple-ios -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include -stdlib=libc++", + "*:aarch64-apple-ios:CARGO_TARGET_AARCH64_APPLE_IOS_RUSTFLAGS=-Clinker=$RUST_CC -Clink-arg=-target -Clink-arg=aarch64-apple-ios -Clink-arg=-mios-version-min=$IOS_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi", + "*:aarch64-apple-ios-simulator:RUST_CC=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang", + "*:aarch64-apple-ios-simulator:RUST_CXX=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang++", + "*:aarch64-apple-ios-simulator:RUST_AR=$NATIVEPREFIX/bin/ar", + "*:aarch64-apple-ios-simulator:RUST_LINKER=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang", + "*:aarch64-apple-ios-simulator:CARGO_TARGET_AARCH64_APPLE_IOS_SIM_LINKER=$RUST_CC", + "*:aarch64-apple-ios-simulator:CC_aarch64_apple_ios_sim=$RUST_CC", + "*:aarch64-apple-ios-simulator:CXX_aarch64_apple_ios_sim=$RUST_CXX", + "*:aarch64-apple-ios-simulator:AR_aarch64_apple_ios_sim=$RUST_AR", + "*:aarch64-apple-ios-simulator:CFLAGS_aarch64_apple_ios_sim=-target aarch64-apple-ios-simulator -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", + "*:aarch64-apple-ios-simulator:CXXFLAGS_aarch64_apple_ios_sim=-target aarch64-apple-ios-simulator -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include -stdlib=libc++", + "*:aarch64-apple-ios-simulator:CARGO_TARGET_AARCH64_APPLE_IOS_SIM_RUSTFLAGS=-Clinker=$RUST_CC -Clink-arg=-target -Clink-arg=aarch64-apple-ios-simulator -Clink-arg=-mios-version-min=$IOS_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi", + "*:x86_64-w64-mingw32:RUST_CC=$CC", + "*:x86_64-w64-mingw32:RUST_CXX=$CXX", + "*:x86_64-w64-mingw32:RUST_AR=$AR", + "*:x86_64-w64-mingw32:RUST_LINKER=$CC", + "*:x86_64-w64-mingw32:CARGO_TARGET_X86_64_PC_WINDOWS_GNU_LINKER=$CC", + "*:x86_64-w64-mingw32:CC_x86_64_pc_windows_gnu=$CC", + "*:x86_64-w64-mingw32:CXX_x86_64_pc_windows_gnu=$CXX", + "*:x86_64-w64-mingw32:AR_x86_64_pc_windows_gnu=$AR", + "*:x86_64-w64-mingw32:CFLAGS_x86_64_pc_windows_gnu=$CFLAGS", + "*:x86_64-w64-mingw32:CXXFLAGS_x86_64_pc_windows_gnu=$CXXFLAGS", + "*:x86_64-w64-mingw32:CARGO_TARGET_X86_64_PC_WINDOWS_GNU_RUSTFLAGS=-Clinker=$CC -Clink-arg=--sysroot=$PREFIX/sysroot", + "*:x86_64-linux-gnu:RUST_CC=$CC", + "*:x86_64-linux-gnu:RUST_CXX=$CXX", + "*:x86_64-linux-gnu:RUST_AR=$AR", + "*:x86_64-linux-gnu:RUST_LINKER=$CC", + "*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$CC", + "*:x86_64-linux-gnu:CC_x86_64_unknown_linux_gnu=$CC", + "*:x86_64-linux-gnu:CXX_x86_64_unknown_linux_gnu=$CXX", + "*:x86_64-linux-gnu:AR_x86_64_unknown_linux_gnu=$AR", + "*:x86_64-linux-gnu:CFLAGS_x86_64_unknown_linux_gnu=$CFLAGS", + "*:x86_64-linux-gnu:CXXFLAGS_x86_64_unknown_linux_gnu=$CXXFLAGS", + "*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clinker=$CC -Clink-arg=--sysroot=$PREFIX/sysroot", + "*:aarch64-linux-gnu:RUST_CC=$CC", + "*:aarch64-linux-gnu:RUST_CXX=$CXX", + "*:aarch64-linux-gnu:RUST_AR=$AR", + "*:aarch64-linux-gnu:RUST_LINKER=$CC", + "*:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$CC", + "*:aarch64-linux-gnu:CC_aarch64_unknown_linux_gnu=$CC", + "*:aarch64-linux-gnu:CXX_aarch64_unknown_linux_gnu=$CXX", + "*:aarch64-linux-gnu:AR_aarch64_unknown_linux_gnu=$AR", + "*:aarch64-linux-gnu:CFLAGS_aarch64_unknown_linux_gnu=$CFLAGS", + "*:aarch64-linux-gnu:CXXFLAGS_aarch64_unknown_linux_gnu=$CXXFLAGS", + "*:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clinker=$CC -Clink-arg=--sysroot=$PREFIX/sysroot", + "*:aarch64-linux-android:RUST_CC=$CC", + "*:aarch64-linux-android:RUST_CXX=$CXX", + "*:aarch64-linux-android:RUST_AR=$AR", + "*:aarch64-linux-android:RUST_LINKER=$CC", + "*:aarch64-linux-android:CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER=$CC", + "*:aarch64-linux-android:CC_aarch64_linux_android=$CC", + "*:aarch64-linux-android:CXX_aarch64_linux_android=$CXX", + "*:aarch64-linux-android:AR_aarch64_linux_android=$AR", + "*:aarch64-linux-android:CARGO_TARGET_AARCH64_LINUX_ANDROID_RUSTFLAGS=-Clinker=$CC", + "*:x86_64-linux-android:RUST_CC=$CC", + "*:x86_64-linux-android:RUST_CXX=$CXX", + "*:x86_64-linux-android:RUST_AR=$AR", + "*:x86_64-linux-android:RUST_LINKER=$CC", + "*:x86_64-linux-android:CARGO_TARGET_X86_64_LINUX_ANDROID_LINKER=$CC", + "*:x86_64-linux-android:CC_x86_64_linux_android=$CC", + "*:x86_64-linux-android:CXX_x86_64_linux_android=$CXX", + "*:x86_64-linux-android:AR_x86_64_linux_android=$AR", + "*:x86_64-linux-android:CARGO_TARGET_X86_64_LINUX_ANDROID_RUSTFLAGS=-Clinker=$CC", + "*:armv7a-linux-androideabi:RUST_CC=$CC", + "*:armv7a-linux-androideabi:RUST_CXX=$CXX", + "*:armv7a-linux-androideabi:RUST_AR=$AR", + "*:armv7a-linux-androideabi:RUST_LINKER=$CC", + "*:armv7a-linux-androideabi:CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_LINKER=$CC", + "*:armv7a-linux-androideabi:CC_armv7_linux_androideabi=$CC", + "*:armv7a-linux-androideabi:CXX_armv7_linux_androideabi=$CXX", + "*:armv7a-linux-androideabi:AR_armv7_linux_androideabi=$AR", + "*:armv7a-linux-androideabi:CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_RUSTFLAGS=-Clinker=$CC" ] } \ No newline at end of file diff --git a/packages/rust-hello-world.json b/packages/rust-hello-world.json index 8c2ed84..b0913af 100644 --- a/packages/rust-hello-world.json +++ b/packages/rust-hello-world.json @@ -11,14 +11,23 @@ ], "dependencies": [ "*:*:native/_", + "*:*:native/coreutils", + "*:*:native/git", + "*:*:native/gzip", + "*:*:native/tar", "*:*:native/rust", "*:*:rust-std" ], "build": { + "env": [ + "linux_*:*-apple-*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin" + ], "steps": [ + "linux_amd64:x86_64-linux-gnu:$NATIVEPREFIX/bin/rm -rf $NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET && archive=$($NATIVEPREFIX/bin/ls -t $(dirname $PATCH_DIR)/.buildlib/${BUILDER_GOOS}_${BUILDER_GOARCH}/built/$HOST/rust-std-*_native.tar.gz 2>/dev/null | $NATIVEPREFIX/bin/head -1) && $NATIVEPREFIX/bin/tar -xzf $archive -C $NATIVEPREFIX lib/rustlib/$RUST_TRIPLET", + "linux_arm64:aarch64-linux-gnu:$NATIVEPREFIX/bin/rm -rf $NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET && archive=$($NATIVEPREFIX/bin/ls -t $(dirname $PATCH_DIR)/.buildlib/${BUILDER_GOOS}_${BUILDER_GOARCH}/built/$HOST/rust-std-*_native.tar.gz 2>/dev/null | $NATIVEPREFIX/bin/head -1) && $NATIVEPREFIX/bin/tar -xzf $archive -C $NATIVEPREFIX lib/rustlib/$RUST_TRIPLET", "*:*:cargo build --target $RUST_TRIPLET --release", - "*:*:mkdir -p $STAGING_DIR$PREFIX/bin", - "*:*:cp ./target/$RUST_TRIPLET/release/rust-hello-world $STAGING_DIR$PREFIX/bin" + "*:*:$NATIVEPREFIX/bin/mkdir -p $STAGING_DIR$PREFIX/bin", + "*:*:$NATIVEPREFIX/bin/cp ./target/$RUST_TRIPLET/release/rust-hello-world.exe $STAGING_DIR$PREFIX/bin 2>/dev/null || $NATIVEPREFIX/bin/cp ./target/$RUST_TRIPLET/release/rust-hello-world $STAGING_DIR$PREFIX/bin" ] } -} \ No newline at end of file +} diff --git a/packages/rust-std.json b/packages/rust-std.json index 4907c53..5c0e9ec 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -10,27 +10,100 @@ } ], "dependencies": [ + "*:*:native/_/_", "*:*:native/_", "*:*:native/cmake", + "*:*:native/coreutils", + "*:*:native/curl", "*:*:native/make", "*:*:native/ninja", + "*:*:native/openssl", + "*:*:native/pkgconf", "*:*:native/python@3.11", - "*:*:native/rust" + "*:*:native/rust", + "*:*:native/tar", + "*:*:native/zlib" ], "build": { - "env": [], + "env": [ + "*:*:OPENSSL_ROOT_DIR=$NATIVEPREFIX", + "*:*:ZLIB_ROOT=$NATIVEPREFIX", + "linux_*:*:CMAKE_SYSTEM_NAME=Linux", + "darwin_arm64:*:CMAKE_SYSTEM_NAME=Darwin", + "linux_*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", + "linux_*:*:CC=$NATIVEPREFIX/_/bin/clang", + "linux_*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "linux_*:*:CC_FOR_BUILD=$NATIVEPREFIX/_/bin/clang", + "linux_*:*:CXX_FOR_BUILD=$NATIVEPREFIX/_/bin/clang++", + "linux_*:*:AR=$NATIVEPREFIX/_/bin/ar", + "linux_*:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", + "linux_*:*:NM=$NATIVEPREFIX/_/bin/nm", + "linux_*:*:OBJCOPY=$NATIVEPREFIX/_/bin/objcopy", + "linux_amd64:*:STRIP=$NATIVEPREFIX/_/bin/llvm-strip", + "linux_*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", + "linux_*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", + "linux_*:*:LDFLAGS=-L$NATIVEPREFIX/lib", + "linux_amd64:*:BUILD_TRIPLET=x86_64-unknown-linux-gnu", + "linux_arm64:*:BUILD_TRIPLET=aarch64-unknown-linux-gnu", + "darwin_arm64:*:BUILD_TRIPLET=aarch64-apple-darwin", + "darwin_arm64:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", + "darwin_arm64:*:CC=$NATIVEPREFIX/_/bin/clang", + "darwin_arm64:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "darwin_arm64:*:CC_FOR_BUILD=$NATIVEPREFIX/_/bin/clang", + "darwin_arm64:*:CXX_FOR_BUILD=$NATIVEPREFIX/_/bin/clang++", + "darwin_arm64:*:AR=$NATIVEPREFIX/_/bin/ar", + "darwin_arm64:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", + "darwin_arm64:*:NM=$NATIVEPREFIX/_/bin/nm", + "darwin_arm64:*:OBJCOPY=$NATIVEPREFIX/_/bin/objcopy" + ], "steps": [ - "*:*:echo '[build]' > config.toml", + "linux_*:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/bin/cc", + "linux_*:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/bin/c++", + "linux_*:*-apple-*:ln -sf $NATIVEPREFIX/_/bin/llvm-strip $NATIVEPREFIX/bin/strip", + "darwin_arm64:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/bin/cc", + "darwin_arm64:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/bin/c++", + "*:*:echo 'profile = \"library\"' > config.toml", + "*:*:echo '[build]' >> config.toml", "*:*:echo 'vendor = true' >> config.toml", - "*:*:echo 'target = [\"x86_64-unknown-linux-gnu\"]' >> config.toml", + "*:*:echo build = \\\"$BUILD_TRIPLET\\\" >> config.toml", + "*:*:echo \"target = [\\\"$RUST_TRIPLET\\\"]\" >> config.toml", "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", + "*:*:printf '[target.%s]\\n' \"$BUILD_TRIPLET\" >> config.toml", + "*:*:echo cc = \\\"$NATIVEPREFIX/_/bin/clang\\\" >> config.toml", + "*:*:echo cxx = \\\"$NATIVEPREFIX/_/bin/clang++\\\" >> config.toml", + "*:*:echo linker = \\\"$NATIVEPREFIX/_/bin/clang\\\" >> config.toml", + "*:*:test \"$RUST_TRIPLET\" = \"$BUILD_TRIPLET\" || printf '[target.%s]\\n' \"$RUST_TRIPLET\" >> config.toml", + "*:*:test \"$RUST_TRIPLET\" = \"$BUILD_TRIPLET\" || echo cc = \\\"$RUST_CC\\\" >> config.toml", + "*:*:test \"$RUST_TRIPLET\" = \"$BUILD_TRIPLET\" || echo cxx = \\\"$RUST_CXX\\\" >> config.toml", + "*:*:test \"$RUST_TRIPLET\" = \"$BUILD_TRIPLET\" || echo linker = \\\"$RUST_LINKER\\\" >> config.toml", + "*:*:test \"$RUST_TRIPLET\" = \"$BUILD_TRIPLET\" || echo ar = \\\"$RUST_AR\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = true' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", - "*:*:env -u ARFLAGS python3 ./x.py build library/std --stage 1 --target x86_64-unknown-linux-gnu -j1", - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib/rustlib/x86_64-unknown-linux-gnu", - "*:*:cp -a build/aarch64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu/release/deps/. $STAGING_DIR$NATIVEPREFIX/lib/rustlib/x86_64-unknown-linux-gnu/lib" + "*:*:echo 'libzstd = false' >> config.toml", + "*:*android*:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u CC -u CXX -u CFLAGS -u CXXFLAGS -u CPPFLAGS -u CC_x86_64_unknown_linux_gnu -u CXX_x86_64_unknown_linux_gnu -u CFLAGS_x86_64_unknown_linux_gnu -u CXXFLAGS_x86_64_unknown_linux_gnu -u CC_aarch64_unknown_linux_gnu -u CXX_aarch64_unknown_linux_gnu -u CFLAGS_aarch64_unknown_linux_gnu -u CXXFLAGS_aarch64_unknown_linux_gnu -u CC_x86_64_pc_windows_gnu -u CXX_x86_64_pc_windows_gnu -u CFLAGS_x86_64_pc_windows_gnu -u CXXFLAGS_x86_64_pc_windows_gnu -u CC_aarch64_linux_android -u CXX_aarch64_linux_android -u CC_x86_64_linux_android -u CXX_x86_64_linux_android -u CC_armv7_linux_androideabi -u CXX_armv7_linux_androideabi PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ 'CFLAGS=-fPIC -I$NATIVEPREFIX/include' 'CXXFLAGS=-fPIC -I$NATIVEPREFIX/include' ARFLAGS= python3 ./x.py build llvm -j$NUM_CORES", + "*:*android*:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", + "*:*-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u CC -u CXX -u CFLAGS -u CXXFLAGS -u CPPFLAGS -u CC_x86_64_unknown_linux_gnu -u CXX_x86_64_unknown_linux_gnu -u CFLAGS_x86_64_unknown_linux_gnu -u CXXFLAGS_x86_64_unknown_linux_gnu -u CC_aarch64_unknown_linux_gnu -u CXX_aarch64_unknown_linux_gnu -u CFLAGS_aarch64_unknown_linux_gnu -u CXXFLAGS_aarch64_unknown_linux_gnu -u CC_x86_64_pc_windows_gnu -u CXX_x86_64_pc_windows_gnu -u CFLAGS_x86_64_pc_windows_gnu -u CXXFLAGS_x86_64_pc_windows_gnu -u CC_aarch64_linux_android -u CXX_aarch64_linux_android -u CC_x86_64_linux_android -u CXX_x86_64_linux_android -u CC_armv7_linux_androideabi -u CXX_armv7_linux_androideabi PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ 'CFLAGS=-fPIC -I$NATIVEPREFIX/include' 'CXXFLAGS=-fPIC -I$NATIVEPREFIX/include' ARFLAGS= python3 ./x.py build llvm -j$NUM_CORES", + "linux_amd64:x86_64-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u LDFLAGS -u LIBRARY_PATH -u CXXFLAGS -u CFLAGS -u CPPFLAGS -u RUSTFLAGS -u CARGO_ENCODED_RUSTFLAGS -u CC_x86_64_unknown_linux_gnu -u CXX_x86_64_unknown_linux_gnu -u CFLAGS_x86_64_unknown_linux_gnu -u CXXFLAGS_x86_64_unknown_linux_gnu -u AR_x86_64_unknown_linux_gnu -u CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER -u CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang 'CFLAGS=-fPIC -I$NATIVEPREFIX/include' 'CXXFLAGS=-fPIC -I$NATIVEPREFIX/include' ARFLAGS= python3 ./x.py build rustc --stage 1 -j$NUM_CORES", + "linux_amd64:x86_64-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u CC_x86_64_unknown_linux_gnu -u CXX_x86_64_unknown_linux_gnu -u CFLAGS_x86_64_unknown_linux_gnu -u CXXFLAGS_x86_64_unknown_linux_gnu -u AR_x86_64_unknown_linux_gnu -u CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER -u CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", + "linux_arm64:aarch64-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u LDFLAGS -u LIBRARY_PATH -u CXXFLAGS -u CFLAGS -u CPPFLAGS -u RUSTFLAGS -u CARGO_ENCODED_RUSTFLAGS -u CC_aarch64_unknown_linux_gnu -u CXX_aarch64_unknown_linux_gnu -u CFLAGS_aarch64_unknown_linux_gnu -u CXXFLAGS_aarch64_unknown_linux_gnu -u AR_aarch64_unknown_linux_gnu -u CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER -u CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang 'CFLAGS=-fPIC -I$NATIVEPREFIX/include' 'CXXFLAGS=-fPIC -I$NATIVEPREFIX/include' ARFLAGS= python3 ./x.py build rustc --stage 1 -j$NUM_CORES", + "linux_arm64:aarch64-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u CC_aarch64_unknown_linux_gnu -u CXX_aarch64_unknown_linux_gnu -u CFLAGS_aarch64_unknown_linux_gnu -u CXXFLAGS_aarch64_unknown_linux_gnu -u AR_aarch64_unknown_linux_gnu -u CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER -u CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", + "linux_amd64:aarch64-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", + "linux_arm64:x86_64-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", + "*:*-w64-mingw32:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u CC -u CXX -u CFLAGS -u CXXFLAGS -u CPPFLAGS -u CC_x86_64_unknown_linux_gnu -u CXX_x86_64_unknown_linux_gnu -u CFLAGS_x86_64_unknown_linux_gnu -u CXXFLAGS_x86_64_unknown_linux_gnu -u CC_aarch64_unknown_linux_gnu -u CXX_aarch64_unknown_linux_gnu -u CFLAGS_aarch64_unknown_linux_gnu -u CXXFLAGS_aarch64_unknown_linux_gnu -u CC_x86_64_pc_windows_gnu -u CXX_x86_64_pc_windows_gnu -u CFLAGS_x86_64_pc_windows_gnu -u CXXFLAGS_x86_64_pc_windows_gnu -u CC_aarch64_linux_android -u CXX_aarch64_linux_android -u CC_x86_64_linux_android -u CXX_x86_64_linux_android -u CC_armv7_linux_androideabi -u CXX_armv7_linux_androideabi PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ 'CFLAGS=-fPIC -I$NATIVEPREFIX/include' 'CXXFLAGS=-fPIC -I$NATIVEPREFIX/include' ARFLAGS= python3 ./x.py build llvm -j$NUM_CORES", + "*:*-w64-mingw32:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", + "*:*-apple-*:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u LDFLAGS -u LIBRARY_PATH -u CXXFLAGS -u CFLAGS -u CPPFLAGS -u RUSTFLAGS -u CARGO_ENCODED_RUSTFLAGS PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang 'CFLAGS=-fPIC -I$NATIVEPREFIX/include' 'CXXFLAGS=-fPIC -I$NATIVEPREFIX/include' LDFLAGS=-L$NATIVEPREFIX/lib ARFLAGS= python3 ./x.py build rustc --stage 1 -j$NUM_CORES", + "*:*-apple-darwin:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u CMAKE_SYSTEM_NAME -u CC -u CXX -u LDFLAGS -u MACOSX_DEPLOYMENT_TARGET PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", + "*:*-apple-ios:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u CMAKE_SYSTEM_NAME -u CC -u CXX -u MACOSX_DEPLOYMENT_TARGET -u LDFLAGS PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", + "*:*-apple-ios-simulator:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u CMAKE_SYSTEM_NAME -u CC -u CXX -u MACOSX_DEPLOYMENT_TARGET -u LDFLAGS PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", + "linux_*:*-apple-*:ln -sf $RUST_CC $NATIVEPREFIX/bin/cc", + "linux_*:*-apple-*:ln -sf $RUST_CXX $NATIVEPREFIX/bin/c++", + "*:*:$NATIVEPREFIX/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:touch $STAGING_DIR$NATIVEPREFIX/bin/.keep", + "*:*:$NATIVEPREFIX/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/lib/rustlib", + "*:*:$NATIVEPREFIX/bin/rm -rf $STAGING_DIR$NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET", + "*:*:$NATIVEPREFIX/bin/cp -a build/*/stage1/lib/rustlib/$RUST_TRIPLET $STAGING_DIR$NATIVEPREFIX/lib/rustlib/" ] } -} \ No newline at end of file +} From 8c35cb411a9121cd79e0f607d06e5bedede1a912 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 13 Jul 2026 19:15:27 +0200 Subject: [PATCH 138/200] add Qt@6.11.1 --- .gitignore | 1 + host/main.go | 20 +- pack/export_env.go | 4 + packages/boost@1_83_0.json | 2 - packages/boost@1_90_0.json | 2 - packages/curl.json | 4 +- packages/dbus@1_14_10.json | 38 +- packages/expat.json | 11 +- packages/fontconfig@2_12_6.json | 36 +- packages/freetype@2_14_1.json | 33 +- packages/gtest.json | 3 +- packages/libXau@1_0_12.json | 36 +- packages/libevent.json | 8 +- packages/libffi@3_5_2.json | 29 +- packages/libiconv.json | 9 +- packages/libxcb@1_17_0.json | 41 +-- packages/libxcb_util@0_4_1.json | 37 +- packages/libxcb_util_cursor@0_1_6.json | 45 ++- packages/libxcb_util_image@0_4_1.json | 39 +- packages/libxcb_util_keysyms@0_4_1.json | 37 +- packages/libxcb_util_render@0_3_10.json | 37 +- packages/libxcb_util_wm@0_4_2.json | 39 +- packages/libxkbcommon@1_13_1.json | 44 +-- packages/lz4.json | 2 +- packages/native/_.json | 288 ++++----------- packages/native/_/_.json | 16 +- packages/native/cmake-toolchain.json | 5 +- packages/native/diffutils.json | 5 +- packages/native/expat.json | 5 +- packages/native/flex.json | 3 - packages/native/libffi@3_5_2.json | 5 +- packages/native/libiconv.json | 1 - packages/native/pkgconf.json | 6 +- packages/native/protobuf.json | 2 - packages/native/xz.json | 4 +- packages/native/zlib.json | 1 - packages/openssl.json | 6 +- packages/protobuf.json | 2 - packages/qt@6_11_1.json | 470 ++++++++---------------- packages/sodium.json | 1 - packages/sqlite3@3510100.json | 6 +- packages/tor.json | 4 +- packages/torch.json | 2 +- packages/unbound.json | 4 +- packages/wayland@1_25_0.json | 38 +- packages/xcb_proto@1_17_0.json | 30 +- packages/xorgproto@2025_1.json | 26 +- packages/xxhash.json | 2 +- packages/xz.json | 4 +- packages/zlib.json | 1 - patches/qt/setup-toolchain.sh | 54 +++ 51 files changed, 608 insertions(+), 940 deletions(-) create mode 100644 patches/qt/setup-toolchain.sh diff --git a/.gitignore b/.gitignore index 604ccc1..8ce251b 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ .build ct-config .DS_Store +logs \ No newline at end of file diff --git a/host/main.go b/host/main.go index 2967397..51b7424 100644 --- a/host/main.go +++ b/host/main.go @@ -56,15 +56,17 @@ func (h *Host) GetEnvPath() string { return filepath.Join(dir, "env") } +// aarch64-apple-darwin,x86_64-apple-darwin,aarch64-apple-ios,aarch64-apple-ios-simulator,x86_64-w64-mingw32,aarch64-linux-gnu,x86_64-linux-android,armv7a-linux-androideabi + var SupportedHosts = map[string]*Host{ - "aarch64-apple-darwin": {Triplet: "aarch64-apple-darwin"}, - "x86_64-apple-darwin": {Triplet: "x86_64-apple-darwin"}, - "aarch64-apple-ios": {Triplet: "aarch64-apple-ios"}, + "aarch64-apple-darwin": {Triplet: "aarch64-apple-darwin"}, + "x86_64-apple-darwin": {Triplet: "x86_64-apple-darwin"}, + "aarch64-apple-ios": {Triplet: "aarch64-apple-ios"}, "aarch64-apple-ios-simulator": {Triplet: "aarch64-apple-ios-simulator"}, - "x86_64-w64-mingw32": {Triplet: "x86_64-w64-mingw32"}, - "x86_64-linux-gnu": {Triplet: "x86_64-linux-gnu"}, - "aarch64-linux-gnu": {Triplet: "aarch64-linux-gnu"}, - "aarch64-linux-android": {Triplet: "aarch64-linux-android"}, - "x86_64-linux-android": {Triplet: "x86_64-linux-android"}, - "armv7a-linux-androideabi": {Triplet: "armv7a-linux-androideabi"}, + "x86_64-w64-mingw32": {Triplet: "x86_64-w64-mingw32"}, + "x86_64-linux-gnu": {Triplet: "x86_64-linux-gnu"}, + "aarch64-linux-gnu": {Triplet: "aarch64-linux-gnu"}, + "aarch64-linux-android": {Triplet: "aarch64-linux-android"}, + "x86_64-linux-android": {Triplet: "x86_64-linux-android"}, + "armv7a-linux-androideabi": {Triplet: "armv7a-linux-androideabi"}, } diff --git a/pack/export_env.go b/pack/export_env.go index 58b1eab..e51ab98 100644 --- a/pack/export_env.go +++ b/pack/export_env.go @@ -67,6 +67,10 @@ func (ctx *exportEnvContext) resolvedExportEnv(p *Package, h *host.Host) []EnvKV } base := copyEnv(p.minimalEnvWithStaging(h, p.baseBuildPath(h, "staging"))) + // Export-env describes the toolchain for h.Triplet; HOST/TARGET must match the + // build target even when the exporting package is type "native". + base["HOST"] = h.Triplet + base["TARGET"] = h.Triplet for _, dep := range filteredDependencyPackages(p.Dependencies, h) { for _, e := range ctx.resolvedExportEnv(dep, h) { if skipFromDeps[e.K] { diff --git a/packages/boost@1_83_0.json b/packages/boost@1_83_0.json index c1416c6..77c1631 100644 --- a/packages/boost@1_83_0.json +++ b/packages/boost@1_83_0.json @@ -50,10 +50,8 @@ "*:*-android*:toolset=gcc", "*:*mingw32*:toolset=gcc", "*:*-ios*:toolset2=iphone", - "*:*:CXXFLAGS=$CXXFLAGS -fPIC", "*:*-apple-*:AR=libtool", "*:{*-linux-*,*-w64-*}:ARFLAGS=rcs", - "*:*:WINDRES=$RC $RCFLAGS", "none:*-apple-darwin:config_opts=$config_opts define=BOOST_LOG_WITHOUT_SYSLOG", "none:*-apple-darwin:config_opts=$config_opts define=BOOST_LOG_WITHOUT_IPC", "*:*-apple-*:config_opts=$config_opts define=_DARWIN_C_SOURCE" diff --git a/packages/boost@1_90_0.json b/packages/boost@1_90_0.json index afd7e1b..d69655b 100644 --- a/packages/boost@1_90_0.json +++ b/packages/boost@1_90_0.json @@ -50,10 +50,8 @@ "*:*-android*:toolset=gcc", "*:*mingw32*:toolset=gcc", "*:*-ios*:toolset2=iphone", - "*:*:CXXFLAGS=$CXXFLAGS -fPIC", "*:*-apple-*:AR=libtool", "*:{*-linux-*,*-w64-*}:ARFLAGS=rcs", - "*:*:WINDRES=$RC $RCFLAGS", "none:*-apple-darwin:config_opts=$config_opts define=BOOST_LOG_WITHOUT_SYSLOG", "none:*-apple-darwin:config_opts=$config_opts define=BOOST_LOG_WITHOUT_IPC", "*:*-apple-*:config_opts=$config_opts define=_DARWIN_C_SOURCE" diff --git a/packages/curl.json b/packages/curl.json index bc1d2bf..e789e17 100644 --- a/packages/curl.json +++ b/packages/curl.json @@ -18,9 +18,7 @@ ], "build": { "env": [ - "*:*:HOSTOVERRIDE=$HOST", - "*:aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "*:*:config_opts=--with-openssl --with-zlib --without-libpsl --disable-shared --enable-static --enable-static --disable-ldap --host=$HOSTOVERRIDE --prefix=$PREFIX" + "*:*:config_opts=--with-openssl --with-zlib --without-libpsl --disable-shared --enable-static --enable-static --disable-ldap --host=$HOST --prefix=$PREFIX" ], "steps": [ "*:*:./configure $config_opts", diff --git a/packages/dbus@1_14_10.json b/packages/dbus@1_14_10.json index f604fb3..5cfe02c 100644 --- a/packages/dbus@1_14_10.json +++ b/packages/dbus@1_14_10.json @@ -10,34 +10,32 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/diffutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/make", - "*:x86_64-linux-gnu:native/patch", - "*:x86_64-linux-gnu:expat", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/diffutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:native/patch", + "*:*-linux-gnu:expat", + "*:*-linux-gnu:native/sed" ], "patches": [ "remove-DDBUS_STATIC_BUILD.patch" ], "build": { "env": [ - "*:x86_64-linux-gnu:CPP=$CC -E", - "*:x86_64-linux-gnu:CXXCPP=$CXX $CXXFLAGS -E", - "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-maintainer-mode --disable-xml-docs --disable-doxygen-docs --disable-ducktype-docs" + "*:*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-maintainer-mode --disable-xml-docs --disable-doxygen-docs --disable-ducktype-docs" ], "steps": [ - "*:x86_64-linux-gnu:patch -p1 < $PATCH_DIR/dbus/remove-DDBUS_STATIC_BUILD.patch", - "*:x86_64-linux-gnu:bash ./configure $config_opts", - "*:x86_64-linux-gnu:make -j$NUM_CORES", - "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", - "*:x86_64-linux-gnu:rm -f $STAGING_DIR$PREFIX/lib/*.la" + "*:*-linux-gnu:patch -p1 < $PATCH_DIR/dbus/remove-DDBUS_STATIC_BUILD.patch", + "*:*-linux-gnu:bash ./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:*-linux-gnu:rm -f $STAGING_DIR$PREFIX/lib/*.la" ] } } diff --git a/packages/expat.json b/packages/expat.json index 7f53f31..ea39f28 100644 --- a/packages/expat.json +++ b/packages/expat.json @@ -22,16 +22,9 @@ "*:*:libiconv" ], "build": { - "env": [ - "*:*:CFLAGS=$CFLAGS -fPIC", - "*:*:LDFLAGS=$LDFLAGS -fPIC", - "*:*:CPP=$CC -E", - "*:*:CXXCPP=$CXX $CXXFLAGS -E", - "*:*:BUILD_HOST=$HOST", - "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios" - ], + "env": [], "steps": [ - "*:*:bash ./configure --host=$BUILD_HOST --prefix=$PREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", + "*:*:bash ./configure --host=$HOST --prefix=$PREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/fontconfig@2_12_6.json b/packages/fontconfig@2_12_6.json index 31bf180..e1aab7a 100644 --- a/packages/fontconfig@2_12_6.json +++ b/packages/fontconfig@2_12_6.json @@ -10,32 +10,32 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/make", - "*:x86_64-linux-gnu:native/patch", - "*:x86_64-linux-gnu:native/sed", - "*:x86_64-linux-gnu:freetype@2_14_1", - "*:x86_64-linux-gnu:expat" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:native/patch", + "*:*-linux-gnu:native/sed", + "*:*-linux-gnu:freetype@2_14_1", + "*:*-linux-gnu:expat" ], "patches": [ "gperf_header_regen.patch" ], "build": { "env": [ - "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-docs --disable-libxml2 --disable-iconv --disable-dependency-tracking --enable-option-checking" + "*:*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-docs --disable-libxml2 --disable-iconv --disable-dependency-tracking --enable-option-checking" ], "steps": [ - "*:x86_64-linux-gnu:patch -p1 < $PATCH_DIR/fontconfig/gperf_header_regen.patch", - "*:x86_64-linux-gnu:bash ./configure $config_opts", - "*:x86_64-linux-gnu:make -j$NUM_CORES", - "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", - "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/var $STAGING_DIR$PREFIX/lib/*.la" + "*:*-linux-gnu:patch -p1 < $PATCH_DIR/fontconfig/gperf_header_regen.patch", + "*:*-linux-gnu:bash ./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/var $STAGING_DIR$PREFIX/lib/*.la" ] } } diff --git a/packages/freetype@2_14_1.json b/packages/freetype@2_14_1.json index ddade8c..6cd2836 100644 --- a/packages/freetype@2_14_1.json +++ b/packages/freetype@2_14_1.json @@ -10,27 +10,28 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/diffutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/make", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_/_", + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/diffutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:native/sed" ], "build": { "env": [ - "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --without-zlib --without-png --without-harfbuzz --without-bzip2 --enable-option-checking --without-brotli --with-pic" + "*:*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --without-zlib --without-png --without-harfbuzz --without-bzip2 --enable-option-checking --without-brotli --with-pic" ], "steps": [ - "*:x86_64-linux-gnu:rm -rf docs", - "*:x86_64-linux-gnu:CC_BUILD='env PATH=/usr/bin:/bin LD=/usr/bin/ld /usr/bin/cc' bash ./configure $config_opts", - "*:x86_64-linux-gnu:make -j$NUM_CORES", - "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", - "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share/man $STAGING_DIR$PREFIX/lib/*.la" + "*:*-linux-gnu:rm -rf docs", + "*:*-linux-gnu:bash ./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share/man $STAGING_DIR$PREFIX/lib/*.la" ] } } diff --git a/packages/gtest.json b/packages/gtest.json index 950cab1..f7c8bb0 100644 --- a/packages/gtest.json +++ b/packages/gtest.json @@ -17,8 +17,7 @@ "build": { "env": [ "*:*:CXXFLAGS=$CXXFLAGS -std=c++11", - "*:*-linux-gnu:CXXFLAGS=$CXXFLAGS -fPIC", - "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$NATIVEPREFIX/toolchain.cmake", + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE", "*:*:config_opts=$config_opts -DGOOGLETEST_VERSION=1.17.0", "*:*:config_opts=$config_opts -DCMAKE_POLICY_VERSION_MINIMUM=3.5", "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", diff --git a/packages/libXau@1_0_12.json b/packages/libXau@1_0_12.json index a27c48b..aeea4f0 100644 --- a/packages/libXau@1_0_12.json +++ b/packages/libXau@1_0_12.json @@ -10,18 +10,18 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/meson", - "*:x86_64-linux-gnu:native/ninja", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/python@3.11", - "*:x86_64-linux-gnu:xorgproto@2025_1", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/meson", + "*:*-linux-gnu:native/ninja", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/python@3.11", + "*:*-linux-gnu:xorgproto@2025_1", + "*:*-linux-gnu:native/sed" ], "patches": [ "toolchain.txt" @@ -29,12 +29,12 @@ "build": { "env": [], "steps": [ - "*:x86_64-linux-gnu:cp $PATCH_DIR/libXau/toolchain.txt toolchain.txt", - "*:x86_64-linux-gnu:sed -i -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@cc@|$CC|\" -e \"s|@cxx@|$CXX|\" -e \"s|@ar@|$AR|\" -e \"s|@strip@|$STRIP|\" -e \"s|@arch@|$ARCH|\" toolchain.txt", - "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/share/pkgconfig:$PREFIX/lib/pkgconfig $NATIVEPREFIX/bin/meson setup --cross-file toolchain.txt build", - "*:x86_64-linux-gnu:ninja -C build", - "*:x86_64-linux-gnu:DESTDIR=$STAGING_DIR ninja -C build install", - "*:x86_64-linux-gnu:sed -i 's/Requires: xproto//g' $STAGING_DIR$PREFIX/lib/pkgconfig/xau.pc" + "*:*-linux-gnu:cp $PATCH_DIR/libXau/toolchain.txt toolchain.txt", + "*:*-linux-gnu:sed -i -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@cc@|$CC|\" -e \"s|@cxx@|$CXX|\" -e \"s|@ar@|$AR|\" -e \"s|@strip@|$STRIP|\" -e \"s|@arch@|$ARCH|\" toolchain.txt", + "*:*-linux-gnu:$NATIVEPREFIX/bin/meson setup --cross-file toolchain.txt build", + "*:*-linux-gnu:ninja -C build", + "*:*-linux-gnu:DESTDIR=$STAGING_DIR ninja -C build install", + "*:*-linux-gnu:sed -i 's/Requires: xproto//g' $STAGING_DIR$PREFIX/lib/pkgconfig/xau.pc" ] } } diff --git a/packages/libevent.json b/packages/libevent.json index fa994f0..9679cc0 100644 --- a/packages/libevent.json +++ b/packages/libevent.json @@ -29,9 +29,7 @@ ], "build": { "env": [ - "*:*:HOSTOVERRIDE=$HOST", - "*:aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "*:*:config_opts=--host=$HOSTOVERRIDE --prefix=$PREFIX ", + "*:*:config_opts=--host=$HOST --prefix=$PREFIX ", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --disable-openssl", "*:*:config_opts=$config_opts --disable-mbedtls", @@ -40,9 +38,7 @@ "*:*:config_opts=$config_opts --disable-debug-mode", "*:*:config_opts=$config_opts --enable-static", "*:*:config_opts=$config_opts --with-pic", - "*:*:config_opts=$config_opts --disable-samples", - "*:*:CFLAGS=$CFLAGS -fPIC", - "*:*:CXXFLAGS=$CXXFLAGS -fPIC" + "*:*:config_opts=$config_opts --disable-samples" ], "steps": [ "*:*-w64-mingw32:sed -i.bak 's|WIN32_WINNT 0x400|WIN32_WINNT 0x700|g' configure.ac", diff --git a/packages/libffi@3_5_2.json b/packages/libffi@3_5_2.json index ee67e18..b93c97c 100644 --- a/packages/libffi@3_5_2.json +++ b/packages/libffi@3_5_2.json @@ -10,26 +10,21 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/diffutils", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/make", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/diffutils", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:native/sed" ], "build": { - "env": [ - "*:x86_64-linux-gnu:CPP=$CC -E", - "*:x86_64-linux-gnu:CXXCPP=$CXX $CXXFLAGS -E", - "*:x86_64-linux-gnu:CFLAGS=$CFLAGS -fPIC", - "*:x86_64-linux-gnu:LDFLAGS=$LDFLAGS -fPIC" - ], + "env": [], "steps": [ - "*:x86_64-linux-gnu:bash ./configure --host=$HOST --prefix=$PREFIX --enable-static --disable-shared --disable-docs --with-pic", - "*:x86_64-linux-gnu:make -j$NUM_CORES", - "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install" + "*:*-linux-gnu:bash ./configure --host=$HOST --prefix=$PREFIX --enable-static --disable-shared --disable-docs --with-pic", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install" ] } } diff --git a/packages/libiconv.json b/packages/libiconv.json index 9842e93..9cfbe5b 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -22,18 +22,13 @@ ], "build": { "env": [ - "*:*:CFLAGS=$CFLAGS -fPIC", - "*:*:CPPFLAGS=$CPPFLAGS -fPIC", - "*:*:BUILD_HOST=$HOST", - "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios", - "*:*:config_opts=--host=$BUILD_HOST --prefix=$PREFIX --disable-nls --enable-static --disable-shared", + "*:*:config_opts=--host=$HOST --prefix=$PREFIX --disable-nls --enable-static --disable-shared", "*:*:config_opts=$config_opts --disable-malloca", "*:*:config_opts=$config_opts", "*:*linux:config_opts=$config_opts --with-pic", "*:*:CC=$CC $CFLAGS", "*:*:CXX=$CXX $CXXFLAGS", - "*:*:RC=$RC $RCFLAGS", - "*:*:WINDRES=$RC" + "*:*:RC=$RC $RCFLAGS" ], "steps": [ "*:*:cp -f $NATIVEPREFIX/share/config/config.guess build-aux/", diff --git a/packages/libxcb@1_17_0.json b/packages/libxcb@1_17_0.json index dece6ae..96ed7d2 100644 --- a/packages/libxcb@1_17_0.json +++ b/packages/libxcb@1_17_0.json @@ -10,35 +10,34 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/make", - "*:x86_64-linux-gnu:native/patch", - "*:x86_64-linux-gnu:native/python@3.11", - "*:x86_64-linux-gnu:native/sed", - "*:x86_64-linux-gnu:xcb_proto@1_17_0", - "*:x86_64-linux-gnu:xorgproto@2025_1", - "*:x86_64-linux-gnu:libXau@1_0_12" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:native/patch", + "*:*-linux-gnu:native/python@3.11", + "*:*-linux-gnu:native/sed", + "*:*-linux-gnu:xcb_proto@1_17_0", + "*:*-linux-gnu:xorgproto@2025_1", + "*:*-linux-gnu:libXau@1_0_12" ], "patches": [ "remove_pthread_stubs.patch" ], "build": { "env": [ - "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/share/pkgconfig:$PREFIX/lib/pkgconfig", - "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --without-launchd --disable-dependency-tracking --enable-option-checking --disable-composite --disable-damage --disable-dpms --disable-dri2 --disable-dri3 --disable-glx --disable-present --disable-record --disable-resource --disable-screensaver --disable-xevie --disable-xfree86-dri --disable-xinput --disable-xprint --disable-selinux --disable-xtest --disable-xv --disable-xvmc" + "*:*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --without-launchd --disable-dependency-tracking --enable-option-checking --disable-composite --disable-damage --disable-dpms --disable-dri2 --disable-dri3 --disable-glx --disable-present --disable-record --disable-resource --disable-screensaver --disable-xevie --disable-xfree86-dri --disable-xinput --disable-xprint --disable-selinux --disable-xtest --disable-xv --disable-xvmc" ], "steps": [ - "*:x86_64-linux-gnu:patch -p1 < $PATCH_DIR/libxcb/remove_pthread_stubs.patch", - "*:x86_64-linux-gnu:bash ./configure $config_opts", - "*:x86_64-linux-gnu:make -j$NUM_CORES", - "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", - "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + "*:*-linux-gnu:patch -p1 < $PATCH_DIR/libxcb/remove_pthread_stubs.patch", + "*:*-linux-gnu:bash ./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } } diff --git a/packages/libxcb_util@0_4_1.json b/packages/libxcb_util@0_4_1.json index e101cf9..6800338 100644 --- a/packages/libxcb_util@0_4_1.json +++ b/packages/libxcb_util@0_4_1.json @@ -10,30 +10,29 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/diffutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/make", - "*:x86_64-linux-gnu:libxcb@1_17_0", - "*:x86_64-linux-gnu:libXau@1_0_12", - "*:x86_64-linux-gnu:xorgproto@2025_1", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/diffutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:libxcb@1_17_0", + "*:*-linux-gnu:libXau@1_0_12", + "*:*-linux-gnu:xorgproto@2025_1", + "*:*-linux-gnu:native/sed" ], "build": { "env": [ - "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", - "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" + "*:*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" ], "steps": [ - "*:x86_64-linux-gnu:bash ./configure $config_opts", - "*:x86_64-linux-gnu:make -j$NUM_CORES", - "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", - "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + "*:*-linux-gnu:bash ./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } } diff --git a/packages/libxcb_util_cursor@0_1_6.json b/packages/libxcb_util_cursor@0_1_6.json index cf277e1..8db0d4e 100644 --- a/packages/libxcb_util_cursor@0_1_6.json +++ b/packages/libxcb_util_cursor@0_1_6.json @@ -10,34 +10,33 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/diffutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/make", - "*:x86_64-linux-gnu:native/m4", - "*:x86_64-linux-gnu:libxcb@1_17_0", - "*:x86_64-linux-gnu:libXau@1_0_12", - "*:x86_64-linux-gnu:xorgproto@2025_1", - "*:x86_64-linux-gnu:libxcb_util@0_4_1", - "*:x86_64-linux-gnu:libxcb_util_image@0_4_1", - "*:x86_64-linux-gnu:libxcb_util_render@0_3_10", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/diffutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:native/m4", + "*:*-linux-gnu:libxcb@1_17_0", + "*:*-linux-gnu:libXau@1_0_12", + "*:*-linux-gnu:xorgproto@2025_1", + "*:*-linux-gnu:libxcb_util@0_4_1", + "*:*-linux-gnu:libxcb_util_image@0_4_1", + "*:*-linux-gnu:libxcb_util_render@0_3_10", + "*:*-linux-gnu:native/sed" ], "build": { "env": [ - "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", - "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" + "*:*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" ], "steps": [ - "*:x86_64-linux-gnu:bash ./configure $config_opts", - "*:x86_64-linux-gnu:make -j$NUM_CORES", - "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", - "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + "*:*-linux-gnu:bash ./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } } diff --git a/packages/libxcb_util_image@0_4_1.json b/packages/libxcb_util_image@0_4_1.json index 2923213..c6f3747 100644 --- a/packages/libxcb_util_image@0_4_1.json +++ b/packages/libxcb_util_image@0_4_1.json @@ -10,31 +10,30 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/diffutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/make", - "*:x86_64-linux-gnu:libxcb@1_17_0", - "*:x86_64-linux-gnu:libXau@1_0_12", - "*:x86_64-linux-gnu:xorgproto@2025_1", - "*:x86_64-linux-gnu:libxcb_util@0_4_1", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/diffutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:libxcb@1_17_0", + "*:*-linux-gnu:libXau@1_0_12", + "*:*-linux-gnu:xorgproto@2025_1", + "*:*-linux-gnu:libxcb_util@0_4_1", + "*:*-linux-gnu:native/sed" ], "build": { "env": [ - "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", - "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" + "*:*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" ], "steps": [ - "*:x86_64-linux-gnu:bash ./configure $config_opts", - "*:x86_64-linux-gnu:make -j$NUM_CORES -C image", - "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR -C image install", - "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + "*:*-linux-gnu:bash ./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES -C image", + "*:*-linux-gnu:make DESTDIR=$STAGING_DIR -C image install", + "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } } diff --git a/packages/libxcb_util_keysyms@0_4_1.json b/packages/libxcb_util_keysyms@0_4_1.json index 0a3b894..75b4ed4 100644 --- a/packages/libxcb_util_keysyms@0_4_1.json +++ b/packages/libxcb_util_keysyms@0_4_1.json @@ -10,30 +10,29 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/diffutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/make", - "*:x86_64-linux-gnu:libxcb@1_17_0", - "*:x86_64-linux-gnu:libXau@1_0_12", - "*:x86_64-linux-gnu:xorgproto@2025_1", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/diffutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:libxcb@1_17_0", + "*:*-linux-gnu:libXau@1_0_12", + "*:*-linux-gnu:xorgproto@2025_1", + "*:*-linux-gnu:native/sed" ], "build": { "env": [ - "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", - "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" + "*:*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" ], "steps": [ - "*:x86_64-linux-gnu:bash ./configure $config_opts", - "*:x86_64-linux-gnu:make -j$NUM_CORES", - "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", - "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + "*:*-linux-gnu:bash ./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } } diff --git a/packages/libxcb_util_render@0_3_10.json b/packages/libxcb_util_render@0_3_10.json index d76508f..8e78ef8 100644 --- a/packages/libxcb_util_render@0_3_10.json +++ b/packages/libxcb_util_render@0_3_10.json @@ -10,30 +10,29 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/diffutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/make", - "*:x86_64-linux-gnu:libxcb@1_17_0", - "*:x86_64-linux-gnu:libXau@1_0_12", - "*:x86_64-linux-gnu:xorgproto@2025_1", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/diffutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:libxcb@1_17_0", + "*:*-linux-gnu:libXau@1_0_12", + "*:*-linux-gnu:xorgproto@2025_1", + "*:*-linux-gnu:native/sed" ], "build": { "env": [ - "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", - "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" + "*:*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" ], "steps": [ - "*:x86_64-linux-gnu:bash ./configure $config_opts", - "*:x86_64-linux-gnu:make -j$NUM_CORES", - "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", - "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + "*:*-linux-gnu:bash ./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } } diff --git a/packages/libxcb_util_wm@0_4_2.json b/packages/libxcb_util_wm@0_4_2.json index 25bf07d..fef3c4f 100644 --- a/packages/libxcb_util_wm@0_4_2.json +++ b/packages/libxcb_util_wm@0_4_2.json @@ -10,31 +10,30 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/diffutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/make", - "*:x86_64-linux-gnu:native/m4", - "*:x86_64-linux-gnu:libxcb@1_17_0", - "*:x86_64-linux-gnu:libXau@1_0_12", - "*:x86_64-linux-gnu:xorgproto@2025_1", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/diffutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:native/m4", + "*:*-linux-gnu:libxcb@1_17_0", + "*:*-linux-gnu:libXau@1_0_12", + "*:*-linux-gnu:xorgproto@2025_1", + "*:*-linux-gnu:native/sed" ], "build": { "env": [ - "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", - "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" + "*:*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --disable-shared --enable-static --disable-devel-docs --without-doxygen --disable-dependency-tracking --enable-option-checking" ], "steps": [ - "*:x86_64-linux-gnu:bash ./configure $config_opts", - "*:x86_64-linux-gnu:make -j$NUM_CORES", - "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", - "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" + "*:*-linux-gnu:bash ./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } } diff --git a/packages/libxkbcommon@1_13_1.json b/packages/libxkbcommon@1_13_1.json index 62ea047..dccae00 100644 --- a/packages/libxkbcommon@1_13_1.json +++ b/packages/libxkbcommon@1_13_1.json @@ -10,22 +10,22 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/bison", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/m4", - "*:x86_64-linux-gnu:native/meson", - "*:x86_64-linux-gnu:native/ninja", - "*:x86_64-linux-gnu:native/patch", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/python@3.11", - "*:x86_64-linux-gnu:libxcb@1_17_0", - "*:x86_64-linux-gnu:libXau@1_0_12", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/bison", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/m4", + "*:*-linux-gnu:native/meson", + "*:*-linux-gnu:native/ninja", + "*:*-linux-gnu:native/patch", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/python@3.11", + "*:*-linux-gnu:libxcb@1_17_0", + "*:*-linux-gnu:libXau@1_0_12", + "*:*-linux-gnu:native/sed" ], "patches": [ "no-test-x11.patch", @@ -34,12 +34,12 @@ "build": { "env": [], "steps": [ - "*:x86_64-linux-gnu:patch -p1 < $PATCH_DIR/libxkbcommon/no-test-x11.patch", - "*:x86_64-linux-gnu:cp $PATCH_DIR/libxkbcommon/toolchain.txt toolchain.txt", - "*:x86_64-linux-gnu:sed -i -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@cc@|$CC|\" -e \"s|@cxx@|$CXX|\" -e \"s|@ar@|$AR|\" -e \"s|@strip@|$STRIP|\" -e \"s|@arch@|$ARCH|\" toolchain.txt", - "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig $NATIVEPREFIX/bin/meson setup --cross-file toolchain.txt build -Dxkb-config-root=/usr/share/X11/xkb -Dxkb-config-extra-path=/app/share/X11/xkb", - "*:x86_64-linux-gnu:ninja -C build", - "*:x86_64-linux-gnu:DESTDIR=$STAGING_DIR ninja -C build install" + "*:*-linux-gnu:patch -p1 < $PATCH_DIR/libxkbcommon/no-test-x11.patch", + "*:*-linux-gnu:cp $PATCH_DIR/libxkbcommon/toolchain.txt toolchain.txt", + "*:*-linux-gnu:sed -i -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@cc@|$CC|\" -e \"s|@cxx@|$CXX|\" -e \"s|@ar@|$AR|\" -e \"s|@strip@|$STRIP|\" -e \"s|@arch@|$ARCH|\" toolchain.txt", + "*:*-linux-gnu:$NATIVEPREFIX/bin/meson setup --cross-file toolchain.txt build -Dxkb-config-root=/usr/share/X11/xkb -Dxkb-config-extra-path=/app/share/X11/xkb", + "*:*-linux-gnu:ninja -C build", + "*:*-linux-gnu:DESTDIR=$STAGING_DIR ninja -C build install" ] } } diff --git a/packages/lz4.json b/packages/lz4.json index cfa9dc2..6c89c74 100644 --- a/packages/lz4.json +++ b/packages/lz4.json @@ -20,7 +20,7 @@ ], "build": { "env": [ - "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$NATIVEPREFIX/toolchain.cmake", + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE", "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" ], "steps": [ diff --git a/packages/native/_.json b/packages/native/_.json index 969c5d9..1d070f6 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -10,7 +10,8 @@ "*:*-apple-*:native/libxml2", "*:*-apple-*:native/osx-cross", "*:*-apple-*:native/xar", - "*:*-linux-*:native/bash", + "*:*:native/bash", + "*:*:native/coreutils", "*:*-linux-gnu:native/ct-tools", "*:*-linux-musl:native/ct-tools", "*:*-w64-mingw32:native/ct-tools", @@ -43,16 +44,19 @@ "*:*:CXXFLAGS=$CXXFLAGS -I$PREFIX/usr/include", "*:*:CPPFLAGS=$CPPFLAGS -I$PREFIX/include", "*:*:CPPFLAGS=$CPPFLAGS -I$PREFIX/usr/include", + "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*:CXXFLAGS=$CXXFLAGS -fPIC", + "*:*:LDFLAGS=$LDFLAGS -fPIC", "darwin_arm64:*:LDFLAGS=$LDFLAGS -stdlib=libc++ -lc++ -lc++abi", "*:*:LDFLAGS=$LDFLAGS -L$PREFIX/lib", "*:*:LD_LIBRARY_PATH=$NATIVEPREFIX/lib", - "*:*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$PREFIX/lib/pkgconfig", + "*:*:PKG_CONFIG_PATH=$NATIVEPREFIX/lib/pkgconfig:$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", + "*:*-linux-gnu:PKG_CONFIG_SYSROOT_DIR=$PREFIX", + "*:*-linux-gnu:PKG_CONFIG_LIBDIR=$NATIVEPREFIX/lib/pkgconfig:$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", + "*:*-apple-darwin:QT_MAC_SDK_NO_VERSION_CHECK=1", + "*:*-w64-mingw32:WINDRES=$RC $RCFLAGS", + "*:*-android*:ANDROID_NDK_ROOT=$NATIVEPREFIX", "*:*:LIBRARY_PATH=$LIBRARY_PATH:$PREFIX/lib", - "*:*:INSTALL_NAME_TOOL=$INSTALL_NAME_TOOL", - "*:*:OTOOL=$OTOOL", - "*:*:OSX_MIN_VERSION=$OSX_MIN_VERSION", - "*:aarch64-apple-darwin:HOST=aarch64-apple-darwin", - "*:aarch64-apple-darwin:TARGET=aarch64-apple-darwin", "*:aarch64-apple-darwin:RUST_TRIPLET=aarch64-apple-darwin", "*:aarch64-apple-darwin:ARCH=aarch64", "*:aarch64-apple-darwin:CMAKE_SYSTEM_NAME=Darwin", @@ -70,8 +74,6 @@ "*:aarch64-apple-darwin:NM=$NATIVEPREFIX/bin/llvm-nm", "*:aarch64-apple-darwin:LIBTOOL=$NATIVEPREFIX/bin/llvm-libtool-darwin", "*:aarch64-apple-darwin:LDFLAGS=-L$PREFIX/lib -lc++ -lc++abi", - "*:x86_64-apple-darwin:HOST=x86_64-apple-darwin", - "*:x86_64-apple-darwin:TARGET=x86_64-apple-darwin", "*:x86_64-apple-darwin:RUST_TRIPLET=x86_64-apple-darwin", "*:x86_64-apple-darwin:ARCH=x86_64", "*:x86_64-apple-darwin:CMAKE_SYSTEM_NAME=Darwin", @@ -89,8 +91,6 @@ "*:x86_64-apple-darwin:NM=$NATIVEPREFIX/bin/nm", "*:x86_64-apple-darwin:LIBTOOL=$NATIVEPREFIX/bin/llvm-libtool-darwin", "*:x86_64-apple-darwin:LDFLAGS=-L$PREFIX/lib -lc++ -lc++abi", - "*:aarch64-apple-ios:HOST=aarch64-apple-ios", - "*:aarch64-apple-ios:TARGET=aarch64-apple-ios", "*:aarch64-apple-ios:RUST_TRIPLET=aarch64-apple-ios", "*:aarch64-apple-ios:ARCH=aarch64", "*:aarch64-apple-ios:CMAKE_SYSTEM_NAME=iOS", @@ -109,8 +109,6 @@ "*:aarch64-apple-ios:LIBTOOL=$NATIVEPREFIX/bin/libtool", "*:aarch64-apple-ios:LDFLAGS=-lc++ -lc++abi", "*:aarch64-apple-ios:LD=$NATIVEPREFIX/bin/lld", - "*:aarch64-apple-ios-simulator:HOST=aarch64-apple-ios-simulator", - "*:aarch64-apple-ios-simulator:TARGET=aarch64-apple-ios-simulator", "*:aarch64-apple-ios-simulator:RUST_TRIPLET=aarch64-apple-ios-sim", "*:aarch64-apple-ios-simulator:ARCH=aarch64", "*:aarch64-apple-ios-simulator:CMAKE_SYSTEM_NAME=iOS", @@ -128,227 +126,71 @@ "*:aarch64-apple-ios-simulator:STRIP=$NATIVEPREFIX/bin/strip", "*:aarch64-apple-ios-simulator:LIBTOOL=$NATIVEPREFIX/bin/libtool", "*:aarch64-apple-ios-simulator:LDFLAGS=-lc++ -lc++abi", - "*:x86_64-w64-mingw32:HOST=x86_64-w64-mingw32", - "*:x86_64-w64-mingw32:TARGET=x86_64-w64-mingw32", - "*:x86_64-w64-mingw32:RUST_TRIPLET=x86_64-pc-windows-gnu", + "*:*-apple-*:INSTALL_NAME_TOOL=$NATIVEPREFIX/_/bin/install_name_tool", + "*:*-w64-mingw32:CMAKE_SYSTEM_NAME=Windows", + "*:*-w64-mingw32:CC_target=$HOST", + "*:*-w64-mingw32:RC=$HOST-windres", + "*:*-w64-mingw32:RCFLAGS=-I$PREFIX/sysroot/usr/$HOST/include -I$PREFIX/include -I$PREFIX/usr/include", + "*:*-w64-mingw32:CC=$NATIVEPREFIX/bin/$HOST-gcc", + "*:*-w64-mingw32:CXX=$NATIVEPREFIX/bin/$HOST-g++", + "*:*-w64-mingw32:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/$HOST/include -I$PREFIX/include -I$PREFIX/usr/include", + "*:*-w64-mingw32:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/$HOST/include -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/$HOST -I$PREFIX/usr/include", + "*:*-w64-mingw32:CPPFLAGS=-I$PREFIX/sysroot/usr/$HOST/include -I$PREFIX/include -I$PREFIX/usr/include", + "*:*-w64-mingw32:AR=$NATIVEPREFIX/bin/$HOST-ar", + "*:*-w64-mingw32:RANLIB=$NATIVEPREFIX/bin/$HOST-ranlib", + "*:*-w64-mingw32:AS=$NATIVEPREFIX/bin/$HOST-as", + "*:*-w64-mingw32:LIBTOOL=$NATIVEPREFIX/bin/$HOST-libtool", + "*:*-w64-mingw32:OBJCOPY=$NATIVEPREFIX/bin/$HOST-objcopy", + "*:*-w64-mingw32:OBJDUMP=$NATIVEPREFIX/bin/$HOST-objdump", + "*:*-w64-mingw32:STRIP=$NATIVEPREFIX/bin/$HOST-strip", + "*:*-w64-mingw32:READELF=$NATIVEPREFIX/bin/$HOST-readelf", + "*:*-w64-mingw32:LD=$NATIVEPREFIX/bin/$HOST-ld", + "*:*-w64-mingw32:NM=$NATIVEPREFIX/bin/$HOST-nm", "*:x86_64-w64-mingw32:ARCH=x86_64", - "*:x86_64-w64-mingw32:CMAKE_SYSTEM_NAME=Windows", - "*:x86_64-w64-mingw32:CC_target=x86_64-w64-mingw32", - "*:x86_64-w64-mingw32:RC=x86_64-w64-mingw32-windres", - "*:x86_64-w64-mingw32:RCFLAGS=-I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", - "*:x86_64-w64-mingw32:CC=$NATIVEPREFIX/bin/x86_64-w64-mingw32-gcc", - "*:x86_64-w64-mingw32:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", - "*:x86_64-w64-mingw32:CXX=$NATIVEPREFIX/bin/x86_64-w64-mingw32-g++", - "*:x86_64-w64-mingw32:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-w64-mingw32 -I$PREFIX/usr/include", - "*:x86_64-w64-mingw32:CPPFLAGS=-I$PREFIX/sysroot/usr/x86_64-w64-mingw32/include -I$PREFIX/include -I$PREFIX/usr/include", - "*:x86_64-w64-mingw32:RANLIB=$NATIVEPREFIX/bin/x86_64-w64-mingw32-ranlib", - "*:x86_64-w64-mingw32:AR=$NATIVEPREFIX/bin/x86_64-w64-mingw32-ar", - "*:x86_64-w64-mingw32:AS=$NATIVEPREFIX/bin/x86_64-w64-mingw32-as", - "*:x86_64-w64-mingw32:LIBTOOL=$NATIVEPREFIX/bin/x86_64-w64-mingw32-libtool", - "*:x86_64-w64-mingw32:OBJCOPY=$NATIVEPREFIX/bin/x86_64-w64-mingw32-objcopy", - "*:x86_64-w64-mingw32:OBJDUMP=$NATIVEPREFIX/bin/x86_64-w64-mingw32-objdump", - "*:x86_64-w64-mingw32:STRIP=$NATIVEPREFIX/bin/x86_64-w64-mingw32-strip", - "*:x86_64-w64-mingw32:READELF=$NATIVEPREFIX/bin/x86_64-w64-mingw32-readelf", - "*:x86_64-w64-mingw32:LD=$NATIVEPREFIX/bin/x86_64-w64-mingw32-ld", - "*:x86_64-w64-mingw32:NM=$NATIVEPREFIX/bin/x86_64-w64-mingw32-nm", - "*:x86_64-w64-mingw32:LDFLAGS=--sysroot=$PREFIX/sysroot", - "*:x86_64-linux-gnu:HOST=x86_64-linux-gnu", - "*:x86_64-linux-gnu:TARGET=x86_64-linux-gnu", - "*:x86_64-linux-gnu:RUST_TRIPLET=x86_64-unknown-linux-gnu", + "*:x86_64-w64-mingw32:RUST_TRIPLET=x86_64-pc-windows-gnu", + "*:*-linux-gnu:CMAKE_SYSTEM_NAME=Linux", + "*:*-linux-gnu:CC_target=$HOST", + "*:*-linux-gnu:CC=$NATIVEPREFIX/bin/$HOST-gcc", + "*:*-linux-gnu:CXX=$NATIVEPREFIX/bin/$HOST-g++", + "*:*-linux-gnu:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", + "*:*-linux-gnu:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/$HOST -I$PREFIX/usr/include", + "*:*-linux-gnu:CPPFLAGS=-I$PREFIX/include -I$PREFIX/usr/include", + "*:*-linux-gnu:AR=$NATIVEPREFIX/bin/$HOST-ar", + "*:*-linux-gnu:RANLIB=$NATIVEPREFIX/bin/$HOST-ranlib", + "*:*-linux-gnu:AS=$NATIVEPREFIX/bin/$HOST-as", + "*:*-linux-gnu:LIBTOOL=$NATIVEPREFIX/bin/$HOST-libtool", + "*:*-linux-gnu:OBJCOPY=$NATIVEPREFIX/bin/$HOST-objcopy", + "*:*-linux-gnu:OBJDUMP=$NATIVEPREFIX/bin/$HOST-objdump", + "*:*-linux-gnu:STRIP=$NATIVEPREFIX/bin/$HOST-strip", + "*:*-linux-gnu:READELF=$NATIVEPREFIX/bin/$HOST-readelf", + "*:*-linux-gnu:LD=$NATIVEPREFIX/bin/$HOST-ld", + "*:*-linux-gnu:NM=$NATIVEPREFIX/bin/$HOST-nm", "*:x86_64-linux-gnu:ARCH=x86_64", - "*:x86_64-linux-gnu:CMAKE_SYSTEM_NAME=Linux", - "*:x86_64-linux-gnu:CC_target=x86_64-linux-gnu", - "*:x86_64-linux-gnu:CC=$NATIVEPREFIX/bin/x86_64-linux-gnu-gcc", - "*:x86_64-linux-gnu:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", - "*:x86_64-linux-gnu:CXX=$NATIVEPREFIX/bin/x86_64-linux-gnu-g++", - "*:x86_64-linux-gnu:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/x86_64-linux-gnu -I$PREFIX/usr/include", - "*:x86_64-linux-gnu:CPPFLAGS=-I$PREFIX/include -I$PREFIX/usr/include", - "*:x86_64-linux-gnu:RANLIB=$NATIVEPREFIX/bin/x86_64-linux-gnu-ranlib", - "*:x86_64-linux-gnu:AR=$NATIVEPREFIX/bin/x86_64-linux-gnu-ar", - "*:x86_64-linux-gnu:AS=$NATIVEPREFIX/bin/x86_64-linux-gnu-as", - "*:x86_64-linux-gnu:LIBTOOL=$NATIVEPREFIX/bin/x86_64-linux-gnu-libtool", - "*:x86_64-linux-gnu:OBJCOPY=$NATIVEPREFIX/bin/x86_64-linux-gnu-objcopy", - "*:x86_64-linux-gnu:OBJDUMP=$NATIVEPREFIX/bin/x86_64-linux-gnu-objdump", - "*:x86_64-linux-gnu:STRIP=$NATIVEPREFIX/bin/x86_64-linux-gnu-strip", - "*:x86_64-linux-gnu:READELF=$NATIVEPREFIX/bin/x86_64-linux-gnu-readelf", - "*:x86_64-linux-gnu:LD=$NATIVEPREFIX/bin/x86_64-linux-gnu-ld", - "*:x86_64-linux-gnu:NM=$NATIVEPREFIX/bin/x86_64-linux-gnu-nm", - "*:aarch64-linux-gnu:HOST=aarch64-linux-gnu", - "*:aarch64-linux-gnu:TARGET=aarch64-linux-gnu", - "*:aarch64-linux-gnu:RUST_TRIPLET=aarch64-unknown-linux-gnu", "*:aarch64-linux-gnu:ARCH=aarch64", - "*:aarch64-linux-gnu:CMAKE_SYSTEM_NAME=Linux", - "*:aarch64-linux-gnu:CC_target=aarch64-linux-gnu", - "*:aarch64-linux-gnu:CC=$NATIVEPREFIX/bin/aarch64-linux-gnu-gcc", - "*:aarch64-linux-gnu:CXX=$NATIVEPREFIX/bin/aarch64-linux-gnu-g++", - "*:aarch64-linux-gnu:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/aarch64-linux-gnu -I$PREFIX/usr/include", - "*:aarch64-linux-gnu:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", - "*:aarch64-linux-gnu:CPPFLAGS=-I$PREFIX/include -I$PREFIX/usr/include", - "*:aarch64-linux-gnu:RANLIB=$NATIVEPREFIX/bin/aarch64-linux-gnu-ranlib", - "*:aarch64-linux-gnu:AR=$NATIVEPREFIX/bin/aarch64-linux-gnu-ar", - "*:aarch64-linux-gnu:AS=$NATIVEPREFIX/bin/aarch64-linux-gnu-as", - "*:aarch64-linux-gnu:LIBTOOL=$NATIVEPREFIX/bin/aarch64-linux-gnu-libtool", - "*:aarch64-linux-gnu:OBJCOPY=$NATIVEPREFIX/bin/aarch64-linux-gnu-objcopy", - "*:aarch64-linux-gnu:OBJDUMP=$NATIVEPREFIX/bin/aarch64-linux-gnu-objdump", - "*:aarch64-linux-gnu:STRIP=$NATIVEPREFIX/bin/aarch64-linux-gnu-strip", - "*:aarch64-linux-gnu:READELF=$NATIVEPREFIX/bin/aarch64-linux-gnu-readelf", - "*:aarch64-linux-gnu:LD=$NATIVEPREFIX/bin/aarch64-linux-gnu-ld", - "*:aarch64-linux-gnu:NM=$NATIVEPREFIX/bin/aarch64-linux-gnu-nm", - "*:aarch64-linux-android:HOST=aarch64-linux-android", - "*:aarch64-linux-android:TARGET=aarch64-linux-android", - "*:aarch64-linux-android:RUST_TRIPLET=aarch64-linux-android", + "*:*-linux-gnu:RUST_TRIPLET=$ARCH-unknown-linux-gnu", + "*:*-android*:CMAKE_SYSTEM_NAME=Android", + "*:*-android*:RANLIB=$NATIVEPREFIX/bin/llvm-ranlib", + "*:*-android*:AR=$NATIVEPREFIX/bin/llvm-ar", + "*:*-android*:STRIP=$NATIVEPREFIX/bin/llvm-strip", + "*:*-android*:NM=$NATIVEPREFIX/bin/llvm-nm", + "*:*-android*:AS=$NATIVEPREFIX/bin/llvm-as", + "*:*-android*:LIBTOOL=$NATIVEPREFIX/bin/libtool", + "*:*-android*:ANDROID_NDK_HOME=$NATIVEPREFIX/", + "*:*-android*:LDFLAGS=$LDFLAGS -lc -lc++abi -lm", + "*:*-android*:CXXFLAGS=$CXXFLAGS -stdlib=libc++", "*:aarch64-linux-android:ARCH=aarch64", - "*:aarch64-linux-android:CMAKE_SYSTEM_NAME=Android", - "*:aarch64-linux-android:CC_target=aarch64-linux-android", + "*:aarch64-linux-android:RUST_TRIPLET=aarch64-linux-android", "*:aarch64-linux-android:CC=$NATIVEPREFIX/bin/aarch64-linux-android21-clang", "*:aarch64-linux-android:CXX=$NATIVEPREFIX/bin/aarch64-linux-android21-clang++", - "*:aarch64-linux-android:CXXFLAGS=$CXXFLAGS -stdlib=libc++", - "*:aarch64-linux-android:RANLIB=$NATIVEPREFIX/bin/llvm-ranlib", - "*:aarch64-linux-android:AR=$NATIVEPREFIX/bin/llvm-ar", - "*:aarch64-linux-android:STRIP=$NATIVEPREFIX/bin/llvm-strip", - "*:aarch64-linux-android:NM=$NATIVEPREFIX/bin/llvm-nm", - "*:aarch64-linux-android:AS=$NATIVEPREFIX/bin/llvm-as", - "*:aarch64-linux-android:LIBTOOL=$NATIVEPREFIX/bin/libtool", - "*:aarch64-linux-android:ANDROID_NDK_HOME=$NATIVEPREFIX/", - "*:aarch64-linux-android:LDFLAGS=$LDFLAGS -lc -lc++abi -lm", - "*:x86_64-linux-android:HOST=x86_64-linux-android", - "*:x86_64-linux-android:TARGET=x86_64-linux-android", - "*:x86_64-linux-android:RUST_TRIPLET=x86_64-linux-android", "*:x86_64-linux-android:ARCH=x86_64", - "*:x86_64-linux-android:CMAKE_SYSTEM_NAME=Android", - "*:x86_64-linux-android:CC_target=x86_64-linux-android", + "*:x86_64-linux-android:RUST_TRIPLET=x86_64-linux-android", "*:x86_64-linux-android:CC=$NATIVEPREFIX/bin/x86_64-linux-android21-clang", "*:x86_64-linux-android:CXX=$NATIVEPREFIX/bin/x86_64-linux-android21-clang++", - "*:x86_64-linux-android:CXXFLAGS=$CXXFLAGS -stdlib=libc++", - "*:x86_64-linux-android:RANLIB=$NATIVEPREFIX/bin/llvm-ranlib", - "*:x86_64-linux-android:AR=$NATIVEPREFIX/bin/llvm-ar", - "*:x86_64-linux-android:NM=$NATIVEPREFIX/bin/llvm-nm", - "*:x86_64-linux-android:STRIP=$NATIVEPREFIX/bin/llvm-strip", - "*:x86_64-linux-android:AS=$NATIVEPREFIX/bin/llvm-as", - "*:x86_64-linux-android:LIBTOOL=$NATIVEPREFIX/bin/libtool", - "*:x86_64-linux-android:ANDROID_NDK_HOME=$NATIVEPREFIX/", - "*:x86_64-linux-android:LDFLAGS=$LDFLAGS -lc -lc++abi -lm", - "*:armv7a-linux-androideabi:HOST=armv7a-linux-androideabi", - "*:armv7a-linux-androideabi:TARGET=armv7a-linux-androideabi", - "*:armv7a-linux-androideabi:RUST_TRIPLET=armv7-linux-androideabi", "*:armv7a-linux-androideabi:ARCH=armv7a", - "*:armv7a-linux-androideabi:CMAKE_SYSTEM_NAME=Android", - "*:armv7a-linux-androideabi:CC_target=armv7a-linux-androideabi", + "*:armv7a-linux-androideabi:RUST_TRIPLET=armv7-linux-androideabi", "*:armv7a-linux-androideabi:CC=$NATIVEPREFIX/bin/armv7a-linux-androideabi21-clang", "*:armv7a-linux-androideabi:CXX=$NATIVEPREFIX/bin/armv7a-linux-androideabi21-clang++", - "*:armv7a-linux-androideabi:CXXFLAGS=$CXXFLAGS -stdlib=libc++", - "*:armv7a-linux-androideabi:RANLIB=$NATIVEPREFIX/bin/llvm-ranlib", - "*:armv7a-linux-androideabi:AR=$NATIVEPREFIX/bin/llvm-ar", - "*:armv7a-linux-androideabi:NM=$NATIVEPREFIX/bin/llvm-nm", - "*:armv7a-linux-androideabi:STRIP=$NATIVEPREFIX/bin/llvm-strip", - "*:armv7a-linux-androideabi:AS=$NATIVEPREFIX/bin/llvm-as", - "*:armv7a-linux-androideabi:LIBTOOL=$NATIVEPREFIX/bin/libtool", - "*:armv7a-linux-androideabi:ANDROID_NDK_HOME=$NATIVEPREFIX/", - "*:armv7a-linux-androideabi:LDFLAGS=$LDFLAGS -lc -lc++abi -lm", - "*:*-apple-*:CRATE_CC_NO_DEFAULTS=1", - "*:aarch64-apple-darwin:RUST_CC=$NATIVEPREFIX/bin/aarch64-apple-darwin-clang", - "*:aarch64-apple-darwin:RUST_CXX=$NATIVEPREFIX/bin/aarch64-apple-darwin-clang++", - "*:aarch64-apple-darwin:RUST_AR=$NATIVEPREFIX/bin/llvm-ar", - "*:aarch64-apple-darwin:RUST_LINKER=$NATIVEPREFIX/bin/aarch64-apple-darwin-clang", - "*:aarch64-apple-darwin:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$RUST_CC", - "*:aarch64-apple-darwin:CC_aarch64_apple_darwin=$RUST_CC", - "*:aarch64-apple-darwin:CXX_aarch64_apple_darwin=$RUST_CXX", - "*:aarch64-apple-darwin:AR_aarch64_apple_darwin=$RUST_AR", - "*:aarch64-apple-darwin:CFLAGS_aarch64_apple_darwin=-target aarch64-apple-darwin -isysroot $SDK_PATH -I$PREFIX/include", - "*:aarch64-apple-darwin:CXXFLAGS_aarch64_apple_darwin=-target aarch64-apple-darwin -isysroot $SDK_PATH -I$PREFIX/include -stdlib=libc++", - "*:aarch64-apple-darwin:CARGO_TARGET_AARCH64_APPLE_DARWIN_RUSTFLAGS=-Clinker=$RUST_CC -Clink-arg=-mmacosx-version-min=$OSX_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi", - "*:x86_64-apple-darwin:RUST_CC=$NATIVEPREFIX/bin/x86_64-apple-darwin-clang", - "*:x86_64-apple-darwin:RUST_CXX=$NATIVEPREFIX/bin/x86_64-apple-darwin-clang++", - "*:x86_64-apple-darwin:RUST_AR=$NATIVEPREFIX/bin/ar", - "*:x86_64-apple-darwin:RUST_LINKER=$NATIVEPREFIX/bin/x86_64-apple-darwin-clang", - "*:x86_64-apple-darwin:CARGO_TARGET_X86_64_APPLE_DARWIN_LINKER=$RUST_CC", - "*:x86_64-apple-darwin:CC_x86_64_apple_darwin=$RUST_CC", - "*:x86_64-apple-darwin:CXX_x86_64_apple_darwin=$RUST_CXX", - "*:x86_64-apple-darwin:AR_x86_64_apple_darwin=$RUST_AR", - "*:x86_64-apple-darwin:CFLAGS_x86_64_apple_darwin=-target x86_64-apple-darwin -isysroot $SDK_PATH -I$PREFIX/include", - "*:x86_64-apple-darwin:CXXFLAGS_x86_64_apple_darwin=-target x86_64-apple-darwin -isysroot $SDK_PATH -I$PREFIX/include -stdlib=libc++", - "*:x86_64-apple-darwin:CARGO_TARGET_X86_64_APPLE_DARWIN_RUSTFLAGS=-Clinker=$RUST_CC -Clink-arg=-mmacosx-version-min=$OSX_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi", - "*:aarch64-apple-ios:RUST_CC=$NATIVEPREFIX/bin/aarch64-apple-ios-clang", - "*:aarch64-apple-ios:RUST_CXX=$NATIVEPREFIX/bin/aarch64-apple-ios-clang++", - "*:aarch64-apple-ios:RUST_AR=$NATIVEPREFIX/bin/ar", - "*:aarch64-apple-ios:RUST_LINKER=$NATIVEPREFIX/bin/aarch64-apple-ios-clang", - "*:aarch64-apple-ios:CARGO_TARGET_AARCH64_APPLE_IOS_LINKER=$RUST_CC", - "*:aarch64-apple-ios:CC_aarch64_apple_ios=$RUST_CC", - "*:aarch64-apple-ios:CXX_aarch64_apple_ios=$RUST_CXX", - "*:aarch64-apple-ios:AR_aarch64_apple_ios=$RUST_AR", - "*:aarch64-apple-ios:CFLAGS_aarch64_apple_ios=-target aarch64-apple-ios -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:aarch64-apple-ios:CXXFLAGS_aarch64_apple_ios=-target aarch64-apple-ios -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include -stdlib=libc++", - "*:aarch64-apple-ios:CARGO_TARGET_AARCH64_APPLE_IOS_RUSTFLAGS=-Clinker=$RUST_CC -Clink-arg=-target -Clink-arg=aarch64-apple-ios -Clink-arg=-mios-version-min=$IOS_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi", - "*:aarch64-apple-ios-simulator:RUST_CC=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang", - "*:aarch64-apple-ios-simulator:RUST_CXX=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang++", - "*:aarch64-apple-ios-simulator:RUST_AR=$NATIVEPREFIX/bin/ar", - "*:aarch64-apple-ios-simulator:RUST_LINKER=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang", - "*:aarch64-apple-ios-simulator:CARGO_TARGET_AARCH64_APPLE_IOS_SIM_LINKER=$RUST_CC", - "*:aarch64-apple-ios-simulator:CC_aarch64_apple_ios_sim=$RUST_CC", - "*:aarch64-apple-ios-simulator:CXX_aarch64_apple_ios_sim=$RUST_CXX", - "*:aarch64-apple-ios-simulator:AR_aarch64_apple_ios_sim=$RUST_AR", - "*:aarch64-apple-ios-simulator:CFLAGS_aarch64_apple_ios_sim=-target aarch64-apple-ios-simulator -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", - "*:aarch64-apple-ios-simulator:CXXFLAGS_aarch64_apple_ios_sim=-target aarch64-apple-ios-simulator -mios-version-min=$IOS_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include -stdlib=libc++", - "*:aarch64-apple-ios-simulator:CARGO_TARGET_AARCH64_APPLE_IOS_SIM_RUSTFLAGS=-Clinker=$RUST_CC -Clink-arg=-target -Clink-arg=aarch64-apple-ios-simulator -Clink-arg=-mios-version-min=$IOS_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi", - "*:x86_64-w64-mingw32:RUST_CC=$CC", - "*:x86_64-w64-mingw32:RUST_CXX=$CXX", - "*:x86_64-w64-mingw32:RUST_AR=$AR", - "*:x86_64-w64-mingw32:RUST_LINKER=$CC", - "*:x86_64-w64-mingw32:CARGO_TARGET_X86_64_PC_WINDOWS_GNU_LINKER=$CC", - "*:x86_64-w64-mingw32:CC_x86_64_pc_windows_gnu=$CC", - "*:x86_64-w64-mingw32:CXX_x86_64_pc_windows_gnu=$CXX", - "*:x86_64-w64-mingw32:AR_x86_64_pc_windows_gnu=$AR", - "*:x86_64-w64-mingw32:CFLAGS_x86_64_pc_windows_gnu=$CFLAGS", - "*:x86_64-w64-mingw32:CXXFLAGS_x86_64_pc_windows_gnu=$CXXFLAGS", - "*:x86_64-w64-mingw32:CARGO_TARGET_X86_64_PC_WINDOWS_GNU_RUSTFLAGS=-Clinker=$CC -Clink-arg=--sysroot=$PREFIX/sysroot", - "*:x86_64-linux-gnu:RUST_CC=$CC", - "*:x86_64-linux-gnu:RUST_CXX=$CXX", - "*:x86_64-linux-gnu:RUST_AR=$AR", - "*:x86_64-linux-gnu:RUST_LINKER=$CC", - "*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$CC", - "*:x86_64-linux-gnu:CC_x86_64_unknown_linux_gnu=$CC", - "*:x86_64-linux-gnu:CXX_x86_64_unknown_linux_gnu=$CXX", - "*:x86_64-linux-gnu:AR_x86_64_unknown_linux_gnu=$AR", - "*:x86_64-linux-gnu:CFLAGS_x86_64_unknown_linux_gnu=$CFLAGS", - "*:x86_64-linux-gnu:CXXFLAGS_x86_64_unknown_linux_gnu=$CXXFLAGS", - "*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clinker=$CC -Clink-arg=--sysroot=$PREFIX/sysroot", - "*:aarch64-linux-gnu:RUST_CC=$CC", - "*:aarch64-linux-gnu:RUST_CXX=$CXX", - "*:aarch64-linux-gnu:RUST_AR=$AR", - "*:aarch64-linux-gnu:RUST_LINKER=$CC", - "*:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$CC", - "*:aarch64-linux-gnu:CC_aarch64_unknown_linux_gnu=$CC", - "*:aarch64-linux-gnu:CXX_aarch64_unknown_linux_gnu=$CXX", - "*:aarch64-linux-gnu:AR_aarch64_unknown_linux_gnu=$AR", - "*:aarch64-linux-gnu:CFLAGS_aarch64_unknown_linux_gnu=$CFLAGS", - "*:aarch64-linux-gnu:CXXFLAGS_aarch64_unknown_linux_gnu=$CXXFLAGS", - "*:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clinker=$CC -Clink-arg=--sysroot=$PREFIX/sysroot", - "*:aarch64-linux-android:RUST_CC=$CC", - "*:aarch64-linux-android:RUST_CXX=$CXX", - "*:aarch64-linux-android:RUST_AR=$AR", - "*:aarch64-linux-android:RUST_LINKER=$CC", - "*:aarch64-linux-android:CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER=$CC", - "*:aarch64-linux-android:CC_aarch64_linux_android=$CC", - "*:aarch64-linux-android:CXX_aarch64_linux_android=$CXX", - "*:aarch64-linux-android:AR_aarch64_linux_android=$AR", - "*:aarch64-linux-android:CARGO_TARGET_AARCH64_LINUX_ANDROID_RUSTFLAGS=-Clinker=$CC", - "*:x86_64-linux-android:RUST_CC=$CC", - "*:x86_64-linux-android:RUST_CXX=$CXX", - "*:x86_64-linux-android:RUST_AR=$AR", - "*:x86_64-linux-android:RUST_LINKER=$CC", - "*:x86_64-linux-android:CARGO_TARGET_X86_64_LINUX_ANDROID_LINKER=$CC", - "*:x86_64-linux-android:CC_x86_64_linux_android=$CC", - "*:x86_64-linux-android:CXX_x86_64_linux_android=$CXX", - "*:x86_64-linux-android:AR_x86_64_linux_android=$AR", - "*:x86_64-linux-android:CARGO_TARGET_X86_64_LINUX_ANDROID_RUSTFLAGS=-Clinker=$CC", - "*:armv7a-linux-androideabi:RUST_CC=$CC", - "*:armv7a-linux-androideabi:RUST_CXX=$CXX", - "*:armv7a-linux-androideabi:RUST_AR=$AR", - "*:armv7a-linux-androideabi:RUST_LINKER=$CC", - "*:armv7a-linux-androideabi:CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_LINKER=$CC", - "*:armv7a-linux-androideabi:CC_armv7_linux_androideabi=$CC", - "*:armv7a-linux-androideabi:CXX_armv7_linux_androideabi=$CXX", - "*:armv7a-linux-androideabi:AR_armv7_linux_androideabi=$AR", - "*:armv7a-linux-androideabi:CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_RUSTFLAGS=-Clinker=$CC" + "*:*:CPP=$CC $CFLAGS -E", + "*:*:CXXCPP=$CXX $CXXFLAGS -E" ] } \ No newline at end of file diff --git a/packages/native/_/_.json b/packages/native/_/_.json index fbca124..4d7e142 100644 --- a/packages/native/_/_.json +++ b/packages/native/_/_.json @@ -19,8 +19,6 @@ ] }, "export-env": [ - "darwin_arm64:*:HOST=aarch64-apple-darwin", - "darwin_arm64:*:TARGET=aarch64-apple-darwin", "darwin_arm64:*:OSX_MIN_VERSION=13", "darwin_arm64:*:CC=$NATIVEPREFIX/_/bin/clang", "darwin_arm64:*:CXX=$NATIVEPREFIX/_/bin/clang++", @@ -32,16 +30,12 @@ "darwin_arm64:*:OTOOL=$NATIVEPREFIX/_/bin/otool", "darwin_arm64:*:INSTALL_NAME_TOOL=$NATIVEPREFIX/_/bin/install_name_tool", "darwin_arm64:*:lt_cv_prog_gnu_ld=no", - "linux_amd64:*:HOST=x86_64-linux-gnu", - "linux_amd64:*:TARGET=x86_64-linux-gnu", "linux_amd64:*:CC=$NATIVEPREFIX/_/bin/clang", "linux_amd64:*:CXX=$NATIVEPREFIX/_/bin/clang++", "linux_amd64:*:AR=$NATIVEPREFIX/_/bin/ar", "linux_amd64:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", "linux_amd64:*:STRIP=$NATIVEPREFIX/_/bin/strip", "linux_amd64:*:NM=$NATIVEPREFIX/_/bin/nm", - "linux_arm64:*:HOST=aarch64-linux-gnu", - "linux_arm64:*:TARGET=aarch64-linux-gnu", "linux_arm64:*:CC=$NATIVEPREFIX/_/bin/clang", "linux_arm64:*:CXX=$NATIVEPREFIX/_/bin/clang++", "linux_arm64:*:AR=$NATIVEPREFIX/_/bin/ar", @@ -51,9 +45,15 @@ "*:*:CFLAGS=$CFLAGS -I$NATIVEPREFIX/include", "*:*:CXXFLAGS=$CXXFLAGS -I$NATIVEPREFIX/include", "*:*:CPPFLAGS=$CPPFLAGS -I$NATIVEPREFIX/include", + "*:*:CFLAGS=$CFLAGS -fPIC", + "*:*:CXXFLAGS=$CXXFLAGS -fPIC", + "*:*:LDFLAGS=$LDFLAGS -fPIC", + "*:*:CC_FOR_BUILD=$CC", + "*:*:CXX_FOR_BUILD=$CXX", "*:*:LDFLAGS=$LDFLAGS -L$NATIVEPREFIX/lib", "*:*:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$NATIVEPREFIX/lib", - "*:*:PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$NATIVEPREFIX/lib/pkgconfig", - "*:*:LIBRARY_PATH=$LIBRARY_PATH:$NATIVEPREFIX/lib" + "*:*:LIBRARY_PATH=$LIBRARY_PATH:$NATIVEPREFIX/lib", + "*:*:CC_BUILD=$CC $CFLAGS", + "*:*:CXX_BUILD=$CXX $CXXFLAGS" ] } \ No newline at end of file diff --git a/packages/native/cmake-toolchain.json b/packages/native/cmake-toolchain.json index 1403fd2..eee5fea 100644 --- a/packages/native/cmake-toolchain.json +++ b/packages/native/cmake-toolchain.json @@ -12,6 +12,9 @@ "dependencies": [ "*:*:native/_/_" ], + "export-env": [ + "*:*:CMAKE_TOOLCHAIN_FILE=$NATIVEPREFIX/toolchain.cmake" + ], "build": { "env": [], "steps": [ @@ -19,4 +22,4 @@ "*:*:cp toolchain.cmake $STAGING_DIR$NATIVEPREFIX/toolchain.cmake" ] } -} \ No newline at end of file +} diff --git a/packages/native/diffutils.json b/packages/native/diffutils.json index 47c5be4..48b942e 100644 --- a/packages/native/diffutils.json +++ b/packages/native/diffutils.json @@ -17,10 +17,7 @@ "*:*:native/perl" ], "build": { - "env": [ - "*:*:CFLAGS=$CFLAGS -fPIC", - "*:*:LDFLAGS=$LDFLAGS -fPIC" - ], + "env": [], "steps": [ "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", diff --git a/packages/native/expat.json b/packages/native/expat.json index 2b8cf8d..88270c9 100644 --- a/packages/native/expat.json +++ b/packages/native/expat.json @@ -17,10 +17,7 @@ "*:*:native/perl" ], "build": { - "env": [ - "*:*:CFLAGS=$CFLAGS -fPIC", - "*:*:LDFLAGS=$LDFLAGS -fPIC" - ], + "env": [], "steps": [ "*:*:./configure --prefix=$NATIVEPREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", "*:*:make -j$NUM_CORES", diff --git a/packages/native/flex.json b/packages/native/flex.json index 46695af..9ee046a 100644 --- a/packages/native/flex.json +++ b/packages/native/flex.json @@ -20,9 +20,6 @@ ], "build": { "env": [ - "*:*:CC_FOR_BUILD=$CC", - "*:*:CFLAGS=$CFLAGS -fPIC", - "*:*:LDFLAGS=$LDFLAGS -fPIC", "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --with-pic", "*:*:config_opts=$config_opts --enable-shared", diff --git a/packages/native/libffi@3_5_2.json b/packages/native/libffi@3_5_2.json index 7258162..f70c7e6 100644 --- a/packages/native/libffi@3_5_2.json +++ b/packages/native/libffi@3_5_2.json @@ -14,10 +14,7 @@ "*:*:native/make" ], "build": { - "env": [ - "*:*:CFLAGS=$CFLAGS -fPIC", - "*:*:LDFLAGS=$LDFLAGS -fPIC" - ], + "env": [], "steps": [ "*:*:./configure --prefix=$NATIVEPREFIX --enable-static --disable-shared --disable-docs --with-pic", "*:*:make -j$NUM_CORES", diff --git a/packages/native/libiconv.json b/packages/native/libiconv.json index 1860473..a5d02f0 100644 --- a/packages/native/libiconv.json +++ b/packages/native/libiconv.json @@ -16,7 +16,6 @@ ], "build": { "env": [ - "*:*:CFLAGS=$CFLAGS -fPIC", "*:*:config_opts=--prefix=$NATIVEPREFIX --disable-nls --enable-static --disable-shared", "*:*:config_opts=$config_opts", "*:*linux:config_opts=$config_opts --with-pic" diff --git a/packages/native/pkgconf.json b/packages/native/pkgconf.json index bf3d074..1574a26 100644 --- a/packages/native/pkgconf.json +++ b/packages/native/pkgconf.json @@ -20,12 +20,10 @@ "*:*:native/perl" ], "build": { - "env": [ - "*:*:PKGCONFIG_DIR=$NATIVEPREFIX/lib/pkgconfig:$PREFIX/lib/pkgconfig" - ], + "env": [], "steps": [ "*:*:bash ./autogen.sh", - "*:*:bash ./configure --prefix=$NATIVEPREFIX --with-pkg-config-dir=$PKGCONFIG_DIR", + "*:*:bash ./configure --prefix=$NATIVEPREFIX --with-pkg-config-dir=$NATIVEPREFIX/lib/pkgconfig", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", "*:*:ln -s pkgconf $STAGING_DIR$NATIVEPREFIX/bin/pkg-config" diff --git a/packages/native/protobuf.json b/packages/native/protobuf.json index 679b06f..2478d36 100644 --- a/packages/native/protobuf.json +++ b/packages/native/protobuf.json @@ -21,8 +21,6 @@ ], "build": { "env": [ - "*:*:CC_FOR_BUILD=$CC", - "*:*:CXX_FOR_BUILD=$CXX", "*:*:config_opts=--host=$HOST --prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-shared", "*:*-linux-gnu:config_opts=$config_opts --with-pic" diff --git a/packages/native/xz.json b/packages/native/xz.json index 060e321..bcc1cc8 100644 --- a/packages/native/xz.json +++ b/packages/native/xz.json @@ -26,9 +26,7 @@ ], "build": { "env": [ - "*:*:HOSTOVERRIDE=$HOST", - "*:aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "*:*:config_opts=--prefix=$NATIVEPREFIX --host=$HOSTOVERRIDE", + "*:*:config_opts=--prefix=$NATIVEPREFIX --host=$HOST", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --enable-static", "*:*:config_opts=$config_opts --disable-doc", diff --git a/packages/native/zlib.json b/packages/native/zlib.json index 5df17a4..665aab3 100644 --- a/packages/native/zlib.json +++ b/packages/native/zlib.json @@ -17,7 +17,6 @@ ], "build": { "env": [ - "*:*:CFLAGS=$CFLAGS -fPIC", "*:*:config_opts=--prefix=$NATIVEPREFIX --static", "*:*:LIBTOOL=$NATIVEPREFIX/bin/libtool", "*:*:CROSS_PREFIX=$HOST-" diff --git a/packages/openssl.json b/packages/openssl.json index e42beef..2fb8083 100644 --- a/packages/openssl.json +++ b/packages/openssl.json @@ -16,9 +16,13 @@ "*:*:native/perl", "*:*:native/sed" ], + "export-env": [ + "*:*-linux-gnu:OPENSSL_LIBS=-lssl -lcrypto -lpthread -ldl", + "*:*-apple-darwin:OPENSSL_LIBS=-lssl -lcrypto", + "*:*-w64-mingw32:OPENSSL_LIBS=-lssl -lcrypto -lws2_32" + ], "build": { "env": [ - "*:*-android*:ANDROID_NDK_ROOT=$NATIVEPREFIX", "*:*-android*:CC=clang", "*:*-android*:AR=ar", "*:*-android*:RANLIB=ranlib", diff --git a/packages/protobuf.json b/packages/protobuf.json index 154121e..b855a1d 100644 --- a/packages/protobuf.json +++ b/packages/protobuf.json @@ -29,8 +29,6 @@ ], "build": { "env": [ - "*:*:CC_FOR_BUILD=$CC", - "*:*:CXX_FOR_BUILD=$CXX", "*:*:CXXFLAGS=$CXXFLAGS -std=c++11", "*:*:config_opts=--host=$HOST --prefix=$PREFIX", "*:*:config_opts=$config_opts --disable-shared --with-protoc=$NATIVEPREFIX/bin/protoc", diff --git a/packages/qt@6_11_1.json b/packages/qt@6_11_1.json index f256544..b06e074 100644 --- a/packages/qt@6_11_1.json +++ b/packages/qt@6_11_1.json @@ -41,333 +41,159 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/cmake", - "*:x86_64-linux-gnu:native/ninja", - "*:x86_64-linux-gnu:native/patch", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/sed", - "*:x86_64-linux-gnu:native/qt@6_11_1", - "*:x86_64-linux-gnu:native/wayland@1_25_0", - "*:x86_64-linux-gnu:openssl", - "*:x86_64-linux-gnu:freetype@2_14_1", - "*:x86_64-linux-gnu:fontconfig@2_12_6", - "*:x86_64-linux-gnu:libxcb@1_17_0", - "*:x86_64-linux-gnu:libXau@1_0_12", - "*:x86_64-linux-gnu:libxkbcommon@1_13_1", - "*:x86_64-linux-gnu:libxcb_util@0_4_1", - "*:x86_64-linux-gnu:libxcb_util_render@0_3_10", - "*:x86_64-linux-gnu:libxcb_util_keysyms@0_4_1", - "*:x86_64-linux-gnu:libxcb_util_image@0_4_1", - "*:x86_64-linux-gnu:libxcb_util_wm@0_4_2", - "*:x86_64-linux-gnu:libxcb_util_cursor@0_1_6", - "*:x86_64-linux-gnu:dbus@1_14_10", - "*:x86_64-linux-gnu:wayland@1_25_0", - "*:x86_64-apple-darwin:native/_", - "*:x86_64-apple-darwin:native/bash", - "*:x86_64-apple-darwin:native/coreutils", - "*:x86_64-apple-darwin:native/cmake", - "*:x86_64-apple-darwin:native/ninja", - "*:x86_64-apple-darwin:native/patch", - "*:x86_64-apple-darwin:native/sed", - "*:x86_64-apple-darwin:native/qt@6_11_1", - "*:x86_64-apple-darwin:openssl", - "*:x86_64-w64-mingw32:native/_", - "*:x86_64-w64-mingw32:native/bash", - "*:x86_64-w64-mingw32:native/coreutils", - "*:x86_64-w64-mingw32:native/cmake", - "*:x86_64-w64-mingw32:native/ninja", - "*:x86_64-w64-mingw32:native/patch", - "*:x86_64-w64-mingw32:native/sed", - "*:x86_64-w64-mingw32:native/qt@6_11_1", - "*:x86_64-w64-mingw32:openssl" + "*:*:native/_", + "*:*:native/cmake", + "*:*:native/cmake-toolchain", + "*:*:native/ninja", + "*:*:native/patch", + "*:*:native/sed", + "*:*:native/qt@6_11_1", + "*:*:openssl", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/wayland@1_25_0", + "*:*-linux-gnu:freetype@2_14_1", + "*:*-linux-gnu:fontconfig@2_12_6", + "*:*-linux-gnu:libxcb@1_17_0", + "*:*-linux-gnu:libXau@1_0_12", + "*:*-linux-gnu:libxkbcommon@1_13_1", + "*:*-linux-gnu:libxcb_util@0_4_1", + "*:*-linux-gnu:libxcb_util_render@0_3_10", + "*:*-linux-gnu:libxcb_util_keysyms@0_4_1", + "*:*-linux-gnu:libxcb_util_image@0_4_1", + "*:*-linux-gnu:libxcb_util_wm@0_4_2", + "*:*-linux-gnu:libxcb_util_cursor@0_1_6", + "*:*-linux-gnu:dbus@1_14_10", + "*:*-linux-gnu:wayland@1_25_0" + ], + "export-env": [ + "*:*-apple-darwin:QT_QMAKE_DEVICE_OPTIONS=MAC_SDK_PATH=$SDK_PATH;MAC_SDK_VERSION=$SDK_VERSION;CROSS_COMPILE=$HOST-;MAC_TARGET=$HOST;XCODE_VERSION=$SDK_VERSION" ], "build": { "env": [ - "*:x86_64-linux-gnu:OPENSSL_LIBS=-lssl -lcrypto -lpthread -ldl", - "*:x86_64-linux-gnu:PKG_CONFIG_SYSROOT_DIR=/", - "*:x86_64-linux-gnu:PKG_CONFIG_LIBDIR=$PREFIX/lib/pkgconfig", - "*:x86_64-linux-gnu:PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", - "*:x86_64-linux-gnu:config_opts=-G Ninja", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_HOST_PATH=$QT_HOST_PATH", - "*:x86_64-linux-gnu:config_opts=$config_opts -DCMAKE_PREFIX_PATH=$QT_HOST_PATH/lib/cmake", - "*:x86_64-linux-gnu:config_opts=$config_opts -DBUILD_SHARED_LIBS=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_BUILD_EXAMPLES=FALSE", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_BUILD_TESTS=FALSE", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_GENERATE_SBOM=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_cups=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_qmake=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_egl=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_egl_x11=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_xcb_egl_plugin=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_xcb_glx_plugin=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_eglfs=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_evdev=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_gif=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_glib=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_icu=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_ico=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_kms=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_linuxfb=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_libudev=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_mtdev=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_openssl=ON", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_openssl_linked=ON", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_openvg=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_permissions=ON", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_reduce_relocations=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_schannel=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_sctp=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_securetransport=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_system_proxies=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_use_gold_linker_alias=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_zstd=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_pkg_config=ON", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_system_png=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_system_pcre2=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_system_harfbuzz=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_system_zlib=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_colordialog=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_dial=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_fontcombobox=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_image_heuristic_mask=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_keysequenceedit=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_lcdnumber=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_networkdiskcache=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_pdf=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_printdialog=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_printer=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_printpreviewdialog=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_printpreviewwidget=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_printsupport=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_sessionmanager=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_spatialaudio=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_sql=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_syntaxhighlighter=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_tabletevent=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_textmarkdownwriter=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_textodfwriter=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_topleveldomain=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_undocommand=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_undogroup=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_undostack=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_undoview=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_vnc=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_QMAKE_TARGET_MKSPEC=linux-g++", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_xcb=ON", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_xcb_xlib=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_xlib=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_freetype=ON", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_system_freetype=ON", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_fontconfig=ON", - "*:x86_64-linux-gnu:config_opts=$config_opts -DINPUT_opengl=no", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengl=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengles2=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengles3=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengles31=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengles32=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengl_desktop=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_vulkan=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_backtrace=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_dbus=ON", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_dbus_linked=ON", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland_client=ON", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland_server=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland_drm_egl_server_buffer=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-shm-emulation-server-buffer=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-fullscreen-shell-v1=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-ivi-shell=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-wl-shell=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-xdg-shell-v5=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-xdg-shell-v6=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DBUILD_WITH_PCH=OFF", - "*:x86_64-linux-gnu:config_opts=$config_opts -DQT_FEATURE_linux_v4l=OFF", - "*:x86_64-apple-darwin:OPENSSL_LIBS=-lssl -lcrypto", - "*:x86_64-apple-darwin:QT_MAC_SDK_NO_VERSION_CHECK=1", - "*:x86_64-apple-darwin:config_opts=-G Ninja", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_HOST_PATH=$QT_HOST_PATH", - "*:x86_64-apple-darwin:config_opts=$config_opts -DCMAKE_PREFIX_PATH=$QT_HOST_PATH/lib/cmake", - "*:x86_64-apple-darwin:config_opts=$config_opts -DBUILD_SHARED_LIBS=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_BUILD_EXAMPLES=FALSE", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_BUILD_TESTS=FALSE", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_GENERATE_SBOM=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_cups=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_qmake=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_egl=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_egl_x11=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_xcb_egl_plugin=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_xcb_glx_plugin=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_eglfs=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_evdev=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_gif=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_glib=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_icu=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_ico=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_kms=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_linuxfb=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_libudev=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_mtdev=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_openssl=ON", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_openssl_linked=ON", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_openvg=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_permissions=ON", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_reduce_relocations=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_schannel=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_sctp=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_securetransport=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_system_proxies=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_use_gold_linker_alias=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_zstd=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_system_png=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_system_pcre2=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_system_harfbuzz=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_system_zlib=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_colordialog=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_dial=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_fontcombobox=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_image_heuristic_mask=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_keysequenceedit=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_lcdnumber=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_networkdiskcache=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_pdf=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_printdialog=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_printer=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_printpreviewdialog=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_printpreviewwidget=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_printsupport=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_sessionmanager=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_spatialaudio=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_sql=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_syntaxhighlighter=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_tabletevent=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_textmarkdownwriter=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_textodfwriter=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_topleveldomain=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_undocommand=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_undogroup=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_undostack=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_undoview=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_vnc=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_QMAKE_TARGET_MKSPEC=macx-clang", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_accessibility=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_dbus=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_freetype=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_ffmpeg=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DBUILD_WITH_PCH=OFF", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_NO_APPLE_SDK_AND_XCODE_CHECK=ON", - "*:x86_64-apple-darwin:config_opts=$config_opts -DQT_FEATURE_appstore_compliant=ON", - "*:x86_64-w64-mingw32:OPENSSL_LIBS=-lssl -lcrypto -lws2_32", - "*:x86_64-w64-mingw32:config_opts=-G Ninja", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_HOST_PATH=$QT_HOST_PATH", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DCMAKE_PREFIX_PATH=$QT_HOST_PATH/lib/cmake", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DBUILD_SHARED_LIBS=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_BUILD_EXAMPLES=FALSE", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_BUILD_TESTS=FALSE", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_GENERATE_SBOM=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_cups=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_qmake=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_egl=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_egl_x11=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_xcb_egl_plugin=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_xcb_glx_plugin=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_eglfs=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_evdev=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_gif=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_glib=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_icu=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_ico=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_kms=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_linuxfb=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_libudev=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_mtdev=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_openssl=ON", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_openssl_linked=ON", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_openvg=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_permissions=ON", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_reduce_relocations=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_schannel=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_sctp=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_securetransport=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_system_proxies=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_use_gold_linker_alias=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_zstd=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_system_png=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_system_pcre2=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_system_harfbuzz=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_system_zlib=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_colordialog=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_dial=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_fontcombobox=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_image_heuristic_mask=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_keysequenceedit=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_lcdnumber=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_networkdiskcache=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_pdf=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_printdialog=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_printer=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_printpreviewdialog=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_printpreviewwidget=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_printsupport=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_sessionmanager=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_spatialaudio=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_sql=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_syntaxhighlighter=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_tabletevent=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_textmarkdownwriter=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_textodfwriter=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_topleveldomain=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_undocommand=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_undogroup=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_undostack=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_undoview=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_vnc=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_QMAKE_TARGET_MKSPEC=win32-g++", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DINPUT_opengl=no", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_dbus=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_freetype=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_ffmpeg=OFF", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_wmf=ON", - "*:x86_64-w64-mingw32:config_opts=$config_opts -DBUILD_WITH_PCH=ON" + "*:*:config_opts=-G Ninja", + "*:*:config_opts=$config_opts -DQT_HOST_PATH=$QT_HOST_PATH", + "*:*:config_opts=$config_opts -DCMAKE_PREFIX_PATH=$QT_HOST_PATH/lib/cmake", + "*:*:config_opts=$config_opts -DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE", + "*:*:config_opts=$config_opts -DBUILD_SHARED_LIBS=OFF", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:*:config_opts=$config_opts -DQT_BUILD_EXAMPLES=FALSE", + "*:*:config_opts=$config_opts -DQT_BUILD_TESTS=FALSE", + "*:*:config_opts=$config_opts -DQT_GENERATE_SBOM=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_cups=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_qmake=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_egl=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_egl_x11=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_xcb_egl_plugin=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_xcb_glx_plugin=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_eglfs=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_evdev=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_gif=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_glib=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_icu=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_ico=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_kms=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_linuxfb=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_libudev=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_mtdev=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_openssl=ON", + "*:*:config_opts=$config_opts -DQT_FEATURE_openssl_linked=ON", + "*:*:config_opts=$config_opts -DQT_FEATURE_openvg=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_permissions=ON", + "*:*:config_opts=$config_opts -DQT_FEATURE_reduce_relocations=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_schannel=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_sctp=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_securetransport=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_system_proxies=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_use_gold_linker_alias=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_zstd=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_system_png=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_system_pcre2=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_system_harfbuzz=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_system_zlib=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_colordialog=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_dial=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_fontcombobox=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_image_heuristic_mask=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_keysequenceedit=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_lcdnumber=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_networkdiskcache=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_pdf=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_printdialog=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_printer=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_printpreviewdialog=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_printpreviewwidget=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_printsupport=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_sessionmanager=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_spatialaudio=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_sql=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_syntaxhighlighter=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_tabletevent=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_textmarkdownwriter=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_textodfwriter=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_topleveldomain=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_undocommand=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_undogroup=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_undostack=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_undoview=OFF", + "*:*:config_opts=$config_opts -DQT_FEATURE_vnc=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_pkg_config=ON", + "*:*-linux-gnu:config_opts=$config_opts -DQT_QMAKE_TARGET_MKSPEC=linux-g++", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_xcb=ON", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_xcb_xlib=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_xlib=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_freetype=ON", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_system_freetype=ON", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_fontconfig=ON", + "*:*-linux-gnu:config_opts=$config_opts -DINPUT_opengl=no", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengl=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengles2=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengles3=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengles31=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengles32=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_opengl_desktop=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_vulkan=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_backtrace=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_dbus=ON", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_dbus_linked=ON", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland_client=ON", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland_server=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland_drm_egl_server_buffer=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-shm-emulation-server-buffer=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-fullscreen-shell-v1=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-ivi-shell=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-wl-shell=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-xdg-shell-v5=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_wayland-client-xdg-shell-v6=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DBUILD_WITH_PCH=OFF", + "*:*-linux-gnu:config_opts=$config_opts -DQT_FEATURE_linux_v4l=OFF", + "*:*-apple-darwin:config_opts=$config_opts -DQT_QMAKE_TARGET_MKSPEC=macx-clang", + "*:*-apple-darwin:config_opts=$config_opts -DQT_FEATURE_accessibility=OFF", + "*:*-apple-darwin:config_opts=$config_opts -DQT_FEATURE_dbus=OFF", + "*:*-apple-darwin:config_opts=$config_opts -DQT_FEATURE_freetype=OFF", + "*:*-apple-darwin:config_opts=$config_opts -DQT_FEATURE_ffmpeg=OFF", + "*:*-apple-darwin:config_opts=$config_opts -DBUILD_WITH_PCH=OFF", + "*:*-apple-darwin:config_opts=$config_opts -DQT_NO_APPLE_SDK_AND_XCODE_CHECK=ON", + "*:*-apple-darwin:config_opts=$config_opts -DQT_FEATURE_appstore_compliant=ON", + "*:*-w64-mingw32:config_opts=$config_opts -DQT_QMAKE_TARGET_MKSPEC=win32-g++", + "*:*-w64-mingw32:config_opts=$config_opts -DINPUT_opengl=no", + "*:*-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_dbus=OFF", + "*:*-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_freetype=OFF", + "*:*-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_ffmpeg=OFF", + "*:*-w64-mingw32:config_opts=$config_opts -DQT_FEATURE_wmf=ON", + "*:*-w64-mingw32:config_opts=$config_opts -DBUILD_WITH_PCH=ON" ], "steps": [ - "*:x86_64-linux-gnu:for mod in qtbase qtsvg qtwebsockets qtshadertools qtmultimedia qtwayland; do inner=$mod/$mod-everywhere-src-*; if [ -d $inner ]; then mv $inner/* $mod/ && rmdir $inner; fi; done", - "*:x86_64-linux-gnu:cp $PATCH_DIR/qt/root_CMakeLists.txt CMakeLists.txt", - "*:x86_64-linux-gnu:patch -p1 < $PATCH_DIR/qt/rcc_hardcode_timestamp.patch", - "*:x86_64-linux-gnu:patch -p1 < $PATCH_DIR/qt/windows_func_fix.patch", - "*:x86_64-linux-gnu:cp $PATCH_DIR/qt/toolchain.cmake toolchain.cmake", - "*:x86_64-linux-gnu:sed -i -e \"s|@cmake_system_name@|Linux|\" -e \"s|@target@|$HOST|\" -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@sdk_path@||\" -e \"s|@cc@||\" -e \"s|@cxx@||\" -e \"s|@osx_min_version@||\" -e \"s|@cmake_c_flags@||\" -e \"s|@cmake_cxx_flags@||\" -e \"s|@cmake_ld_flags@||\" -e \"s|@wmf_libs@||\" toolchain.cmake", - "*:x86_64-linux-gnu:cd qtbase && patch -p1 < $PATCH_DIR/qt/libxau-fix.patch", - "*:x86_64-linux-gnu:cd qtmultimedia && patch -p1 < $PATCH_DIR/qt/v4l2.patch", - "*:x86_64-linux-gnu:cmake . $config_opts", - "*:x86_64-linux-gnu:LD_LIBRARY_PATH=$NATIVEPREFIX/lib env -u C_INCLUDE_PATH -u CPLUS_INCLUDE_PATH -u OBJC_INCLUDE_PATH -u OBJCPLUS_INCLUDE_PATH -u CPATH -u LIBRARY_PATH cmake --build . --parallel $NUM_CORES", - "*:x86_64-linux-gnu:DESTDIR=$STAGING_DIR cmake --install .", - "*:x86_64-apple-darwin:for mod in qtbase qtsvg qtwebsockets qtshadertools qtmultimedia qtwayland; do inner=$mod/$mod-everywhere-src-*; if [ -d $inner ]; then mv $inner/* $mod/ && rmdir $inner; fi; done", - "*:x86_64-apple-darwin:cp $PATCH_DIR/qt/root_CMakeLists.txt CMakeLists.txt", - "*:x86_64-apple-darwin:patch -p1 < $PATCH_DIR/qt/rcc_hardcode_timestamp.patch", - "*:x86_64-apple-darwin:patch -p1 < $PATCH_DIR/qt/windows_func_fix.patch", - "*:x86_64-apple-darwin:cp $PATCH_DIR/qt/toolchain.cmake toolchain.cmake", - "*:x86_64-apple-darwin:sed -i -e \"s|@cmake_system_name@|Darwin|\" -e \"s|@target@|$HOST|\" -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@sdk_path@|$SDK_PATH|\" -e \"s|@cc@|$NATIVEPREFIX/bin/$HOST-clang|\" -e \"s|@cxx@|$NATIVEPREFIX/bin/$HOST-clang++|\" -e \"s|@osx_min_version@|$OSX_MIN_VERSION|\" -e \"s|@cmake_c_flags@|-mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH|\" -e \"s|@cmake_cxx_flags@|-mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -stdlib=libc++|\" -e \"s|@cmake_ld_flags@|$LDFLAGS|\" -e \"s|@wmf_libs@||\" toolchain.cmake", - "*:x86_64-apple-darwin:cd qtbase && patch -p1 < $PATCH_DIR/qt/fix_static_qt_darwin_camera_permissions.patch", - "*:x86_64-apple-darwin:cmake . $config_opts -DQT_QMAKE_DEVICE_OPTIONS=MAC_SDK_PATH=$SDK_PATH\\;MAC_SDK_VERSION=$SDK_VERSION\\;CROSS_COMPILE=$HOST-\\;MAC_TARGET=$HOST\\;XCODE_VERSION=$SDK_VERSION", - "*:x86_64-apple-darwin:LD_LIBRARY_PATH=$NATIVEPREFIX/lib env -u C_INCLUDE_PATH -u CPLUS_INCLUDE_PATH -u OBJC_INCLUDE_PATH -u OBJCPLUS_INCLUDE_PATH -u CPATH -u LIBRARY_PATH cmake --build . --parallel $NUM_CORES", - "*:x86_64-apple-darwin:DESTDIR=$STAGING_DIR cmake --install .", - "*:x86_64-w64-mingw32:for mod in qtbase qtsvg qtwebsockets qtshadertools qtmultimedia qtwayland; do inner=$mod/$mod-everywhere-src-*; if [ -d $inner ]; then mv $inner/* $mod/ && rmdir $inner; fi; done", - "*:x86_64-w64-mingw32:cp $PATCH_DIR/qt/root_CMakeLists.txt CMakeLists.txt", - "*:x86_64-w64-mingw32:patch -p1 < $PATCH_DIR/qt/rcc_hardcode_timestamp.patch", - "*:x86_64-w64-mingw32:patch -p1 < $PATCH_DIR/qt/windows_func_fix.patch", - "*:x86_64-w64-mingw32:cp $PATCH_DIR/qt/toolchain.cmake toolchain.cmake", - "*:x86_64-w64-mingw32:sed -i -e \"s|@cmake_system_name@|Windows|\" -e \"s|@target@|$HOST|\" -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@sdk_path@||\" -e \"s|@cc@||\" -e \"s|@cxx@||\" -e \"s|@osx_min_version@||\" -e \"s|@cmake_c_flags@|$CFLAGS|\" -e \"s|@cmake_cxx_flags@|$CXXFLAGS|\" -e \"s|@cmake_ld_flags@|$LDFLAGS|\" -e \"s|@wmf_libs@||\" toolchain.cmake", - "*:x86_64-w64-mingw32:cmake . $config_opts", - "*:x86_64-w64-mingw32:LD_LIBRARY_PATH=$NATIVEPREFIX/lib env -u C_INCLUDE_PATH -u CPLUS_INCLUDE_PATH -u OBJC_INCLUDE_PATH -u OBJCPLUS_INCLUDE_PATH -u CPATH -u LIBRARY_PATH cmake --build . --parallel $NUM_CORES", - "*:x86_64-w64-mingw32:DESTDIR=$STAGING_DIR cmake --install ." + "*:*:for mod in qtbase qtsvg qtwebsockets qtshadertools qtmultimedia qtwayland; do inner=$mod/$mod-everywhere-src-*; if [ -d $inner ]; then mv $inner/* $mod/ && rmdir $inner; fi; done", + "*:*:cp $PATCH_DIR/qt/root_CMakeLists.txt CMakeLists.txt", + "*:*:patch -p1 < $PATCH_DIR/qt/rcc_hardcode_timestamp.patch", + "*:*:patch -p1 < $PATCH_DIR/qt/windows_func_fix.patch", + "*:*-linux-gnu:cd qtbase && patch -p1 < $PATCH_DIR/qt/libxau-fix.patch", + "*:*-linux-gnu:cd qtmultimedia && patch -p1 < $PATCH_DIR/qt/v4l2.patch", + "*:*-apple-darwin:cd qtbase && patch -p1 < $PATCH_DIR/qt/fix_static_qt_darwin_camera_permissions.patch", + "*:*-{linux-gnu,w64-mingw32}:cmake . $config_opts", + "*:*-apple-darwin:cmake . $config_opts \"-DQT_QMAKE_DEVICE_OPTIONS=$QT_QMAKE_DEVICE_OPTIONS\"", + "*:*:env -u C_INCLUDE_PATH -u CPLUS_INCLUDE_PATH -u OBJC_INCLUDE_PATH -u OBJCPLUS_INCLUDE_PATH -u CPATH -u LIBRARY_PATH cmake --build . --parallel $NUM_CORES", + "*:*:DESTDIR=$STAGING_DIR cmake --install ." ] } } diff --git a/packages/sodium.json b/packages/sodium.json index b74fce1..106d2f0 100644 --- a/packages/sodium.json +++ b/packages/sodium.json @@ -26,7 +26,6 @@ ], "build": { "env": [ - "*:*-android*:ANDROID_NDK_ROOT=$NATIVEPREFIX", "*:*:config_opts=--host=$HOST --prefix=$PREFIX", "*:*:config_opts=$config_opts --enable-static --disable-shared --with-pic" ], diff --git a/packages/sqlite3@3510100.json b/packages/sqlite3@3510100.json index e7433d1..bea4117 100644 --- a/packages/sqlite3@3510100.json +++ b/packages/sqlite3@3510100.json @@ -15,12 +15,10 @@ ], "build": { "env": [ - "*:*:CFLAGS=$CFLAGS -fPIC -O2 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1", + "*:*:CFLAGS=$CFLAGS -O2 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1", "*:*:CPPFLAGS=$CPPFLAGS -I$PREFIX/include", "*:*:LDFLAGS=$LDFLAGS -L$PREFIX/lib", - "*:*:BUILD_HOST=$HOST", - "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios", - "*:*:config_opts=--disable-shared --enable-static --enable-threadsafe --prefix=$PREFIX --host=$BUILD_HOST", + "*:*:config_opts=--disable-shared --enable-static --enable-threadsafe --prefix=$PREFIX --host=$HOST", "*:*android*:CXXFLAGS=$CXXFLAGS -D_GNU_SOURCE" ], "steps": [ diff --git a/packages/tor.json b/packages/tor.json index 7f9de21..9e019a0 100644 --- a/packages/tor.json +++ b/packages/tor.json @@ -30,9 +30,7 @@ ], "build": { "env": [ - "*:*:HOSTOVERRIDE=$HOST", - "*:aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "*:*:config_opts=--host=$HOSTOVERRIDE --prefix=$PREFIX", + "*:*:config_opts=--host=$HOST --prefix=$PREFIX", "*:*:config_opts=$config_opts --disable-asciidoc", "*:*:config_opts=$config_opts --disable-system-torrc", "*:*:config_opts=$config_opts --disable-manpage", diff --git a/packages/torch.json b/packages/torch.json index 811cd3c..1653f25 100644 --- a/packages/torch.json +++ b/packages/torch.json @@ -24,7 +24,7 @@ ], "build": { "env": [ - "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$NATIVEPREFIX/toolchain.cmake", + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE", "*:*:config_opts=$config_opts -DTOR_BUILD_DIR=$PREFIX", "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" ], diff --git a/packages/unbound.json b/packages/unbound.json index 2d514dc..13aa886 100644 --- a/packages/unbound.json +++ b/packages/unbound.json @@ -31,9 +31,7 @@ ], "build": { "env": [ - "*:*:BUILD_HOST=$HOST", - "*:aarch64-apple-ios-simulator:BUILD_HOST=aarch64-apple-ios", - "*:*:config_opts=--disable-shared --enable-static --without-pyunbound --prefix=$PREFIX --host=$BUILD_HOST", + "*:*:config_opts=--disable-shared --enable-static --without-pyunbound --prefix=$PREFIX --host=$HOST", "*:*:config_opts=$config_opts --with-libexpat=$PREFIX --with-ssl=$PREFIX --with-libevent=no", "*:*:config_opts=$config_opts --without-pythonmodule --disable-flto --with-pthreads --with-libunbound-only", "*:*-linux-*:config_opts=$config_opts --with-pic", diff --git a/packages/wayland@1_25_0.json b/packages/wayland@1_25_0.json index eb4f9bd..0f93fc7 100644 --- a/packages/wayland@1_25_0.json +++ b/packages/wayland@1_25_0.json @@ -10,20 +10,20 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/meson", - "*:x86_64-linux-gnu:native/ninja", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/python@3.11", - "*:x86_64-linux-gnu:native/wayland@1_25_0", - "*:x86_64-linux-gnu:expat", - "*:x86_64-linux-gnu:libffi@3_5_2", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/meson", + "*:*-linux-gnu:native/ninja", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/python@3.11", + "*:*-linux-gnu:native/wayland@1_25_0", + "*:*-linux-gnu:expat", + "*:*-linux-gnu:libffi@3_5_2", + "*:*-linux-gnu:native/sed" ], "patches": [ "toolchain.txt" @@ -31,11 +31,11 @@ "build": { "env": [], "steps": [ - "*:x86_64-linux-gnu:cp $PATCH_DIR/wayland/toolchain.txt toolchain.txt", - "*:x86_64-linux-gnu:sed -i -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@cc@|$CC|\" -e \"s|@cxx@|$CXX|\" -e \"s|@ar@|$AR|\" -e \"s|@strip@|$STRIP|\" -e \"s|@arch@|$ARCH|\" toolchain.txt", - "*:x86_64-linux-gnu:PKG_CONFIG_LIBDIR=$PREFIX/lib/pkgconfig:$NATIVEPREFIX/lib/pkgconfig PKG_CONFIG_PATH=$NATIVEPREFIX/lib/pkgconfig $NATIVEPREFIX/bin/meson setup --cross-file toolchain.txt build -Ddtd_validation=false -Ddocumentation=false -Dprefer_static=true -Ddefault_library=static -Dtests=false -Dscanner=false", - "*:x86_64-linux-gnu:ninja -C build", - "*:x86_64-linux-gnu:DESTDIR=$STAGING_DIR ninja -C build install" + "*:*-linux-gnu:cp $PATCH_DIR/wayland/toolchain.txt toolchain.txt", + "*:*-linux-gnu:sed -i -e \"s|@host_prefix@|$PREFIX|\" -e \"s|@cc@|$CC|\" -e \"s|@cxx@|$CXX|\" -e \"s|@ar@|$AR|\" -e \"s|@strip@|$STRIP|\" -e \"s|@arch@|$ARCH|\" toolchain.txt", + "*:*-linux-gnu:$NATIVEPREFIX/bin/meson setup --cross-file toolchain.txt build -Ddtd_validation=false -Ddocumentation=false -Dprefer_static=true -Ddefault_library=static -Dtests=false -Dscanner=false", + "*:*-linux-gnu:ninja -C build", + "*:*-linux-gnu:DESTDIR=$STAGING_DIR ninja -C build install" ] } } diff --git a/packages/xcb_proto@1_17_0.json b/packages/xcb_proto@1_17_0.json index 60b50fa..5ca182d 100644 --- a/packages/xcb_proto@1_17_0.json +++ b/packages/xcb_proto@1_17_0.json @@ -10,26 +10,26 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/make", - "*:x86_64-linux-gnu:native/python@3.14", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:native/python@3.14", + "*:*-linux-gnu:native/sed" ], "build": { "env": [ - "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX" + "*:*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX" ], "steps": [ - "*:x86_64-linux-gnu:bash ./configure $config_opts", - "*:x86_64-linux-gnu:make -j$NUM_CORES", - "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install", - "*:x86_64-linux-gnu:rm -rf $STAGING_DIR$PREFIX/lib/python*/site-packages/xcbgen/__pycache__" + "*:*-linux-gnu:bash ./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install", + "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/lib/python*/site-packages/xcbgen/__pycache__" ] } } diff --git a/packages/xorgproto@2025_1.json b/packages/xorgproto@2025_1.json index 49a0a90..43312f3 100644 --- a/packages/xorgproto@2025_1.json +++ b/packages/xorgproto@2025_1.json @@ -10,24 +10,24 @@ } ], "dependencies": [ - "*:x86_64-linux-gnu:native/_", - "*:x86_64-linux-gnu:native/bash", - "*:x86_64-linux-gnu:native/coreutils", - "*:x86_64-linux-gnu:native/findutils", - "*:x86_64-linux-gnu:native/gawk", - "*:x86_64-linux-gnu:native/grep", - "*:x86_64-linux-gnu:native/make", - "*:x86_64-linux-gnu:native/pkgconf", - "*:x86_64-linux-gnu:native/sed" + "*:*-linux-gnu:native/_", + "*:*-linux-gnu:native/bash", + "*:*-linux-gnu:native/coreutils", + "*:*-linux-gnu:native/findutils", + "*:*-linux-gnu:native/gawk", + "*:*-linux-gnu:native/grep", + "*:*-linux-gnu:native/make", + "*:*-linux-gnu:native/pkgconf", + "*:*-linux-gnu:native/sed" ], "build": { "env": [ - "*:x86_64-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --without-fop --without-xmlto --without-xsltproc --disable-specs --disable-dependency-tracking --enable-option-checking" + "*:*-linux-gnu:config_opts=--host=$HOST --prefix=$PREFIX --without-fop --without-xmlto --without-xsltproc --disable-specs --disable-dependency-tracking --enable-option-checking" ], "steps": [ - "*:x86_64-linux-gnu:bash ./configure $config_opts", - "*:x86_64-linux-gnu:make -j$NUM_CORES", - "*:x86_64-linux-gnu:make DESTDIR=$STAGING_DIR install" + "*:*-linux-gnu:bash ./configure $config_opts", + "*:*-linux-gnu:make -j$NUM_CORES", + "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install" ] } } diff --git a/packages/xxhash.json b/packages/xxhash.json index c1888d8..58a4413 100644 --- a/packages/xxhash.json +++ b/packages/xxhash.json @@ -17,7 +17,7 @@ ], "build": { "env": [ - "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$NATIVEPREFIX/toolchain.cmake", + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE", "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" ], "steps": [ diff --git a/packages/xz.json b/packages/xz.json index 4946c14..2f71a69 100644 --- a/packages/xz.json +++ b/packages/xz.json @@ -33,9 +33,7 @@ ], "build": { "env": [ - "*:*:HOSTOVERRIDE=$HOST", - "*:aarch64-apple-ios-simulator:HOSTOVERRIDE=aarch64-apple-ios", - "*:*:config_opts=--prefix=$PREFIX --host=$HOSTOVERRIDE", + "*:*:config_opts=--prefix=$PREFIX --host=$HOST", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --enable-static", "*:*:config_opts=$config_opts --disable-doc", diff --git a/packages/zlib.json b/packages/zlib.json index 8ddc77a..137c0e1 100644 --- a/packages/zlib.json +++ b/packages/zlib.json @@ -19,7 +19,6 @@ ], "build": { "env": [ - "*:*:CFLAGS=$CFLAGS -fPIC", "*:*:config_opts=--prefix=$PREFIX --static", "*:*:CROSS_PREFIX=$HOST-" ], diff --git a/patches/qt/setup-toolchain.sh b/patches/qt/setup-toolchain.sh new file mode 100644 index 0000000..0348871 --- /dev/null +++ b/patches/qt/setup-toolchain.sh @@ -0,0 +1,54 @@ +#!/bin/sh +set -e + +case "$CMAKE_SYSTEM_NAME" in +Linux) + sed -i \ + -e "s|@cmake_system_name@|Linux|" \ + -e "s|@target@|$HOST|" \ + -e "s|@host_prefix@|$PREFIX|" \ + -e "s|@sdk_path@||" \ + -e "s|@cc@||" \ + -e "s|@cxx@||" \ + -e "s|@osx_min_version@||" \ + -e "s|@cmake_c_flags@||" \ + -e "s|@cmake_cxx_flags@||" \ + -e "s|@cmake_ld_flags@||" \ + -e "s|@wmf_libs@||" \ + toolchain.cmake + ;; +Darwin) + sed -i \ + -e "s|@cmake_system_name@|Darwin|" \ + -e "s|@target@|$HOST|" \ + -e "s|@host_prefix@|$PREFIX|" \ + -e "s|@sdk_path@|$SDK_PATH|" \ + -e "s|@cc@|$NATIVEPREFIX/bin/$HOST-clang|" \ + -e "s|@cxx@|$NATIVEPREFIX/bin/$HOST-clang++|" \ + -e "s|@osx_min_version@|$OSX_MIN_VERSION|" \ + -e "s|@cmake_c_flags@|-mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH|" \ + -e "s|@cmake_cxx_flags@|-mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -stdlib=libc++|" \ + -e "s|@cmake_ld_flags@|$LDFLAGS|" \ + -e "s|@wmf_libs@||" \ + toolchain.cmake + ;; +Windows) + sed -i \ + -e "s|@cmake_system_name@|Windows|" \ + -e "s|@target@|$HOST|" \ + -e "s|@host_prefix@|$PREFIX|" \ + -e "s|@sdk_path@||" \ + -e "s|@cc@||" \ + -e "s|@cxx@||" \ + -e "s|@osx_min_version@||" \ + -e "s|@cmake_c_flags@|$CFLAGS|" \ + -e "s|@cmake_cxx_flags@|$CXXFLAGS|" \ + -e "s|@cmake_ld_flags@|$LDFLAGS|" \ + -e "s|@wmf_libs@||" \ + toolchain.cmake + ;; +*) + echo "qt setup-toolchain: unsupported CMAKE_SYSTEM_NAME=$CMAKE_SYSTEM_NAME" >&2 + exit 1 + ;; +esac From 3b7d20d151bb80490dce4f935a8b1cd4f2f43305 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 15 Jul 2026 09:16:19 +0200 Subject: [PATCH 139/200] rust wip --- pack/build.go | 50 ++++++- pack/main.go | 10 +- packages/native/_.json | 18 ++- packages/native/rust-toolchain.json | 17 +++ packages/rust-hello-world.json | 4 +- packages/rust-std.json | 193 +++++++++++++++++++++++----- patches/rust-std/xcrun | 14 ++ 7 files changed, 261 insertions(+), 45 deletions(-) create mode 100644 packages/native/rust-toolchain.json create mode 100755 patches/rust-std/xcrun diff --git a/pack/build.go b/pack/build.go index 022b067..739e0c1 100644 --- a/pack/build.go +++ b/pack/build.go @@ -144,6 +144,39 @@ func resetBuildDirs() { } } +func parseStepProfile(content string) (profile, cmd string) { + if strings.HasPrefix(content, "@") { + rest := content[1:] + if idx := strings.IndexByte(rest, ' '); idx != -1 { + return rest[:idx], rest[idx+1:] + } + return rest, "" + } + return "", content +} + +func (p *Package) envForStep(h *host.Host, profileName string) map[string]string { + return p.envForStepFrom(p.GetEnv(h), h, profileName) +} + +func (p *Package) envForStepFrom(env map[string]string, h *host.Host, profileName string) map[string]string { + env = copyEnv(env) + if profileName == "" { + return env + } + prof, ok := p.Build.Profiles[profileName] + if !ok { + log.Fatalf("[%s] unknown build profile %q", p.Package, profileName) + } + for _, k := range prof.Unset { + delete(env, k) + } + if len(prof.Env) > 0 { + env = utils.AppendEnv(env, prof.Env, h) + } + return env +} + func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { var deps []*Package if buildDependencies { @@ -179,10 +212,16 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { builderName := builder.GetName() for _, step := range ifstring.FilterContent(p.Build.Steps, h.Triplet, builderName) { - cmd := exec.Command("sh", "-c", step) + profileName, stepCmd := parseStepProfile(step) + baseEnv := p.GetEnv(h) + profileName = utils.ExpandEnvFromMap(profileName, baseEnv) + if profileName == "" && strings.HasPrefix(step, "@") { + continue + } + cmd := exec.Command("sh", "-c", stepCmd) cmd.Dir = buildPath pathEnv := utils.GetHostPath() - env := p.GetEnv(h) + env := p.envForStepFrom(baseEnv, h, profileName) hostTriplet := h.Triplet if p.Type == "native" { @@ -202,12 +241,15 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { writeDotEnv(path.Join(buildPath, "_source_me"), cmd.Env) - log.Printf("Executing step: %s", step) + log.Printf("Executing step: %s", stepCmd) + if profileName != "" { + log.Printf("Using build profile: %s", profileName) + } cmd.Stderr = os.Stderr cmd.Stdout = os.Stdout err := cmd.Run() if err != nil { - log.Fatalf("[%s] build step failed: %s, error: %v, %s", p.Package, step, err, cmd.Dir) + log.Fatalf("[%s] build step failed: %s, error: %v, %s", p.Package, stepCmd, err, cmd.Dir) } } diff --git a/pack/main.go b/pack/main.go index c2654cc..4c6eb42 100644 --- a/pack/main.go +++ b/pack/main.go @@ -23,14 +23,20 @@ type Download struct { Path string `json:"path"` } +type StepProfile struct { + Unset []string `json:"unset,omitempty"` + Env []string `json:"env,omitempty"` +} + type Package struct { Package string `json:"package"` Version string `json:"version"` Type string `json:"type"` Download []*Download `json:"download"` Build struct { - Env []string `json:"env"` - Steps []string `json:"steps"` + Env []string `json:"env"` + Profiles map[string]StepProfile `json:"profiles,omitempty"` + Steps []string `json:"steps"` } `json:"build"` Dependencies []string `json:"dependencies"` ExportEnv []string `json:"export-env"` diff --git a/packages/native/_.json b/packages/native/_.json index 1d070f6..c7f887c 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -91,6 +91,7 @@ "*:x86_64-apple-darwin:NM=$NATIVEPREFIX/bin/nm", "*:x86_64-apple-darwin:LIBTOOL=$NATIVEPREFIX/bin/llvm-libtool-darwin", "*:x86_64-apple-darwin:LDFLAGS=-L$PREFIX/lib -lc++ -lc++abi", + "*:*-apple-*:RUST_LINK_CC=$NATIVEPREFIX/bin/$HOST-clang", "*:aarch64-apple-ios:RUST_TRIPLET=aarch64-apple-ios", "*:aarch64-apple-ios:ARCH=aarch64", "*:aarch64-apple-ios:CMAKE_SYSTEM_NAME=iOS", @@ -155,6 +156,7 @@ "*:*-linux-gnu:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", "*:*-linux-gnu:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/$HOST -I$PREFIX/usr/include", "*:*-linux-gnu:CPPFLAGS=-I$PREFIX/include -I$PREFIX/usr/include", + "*:*-linux-gnu:LDFLAGS=--sysroot=$PREFIX/sysroot -L$PREFIX/lib -L$PREFIX/usr/lib", "*:*-linux-gnu:AR=$NATIVEPREFIX/bin/$HOST-ar", "*:*-linux-gnu:RANLIB=$NATIVEPREFIX/bin/$HOST-ranlib", "*:*-linux-gnu:AS=$NATIVEPREFIX/bin/$HOST-as", @@ -191,6 +193,20 @@ "*:armv7a-linux-androideabi:CC=$NATIVEPREFIX/bin/armv7a-linux-androideabi21-clang", "*:armv7a-linux-androideabi:CXX=$NATIVEPREFIX/bin/armv7a-linux-androideabi21-clang++", "*:*:CPP=$CC $CFLAGS -E", - "*:*:CXXCPP=$CXX $CXXFLAGS -E" + "*:*:CXXCPP=$CXX $CXXFLAGS -E", + "*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$CC", + "*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", + "*:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$CC", + "*:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", + "*:x86_64-w64-mingw32:CARGO_TARGET_X86_64_PC_WINDOWS_GNU_LINKER=$CC", + "*:x86_64-w64-mingw32:CARGO_TARGET_X86_64_PC_WINDOWS_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", + "*:x86_64-apple-darwin:CARGO_TARGET_X86_64_APPLE_DARWIN_LINKER=$RUST_LINK_CC", + "*:x86_64-apple-darwin:CARGO_TARGET_X86_64_APPLE_DARWIN_RUSTFLAGS=-Clink-arg=-mmacosx-version-min=$OSX_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi", + "*:aarch64-apple-darwin:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$RUST_LINK_CC", + "*:aarch64-apple-darwin:CARGO_TARGET_AARCH64_APPLE_DARWIN_RUSTFLAGS=-Clink-arg=-mmacosx-version-min=$OSX_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi", + "*:aarch64-apple-ios:CARGO_TARGET_AARCH64_APPLE_IOS_LINKER=$RUST_LINK_CC", + "*:aarch64-apple-ios:CARGO_TARGET_AARCH64_APPLE_IOS_RUSTFLAGS=-Clink-arg=-mios-version-min=$IOS_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi", + "*:aarch64-apple-ios-simulator:CARGO_TARGET_AARCH64_APPLE_IOS_SIM_LINKER=$RUST_LINK_CC", + "*:aarch64-apple-ios-simulator:CARGO_TARGET_AARCH64_APPLE_IOS_SIM_RUSTFLAGS=-Clink-arg=-mios-version-min=$IOS_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi" ] } \ No newline at end of file diff --git a/packages/native/rust-toolchain.json b/packages/native/rust-toolchain.json new file mode 100644 index 0000000..9a18748 --- /dev/null +++ b/packages/native/rust-toolchain.json @@ -0,0 +1,17 @@ +{ + "package": "native/rust-toolchain", + "version": "1.95.0", + "type": "native", + "dependencies": [ + "*:*:native/coreutils", + "*:*:native/rust" + ], + "build": { + "steps": [ + "*:*:$NATIVEPREFIX/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a $NATIVEPREFIX/bin/rustc $NATIVEPREFIX/bin/cargo $STAGING_DIR$NATIVEPREFIX/bin/", + "*:*:cp -a $NATIVEPREFIX/lib $STAGING_DIR$NATIVEPREFIX/", + "*:*:rm -rf $STAGING_DIR$NATIVEPREFIX/lib/rustlib" + ] + } +} diff --git a/packages/rust-hello-world.json b/packages/rust-hello-world.json index b0913af..04d2540 100644 --- a/packages/rust-hello-world.json +++ b/packages/rust-hello-world.json @@ -15,7 +15,7 @@ "*:*:native/git", "*:*:native/gzip", "*:*:native/tar", - "*:*:native/rust", + "*:*:native/rust-toolchain", "*:*:rust-std" ], "build": { @@ -23,8 +23,6 @@ "linux_*:*-apple-*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin" ], "steps": [ - "linux_amd64:x86_64-linux-gnu:$NATIVEPREFIX/bin/rm -rf $NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET && archive=$($NATIVEPREFIX/bin/ls -t $(dirname $PATCH_DIR)/.buildlib/${BUILDER_GOOS}_${BUILDER_GOARCH}/built/$HOST/rust-std-*_native.tar.gz 2>/dev/null | $NATIVEPREFIX/bin/head -1) && $NATIVEPREFIX/bin/tar -xzf $archive -C $NATIVEPREFIX lib/rustlib/$RUST_TRIPLET", - "linux_arm64:aarch64-linux-gnu:$NATIVEPREFIX/bin/rm -rf $NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET && archive=$($NATIVEPREFIX/bin/ls -t $(dirname $PATCH_DIR)/.buildlib/${BUILDER_GOOS}_${BUILDER_GOARCH}/built/$HOST/rust-std-*_native.tar.gz 2>/dev/null | $NATIVEPREFIX/bin/head -1) && $NATIVEPREFIX/bin/tar -xzf $archive -C $NATIVEPREFIX lib/rustlib/$RUST_TRIPLET", "*:*:cargo build --target $RUST_TRIPLET --release", "*:*:$NATIVEPREFIX/bin/mkdir -p $STAGING_DIR$PREFIX/bin", "*:*:$NATIVEPREFIX/bin/cp ./target/$RUST_TRIPLET/release/rust-hello-world.exe $STAGING_DIR$PREFIX/bin 2>/dev/null || $NATIVEPREFIX/bin/cp ./target/$RUST_TRIPLET/release/rust-hello-world $STAGING_DIR$PREFIX/bin" diff --git a/packages/rust-std.json b/packages/rust-std.json index 5c0e9ec..f4cafe5 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -12,9 +12,12 @@ "dependencies": [ "*:*:native/_/_", "*:*:native/_", + "*:*:native/bash", "*:*:native/cmake", "*:*:native/coreutils", "*:*:native/curl", + "*:*:native/sed", + "*:*:native/grep", "*:*:native/make", "*:*:native/ninja", "*:*:native/openssl", @@ -28,25 +31,58 @@ "env": [ "*:*:OPENSSL_ROOT_DIR=$NATIVEPREFIX", "*:*:ZLIB_ROOT=$NATIVEPREFIX", - "linux_*:*:CMAKE_SYSTEM_NAME=Linux", + "*:*:RUST_CC=$CC", + "*:*:RUST_CXX=$CXX", + "*:*:RUST_LINKER=$CC", + "*:*:RUST_AR=$AR", + "*:*:RUST_CFLAGS=$CFLAGS", + "*:*:RUST_CXXFLAGS=$CXXFLAGS", + "*:*:RUST_LDFLAGS=$LDFLAGS", + "*:*-apple-*:RUST_CC=$NATIVEPREFIX/bin/$HOST-clang", + "*:*-apple-*:RUST_CXX=$NATIVEPREFIX/bin/$HOST-clang++", + "*:*-apple-*:RUST_LINKER=$NATIVEPREFIX/bin/$HOST-clang", + "linux_*:*-linux-gnu:CMAKE_SYSTEM_NAME=Linux", "darwin_arm64:*:CMAKE_SYSTEM_NAME=Darwin", - "linux_*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", - "linux_*:*:CC=$NATIVEPREFIX/_/bin/clang", - "linux_*:*:CXX=$NATIVEPREFIX/_/bin/clang++", - "linux_*:*:CC_FOR_BUILD=$NATIVEPREFIX/_/bin/clang", - "linux_*:*:CXX_FOR_BUILD=$NATIVEPREFIX/_/bin/clang++", - "linux_*:*:AR=$NATIVEPREFIX/_/bin/ar", - "linux_*:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", - "linux_*:*:NM=$NATIVEPREFIX/_/bin/nm", - "linux_*:*:OBJCOPY=$NATIVEPREFIX/_/bin/objcopy", - "linux_amd64:*:STRIP=$NATIVEPREFIX/_/bin/llvm-strip", - "linux_*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", - "linux_*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", - "linux_*:*:LDFLAGS=-L$NATIVEPREFIX/lib", + "linux_*:*-linux-gnu:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "linux_*:*-linux-gnu:CC=$NATIVEPREFIX/_/bin/clang", + "linux_*:*-linux-gnu:CXX=$NATIVEPREFIX/_/bin/clang++", + "linux_*:*-linux-gnu:CC_FOR_BUILD=$NATIVEPREFIX/_/bin/clang", + "linux_*:*-linux-gnu:CXX_FOR_BUILD=$NATIVEPREFIX/_/bin/clang++", + "linux_*:*-linux-gnu:AR=$NATIVEPREFIX/_/bin/ar", + "linux_*:*-linux-gnu:RANLIB=$NATIVEPREFIX/_/bin/ranlib", + "linux_*:*-linux-gnu:NM=$NATIVEPREFIX/_/bin/nm", + "linux_*:*-linux-gnu:OBJCOPY=$NATIVEPREFIX/_/bin/objcopy", + "linux_amd64:*-linux-gnu:STRIP=$NATIVEPREFIX/_/bin/llvm-strip", + "linux_*:*-linux-gnu:CFLAGS=-fPIC -I$NATIVEPREFIX/include", + "linux_*:*-linux-gnu:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", + "linux_*:*-linux-gnu:LDFLAGS=-L$NATIVEPREFIX/lib", "linux_amd64:*:BUILD_TRIPLET=x86_64-unknown-linux-gnu", "linux_arm64:*:BUILD_TRIPLET=aarch64-unknown-linux-gnu", + "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CXXFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "*:aarch64-linux-gnu:CFLAGS_aarch64_unknown_linux_gnu=$RUST_CFLAGS", + "*:aarch64-linux-gnu:CXXFLAGS_aarch64_unknown_linux_gnu=$RUST_CXXFLAGS", + "*:aarch64-linux-gnu:LDFLAGS_aarch64_unknown_linux_gnu=$RUST_LDFLAGS", + "*:aarch64-linux-gnu:AS_aarch64_unknown_linux_gnu=$AS", + "*:x86_64-linux-gnu:CFLAGS_x86_64_unknown_linux_gnu=$RUST_CFLAGS", + "*:x86_64-linux-gnu:CXXFLAGS_x86_64_unknown_linux_gnu=$RUST_CXXFLAGS", + "*:x86_64-linux-gnu:LDFLAGS_x86_64_unknown_linux_gnu=$RUST_LDFLAGS", + "*:x86_64-linux-gnu:AS_x86_64_unknown_linux_gnu=$AS", + "*:x86_64-w64-mingw32:CFLAGS_x86_64_pc_windows_gnu=$RUST_CFLAGS", + "*:x86_64-w64-mingw32:CXXFLAGS_x86_64_pc_windows_gnu=$RUST_CXXFLAGS", + "*:x86_64-w64-mingw32:LDFLAGS_x86_64_pc_windows_gnu=$RUST_LDFLAGS", + "*:*:RUST_STD_PROFILE=std", + "linux_amd64:x86_64-linux-gnu:RUST_STD_PROFILE=std-native", + "linux_arm64:aarch64-linux-gnu:RUST_STD_PROFILE=std-native", + "*:*-apple-*:RUST_STD_PROFILE=std-apple", + "*:*-w64-mingw32:RUST_STD_PROFILE=std-mingw", + "*:*android*:RUST_LLVM_PROFILE=llvm", + "*:*-linux-gnu:RUST_LLVM_PROFILE=llvm", + "*:*-w64-mingw32:RUST_LLVM_PROFILE=llvm", "darwin_arm64:*:BUILD_TRIPLET=aarch64-apple-darwin", - "darwin_arm64:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", + "darwin_arm64:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", "darwin_arm64:*:CC=$NATIVEPREFIX/_/bin/clang", "darwin_arm64:*:CXX=$NATIVEPREFIX/_/bin/clang++", "darwin_arm64:*:CC_FOR_BUILD=$NATIVEPREFIX/_/bin/clang", @@ -56,10 +92,110 @@ "darwin_arm64:*:NM=$NATIVEPREFIX/_/bin/nm", "darwin_arm64:*:OBJCOPY=$NATIVEPREFIX/_/bin/objcopy" ], + "profiles": { + "llvm": { + "unset": [ + "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", + "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", + "CC", "CXX", "CFLAGS", "CXXFLAGS", "CPPFLAGS", + "CC_x86_64_unknown_linux_gnu", "CXX_x86_64_unknown_linux_gnu", + "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", + "CC_aarch64_unknown_linux_gnu", "CXX_aarch64_unknown_linux_gnu", + "CFLAGS_aarch64_unknown_linux_gnu", "CXXFLAGS_aarch64_unknown_linux_gnu", + "CC_x86_64_pc_windows_gnu", "CXX_x86_64_pc_windows_gnu", + "CFLAGS_x86_64_pc_windows_gnu", "CXXFLAGS_x86_64_pc_windows_gnu", + "CC_aarch64_linux_android", "CXX_aarch64_linux_android", + "CC_x86_64_linux_android", "CXX_x86_64_linux_android", + "CC_armv7_linux_androideabi", "CXX_armv7_linux_androideabi" + ], + "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "*:*:CC=$NATIVEPREFIX/_/bin/clang", + "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", + "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", + "*:*:ARFLAGS=" + ] + }, + "std": { + "unset": [ + "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", + "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME" + ], + "env": [ + "*:*:ARFLAGS=" + ] + }, + "std-native": { + "unset": [ + "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", + "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", + "CC_x86_64_unknown_linux_gnu", "CXX_x86_64_unknown_linux_gnu", + "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", + "AR_x86_64_unknown_linux_gnu", + "CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER", + "CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS", + "CC_aarch64_unknown_linux_gnu", "CXX_aarch64_unknown_linux_gnu", + "CFLAGS_aarch64_unknown_linux_gnu", "CXXFLAGS_aarch64_unknown_linux_gnu", + "AR_aarch64_unknown_linux_gnu", + "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER", + "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS" + ], + "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "*:*:CC=$NATIVEPREFIX/_/bin/clang", + "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "*:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang", + "*:*:ARFLAGS=" + ] + }, + "std-mingw": { + "unset": [ + "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", + "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", + "CFLAGS", "CXXFLAGS", "CPPFLAGS", + "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", + "CFLAGS_aarch64_unknown_linux_gnu", "CXXFLAGS_aarch64_unknown_linux_gnu" + ], + "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CXXFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "*:*:ARFLAGS=" + ] + }, + "std-apple": { + "unset": [ + "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", + "CMAKE_SYSTEM_NAME", "CC", "CXX", "LDFLAGS", "MACOSX_DEPLOYMENT_TARGET", + "CFLAGS", "CXXFLAGS", "CPPFLAGS", + "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", + "CFLAGS_aarch64_unknown_linux_gnu", "CXXFLAGS_aarch64_unknown_linux_gnu", + "CFLAGS_x86_64_pc_windows_gnu", "CXXFLAGS_x86_64_pc_windows_gnu" + ], + "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "*:*:CC=$NATIVEPREFIX/_/bin/clang", + "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", + "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", + "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CXXFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "*:*:ARFLAGS=" + ] + } + }, "steps": [ - "linux_*:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/bin/cc", - "linux_*:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/bin/c++", + "linux_*:*-linux-gnu:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/bin/cc", + "linux_*:*-linux-gnu:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/bin/c++", "linux_*:*-apple-*:ln -sf $NATIVEPREFIX/_/bin/llvm-strip $NATIVEPREFIX/bin/strip", + "linux_*:*-apple-ios*:test -x $NATIVEPREFIX/bin/xcrun.real || mv $NATIVEPREFIX/bin/xcrun $NATIVEPREFIX/bin/xcrun.real", + "linux_*:*-apple-ios*:cp $PATCH_DIR/rust-std/xcrun $NATIVEPREFIX/bin/xcrun", + "linux_*:*-apple-ios*:chmod +x $NATIVEPREFIX/bin/xcrun", "darwin_arm64:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/bin/cc", "darwin_arm64:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/bin/c++", "*:*:echo 'profile = \"library\"' > config.toml", @@ -82,28 +218,15 @@ "*:*:echo 'ninja = true' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:echo 'libzstd = false' >> config.toml", - "*:*android*:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u CC -u CXX -u CFLAGS -u CXXFLAGS -u CPPFLAGS -u CC_x86_64_unknown_linux_gnu -u CXX_x86_64_unknown_linux_gnu -u CFLAGS_x86_64_unknown_linux_gnu -u CXXFLAGS_x86_64_unknown_linux_gnu -u CC_aarch64_unknown_linux_gnu -u CXX_aarch64_unknown_linux_gnu -u CFLAGS_aarch64_unknown_linux_gnu -u CXXFLAGS_aarch64_unknown_linux_gnu -u CC_x86_64_pc_windows_gnu -u CXX_x86_64_pc_windows_gnu -u CFLAGS_x86_64_pc_windows_gnu -u CXXFLAGS_x86_64_pc_windows_gnu -u CC_aarch64_linux_android -u CXX_aarch64_linux_android -u CC_x86_64_linux_android -u CXX_x86_64_linux_android -u CC_armv7_linux_androideabi -u CXX_armv7_linux_androideabi PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ 'CFLAGS=-fPIC -I$NATIVEPREFIX/include' 'CXXFLAGS=-fPIC -I$NATIVEPREFIX/include' ARFLAGS= python3 ./x.py build llvm -j$NUM_CORES", - "*:*android*:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", - "*:*-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u CC -u CXX -u CFLAGS -u CXXFLAGS -u CPPFLAGS -u CC_x86_64_unknown_linux_gnu -u CXX_x86_64_unknown_linux_gnu -u CFLAGS_x86_64_unknown_linux_gnu -u CXXFLAGS_x86_64_unknown_linux_gnu -u CC_aarch64_unknown_linux_gnu -u CXX_aarch64_unknown_linux_gnu -u CFLAGS_aarch64_unknown_linux_gnu -u CXXFLAGS_aarch64_unknown_linux_gnu -u CC_x86_64_pc_windows_gnu -u CXX_x86_64_pc_windows_gnu -u CFLAGS_x86_64_pc_windows_gnu -u CXXFLAGS_x86_64_pc_windows_gnu -u CC_aarch64_linux_android -u CXX_aarch64_linux_android -u CC_x86_64_linux_android -u CXX_x86_64_linux_android -u CC_armv7_linux_androideabi -u CXX_armv7_linux_androideabi PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ 'CFLAGS=-fPIC -I$NATIVEPREFIX/include' 'CXXFLAGS=-fPIC -I$NATIVEPREFIX/include' ARFLAGS= python3 ./x.py build llvm -j$NUM_CORES", - "linux_amd64:x86_64-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u LDFLAGS -u LIBRARY_PATH -u CXXFLAGS -u CFLAGS -u CPPFLAGS -u RUSTFLAGS -u CARGO_ENCODED_RUSTFLAGS -u CC_x86_64_unknown_linux_gnu -u CXX_x86_64_unknown_linux_gnu -u CFLAGS_x86_64_unknown_linux_gnu -u CXXFLAGS_x86_64_unknown_linux_gnu -u AR_x86_64_unknown_linux_gnu -u CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER -u CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang 'CFLAGS=-fPIC -I$NATIVEPREFIX/include' 'CXXFLAGS=-fPIC -I$NATIVEPREFIX/include' ARFLAGS= python3 ./x.py build rustc --stage 1 -j$NUM_CORES", - "linux_amd64:x86_64-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u CC_x86_64_unknown_linux_gnu -u CXX_x86_64_unknown_linux_gnu -u CFLAGS_x86_64_unknown_linux_gnu -u CXXFLAGS_x86_64_unknown_linux_gnu -u AR_x86_64_unknown_linux_gnu -u CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER -u CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", - "linux_arm64:aarch64-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u LDFLAGS -u LIBRARY_PATH -u CXXFLAGS -u CFLAGS -u CPPFLAGS -u RUSTFLAGS -u CARGO_ENCODED_RUSTFLAGS -u CC_aarch64_unknown_linux_gnu -u CXX_aarch64_unknown_linux_gnu -u CFLAGS_aarch64_unknown_linux_gnu -u CXXFLAGS_aarch64_unknown_linux_gnu -u AR_aarch64_unknown_linux_gnu -u CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER -u CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang 'CFLAGS=-fPIC -I$NATIVEPREFIX/include' 'CXXFLAGS=-fPIC -I$NATIVEPREFIX/include' ARFLAGS= python3 ./x.py build rustc --stage 1 -j$NUM_CORES", - "linux_arm64:aarch64-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u CC_aarch64_unknown_linux_gnu -u CXX_aarch64_unknown_linux_gnu -u CFLAGS_aarch64_unknown_linux_gnu -u CXXFLAGS_aarch64_unknown_linux_gnu -u AR_aarch64_unknown_linux_gnu -u CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER -u CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", - "linux_amd64:aarch64-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", - "linux_arm64:x86_64-linux-gnu:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", - "*:*-w64-mingw32:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u CC -u CXX -u CFLAGS -u CXXFLAGS -u CPPFLAGS -u CC_x86_64_unknown_linux_gnu -u CXX_x86_64_unknown_linux_gnu -u CFLAGS_x86_64_unknown_linux_gnu -u CXXFLAGS_x86_64_unknown_linux_gnu -u CC_aarch64_unknown_linux_gnu -u CXX_aarch64_unknown_linux_gnu -u CFLAGS_aarch64_unknown_linux_gnu -u CXXFLAGS_aarch64_unknown_linux_gnu -u CC_x86_64_pc_windows_gnu -u CXX_x86_64_pc_windows_gnu -u CFLAGS_x86_64_pc_windows_gnu -u CXXFLAGS_x86_64_pc_windows_gnu -u CC_aarch64_linux_android -u CXX_aarch64_linux_android -u CC_x86_64_linux_android -u CXX_x86_64_linux_android -u CC_armv7_linux_androideabi -u CXX_armv7_linux_androideabi PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ 'CFLAGS=-fPIC -I$NATIVEPREFIX/include' 'CXXFLAGS=-fPIC -I$NATIVEPREFIX/include' ARFLAGS= python3 ./x.py build llvm -j$NUM_CORES", - "*:*-w64-mingw32:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", - "*:*-apple-*:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u MACOSX_DEPLOYMENT_TARGET -u CMAKE_SYSTEM_NAME -u LDFLAGS -u LIBRARY_PATH -u CXXFLAGS -u CFLAGS -u CPPFLAGS -u RUSTFLAGS -u CARGO_ENCODED_RUSTFLAGS PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin CC=$NATIVEPREFIX/_/bin/clang CXX=$NATIVEPREFIX/_/bin/clang++ RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang 'CFLAGS=-fPIC -I$NATIVEPREFIX/include' 'CXXFLAGS=-fPIC -I$NATIVEPREFIX/include' LDFLAGS=-L$NATIVEPREFIX/lib ARFLAGS= python3 ./x.py build rustc --stage 1 -j$NUM_CORES", - "*:*-apple-darwin:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u CMAKE_SYSTEM_NAME -u CC -u CXX -u LDFLAGS -u MACOSX_DEPLOYMENT_TARGET PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", - "*:*-apple-ios:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u CMAKE_SYSTEM_NAME -u CC -u CXX -u MACOSX_DEPLOYMENT_TARGET -u LDFLAGS PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", - "*:*-apple-ios-simulator:$NATIVEPREFIX/bin/env -u LD -u AS -u NM -u OBJCOPY -u OBJDUMP -u STRIP -u READELF -u CMAKE_SYSTEM_NAME -u CC -u CXX -u MACOSX_DEPLOYMENT_TARGET -u LDFLAGS PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin ARFLAGS= python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", + "*:*:@$RUST_LLVM_PROFILE python3 ./x.py build llvm -j$NUM_CORES", + "*:*:@$RUST_STD_PROFILE python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", "linux_*:*-apple-*:ln -sf $RUST_CC $NATIVEPREFIX/bin/cc", "linux_*:*-apple-*:ln -sf $RUST_CXX $NATIVEPREFIX/bin/c++", - "*:*:$NATIVEPREFIX/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:$NATIVEPREFIX/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/bin $STAGING_DIR$NATIVEPREFIX/lib/rustlib", "*:*:touch $STAGING_DIR$NATIVEPREFIX/bin/.keep", - "*:*:$NATIVEPREFIX/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/lib/rustlib", "*:*:$NATIVEPREFIX/bin/rm -rf $STAGING_DIR$NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET", - "*:*:$NATIVEPREFIX/bin/cp -a build/*/stage1/lib/rustlib/$RUST_TRIPLET $STAGING_DIR$NATIVEPREFIX/lib/rustlib/" + "*:*:$NATIVEPREFIX/bin/cp -a build/*/stage1/lib/rustlib/$RUST_TRIPLET $STAGING_DIR$NATIVEPREFIX/lib/rustlib/", + "*:*:test \"$BUILD_TRIPLET\" = \"$RUST_TRIPLET\" || $NATIVEPREFIX/bin/cp -a $NATIVEPREFIX/lib/rustlib/$BUILD_TRIPLET $STAGING_DIR$NATIVEPREFIX/lib/rustlib/" ] } } diff --git a/patches/rust-std/xcrun b/patches/rust-std/xcrun new file mode 100755 index 0000000..f2503e2 --- /dev/null +++ b/patches/rust-std/xcrun @@ -0,0 +1,14 @@ +#!/bin/sh +case "$*" in + *--show-sdk-path*) + if [ -n "$SDK_PATH" ]; then + echo "$SDK_PATH" + exit 0 + fi + ;; +esac +if [ -x "$NATIVEPREFIX/bin/xcrun.real" ]; then + exec "$NATIVEPREFIX/bin/xcrun.real" "$@" +fi +echo "xcrun: unsupported invocation: $*" >&2 +exit 1 From 59a6c4ab1e78e082e372a02983b442946929e7ec Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 15 Jul 2026 09:51:26 +0200 Subject: [PATCH 140/200] rust fixes --- packages/native/_.json | 9 +++++- packages/native/android_ndk.json | 4 +-- packages/rust-hello-world.json | 4 +-- packages/rust-std.json | 55 +++++++++++++++++++++++++++++++- 4 files changed, 65 insertions(+), 7 deletions(-) diff --git a/packages/native/_.json b/packages/native/_.json index c7f887c..0e71144 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -192,6 +192,7 @@ "*:armv7a-linux-androideabi:RUST_TRIPLET=armv7-linux-androideabi", "*:armv7a-linux-androideabi:CC=$NATIVEPREFIX/bin/armv7a-linux-androideabi21-clang", "*:armv7a-linux-androideabi:CXX=$NATIVEPREFIX/bin/armv7a-linux-androideabi21-clang++", + "*:armv7a-linux-androideabi:CXXFLAGS=$CXXFLAGS -DLIBC_NO_FSEEKO", "*:*:CPP=$CC $CFLAGS -E", "*:*:CXXCPP=$CXX $CXXFLAGS -E", "*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$CC", @@ -207,6 +208,12 @@ "*:aarch64-apple-ios:CARGO_TARGET_AARCH64_APPLE_IOS_LINKER=$RUST_LINK_CC", "*:aarch64-apple-ios:CARGO_TARGET_AARCH64_APPLE_IOS_RUSTFLAGS=-Clink-arg=-mios-version-min=$IOS_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi", "*:aarch64-apple-ios-simulator:CARGO_TARGET_AARCH64_APPLE_IOS_SIM_LINKER=$RUST_LINK_CC", - "*:aarch64-apple-ios-simulator:CARGO_TARGET_AARCH64_APPLE_IOS_SIM_RUSTFLAGS=-Clink-arg=-mios-version-min=$IOS_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi" + "*:aarch64-apple-ios-simulator:CARGO_TARGET_AARCH64_APPLE_IOS_SIM_RUSTFLAGS=-Clink-arg=-mios-version-min=$IOS_MIN_VERSION -Clink-arg=-isysroot -Clink-arg=$SDK_PATH -Clink-arg=-L$PREFIX/lib -Clink-arg=-lc++ -Clink-arg=-lc++abi", + "*:aarch64-linux-android:CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER=$CC", + "*:aarch64-linux-android:CARGO_TARGET_AARCH64_LINUX_ANDROID_RUSTFLAGS=-Clink-arg=-L$PREFIX/lib -Clink-arg=-lc -Clink-arg=-lc++abi -Clink-arg=-lm", + "*:x86_64-linux-android:CARGO_TARGET_X86_64_LINUX_ANDROID_LINKER=$CC", + "*:x86_64-linux-android:CARGO_TARGET_X86_64_LINUX_ANDROID_RUSTFLAGS=-Clink-arg=-L$PREFIX/lib -Clink-arg=-lc -Clink-arg=-lc++abi -Clink-arg=-lm", + "*:armv7a-linux-androideabi:CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_LINKER=$CC", + "*:armv7a-linux-androideabi:CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_RUSTFLAGS=-Clink-arg=-L$PREFIX/lib -Clink-arg=-lc -Clink-arg=-lc++abi -Clink-arg=-lm" ] } \ No newline at end of file diff --git a/packages/native/android_ndk.json b/packages/native/android_ndk.json index 7003aaf..870e44a 100644 --- a/packages/native/android_ndk.json +++ b/packages/native/android_ndk.json @@ -23,9 +23,9 @@ ], "build": { "env": [ - "*:aarch64-linux-android:config_opts=--arch arm", + "*:aarch64-linux-android:config_opts=--arch arm64", "*:x86_64-linux-android:config_opts=--arch x86_64", - "*:armv7a-linux-androideabi:config_opts=--arch arm64", + "*:armv7a-linux-androideabi:config_opts=--arch arm", "*:i686-linux-android:config_opts=--arch x86", "*:aarch64-linux-android:BUILDLIB_HOST=aarch64-linux-android", "*:x86_64-linux-android:BUILDLIB_HOST=x86_64-linux-android", diff --git a/packages/rust-hello-world.json b/packages/rust-hello-world.json index 04d2540..ee2a555 100644 --- a/packages/rust-hello-world.json +++ b/packages/rust-hello-world.json @@ -19,9 +19,7 @@ "*:*:rust-std" ], "build": { - "env": [ - "linux_*:*-apple-*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin" - ], + "env": [], "steps": [ "*:*:cargo build --target $RUST_TRIPLET --release", "*:*:$NATIVEPREFIX/bin/mkdir -p $STAGING_DIR$PREFIX/bin", diff --git a/packages/rust-std.json b/packages/rust-std.json index f4cafe5..3a34007 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -73,11 +73,30 @@ "*:x86_64-w64-mingw32:CFLAGS_x86_64_pc_windows_gnu=$RUST_CFLAGS", "*:x86_64-w64-mingw32:CXXFLAGS_x86_64_pc_windows_gnu=$RUST_CXXFLAGS", "*:x86_64-w64-mingw32:LDFLAGS_x86_64_pc_windows_gnu=$RUST_LDFLAGS", + "*:aarch64-linux-android:CFLAGS_aarch64_linux_android=$RUST_CFLAGS", + "*:aarch64-linux-android:CXXFLAGS_aarch64_linux_android=$RUST_CXXFLAGS", + "*:aarch64-linux-android:LDFLAGS_aarch64_linux_android=$RUST_LDFLAGS", + "*:aarch64-linux-android:CC_aarch64_linux_android=$RUST_CC", + "*:aarch64-linux-android:CXX_aarch64_linux_android=$RUST_CXX", + "*:aarch64-linux-android:AR_aarch64_linux_android=$RUST_AR", + "*:x86_64-linux-android:CFLAGS_x86_64_linux_android=$RUST_CFLAGS", + "*:x86_64-linux-android:CXXFLAGS_x86_64_linux_android=$RUST_CXXFLAGS", + "*:x86_64-linux-android:LDFLAGS_x86_64_linux_android=$RUST_LDFLAGS", + "*:x86_64-linux-android:CC_x86_64_linux_android=$RUST_CC", + "*:x86_64-linux-android:CXX_x86_64_linux_android=$RUST_CXX", + "*:x86_64-linux-android:AR_x86_64_linux_android=$RUST_AR", + "*:armv7a-linux-androideabi:CFLAGS_armv7_linux_androideabi=$RUST_CFLAGS", + "*:armv7a-linux-androideabi:CXXFLAGS_armv7_linux_androideabi=$RUST_CXXFLAGS", + "*:armv7a-linux-androideabi:LDFLAGS_armv7_linux_androideabi=$RUST_LDFLAGS", + "*:armv7a-linux-androideabi:CC_armv7_linux_androideabi=$RUST_CC", + "*:armv7a-linux-androideabi:CXX_armv7_linux_androideabi=$RUST_CXX", + "*:armv7a-linux-androideabi:AR_armv7_linux_androideabi=$RUST_AR", "*:*:RUST_STD_PROFILE=std", "linux_amd64:x86_64-linux-gnu:RUST_STD_PROFILE=std-native", "linux_arm64:aarch64-linux-gnu:RUST_STD_PROFILE=std-native", "*:*-apple-*:RUST_STD_PROFILE=std-apple", "*:*-w64-mingw32:RUST_STD_PROFILE=std-mingw", + "*:*android*:RUST_STD_PROFILE=std-android", "*:*android*:RUST_LLVM_PROFILE=llvm", "*:*-linux-gnu:RUST_LLVM_PROFILE=llvm", "*:*-w64-mingw32:RUST_LLVM_PROFILE=llvm", @@ -105,8 +124,14 @@ "CC_x86_64_pc_windows_gnu", "CXX_x86_64_pc_windows_gnu", "CFLAGS_x86_64_pc_windows_gnu", "CXXFLAGS_x86_64_pc_windows_gnu", "CC_aarch64_linux_android", "CXX_aarch64_linux_android", + "CFLAGS_aarch64_linux_android", "CXXFLAGS_aarch64_linux_android", + "LDFLAGS_aarch64_linux_android", "CC_x86_64_linux_android", "CXX_x86_64_linux_android", - "CC_armv7_linux_androideabi", "CXX_armv7_linux_androideabi" + "CFLAGS_x86_64_linux_android", "CXXFLAGS_x86_64_linux_android", + "LDFLAGS_x86_64_linux_android", + "CC_armv7_linux_androideabi", "CXX_armv7_linux_androideabi", + "CFLAGS_armv7_linux_androideabi", "CXXFLAGS_armv7_linux_androideabi", + "LDFLAGS_armv7_linux_androideabi" ], "env": [ "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", @@ -187,6 +212,31 @@ "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", "*:*:ARFLAGS=" ] + }, + "std-android": { + "unset": [ + "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", + "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", + "CFLAGS", "CXXFLAGS", "CPPFLAGS", "LDFLAGS", + "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", + "CFLAGS_aarch64_unknown_linux_gnu", "CXXFLAGS_aarch64_unknown_linux_gnu", + "CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER", + "CARGO_TARGET_AARCH64_LINUX_ANDROID_RUSTFLAGS", + "CARGO_TARGET_X86_64_LINUX_ANDROID_LINKER", + "CARGO_TARGET_X86_64_LINUX_ANDROID_RUSTFLAGS", + "CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_LINKER", + "CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_RUSTFLAGS" + ], + "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "*:*:CC=$NATIVEPREFIX/_/bin/clang", + "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CXXFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "*:*:ARFLAGS=" + ] } }, "steps": [ @@ -214,6 +264,7 @@ "*:*:test \"$RUST_TRIPLET\" = \"$BUILD_TRIPLET\" || echo cxx = \\\"$RUST_CXX\\\" >> config.toml", "*:*:test \"$RUST_TRIPLET\" = \"$BUILD_TRIPLET\" || echo linker = \\\"$RUST_LINKER\\\" >> config.toml", "*:*:test \"$RUST_TRIPLET\" = \"$BUILD_TRIPLET\" || echo ar = \\\"$RUST_AR\\\" >> config.toml", + "*:*android*:test \"$RUST_TRIPLET\" = \"$BUILD_TRIPLET\" || echo android-ndk = \\\"$NATIVEPREFIX\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = true' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", @@ -222,6 +273,8 @@ "*:*:@$RUST_STD_PROFILE python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", "linux_*:*-apple-*:ln -sf $RUST_CC $NATIVEPREFIX/bin/cc", "linux_*:*-apple-*:ln -sf $RUST_CXX $NATIVEPREFIX/bin/c++", + "linux_*:*-android*:ln -sf $RUST_CC $NATIVEPREFIX/bin/cc", + "linux_*:*-android*:ln -sf $RUST_CXX $NATIVEPREFIX/bin/c++", "*:*:$NATIVEPREFIX/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/bin $STAGING_DIR$NATIVEPREFIX/lib/rustlib", "*:*:touch $STAGING_DIR$NATIVEPREFIX/bin/.keep", "*:*:$NATIVEPREFIX/bin/rm -rf $STAGING_DIR$NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET", From f5fe9f22dcf7349729fc2fd0a339bfaaea711ffa Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 18 Jul 2026 09:56:36 +0200 Subject: [PATCH 141/200] macos fixes --- packages/libevent.json | 1 + packages/native/_.json | 2 +- packages/native/_/darwin_arm64_clang21.json | 4 +- packages/native/cctools-port.json | 2 +- packages/native/ct-tools.json | 17 ++- packages/native/libtapi.json | 2 +- packages/native/osx-cross.json | 15 ++- packages/rust-std.json | 10 +- packages/tor.json | 1 + packages/xz.json | 1 + packages/zlib.json | 3 + patches/native/ct-tools/host-ld-wrapper.sh | 122 ++++++++++++++++++ .../native/osx-cross/classic-ld-wrapper.sh | 95 ++++++++++++++ 13 files changed, 259 insertions(+), 16 deletions(-) create mode 100644 patches/native/ct-tools/host-ld-wrapper.sh create mode 100644 patches/native/osx-cross/classic-ld-wrapper.sh diff --git a/packages/libevent.json b/packages/libevent.json index 9679cc0..01a24e3 100644 --- a/packages/libevent.json +++ b/packages/libevent.json @@ -29,6 +29,7 @@ ], "build": { "env": [ + "*:aarch64-apple-ios-simulator:HOST=aarch64-apple-ios", "*:*:config_opts=--host=$HOST --prefix=$PREFIX ", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --disable-openssl", diff --git a/packages/native/_.json b/packages/native/_.json index 0e71144..bccf0d7 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -47,7 +47,7 @@ "*:*:CFLAGS=$CFLAGS -fPIC", "*:*:CXXFLAGS=$CXXFLAGS -fPIC", "*:*:LDFLAGS=$LDFLAGS -fPIC", - "darwin_arm64:*:LDFLAGS=$LDFLAGS -stdlib=libc++ -lc++ -lc++abi", + "none:*:LDFLAGS=$LDFLAGS -stdlib=libc++ -lc++ -lc++abi", "*:*:LDFLAGS=$LDFLAGS -L$PREFIX/lib", "*:*:LD_LIBRARY_PATH=$NATIVEPREFIX/lib", "*:*:PKG_CONFIG_PATH=$NATIVEPREFIX/lib/pkgconfig:$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", diff --git a/packages/native/_/darwin_arm64_clang21.json b/packages/native/_/darwin_arm64_clang21.json index 30ef413..a269c07 100644 --- a/packages/native/_/darwin_arm64_clang21.json +++ b/packages/native/_/darwin_arm64_clang21.json @@ -5,8 +5,8 @@ "download": [ { "kind": "tar.xz", - "sha256": "af55cf7e7aaa6f387fd4b91ed9f994efb866a2c87897da562bb098b8540170d2", - "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-aarch64-apple-darwin.tar.xz" + "sha256": "80e16711526b83f323a1014479a19a816e24f785f30dd712b5be297cc9b604e1", + "url": "https://github.com/MrCyjaneK/easybs/releases/download/r1/clang21-aarch64-apple-darwin.tar.xz" } ], "build": { diff --git a/packages/native/cctools-port.json b/packages/native/cctools-port.json index d4196a1..e88ca32 100644 --- a/packages/native/cctools-port.json +++ b/packages/native/cctools-port.json @@ -18,7 +18,7 @@ "*:*-apple-*:native/xz", "*:*-apple-*:native/zlib", "*:*:native/_/_", - "*:*-apple-*:native/libc++" + "linux_*:*-apple-*:native/libc++" ], "build": { "env": [ diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 91ce91a..623ec4a 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -132,7 +132,9 @@ "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/flex", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gawk", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gettext", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gzip", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/gmp_shared", + "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/tar", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/grep", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/help2man", "*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:native/libtool", @@ -161,10 +163,21 @@ "steps": [ "linux_*:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/_/bin/gcc", "linux_*:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/_/bin/g++", + "darwin_*:*:mv $NATIVEPREFIX/_/bin/lld $NATIVEPREFIX/_/bin/lld-real", + "darwin_*:*:rm -f $NATIVEPREFIX/_/bin/ld $NATIVEPREFIX/_/bin/ld64.lld $NATIVEPREFIX/_/bin/ld.lld", + "darwin_*:*:sed \"s|@LD64_LLD@|$NATIVEPREFIX/_/bin/lld-real|g; s|@SDK_VERSION@|26.1|g\" $PATCH_DIR/native/ct-tools/host-ld-wrapper.sh > $NATIVEPREFIX/_/bin/ld && chmod +x $NATIVEPREFIX/_/bin/ld", + "darwin_*:*:ln -sf $NATIVEPREFIX/_/bin/ld $NATIVEPREFIX/_/bin/ld64.lld", + "darwin_*:*:ln -sf $NATIVEPREFIX/_/bin/lld-real $NATIVEPREFIX/_/bin/ld.lld", + "darwin_*:*:ln -sf $NATIVEPREFIX/_/bin/clang-21 $NATIVEPREFIX/_/bin/gcc", + "darwin_*:*:ln -sf $NATIVEPREFIX/_/bin/clang++-21 $NATIVEPREFIX/_/bin/g++", + "darwin_*:*:ln -sf $NATIVEPREFIX/_/bin/llvm-ar $NATIVEPREFIX/_/bin/ar", + "darwin_*:*:ln -sf $NATIVEPREFIX/_/bin/llvm-as $NATIVEPREFIX/_/bin/as", + "darwin_*:*-w64-mingw32:sed -i.bak '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_BINUTILS_PLUGINS n\\n put_new_config CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES n' run.sh", "linux_*:x86_64-w64-mingw32:mkdir -p patches/mingw-w64 && cp $PATCH_DIR/native/ct-tools/clang-widl-winnt.h.patch patches/mingw-w64/", "linux_*:x86_64-w64-mingw32:sed -i '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_MINGW_W64_PATCH_LOCAL y\\n put_new_config CT_MINGW_W64_PATCH_ORDER \"local,bundled\"\\n put_new_config CT_PATCH_USE_LOCAL y\\n put_new_config CT_LOCAL_PATCH_DIR \"'\"$(pwd)/patches\"'\"' run.sh", "*:{*-linux-gnu,*-w64-mingw32}:sed -i 's|install=\"./scripts/install-sh -c\"|install=\"'$NATIVEPREFIX'/bin/install -c\"|g' $NATIVEPREFIX/share/crosstool-ng/paths.sh", - "*:{*-linux-gnu,*-w64-mingw32}:env -i PATH=$PATH PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", + "linux_*:{*-linux-gnu,*-w64-mingw32}:env -i PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH LIBTOOL=$NATIVEPREFIX/bin/libtool AR=$NATIVEPREFIX/_/bin/llvm-ar RANLIB=$NATIVEPREFIX/_/bin/llvm-ranlib PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", + "darwin_*:{*-linux-gnu,*-w64-mingw32}:env -i SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH LIBTOOL=$NATIVEPREFIX/bin/libtool AR=$NATIVEPREFIX/_/bin/llvm-ar RANLIB=$NATIVEPREFIX/_/bin/llvm-ranlib PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET/* $STAGING_DIR/$PREFIX", "*:{*-linux-gnu,*-w64-mingw32}:rm -rf $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET", "*:{*-linux-gnu,*-w64-mingw32}:mkdir -p $STAGING_DIR/$NATIVEPREFIX", @@ -176,4 +189,4 @@ "*:x86_64-w64-mingw32:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-w64-mingw32-*; do ln -sf $f ${f#x86_64-w64-mingw32-}; done" ] } -} \ No newline at end of file +} diff --git a/packages/native/libtapi.json b/packages/native/libtapi.json index 57496de..db69144 100644 --- a/packages/native/libtapi.json +++ b/packages/native/libtapi.json @@ -14,7 +14,7 @@ "*:*:native/bash", "*:*:native/cmake", "*:*:native/ninja", - "*:*:native/libc++" + "linux_*:*:native/libc++" ], "build": { "env": [ diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 745757b..23508d7 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -63,19 +63,24 @@ "*:*-apple-*:UNATTENDED=1", "*:*-apple-*:SDK_VERSION=26.1", "*:*-apple-*:COMPRESSLEVEL=6", - "*:*-apple-*:LDFLAGS=$LDFLAGS -fuse-ld=lld", - "*:*-apple-*:CXXFLAGS=$CXXFLAGS -fuse-ld=lld" + "darwin_arm64:*-apple-*:LDFLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld", + "linux_*:*-apple-*:LDFLAGS=$LDFLAGS -fuse-ld=lld", + "linux_*:*-apple-*:CXXFLAGS=$CXXFLAGS -fuse-ld=lld" ], "steps": [ "*:*-apple-*:mkdir -p wrapper/bin", "*:*-apple-*:printf '#!/bin/sh\\ncase \"$1\" in\\n -productVersion) echo %s ;;\\n *) echo %s ;;\\nesac\\n' \"${SDK_VERSION}\" \"${SDK_VERSION}\" > wrapper/bin/sw_vers", "*:*-apple-*:chmod +x wrapper/bin/sw_vers", + "darwin_arm64:*-apple-*:rm -f $NATIVEPREFIX/_/bin/ld $NATIVEPREFIX/_/bin/ld64.lld", + "darwin_arm64:*-apple-*:sed \"s|@LD64_LLD@|$NATIVEPREFIX/_/bin/lld|g; s|@SDK_VERSION@|$SDK_VERSION|g\" $PATCH_DIR/native/osx-cross/classic-ld-wrapper.sh > $NATIVEPREFIX/_/bin/ld && chmod +x $NATIVEPREFIX/_/bin/ld", + "darwin_arm64:*-apple-*:cp $NATIVEPREFIX/_/bin/ld $NATIVEPREFIX/_/bin/ld64.lld && chmod +x $NATIVEPREFIX/_/bin/ld64.lld", "*:*-apple-*:sed -i.bak 's/--with-libtapi=$TARGET_DIR/--with-libtapi=$PREFIX\\/native/g' build.sh", "*:*-apple-*:sed -i.bak 's/--with-libxar=$TARGET_DIR/--with-libxar=$PREFIX\\/native/g' build.sh", "*:*-apple-*:mv $NATIVEPREFIX/share/xcode-sdk/*${SDK_VERSION}* tarballs", - "*:*-apple-*:sed -i.bak 's|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1 -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX${SDK_VERSION}.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION|' build_clang.sh", - "*:*-apple-*:export PATH=$PWD/wrapper/bin:$PATH && yes | INSTALLPREFIX=$NATIVEPREFIX ./build_apple_clang.sh", - "*:*-apple-*:cd build/clang-21/build_stage3 && make install DESTDIR=$STAGING_DIR && make install", + "darwin_arm64:*-apple-*:sed -i.bak 's|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1 -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX${SDK_VERSION}.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION -DHOST_LINK_VERSION=711 -DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld -DCMAKE_SHARED_LINKER_FLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld|' build_clang.sh", + "linux_*:*-apple-*:sed -i.bak 's|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1 -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX${SDK_VERSION}.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION|' build_clang.sh", + "*:*-apple-*:export PATH=$PWD/wrapper/bin:$PATH && CC=$NATIVEPREFIX/_/bin/clang-21 CXX=$NATIVEPREFIX/_/bin/clang++-21 LDFLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld yes | INSTALLPREFIX=$NATIVEPREFIX ./build_apple_clang.sh", + "*:*-apple-*:cd build/clang-21/build_stage1 && make install DESTDIR=$STAGING_DIR && make install", "*:*-apple-*:sed -i.bak 's/## Compiler test ##/exit 0/g' build.sh", "*:*-apple-*:export PATH=$PWD/wrapper/bin:$PATH && OCDEBUG=1 TARGET_DIR=$STAGING_DIR$NATIVEPREFIX bash -x ./build.sh", "*:*-apple-*:rm $STAGING_DIR$NATIVEPREFIX/bin/*pkg-config" diff --git a/packages/rust-std.json b/packages/rust-std.json index 3a34007..2e3dbb3 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -25,7 +25,8 @@ "*:*:native/python@3.11", "*:*:native/rust", "*:*:native/tar", - "*:*:native/zlib" + "*:*:native/zlib", + "*:*:native/libpsl" ], "build": { "env": [ @@ -243,11 +244,12 @@ "linux_*:*-linux-gnu:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/bin/cc", "linux_*:*-linux-gnu:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/bin/c++", "linux_*:*-apple-*:ln -sf $NATIVEPREFIX/_/bin/llvm-strip $NATIVEPREFIX/bin/strip", - "linux_*:*-apple-ios*:test -x $NATIVEPREFIX/bin/xcrun.real || mv $NATIVEPREFIX/bin/xcrun $NATIVEPREFIX/bin/xcrun.real", - "linux_*:*-apple-ios*:cp $PATCH_DIR/rust-std/xcrun $NATIVEPREFIX/bin/xcrun", - "linux_*:*-apple-ios*:chmod +x $NATIVEPREFIX/bin/xcrun", + "none:*-apple-ios*:mv $NATIVEPREFIX/bin/xcrun $NATIVEPREFIX/bin/xcrun.real", + "*:*-apple-ios*:cp $PATCH_DIR/rust-std/xcrun $NATIVEPREFIX/bin/xcrun", + "*:*-apple-ios*:chmod +x $NATIVEPREFIX/bin/xcrun", "darwin_arm64:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/bin/cc", "darwin_arm64:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/bin/c++", + "darwin_arm64:*:rm -f $NATIVEPREFIX/lib/libc++abi*.dylib $NATIVEPREFIX/lib/libunwind*.dylib", "*:*:echo 'profile = \"library\"' > config.toml", "*:*:echo '[build]' >> config.toml", "*:*:echo 'vendor = true' >> config.toml", diff --git a/packages/tor.json b/packages/tor.json index 9e019a0..623b59b 100644 --- a/packages/tor.json +++ b/packages/tor.json @@ -30,6 +30,7 @@ ], "build": { "env": [ + "*:aarch64-apple-ios-simulator:HOST=aarch64-apple-ios", "*:*:config_opts=--host=$HOST --prefix=$PREFIX", "*:*:config_opts=$config_opts --disable-asciidoc", "*:*:config_opts=$config_opts --disable-system-torrc", diff --git a/packages/xz.json b/packages/xz.json index 2f71a69..e2ad5a9 100644 --- a/packages/xz.json +++ b/packages/xz.json @@ -33,6 +33,7 @@ ], "build": { "env": [ + "*:aarch64-apple-ios-simulator:HOST=aarch64-apple-ios", "*:*:config_opts=--prefix=$PREFIX --host=$HOST", "*:*:config_opts=$config_opts --disable-shared", "*:*:config_opts=$config_opts --enable-static", diff --git a/packages/zlib.json b/packages/zlib.json index 137c0e1..7de95bf 100644 --- a/packages/zlib.json +++ b/packages/zlib.json @@ -13,6 +13,7 @@ "*:*:native/_", "*:*:native/bash", "*:*:native/coreutils", + "*:*:native/grep", "*:*:native/libtool", "*:*:native/make", "*:*:native/sed" @@ -28,6 +29,8 @@ "*:*-android*:sed -i.bak s\\|^ARFLAGS=.\\*$\\|ARFLAGS=\"rcs\"\\| Makefile", "*:*-linux-gnu:sed -i.bak s\\|^AR=.\\*$\\|AR=\"$AR\"\\| Makefile", "*:*-linux-gnu:sed -i.bak s\\|^ARFLAGS=.\\*$\\|ARFLAGS=\"rcs\"\\| Makefile", + "*:*-w64-*:sed -i.bak s\\|^AR=.\\*$\\|AR=\"$AR\"\\| Makefile", + "*:*-w64-*:sed -i.bak s\\|^ARFLAGS=.\\*$\\|ARFLAGS=\"rcs\"\\| Makefile", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/patches/native/ct-tools/host-ld-wrapper.sh b/patches/native/ct-tools/host-ld-wrapper.sh new file mode 100644 index 0000000..d8b0453 --- /dev/null +++ b/patches/native/ct-tools/host-ld-wrapper.sh @@ -0,0 +1,122 @@ +#!/bin/bash +ld64=@LD64_LLD@ +sdk_max=@SDK_VERSION@ +tmps=() +cleanup() { + local f + for f in "${tmps[@]}"; do + rm -f "$f" + done +} +trap cleanup EXIT + +filter_response_file() { + local in=$1 out + out=$(mktemp) + tmps+=("$out") + python3 - "$in" "$out" "$sdk_max" <<'PY' +import shlex +import sys + +src, dst, sdk_max = sys.argv[1:4] +data = open(src, "r", encoding="utf-8", errors="replace").read() +args = shlex.split(data) +out = [] +i = 0 +while i < len(args): + arg = args[i] + if arg in ("-undefined-version", "--undefined-version"): + i += 1 + continue + if arg in ("-soname", "-Wl,-soname"): + i += 1 + if i < len(args): + out.extend(["-install_name", args[i]]) + continue + if arg.startswith("-Wl,-soname,"): + out.extend(["-install_name", arg.split(",", 2)[2]]) + i += 1 + continue + if arg in ("-retain-symbols-file", "-Wl,-retain-symbols-file", "-version-script", "-Wl,-version-script"): + i += 2 + continue + if arg.startswith("-Wl,-retain-symbols-file,") or arg.startswith("-Wl,-version-script,"): + i += 1 + continue + if arg == "-macosx_version_min": + if i + 1 < len(args): + out.extend(["-platform_version", "macos", args[i + 1], sdk_max]) + i += 2 + continue + if arg.startswith("-macosx_version_min="): + out.extend(["-platform_version", "macos", arg.split("=", 1)[1], sdk_max]) + i += 1 + continue + out.append(arg) + i += 1 + +with open(dst, "w", encoding="utf-8") as fh: + for arg in out: + if " " in arg or '"' in arg or "'" in arg: + fh.write('"' + arg.replace("\\", "\\\\").replace('"', '\\"') + '" ') + else: + fh.write(arg + " ") +PY + printf '@%s' "$out" +} + +if [ $# -eq 1 ]; then + case "$1" in + -v) + echo '@(#)PROGRAM:ld PROJECT:ld64-711' + exit 0 + ;; + --version) + exec -a ld64.lld "$ld64" --version + ;; + esac +fi + +args=() +while [ $# -gt 0 ]; do + case "$1" in + -soname|-Wl,-soname) + shift + [ $# -gt 0 ] || { echo "host-ld-wrapper: -soname requires an argument" >&2; exit 1; } + args+=(-install_name "$1") + ;; + -Wl,-soname,*) + args+=(-install_name "${1#-Wl,-soname,}") + ;; + -retain-symbols-file|-Wl,-retain-symbols-file|-version-script|-Wl,-version-script) + shift + [ $# -gt 0 ] && shift + continue + ;; + -Wl,-retain-symbols-file,*|-Wl,-version-script,*) + ;; + -macosx_version_min) + shift + args+=(-platform_version macos "$1" "$sdk_max") + shift + ;; + -macosx_version_min=*) + args+=(-platform_version macos "${1#-macosx_version_min=}" "$sdk_max") + ;; + -undefined-version|--undefined-version) + ;; + @*) + f="${1#@}" + if [ -f "$f" ]; then + args+=("$(filter_response_file "$f")") + else + args+=("$1") + fi + ;; + *) + args+=("$1") + ;; + esac + shift +done +exec -a ld64.lld "$ld64" "${args[@]}" diff --git a/patches/native/osx-cross/classic-ld-wrapper.sh b/patches/native/osx-cross/classic-ld-wrapper.sh new file mode 100644 index 0000000..b00d0a4 --- /dev/null +++ b/patches/native/osx-cross/classic-ld-wrapper.sh @@ -0,0 +1,95 @@ +#!/bin/bash +ld64=@LD64_LLD@ +sdk_max=@SDK_VERSION@ +tmps=() +cleanup() { + local f + for f in "${tmps[@]}"; do + rm -f "$f" + done +} +trap cleanup EXIT + +filter_response_file() { + local in=$1 out + out=$(mktemp) + tmps+=("$out") + python3 - "$in" "$out" "$sdk_max" <<'PY' +import shlex +import sys + +src, dst, sdk_max = sys.argv[1:4] +data = open(src, "r", encoding="utf-8", errors="replace").read() +args = shlex.split(data) +out = [] +i = 0 +while i < len(args): + arg = args[i] + if arg in ("-undefined-version", "--undefined-version"): + i += 1 + continue + if arg == "-macosx_version_min": + if i + 1 < len(args): + out.extend(["-platform_version", "macos", args[i + 1], sdk_max]) + i += 2 + continue + if arg.startswith("-macosx_version_min="): + out.extend(["-platform_version", "macos", arg.split("=", 1)[1], sdk_max]) + i += 1 + continue + out.append(arg) + i += 1 + +with open(dst, "w", encoding="utf-8") as fh: + for arg in out: + if " " in arg or '"' in arg or "'" in arg: + fh.write('"' + arg.replace("\\", "\\\\").replace('"', '\\"') + '" ') + else: + fh.write(arg + " ") +PY + printf '@%s' "$out" +} + +if [ $# -eq 1 ]; then + case "$1" in + -v) + echo '@(#)PROGRAM:ld PROJECT:ld64-711' + exit 0 + ;; + --version) + exec -a ld64.lld "$ld64" --version + ;; + esac +fi + +args=() +while [ $# -gt 0 ]; do + case "$1" in + -macosx_version_min) + shift + args+=(-platform_version macos "$1" "$sdk_max") + shift + ;; + -macosx_version_min=*) + args+=(-platform_version macos "${1#-macosx_version_min=}" "$sdk_max") + shift + ;; + -undefined-version|--undefined-version) + shift + ;; + @*) + f="${1#@}" + if [ -f "$f" ]; then + args+=("$(filter_response_file "$f")") + else + args+=("$1") + fi + shift + ;; + *) + args+=("$1") + shift + ;; + esac +done +exec -a ld64.lld "$ld64" "${args[@]}" From 33763fd4217e7eb8d2aff62a0ee3916ab95ea634 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 18 Jul 2026 12:36:01 +0200 Subject: [PATCH 142/200] win32 fixes --- packages/native/ct-tools.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 623ec4a..39cc8b0 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -172,7 +172,9 @@ "darwin_*:*:ln -sf $NATIVEPREFIX/_/bin/clang++-21 $NATIVEPREFIX/_/bin/g++", "darwin_*:*:ln -sf $NATIVEPREFIX/_/bin/llvm-ar $NATIVEPREFIX/_/bin/ar", "darwin_*:*:ln -sf $NATIVEPREFIX/_/bin/llvm-as $NATIVEPREFIX/_/bin/as", - "darwin_*:*-w64-mingw32:sed -i.bak '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_BINUTILS_PLUGINS n\\n put_new_config CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES n' run.sh", + "darwin_*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak '/put_new_config CT_CC_LANG_CXX y/a\\ put_new_config CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES n' run.sh", + "darwin_*:*-w64-mingw32:sed -i.bak '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_BINUTILS_PLUGINS n' run.sh", + "darwin_*:{*-linux-gnu,*-linux-musl}:sed -i.bak '/put_new_config CT_CC_LANG_CXX y/a\\ put_new_config CT_NCURSES_HOST_FALLBACKS \"\"' run.sh", "linux_*:x86_64-w64-mingw32:mkdir -p patches/mingw-w64 && cp $PATCH_DIR/native/ct-tools/clang-widl-winnt.h.patch patches/mingw-w64/", "linux_*:x86_64-w64-mingw32:sed -i '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_MINGW_W64_PATCH_LOCAL y\\n put_new_config CT_MINGW_W64_PATCH_ORDER \"local,bundled\"\\n put_new_config CT_PATCH_USE_LOCAL y\\n put_new_config CT_LOCAL_PATCH_DIR \"'\"$(pwd)/patches\"'\"' run.sh", "*:{*-linux-gnu,*-w64-mingw32}:sed -i 's|install=\"./scripts/install-sh -c\"|install=\"'$NATIVEPREFIX'/bin/install -c\"|g' $NATIVEPREFIX/share/crosstool-ng/paths.sh", From 5a3e0a34adfc1aa6a88a73b9fbfafc75fc3c44d4 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 18 Jul 2026 03:39:12 -0700 Subject: [PATCH 143/200] commet update --- host/main.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/host/main.go b/host/main.go index 51b7424..77ef837 100644 --- a/host/main.go +++ b/host/main.go @@ -56,7 +56,7 @@ func (h *Host) GetEnvPath() string { return filepath.Join(dir, "env") } -// aarch64-apple-darwin,x86_64-apple-darwin,aarch64-apple-ios,aarch64-apple-ios-simulator,x86_64-w64-mingw32,aarch64-linux-gnu,x86_64-linux-android,armv7a-linux-androideabi +// aarch64-apple-darwin,x86_64-apple-darwin,aarch64-apple-ios,aarch64-apple-ios-simulator,x86_64-w64-mingw32,x86_64-linux-gnu,aarch64-linux-gnu,aarch64-linux-android,x86_64-linux-android,armv7a-linux-androideabi var SupportedHosts = map[string]*Host{ "aarch64-apple-darwin": {Triplet: "aarch64-apple-darwin"}, From d10260c64f4b1234996d33171b091cc0ce5114f5 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 18 Jul 2026 12:46:30 +0200 Subject: [PATCH 144/200] darwin build fix --- packages/rust-std.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/rust-std.json b/packages/rust-std.json index 2e3dbb3..f4e3740 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -117,13 +117,17 @@ "unset": [ "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", - "CC", "CXX", "CFLAGS", "CXXFLAGS", "CPPFLAGS", + "CC", "CXX", "CFLAGS", "CXXFLAGS", "CPPFLAGS", "LDFLAGS", + "RUST_LDFLAGS", "CC_x86_64_unknown_linux_gnu", "CXX_x86_64_unknown_linux_gnu", "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", + "LDFLAGS_x86_64_unknown_linux_gnu", "CC_aarch64_unknown_linux_gnu", "CXX_aarch64_unknown_linux_gnu", "CFLAGS_aarch64_unknown_linux_gnu", "CXXFLAGS_aarch64_unknown_linux_gnu", + "LDFLAGS_aarch64_unknown_linux_gnu", "CC_x86_64_pc_windows_gnu", "CXX_x86_64_pc_windows_gnu", "CFLAGS_x86_64_pc_windows_gnu", "CXXFLAGS_x86_64_pc_windows_gnu", + "LDFLAGS_x86_64_pc_windows_gnu", "CC_aarch64_linux_android", "CXX_aarch64_linux_android", "CFLAGS_aarch64_linux_android", "CXXFLAGS_aarch64_linux_android", "LDFLAGS_aarch64_linux_android", @@ -140,6 +144,7 @@ "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", + "darwin_arm64:*:SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk", "*:*:ARFLAGS=" ] }, From 8eae2032a6eca679f7a7103350364086a2395615 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 18 Jul 2026 16:17:13 +0200 Subject: [PATCH 145/200] simplify --- packages/rust-std.json | 76 ++++++++++++++++-------------------------- 1 file changed, 28 insertions(+), 48 deletions(-) diff --git a/packages/rust-std.json b/packages/rust-std.json index f4e3740..92ab24c 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -42,34 +42,31 @@ "*:*-apple-*:RUST_CC=$NATIVEPREFIX/bin/$HOST-clang", "*:*-apple-*:RUST_CXX=$NATIVEPREFIX/bin/$HOST-clang++", "*:*-apple-*:RUST_LINKER=$NATIVEPREFIX/bin/$HOST-clang", + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "*:*:CC=$NATIVEPREFIX/_/bin/clang", + "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "*:*:CC_FOR_BUILD=$NATIVEPREFIX/_/bin/clang", + "*:*:CXX_FOR_BUILD=$NATIVEPREFIX/_/bin/clang++", + "*:*:AR=$NATIVEPREFIX/_/bin/ar", + "*:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", + "*:*:NM=$NATIVEPREFIX/_/bin/nm", + "*:*:OBJCOPY=$NATIVEPREFIX/_/bin/objcopy", + "linux_amd64:*-linux-gnu:STRIP=$NATIVEPREFIX/_/bin/llvm-strip", "linux_*:*-linux-gnu:CMAKE_SYSTEM_NAME=Linux", "darwin_arm64:*:CMAKE_SYSTEM_NAME=Darwin", - "linux_*:*-linux-gnu:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", - "linux_*:*-linux-gnu:CC=$NATIVEPREFIX/_/bin/clang", - "linux_*:*-linux-gnu:CXX=$NATIVEPREFIX/_/bin/clang++", - "linux_*:*-linux-gnu:CC_FOR_BUILD=$NATIVEPREFIX/_/bin/clang", - "linux_*:*-linux-gnu:CXX_FOR_BUILD=$NATIVEPREFIX/_/bin/clang++", - "linux_*:*-linux-gnu:AR=$NATIVEPREFIX/_/bin/ar", - "linux_*:*-linux-gnu:RANLIB=$NATIVEPREFIX/_/bin/ranlib", - "linux_*:*-linux-gnu:NM=$NATIVEPREFIX/_/bin/nm", - "linux_*:*-linux-gnu:OBJCOPY=$NATIVEPREFIX/_/bin/objcopy", - "linux_amd64:*-linux-gnu:STRIP=$NATIVEPREFIX/_/bin/llvm-strip", "linux_*:*-linux-gnu:CFLAGS=-fPIC -I$NATIVEPREFIX/include", "linux_*:*-linux-gnu:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", "linux_*:*-linux-gnu:LDFLAGS=-L$NATIVEPREFIX/lib", "linux_amd64:*:BUILD_TRIPLET=x86_64-unknown-linux-gnu", "linux_arm64:*:BUILD_TRIPLET=aarch64-unknown-linux-gnu", - "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "linux_amd64:*:CXXFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "*:aarch64-linux-gnu:CFLAGS_aarch64_unknown_linux_gnu=$RUST_CFLAGS", - "*:aarch64-linux-gnu:CXXFLAGS_aarch64_unknown_linux_gnu=$RUST_CXXFLAGS", - "*:aarch64-linux-gnu:LDFLAGS_aarch64_unknown_linux_gnu=$RUST_LDFLAGS", + "darwin_arm64:*:BUILD_TRIPLET=aarch64-apple-darwin", + "*:aarch64-linux-gnu:CFLAGS_aarch64_unknown_linux_gnu=$CFLAGS", + "*:aarch64-linux-gnu:CXXFLAGS_aarch64_unknown_linux_gnu=$CXXFLAGS", + "*:aarch64-linux-gnu:LDFLAGS_aarch64_unknown_linux_gnu=$LDFLAGS", "*:aarch64-linux-gnu:AS_aarch64_unknown_linux_gnu=$AS", - "*:x86_64-linux-gnu:CFLAGS_x86_64_unknown_linux_gnu=$RUST_CFLAGS", - "*:x86_64-linux-gnu:CXXFLAGS_x86_64_unknown_linux_gnu=$RUST_CXXFLAGS", - "*:x86_64-linux-gnu:LDFLAGS_x86_64_unknown_linux_gnu=$RUST_LDFLAGS", + "*:x86_64-linux-gnu:CFLAGS_x86_64_unknown_linux_gnu=$CFLAGS", + "*:x86_64-linux-gnu:CXXFLAGS_x86_64_unknown_linux_gnu=$CXXFLAGS", + "*:x86_64-linux-gnu:LDFLAGS_x86_64_unknown_linux_gnu=$LDFLAGS", "*:x86_64-linux-gnu:AS_x86_64_unknown_linux_gnu=$AS", "*:x86_64-w64-mingw32:CFLAGS_x86_64_pc_windows_gnu=$RUST_CFLAGS", "*:x86_64-w64-mingw32:CXXFLAGS_x86_64_pc_windows_gnu=$RUST_CXXFLAGS", @@ -93,24 +90,13 @@ "*:armv7a-linux-androideabi:CXX_armv7_linux_androideabi=$RUST_CXX", "*:armv7a-linux-androideabi:AR_armv7_linux_androideabi=$RUST_AR", "*:*:RUST_STD_PROFILE=std", - "linux_amd64:x86_64-linux-gnu:RUST_STD_PROFILE=std-native", - "linux_arm64:aarch64-linux-gnu:RUST_STD_PROFILE=std-native", + "*:*-linux-gnu:RUST_STD_PROFILE=std-native", "*:*-apple-*:RUST_STD_PROFILE=std-apple", "*:*-w64-mingw32:RUST_STD_PROFILE=std-mingw", "*:*android*:RUST_STD_PROFILE=std-android", "*:*android*:RUST_LLVM_PROFILE=llvm", "*:*-linux-gnu:RUST_LLVM_PROFILE=llvm", - "*:*-w64-mingw32:RUST_LLVM_PROFILE=llvm", - "darwin_arm64:*:BUILD_TRIPLET=aarch64-apple-darwin", - "darwin_arm64:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", - "darwin_arm64:*:CC=$NATIVEPREFIX/_/bin/clang", - "darwin_arm64:*:CXX=$NATIVEPREFIX/_/bin/clang++", - "darwin_arm64:*:CC_FOR_BUILD=$NATIVEPREFIX/_/bin/clang", - "darwin_arm64:*:CXX_FOR_BUILD=$NATIVEPREFIX/_/bin/clang++", - "darwin_arm64:*:AR=$NATIVEPREFIX/_/bin/ar", - "darwin_arm64:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", - "darwin_arm64:*:NM=$NATIVEPREFIX/_/bin/nm", - "darwin_arm64:*:OBJCOPY=$NATIVEPREFIX/_/bin/objcopy" + "*:*-w64-mingw32:RUST_LLVM_PROFILE=llvm" ], "profiles": { "llvm": { @@ -161,22 +147,18 @@ "unset": [ "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", - "CC_x86_64_unknown_linux_gnu", "CXX_x86_64_unknown_linux_gnu", - "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", - "AR_x86_64_unknown_linux_gnu", - "CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER", - "CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS", - "CC_aarch64_unknown_linux_gnu", "CXX_aarch64_unknown_linux_gnu", - "CFLAGS_aarch64_unknown_linux_gnu", "CXXFLAGS_aarch64_unknown_linux_gnu", - "AR_aarch64_unknown_linux_gnu", - "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER", - "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS" + "CC", "CXX", "CFLAGS", "CXXFLAGS", "CPPFLAGS", "LDFLAGS", + "RUST_CFLAGS", "RUST_CXXFLAGS", "RUST_LDFLAGS" ], "env": [ "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", "*:*:CC=$NATIVEPREFIX/_/bin/clang", "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", - "*:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang", + "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", + "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", + "darwin_arm64:*:SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk", + "darwin_arm64:*:CXXFLAGS=-fPIC -stdlib=libc++", + "linux_*:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang", "*:*:ARFLAGS=" ] }, @@ -246,14 +228,12 @@ } }, "steps": [ - "linux_*:*-linux-gnu:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/bin/cc", - "linux_*:*-linux-gnu:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/bin/c++", + "*:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/bin/cc", + "*:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/bin/c++", "linux_*:*-apple-*:ln -sf $NATIVEPREFIX/_/bin/llvm-strip $NATIVEPREFIX/bin/strip", "none:*-apple-ios*:mv $NATIVEPREFIX/bin/xcrun $NATIVEPREFIX/bin/xcrun.real", "*:*-apple-ios*:cp $PATCH_DIR/rust-std/xcrun $NATIVEPREFIX/bin/xcrun", "*:*-apple-ios*:chmod +x $NATIVEPREFIX/bin/xcrun", - "darwin_arm64:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/bin/cc", - "darwin_arm64:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/bin/c++", "darwin_arm64:*:rm -f $NATIVEPREFIX/lib/libc++abi*.dylib $NATIVEPREFIX/lib/libunwind*.dylib", "*:*:echo 'profile = \"library\"' > config.toml", "*:*:echo '[build]' >> config.toml", From f8fc01f0b66d716ad83fa15b52b66e8948025af3 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 19 Jul 2026 00:09:02 +0200 Subject: [PATCH 146/200] fix: ndk --- packages/rust-std.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/rust-std.json b/packages/rust-std.json index 92ab24c..1eff00e 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -242,6 +242,7 @@ "*:*:echo \"target = [\\\"$RUST_TRIPLET\\\"]\" >> config.toml", "*:*:echo rustc = \\\"$NATIVEPREFIX/bin/rustc\\\" >> config.toml", "*:*:echo cargo = \\\"$NATIVEPREFIX/bin/cargo\\\" >> config.toml", + "*:*android*:echo android-ndk = \\\"$NATIVEPREFIX\\\" >> config.toml", "*:*:printf '[target.%s]\\n' \"$BUILD_TRIPLET\" >> config.toml", "*:*:echo cc = \\\"$NATIVEPREFIX/_/bin/clang\\\" >> config.toml", "*:*:echo cxx = \\\"$NATIVEPREFIX/_/bin/clang++\\\" >> config.toml", @@ -251,7 +252,6 @@ "*:*:test \"$RUST_TRIPLET\" = \"$BUILD_TRIPLET\" || echo cxx = \\\"$RUST_CXX\\\" >> config.toml", "*:*:test \"$RUST_TRIPLET\" = \"$BUILD_TRIPLET\" || echo linker = \\\"$RUST_LINKER\\\" >> config.toml", "*:*:test \"$RUST_TRIPLET\" = \"$BUILD_TRIPLET\" || echo ar = \\\"$RUST_AR\\\" >> config.toml", - "*:*android*:test \"$RUST_TRIPLET\" = \"$BUILD_TRIPLET\" || echo android-ndk = \\\"$NATIVEPREFIX\\\" >> config.toml", "*:*:echo '[llvm]' >> config.toml", "*:*:echo 'ninja = true' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", From 80604d91c25c3209b66973d92e071b85dec70206 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 19 Jul 2026 18:51:55 +0200 Subject: [PATCH 147/200] install proper toolchain for osx-cross --- packages/native/osx-cross.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 23508d7..32d1baf 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -80,7 +80,7 @@ "darwin_arm64:*-apple-*:sed -i.bak 's|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1 -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX${SDK_VERSION}.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION -DHOST_LINK_VERSION=711 -DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld -DCMAKE_SHARED_LINKER_FLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld|' build_clang.sh", "linux_*:*-apple-*:sed -i.bak 's|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1 -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX${SDK_VERSION}.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION|' build_clang.sh", "*:*-apple-*:export PATH=$PWD/wrapper/bin:$PATH && CC=$NATIVEPREFIX/_/bin/clang-21 CXX=$NATIVEPREFIX/_/bin/clang++-21 LDFLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld yes | INSTALLPREFIX=$NATIVEPREFIX ./build_apple_clang.sh", - "*:*-apple-*:cd build/clang-21/build_stage1 && make install DESTDIR=$STAGING_DIR && make install", + "*:*-apple-*:cd build/clang-21/build_stage3 && make install DESTDIR=$STAGING_DIR && make install", "*:*-apple-*:sed -i.bak 's/## Compiler test ##/exit 0/g' build.sh", "*:*-apple-*:export PATH=$PWD/wrapper/bin:$PATH && OCDEBUG=1 TARGET_DIR=$STAGING_DIR$NATIVEPREFIX bash -x ./build.sh", "*:*-apple-*:rm $STAGING_DIR$NATIVEPREFIX/bin/*pkg-config" From 346bea868aee2740df18416aa824746d71787abc Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 21 Jul 2026 09:52:02 +0200 Subject: [PATCH 148/200] fix: rust builds --- packages/rust-std.json | 31 +++++++++++++++++++++---------- patches/rust-std/xcrun | 8 ++++++-- 2 files changed, 27 insertions(+), 12 deletions(-) diff --git a/packages/rust-std.json b/packages/rust-std.json index 1eff00e..ff62662 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -60,13 +60,13 @@ "linux_amd64:*:BUILD_TRIPLET=x86_64-unknown-linux-gnu", "linux_arm64:*:BUILD_TRIPLET=aarch64-unknown-linux-gnu", "darwin_arm64:*:BUILD_TRIPLET=aarch64-apple-darwin", - "*:aarch64-linux-gnu:CFLAGS_aarch64_unknown_linux_gnu=$CFLAGS", - "*:aarch64-linux-gnu:CXXFLAGS_aarch64_unknown_linux_gnu=$CXXFLAGS", - "*:aarch64-linux-gnu:LDFLAGS_aarch64_unknown_linux_gnu=$LDFLAGS", + "*:aarch64-linux-gnu:CFLAGS_aarch64_unknown_linux_gnu=$RUST_CFLAGS", + "*:aarch64-linux-gnu:CXXFLAGS_aarch64_unknown_linux_gnu=$RUST_CXXFLAGS", + "*:aarch64-linux-gnu:LDFLAGS_aarch64_unknown_linux_gnu=$RUST_LDFLAGS", "*:aarch64-linux-gnu:AS_aarch64_unknown_linux_gnu=$AS", - "*:x86_64-linux-gnu:CFLAGS_x86_64_unknown_linux_gnu=$CFLAGS", - "*:x86_64-linux-gnu:CXXFLAGS_x86_64_unknown_linux_gnu=$CXXFLAGS", - "*:x86_64-linux-gnu:LDFLAGS_x86_64_unknown_linux_gnu=$LDFLAGS", + "*:x86_64-linux-gnu:CFLAGS_x86_64_unknown_linux_gnu=$RUST_CFLAGS", + "*:x86_64-linux-gnu:CXXFLAGS_x86_64_unknown_linux_gnu=$RUST_CXXFLAGS", + "*:x86_64-linux-gnu:LDFLAGS_x86_64_unknown_linux_gnu=$RUST_LDFLAGS", "*:x86_64-linux-gnu:AS_x86_64_unknown_linux_gnu=$AS", "*:x86_64-w64-mingw32:CFLAGS_x86_64_pc_windows_gnu=$RUST_CFLAGS", "*:x86_64-w64-mingw32:CXXFLAGS_x86_64_pc_windows_gnu=$RUST_CXXFLAGS", @@ -90,7 +90,8 @@ "*:armv7a-linux-androideabi:CXX_armv7_linux_androideabi=$RUST_CXX", "*:armv7a-linux-androideabi:AR_armv7_linux_androideabi=$RUST_AR", "*:*:RUST_STD_PROFILE=std", - "*:*-linux-gnu:RUST_STD_PROFILE=std-native", + "linux_amd64:x86_64-linux-gnu:RUST_STD_PROFILE=std-native", + "linux_arm64:aarch64-linux-gnu:RUST_STD_PROFILE=std-native", "*:*-apple-*:RUST_STD_PROFILE=std-apple", "*:*-w64-mingw32:RUST_STD_PROFILE=std-mingw", "*:*android*:RUST_STD_PROFILE=std-android", @@ -148,7 +149,15 @@ "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", "CC", "CXX", "CFLAGS", "CXXFLAGS", "CPPFLAGS", "LDFLAGS", - "RUST_CFLAGS", "RUST_CXXFLAGS", "RUST_LDFLAGS" + "RUST_CFLAGS", "RUST_CXXFLAGS", "RUST_LDFLAGS", + "CFLAGS_aarch64_unknown_linux_gnu", "CXXFLAGS_aarch64_unknown_linux_gnu", + "LDFLAGS_aarch64_unknown_linux_gnu", + "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", + "LDFLAGS_x86_64_unknown_linux_gnu", + "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER", + "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS", + "CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER", + "CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS" ], "env": [ "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", @@ -231,8 +240,8 @@ "*:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/bin/cc", "*:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/bin/c++", "linux_*:*-apple-*:ln -sf $NATIVEPREFIX/_/bin/llvm-strip $NATIVEPREFIX/bin/strip", - "none:*-apple-ios*:mv $NATIVEPREFIX/bin/xcrun $NATIVEPREFIX/bin/xcrun.real", - "*:*-apple-ios*:cp $PATCH_DIR/rust-std/xcrun $NATIVEPREFIX/bin/xcrun", + "*:*-apple-ios*:test -L $NATIVEPREFIX/bin/xcrun && mv $NATIVEPREFIX/bin/xcrun $NATIVEPREFIX/bin/xcrun.real", + "*:*-apple-ios*:cp -f $PATCH_DIR/rust-std/xcrun $NATIVEPREFIX/bin/xcrun", "*:*-apple-ios*:chmod +x $NATIVEPREFIX/bin/xcrun", "darwin_arm64:*:rm -f $NATIVEPREFIX/lib/libc++abi*.dylib $NATIVEPREFIX/lib/libunwind*.dylib", "*:*:echo 'profile = \"library\"' > config.toml", @@ -263,6 +272,8 @@ "linux_*:*-android*:ln -sf $RUST_CC $NATIVEPREFIX/bin/cc", "linux_*:*-android*:ln -sf $RUST_CXX $NATIVEPREFIX/bin/c++", "*:*:$NATIVEPREFIX/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/bin $STAGING_DIR$NATIVEPREFIX/lib/rustlib", + "*:*-apple-ios*:cp -f $PATCH_DIR/rust-std/xcrun $STAGING_DIR$NATIVEPREFIX/bin/xcrun", + "*:*-apple-ios*:chmod +x $STAGING_DIR$NATIVEPREFIX/bin/xcrun", "*:*:touch $STAGING_DIR$NATIVEPREFIX/bin/.keep", "*:*:$NATIVEPREFIX/bin/rm -rf $STAGING_DIR$NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET", "*:*:$NATIVEPREFIX/bin/cp -a build/*/stage1/lib/rustlib/$RUST_TRIPLET $STAGING_DIR$NATIVEPREFIX/lib/rustlib/", diff --git a/patches/rust-std/xcrun b/patches/rust-std/xcrun index f2503e2..fdaeb03 100755 --- a/patches/rust-std/xcrun +++ b/patches/rust-std/xcrun @@ -1,4 +1,4 @@ -#!/bin/sh +#!/usr/bin/env bash case "$*" in *--show-sdk-path*) if [ -n "$SDK_PATH" ]; then @@ -6,9 +6,13 @@ case "$*" in exit 0 fi ;; + *--version*) + echo "xcrun version 72." + exit 0 + ;; esac if [ -x "$NATIVEPREFIX/bin/xcrun.real" ]; then - exec "$NATIVEPREFIX/bin/xcrun.real" "$@" + exec -a xcrun "$NATIVEPREFIX/bin/xcrun.real" "$@" fi echo "xcrun: unsupported invocation: $*" >&2 exit 1 From e160c2dbfccb13b4ccd3c6a4a814c3c0c0753197 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 21 Jul 2026 21:22:34 +0200 Subject: [PATCH 149/200] macos? --- packages/rust-std.json | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/packages/rust-std.json b/packages/rust-std.json index ff62662..359f5b2 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -89,9 +89,7 @@ "*:armv7a-linux-androideabi:CC_armv7_linux_androideabi=$RUST_CC", "*:armv7a-linux-androideabi:CXX_armv7_linux_androideabi=$RUST_CXX", "*:armv7a-linux-androideabi:AR_armv7_linux_androideabi=$RUST_AR", - "*:*:RUST_STD_PROFILE=std", - "linux_amd64:x86_64-linux-gnu:RUST_STD_PROFILE=std-native", - "linux_arm64:aarch64-linux-gnu:RUST_STD_PROFILE=std-native", + "*:*:RUST_STD_PROFILE=std-native", "*:*-apple-*:RUST_STD_PROFILE=std-apple", "*:*-w64-mingw32:RUST_STD_PROFILE=std-mingw", "*:*android*:RUST_STD_PROFILE=std-android", @@ -167,6 +165,16 @@ "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", "darwin_arm64:*:SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk", "darwin_arm64:*:CXXFLAGS=-fPIC -stdlib=libc++", + "darwin_*:x86_64-linux-gnu:CFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", + "darwin_*:x86_64-linux-gnu:CXXFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/$HOST -I$PREFIX/usr/include", + "darwin_*:x86_64-linux-gnu:LDFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -L$PREFIX/lib -L$PREFIX/usr/lib", + "darwin_*:aarch64-linux-gnu:CFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", + "darwin_*:aarch64-linux-gnu:CXXFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/$HOST -I$PREFIX/usr/include", + "darwin_*:aarch64-linux-gnu:LDFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -L$PREFIX/lib -L$PREFIX/usr/lib", + "darwin_*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/$HOST-gcc", + "darwin_*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", + "darwin_*:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/$HOST-gcc", + "darwin_*:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", "linux_*:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang", "*:*:ARFLAGS=" ] @@ -240,7 +248,7 @@ "*:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/bin/cc", "*:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/bin/c++", "linux_*:*-apple-*:ln -sf $NATIVEPREFIX/_/bin/llvm-strip $NATIVEPREFIX/bin/strip", - "*:*-apple-ios*:test -L $NATIVEPREFIX/bin/xcrun && mv $NATIVEPREFIX/bin/xcrun $NATIVEPREFIX/bin/xcrun.real", + "*:*-apple-ios*:test -L $NATIVEPREFIX/bin/xcrun && mv $NATIVEPREFIX/bin/xcrun $NATIVEPREFIX/bin/xcrun.real || true", "*:*-apple-ios*:cp -f $PATCH_DIR/rust-std/xcrun $NATIVEPREFIX/bin/xcrun", "*:*-apple-ios*:chmod +x $NATIVEPREFIX/bin/xcrun", "darwin_arm64:*:rm -f $NATIVEPREFIX/lib/libc++abi*.dylib $NATIVEPREFIX/lib/libunwind*.dylib", From 817d048f98e4fe64ff62aecb67a009e66de6eb80 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 22 Jul 2026 00:34:03 +0200 Subject: [PATCH 150/200] aHHHHHHHHHHHH --- packages/rust-std.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/rust-std.json b/packages/rust-std.json index 359f5b2..0450af4 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -89,7 +89,10 @@ "*:armv7a-linux-androideabi:CC_armv7_linux_androideabi=$RUST_CC", "*:armv7a-linux-androideabi:CXX_armv7_linux_androideabi=$RUST_CXX", "*:armv7a-linux-androideabi:AR_armv7_linux_androideabi=$RUST_AR", - "*:*:RUST_STD_PROFILE=std-native", + "*:*:RUST_STD_PROFILE=std", + "linux_amd64:x86_64-linux-gnu:RUST_STD_PROFILE=std-native", + "linux_arm64:aarch64-linux-gnu:RUST_STD_PROFILE=std-native", + "darwin_arm64:*:RUST_STD_PROFILE=std-native", "*:*-apple-*:RUST_STD_PROFILE=std-apple", "*:*-w64-mingw32:RUST_STD_PROFILE=std-mingw", "*:*android*:RUST_STD_PROFILE=std-android", From 71d3b8bc6d6ee3a9c7208b65ac0760aec6e755ad Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 24 Jul 2026 02:33:43 +0200 Subject: [PATCH 151/200] shenanigans --- packages/rust-std.json | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/packages/rust-std.json b/packages/rust-std.json index 0450af4..ad61fde 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -92,6 +92,8 @@ "*:*:RUST_STD_PROFILE=std", "linux_amd64:x86_64-linux-gnu:RUST_STD_PROFILE=std-native", "linux_arm64:aarch64-linux-gnu:RUST_STD_PROFILE=std-native", + "linux_amd64:aarch64-linux-gnu:RUST_STD_PROFILE=std-native", + "linux_arm64:x86_64-linux-gnu:RUST_STD_PROFILE=std-native", "darwin_arm64:*:RUST_STD_PROFILE=std-native", "*:*-apple-*:RUST_STD_PROFILE=std-apple", "*:*-w64-mingw32:RUST_STD_PROFILE=std-mingw", @@ -127,11 +129,13 @@ "LDFLAGS_armv7_linux_androideabi" ], "env": [ - "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", "*:*:CC=$NATIVEPREFIX/_/bin/clang", "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:aarch64-linux-gnu:HOST=x86_64-linux-gnu", + "linux_arm64:x86_64-linux-gnu:HOST=aarch64-linux-gnu", "darwin_arm64:*:SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk", "*:*:ARFLAGS=" ] @@ -161,11 +165,13 @@ "CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS" ], "env": [ - "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", "*:*:CC=$NATIVEPREFIX/_/bin/clang", "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:aarch64-linux-gnu:HOST=x86_64-linux-gnu", + "linux_arm64:x86_64-linux-gnu:HOST=aarch64-linux-gnu", "darwin_arm64:*:SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk", "darwin_arm64:*:CXXFLAGS=-fPIC -stdlib=libc++", "darwin_*:x86_64-linux-gnu:CFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", @@ -178,7 +184,18 @@ "darwin_*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", "darwin_*:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/$HOST-gcc", "darwin_*:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", - "linux_*:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang", + "linux_amd64:aarch64-linux-gnu:CFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", + "linux_amd64:aarch64-linux-gnu:CXXFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/$HOST -I$PREFIX/usr/include", + "linux_amd64:aarch64-linux-gnu:LDFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -L$PREFIX/lib -L$PREFIX/usr/lib", + "linux_amd64:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/$HOST-gcc", + "linux_amd64:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", + "linux_arm64:x86_64-linux-gnu:CFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", + "linux_arm64:x86_64-linux-gnu:CXXFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/$HOST -I$PREFIX/usr/include", + "linux_arm64:x86_64-linux-gnu:LDFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -L$PREFIX/lib -L$PREFIX/usr/lib", + "linux_arm64:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/$HOST-gcc", + "linux_arm64:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", + "linux_amd64:x86_64-linux-gnu:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang", + "linux_arm64:aarch64-linux-gnu:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang", "*:*:ARFLAGS=" ] }, @@ -209,7 +226,7 @@ "CFLAGS_x86_64_pc_windows_gnu", "CXXFLAGS_x86_64_pc_windows_gnu" ], "env": [ - "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", "*:*:CC=$NATIVEPREFIX/_/bin/clang", "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", @@ -236,7 +253,7 @@ "CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_RUSTFLAGS" ], "env": [ - "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", "*:*:CC=$NATIVEPREFIX/_/bin/clang", "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", From 862136e16ebb76f445cade9221d9908c3a7b6afb Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 24 Jul 2026 11:27:30 +0200 Subject: [PATCH 152/200] fix: platform detection in config.guess --- packages/rust-std.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/rust-std.json b/packages/rust-std.json index ad61fde..3ee5282 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -271,6 +271,8 @@ "*:*-apple-ios*:test -L $NATIVEPREFIX/bin/xcrun && mv $NATIVEPREFIX/bin/xcrun $NATIVEPREFIX/bin/xcrun.real || true", "*:*-apple-ios*:cp -f $PATCH_DIR/rust-std/xcrun $NATIVEPREFIX/bin/xcrun", "*:*-apple-ios*:chmod +x $NATIVEPREFIX/bin/xcrun", + "*:*:ln -sf $NATIVEPREFIX/bin/bash $NATIVEPREFIX/_/bin/sh", + "*:*:ln -sf $NATIVEPREFIX/bin/uname $NATIVEPREFIX/_/bin/uname", "darwin_arm64:*:rm -f $NATIVEPREFIX/lib/libc++abi*.dylib $NATIVEPREFIX/lib/libunwind*.dylib", "*:*:echo 'profile = \"library\"' > config.toml", "*:*:echo '[build]' >> config.toml", From e03b253678fd16475b584402aae3992b0635a09e Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 25 Jul 2026 00:05:59 +0200 Subject: [PATCH 153/200] apple fix --- packages/rust-std.json | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/rust-std.json b/packages/rust-std.json index 3ee5282..a27291c 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -226,9 +226,10 @@ "CFLAGS_x86_64_pc_windows_gnu", "CXXFLAGS_x86_64_pc_windows_gnu" ], "env": [ - "*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", - "*:*:CC=$NATIVEPREFIX/_/bin/clang", - "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "*:*:CC=$NATIVEPREFIX/bin/clang", + "*:*:CXX=$NATIVEPREFIX/bin/clang++", + "*:*:MACOSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION", "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", From 5c6048eae1d76460d53e2dfea9b47eea23bc25c7 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 25 Jul 2026 18:05:19 +0200 Subject: [PATCH 154/200] fix: linux fix osx-cross --- packages/native/osx-cross.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index 32d1baf..e851a46 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -64,7 +64,8 @@ "*:*-apple-*:SDK_VERSION=26.1", "*:*-apple-*:COMPRESSLEVEL=6", "darwin_arm64:*-apple-*:LDFLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld", - "linux_*:*-apple-*:LDFLAGS=$LDFLAGS -fuse-ld=lld", + "linux_*:*-apple-*:LDFLAGS=$LDFLAGS -fuse-ld=lld -L$NATIVEPREFIX/_/sysroot/lib", + "linux_*:*-apple-*:CPLUS_INCLUDE_PATH=$NATIVEPREFIX/_/include/c++/15.2.0:$NATIVEPREFIX/_/include/c++/15.2.0/$HOST", "linux_*:*-apple-*:CXXFLAGS=$CXXFLAGS -fuse-ld=lld" ], "steps": [ From 1cf40b65aa9ef0bcab9c00c9104bfeaa077bfe4e Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 25 Jul 2026 19:01:38 +0200 Subject: [PATCH 155/200] better _source_me --- pack/build.go | 14 +++++++++++++- pack/export_env.go | 10 ++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/pack/build.go b/pack/build.go index 739e0c1..5c604be 100644 --- a/pack/build.go +++ b/pack/build.go @@ -49,8 +49,20 @@ func (p *Package) ExtractEnv(host *host.Host, envPath string, envNativePath stri for k, v := range env { newEnv = append(newEnv, k+"="+v) } + exportEnv := p.GetExportEnv(host) + exportEnvLines := []string{} + for k, v := range exportEnv { + exportEnvLines = append(exportEnvLines, k+"="+v) + } os.MkdirAll(envPath, 0750) - writeDotEnv(envPath+"/_source_me", newEnv) + safeName := strings.ReplaceAll(p.Package, "/", "_") + if p.Type == "native" { + writeDotEnv(envNativePath+"/_source_me@"+safeName, newEnv) + writeDotEnv(envNativePath+"/_source_me_export@"+safeName, exportEnvLines) + } else { + writeDotEnv(envPath+"/_source_me@"+safeName, newEnv) + writeDotEnv(envPath+"/_source_me_export@"+safeName, exportEnvLines) + } } func (p *Package) DownloadSource(download *Download) { diff --git a/pack/export_env.go b/pack/export_env.go index e51ab98..06b28df 100644 --- a/pack/export_env.go +++ b/pack/export_env.go @@ -93,6 +93,16 @@ func (ctx *exportEnvContext) resolvedExportEnv(p *Package, h *host.Host) []EnvKV return result } +func (p *Package) GetExportEnv(h *host.Host) map[string]string { + ctx := newExportEnvContext() + kvs := ctx.resolvedExportEnv(p, h) + env := make(map[string]string, len(kvs)) + for _, e := range kvs { + env[e.K] = e.V + } + return env +} + func mergeResolvedExportEnv(env map[string]string, ctx *exportEnvContext, deps []*Package, h *host.Host) { for _, dep := range deps { for _, e := range ctx.resolvedExportEnv(dep, h) { From 218e97394c760916c6bea8b36419e9fff8a5e7d6 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 26 Jul 2026 21:43:19 +0200 Subject: [PATCH 156/200] disable python libxml2 --- packages/native/libxml2.json | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/native/libxml2.json b/packages/native/libxml2.json index 7fe1525..b92d1f9 100644 --- a/packages/native/libxml2.json +++ b/packages/native/libxml2.json @@ -13,13 +13,12 @@ "*:*:native/_/_", "*:*:native/bash", "*:*:native/make", - "*:*:native/pkgconf", - "*:*:native/python@3.14" + "*:*:native/pkgconf" ], "build": { "env": [], "steps": [ - "*:*:bash ./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure --prefix=$NATIVEPREFIX --without-python", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] From fb4026244886119a750dbe41ee26d2ffc8e35980 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 27 Jul 2026 10:37:49 +0200 Subject: [PATCH 157/200] fix: workaround protobuf use of (wrong?) CPP --- packages/native/_.json | 10 ++++++++-- packages/protobuf.json | 2 ++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/native/_.json b/packages/native/_.json index bccf0d7..cb7546f 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -193,8 +193,14 @@ "*:armv7a-linux-androideabi:CC=$NATIVEPREFIX/bin/armv7a-linux-androideabi21-clang", "*:armv7a-linux-androideabi:CXX=$NATIVEPREFIX/bin/armv7a-linux-androideabi21-clang++", "*:armv7a-linux-androideabi:CXXFLAGS=$CXXFLAGS -DLIBC_NO_FSEEKO", - "*:*:CPP=$CC $CFLAGS -E", - "*:*:CXXCPP=$CXX $CXXFLAGS -E", + "*:*:CPP=$CC -E", + "*:*:CXXCPP=$CXX -E", + "*:x86_64-w64-mingw32:CPP=x86_64-w64-mingw32-cpp $CFLAGS", + "*:x86_64-w64-mingw32:CXXCPP=x86_64-w64-mingw32-cpp $CXXFLAGS", + "*:x86_64-linux-gnu:CPP=x86_64-linux-gnu-cpp $CFLAGS", + "*:x86_64-linux-gnu:CXXCPP=x86_64-linux-gnu-cpp $CXXFLAGS", + "*:aarch64-linux-gnu:CPP=aarch64-linux-gnu-cpp $CFLAGS", + "*:aarch64-linux-gnu:CXXCPP=aarch64-linux-gnu-cpp $CXXFLAGS", "*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$CC", "*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", "*:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$CC", diff --git a/packages/protobuf.json b/packages/protobuf.json index b855a1d..314d71c 100644 --- a/packages/protobuf.json +++ b/packages/protobuf.json @@ -29,6 +29,8 @@ ], "build": { "env": [ + "*:*:CPP_FOR_BUILD=$CPP", + "*:*:CXXCPP_FOR_BUILD=$CXXCPP", "*:*:CXXFLAGS=$CXXFLAGS -std=c++11", "*:*:config_opts=--host=$HOST --prefix=$PREFIX", "*:*:config_opts=$config_opts --disable-shared --with-protoc=$NATIVEPREFIX/bin/protoc", From 819b708ef0775b42b366f00dfa258ca3f014df12 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 27 Jul 2026 23:02:57 +0200 Subject: [PATCH 158/200] fix: iconv: host override for iOSsim --- packages/libiconv.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/libiconv.json b/packages/libiconv.json index 9cfbe5b..3ab8c57 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -22,6 +22,7 @@ ], "build": { "env": [ + "*:aarch64-apple-ios-simulator:HOST=aarch64-apple-ios", "*:*:config_opts=--host=$HOST --prefix=$PREFIX --disable-nls --enable-static --disable-shared", "*:*:config_opts=$config_opts --disable-malloca", "*:*:config_opts=$config_opts", From 210dca4e7259331cec0f330aac04f2d67c3368f2 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 27 Jul 2026 23:55:40 +0200 Subject: [PATCH 159/200] fix: expat: iosSIM host --- packages/expat.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/expat.json b/packages/expat.json index ea39f28..12943cd 100644 --- a/packages/expat.json +++ b/packages/expat.json @@ -22,7 +22,9 @@ "*:*:libiconv" ], "build": { - "env": [], + "env": [ + "*:aarch64-apple-ios-simulator:HOST=aarch64-apple-ios" + ], "steps": [ "*:*:bash ./configure --host=$HOST --prefix=$PREFIX --disable-shared --without-docbook --without-tests --without-examples --enable-option-checking --without-xmlwf --with-pic", "*:*:make -j$NUM_CORES", From 210e1db41c775ceab7e2cd659c67ce3534b3caff Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 27 Jul 2026 23:58:28 +0200 Subject: [PATCH 160/200] fix: unbound: iosSIM --- packages/unbound.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/unbound.json b/packages/unbound.json index 13aa886..3ddae31 100644 --- a/packages/unbound.json +++ b/packages/unbound.json @@ -31,6 +31,7 @@ ], "build": { "env": [ + "*:aarch64-apple-ios-simulator:HOST=aarch64-apple-ios", "*:*:config_opts=--disable-shared --enable-static --without-pyunbound --prefix=$PREFIX --host=$HOST", "*:*:config_opts=$config_opts --with-libexpat=$PREFIX --with-ssl=$PREFIX --with-libevent=no", "*:*:config_opts=$config_opts --without-pythonmodule --disable-flto --with-pthreads --with-libunbound-only", From 6f491f1629cb3729af67dd42f2b8a755f8a3e27e Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 30 Jul 2026 10:57:57 +0200 Subject: [PATCH 161/200] eh? --- .gitignore | 5 +- packages/boost@1_83_0.json | 1 + packages/monero@fcmp-stage.json | 57 +++++++ packages/native/_/_.json | 5 + packages/sodium.json | 18 ++- .../monero@fcmp-stage/drop_translations.patch | 108 +++++++++++++ patches/monero@fcmp-stage/dummy_rt.patch | 19 +++ .../disable-glibc-getrandom-getentropy.patch | 17 +- patches/sodium/disable-simd-without-asm.patch | 20 +++ sources.json | 147 +++++++++++++++++- 10 files changed, 378 insertions(+), 19 deletions(-) create mode 100644 packages/monero@fcmp-stage.json create mode 100644 patches/monero@fcmp-stage/drop_translations.patch create mode 100644 patches/monero@fcmp-stage/dummy_rt.patch create mode 100644 patches/sodium/disable-simd-without-asm.patch diff --git a/.gitignore b/.gitignore index 8ce251b..b8d24b2 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,7 @@ .build ct-config .DS_Store -logs \ No newline at end of file +logs + +*.log +*.pid \ No newline at end of file diff --git a/packages/boost@1_83_0.json b/packages/boost@1_83_0.json index 77c1631..11b0e85 100644 --- a/packages/boost@1_83_0.json +++ b/packages/boost@1_83_0.json @@ -26,6 +26,7 @@ ], "build": { "env": [ + "*:*-linux-gnu*:CXXFLAGS=$CXXFLAGS -fPIC", "*:*-apple-ios*:target_os=iphone", "*:*-linux-android*:target_os=android", "*:*-mingw32*:target_os=windows", diff --git a/packages/monero@fcmp-stage.json b/packages/monero@fcmp-stage.json new file mode 100644 index 0000000..94032cc --- /dev/null +++ b/packages/monero@fcmp-stage.json @@ -0,0 +1,57 @@ +{ + "package": "monero@fcmp-stage", + "version": "fcmp-stage", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "450c789fbe47e3c8847bf928fad9e7c5ccf39d16", + "url": "https://github.com/seraphis-migration/monero.git" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/_", + "*:*:native/cmake", + "*:*:native/cmake-toolchain", + "*:*:native/curl", + "*:*:native/git", + "*:*:native/libpsl", + "*:*:native/libxml2", + "*:*:native/make", + "*:*:native/patch", + "*:*:native/pkgconf", + "*:*:native/protobuf", + "*:*:native/python@3.14", + "*:*:native/rust-toolchain", + "*:*:native/sed", + "*:*:boost@1_83_0", + "*:*:libiconv", + "*:*:openssl", + "*:*:protobuf", + "*:*:rust-std", + "*:*:sodium", + "*:*:unbound", + "*:*:zeromq", + "*:*:zlib" + ], + "patches": [ + "dummy_rt.patch", + "drop_translations.patch" + ], + "build": { + "env": [ + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" + ], + "steps": [ + "*:*:git submodule update --init --force", + "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/dummy_rt.patch", + "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/drop_translations.patch", + "*:*:mkdir -p build", + "*:*:cd build && cmake .. $config_opts", + "*:*:cd build && make -j1", + "*:*:cd build && make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/packages/native/_/_.json b/packages/native/_/_.json index 4d7e142..1ce23ee 100644 --- a/packages/native/_/_.json +++ b/packages/native/_/_.json @@ -50,6 +50,11 @@ "*:*:LDFLAGS=$LDFLAGS -fPIC", "*:*:CC_FOR_BUILD=$CC", "*:*:CXX_FOR_BUILD=$CXX", + "*:*:HOST_CC=$CC", + "*:*:HOST_CXX=$CXX", + "darwin_arm64:*:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$CC", + "linux_amd64:*:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$CC", + "linux_arm64:*:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$CC", "*:*:LDFLAGS=$LDFLAGS -L$NATIVEPREFIX/lib", "*:*:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$NATIVEPREFIX/lib", "*:*:LIBRARY_PATH=$LIBRARY_PATH:$NATIVEPREFIX/lib", diff --git a/packages/sodium.json b/packages/sodium.json index 106d2f0..7d3da59 100644 --- a/packages/sodium.json +++ b/packages/sodium.json @@ -1,39 +1,47 @@ { "package": "sodium", - "version": "1.0.18", + "version": "1.0.22", "type": "host", "download": [ { "kind": "tar.gz", - "sha256": "6f504490b342a4f8a4c4a02fc9b866cbef8622d5df4e5452b46be121e46636c1", - "url": "http://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz" + "sha256": "adbdd8f16149e81ac6078a03aca6fc03b592b89ef7b5ed83841c086191be3349", + "url": "http://download.libsodium.org/libsodium/releases/libsodium-1.0.22.tar.gz" } ], "dependencies": [ "*:*:native/_", + "*:*:native/autoconf", + "*:*:native/automake", "*:*:native/bash", "*:*:native/config", "*:*:native/coreutils", + "*:*:native/findutils", "*:*:native/gawk", "*:*:native/grep", + "*:*:native/libtool", "*:*:native/make", + "*:*:native/m4", "*:*:native/patch", + "*:*:native/perl", "*:*:native/sed" ], "patches": [ "disable-glibc-getrandom-getentropy.patch", + "disable-simd-without-asm.patch", "fix-whitespace.patch" ], "build": { "env": [ "*:*:config_opts=--host=$HOST --prefix=$PREFIX", - "*:*:config_opts=$config_opts --enable-static --disable-shared --with-pic" + "*:*:config_opts=$config_opts --enable-static --disable-shared --disable-asm --with-pic" ], "steps": [ "*:*:cp -f $NATIVEPREFIX/share/config/config.guess build-aux/", "*:*:cp -f $NATIVEPREFIX/share/config/config.sub build-aux/", "*:*:patch -p1 < $PATCH_DIR/sodium/disable-glibc-getrandom-getentropy.patch", - "*:*:patch -p1 < $PATCH_DIR/sodium/fix-whitespace.patch", + "*:*:patch -p1 < $PATCH_DIR/sodium/disable-simd-without-asm.patch", + "*:*:autoreconf --force --install", "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" diff --git a/patches/monero@fcmp-stage/drop_translations.patch b/patches/monero@fcmp-stage/drop_translations.patch new file mode 100644 index 0000000..fe9b5f3 --- /dev/null +++ b/patches/monero@fcmp-stage/drop_translations.patch @@ -0,0 +1,108 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -638,16 +638,11 @@ endfunction () + # Generate header for embedded translations + # Generate header for embedded translations, use target toolchain if depends, otherwise use the + # lrelease and lupdate binaries from the host +-include(ExternalProject) +-ExternalProject_Add(generate_translations_header +- SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/translations" +- BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/translations" +- STAMP_DIR ${LRELEASE_PATH} +- CMAKE_ARGS -DLRELEASE_PATH=${LRELEASE_PATH} +- INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "") ++add_subdirectory(translations) + include_directories("${CMAKE_CURRENT_BINARY_DIR}/translations") + add_subdirectory(external) + ++ + # Final setup for libunbound + include_directories(${UNBOUND_INCLUDE_DIR}) + +diff --git a/translations/CMakeLists.txt b/translations/CMakeLists.txt +index 4bc579aaa..ad37b8ba7 100644 +--- a/translations/CMakeLists.txt ++++ b/translations/CMakeLists.txt +@@ -30,54 +30,31 @@ cmake_minimum_required(VERSION 3.10) + + project(translations) + +-# when crosscompiling import the executable targets from a file +-IF(CMAKE_CROSSCOMPILING) +- message(WARNING "CrossCompiling") +- SET(IMPORT_EXECUTABLES "${CMAKE_CURRENT_BINARY_DIR}/ImportExecutables.cmake" CACHE FILEPATH "Point it to the export file from a native build") +- INCLUDE(${IMPORT_EXECUTABLES}) +-ENDIF(CMAKE_CROSSCOMPILING) +- +-# only build the generator if not crosscompiling +-IF(NOT CMAKE_CROSSCOMPILING) +- add_executable(generate_translations_header generate_translations_header.c) +-ENDIF(NOT CMAKE_CROSSCOMPILING) +- +-if(LRELEASE_PATH STREQUAL "") +- find_program(LRELEASE lrelease) +-else() +- set(LRELEASE ${LRELEASE_PATH}/lrelease) +-endif() +- +-if(LRELEASE STREQUAL "LRELEASE-NOTFOUND") +- set(ts_files "") +- message(WARNING "lrelease program not found, translation files not built") +-else() +- execute_process(COMMAND ${LRELEASE} -version +- RESULT_VARIABLE lrelease_ret) +- if(NOT lrelease_ret EQUAL "0") +- set(ts_files "") +- message(WARNING "lrelease program not working, translation files not built") +- else() +- file(GLOB ts_files RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" *.ts) +- foreach(ts_file ${ts_files}) +- string(REPLACE ".ts" ".qm" qm_file "${ts_file}") +- add_custom_command(TARGET generate_translations_header +- PRE_BUILD +- COMMAND ${LRELEASE} "${CMAKE_CURRENT_SOURCE_DIR}/${ts_file}" -qm "${qm_file}" +- WORKING_DIRECTORY "${CMAKE_CURRENT_BIN_DIR}") +- endforeach() +- endif() +-endif() +- +-string(REPLACE ".ts" ".qm" qm_files "${ts_files}") +- +-add_custom_command(TARGET generate_translations_header +- POST_BUILD +- COMMAND $ ${qm_files} +- WORKING_DIRECTORY "${CMAKE_CURRENT_BIN_DIR}" +- COMMENT "Generating embedded translations header") +- +-# export the generator target to a file, so it can be imported (see above) by another build +-IF(NOT CMAKE_CROSSCOMPILING) +- EXPORT(TARGETS generate_translations_header FILE ${CMAKE_CURRENT_BINARY_DIR}/ImportExecutables.cmake ) +-ENDIF(NOT CMAKE_CROSSCOMPILING) ++add_custom_target(generate_translations_header) ++ ++file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/translation_files.h" ++"#ifndef TRANSLATION_FILES_H ++#define TRANSLATION_FILES_H ++ ++#include ++ ++static const struct embedded_file { ++ const std::string *name; ++ const std::string *data; ++} embedded_files[] = { ++ {NULL, NULL} ++}; ++ ++static bool find_embedded_file(const std::string &name, std::string &data) { ++ const struct embedded_file *p; ++ for (p = embedded_files; p->name != NULL; p++) { ++ if (*p->name == name) { ++ data = *p->data; ++ return true; ++ } ++ } ++ return false; ++} ++ ++#endif /* TRANSLATION_FILES_H */ ++") diff --git a/patches/monero@fcmp-stage/dummy_rt.patch b/patches/monero@fcmp-stage/dummy_rt.patch new file mode 100644 index 0000000..d41ff6f --- /dev/null +++ b/patches/monero@fcmp-stage/dummy_rt.patch @@ -0,0 +1,19 @@ +--- a/CMakeLists.txt 2026-07-30 00:43:00 ++++ b/CMakeLists.txt 2026-07-30 00:43:00 +@@ -1005,6 +1005,16 @@ + set(EXTRA_LIBRARIES socket nsl resolv) + elseif(NOT DEPENDS) + find_library(RT rt) ++ if(NOT RT) ++ set(DUMMY_RT_SRC "${CMAKE_CURRENT_BINARY_DIR}/dummy_rt.c") ++ file(WRITE "${DUMMY_RT_SRC}" "/* dummy librt for targets without librt */\n") ++ add_library(dummy_rt STATIC "${DUMMY_RT_SRC}") ++ set_target_properties(dummy_rt PROPERTIES ++ OUTPUT_NAME "rt" ++ ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" ++ ) ++ set(RT dummy_rt) ++ endif() + find_library(Z z) + set(EXTRA_LIBRARIES ${RT} ${Z}) + endif() diff --git a/patches/sodium/disable-glibc-getrandom-getentropy.patch b/patches/sodium/disable-glibc-getrandom-getentropy.patch index 2f07c10..7c7e464 100644 --- a/patches/sodium/disable-glibc-getrandom-getentropy.patch +++ b/patches/sodium/disable-glibc-getrandom-getentropy.patch @@ -1,8 +1,8 @@ diff --git a/configure.ac b/configure.ac -index 9e2de27c..0fa85c2d 100644 +index 1111111..2222222 100644 --- a/configure.ac +++ b/configure.ac -@@ -807,6 +807,10 @@ AS_IF([test "x$EMSCRIPTEN" = "x"],[ +@@ -947,6 +947,10 @@ AS_IF([test "x$EMSCRIPTEN" = "x"],[ # include #endif ]], [[ @@ -11,15 +11,16 @@ index 9e2de27c..0fa85c2d 100644 +#endif + unsigned char buf; - (void) getrandom((void *) &buf, 1U, 0U); - ]])], -@@ -825,6 +829,9 @@ unsigned char buf; + if (&getrandom != NULL) { + (void) getrandom((void *) &buf, 1U, 0U); +@@ -971,6 +975,10 @@ AS_IF([test "x$EMSCRIPTEN" = "x"],[ # include #endif ]], [[ +#ifdef __linux__ +# error getentropy() is currently disabled on Linux to support glibc < 2.25 +#endif - #ifdef __APPLE__ - # error getentropy() is currently disabled on Apple operating systems - #endif ++ + unsigned char buf; + if (&getentropy != NULL) { + (void) getentropy((void *) &buf, 1U); diff --git a/patches/sodium/disable-simd-without-asm.patch b/patches/sodium/disable-simd-without-asm.patch new file mode 100644 index 0000000..4e2c7dc --- /dev/null +++ b/patches/sodium/disable-simd-without-asm.patch @@ -0,0 +1,20 @@ +diff --git a/configure.ac b/configure.ac +index 1111111..2222222 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -493,6 +493,7 @@ AC_LINK_IFELSE( + AS_IF([test "$have_armcrypto" = "yes"],[AC_DEFINE([HAVE_ARMCRYPTO], [1], [ARM crypto extensions are available])]) + ]) + ++ AS_IF([test "$enable_asm" != "no"], [ + oldcflags="$CFLAGS" + AX_CHECK_COMPILE_FLAG([-mmmx], [CFLAGS="$CFLAGS -mmmx"]) + AC_MSG_CHECKING(for MMX instructions set) +@@ -666,6 +667,7 @@ __m512i y = _mm512_permutexvar_epi64(_mm512_setr_epi64(0, 1, 4, 5, 2, 3, 6, 7 + ], + [AC_MSG_RESULT(no)]) + CFLAGS="$oldcflags" ++ ]) + + ]) + diff --git a/sources.json b/sources.json index 04283c8..0bd1342 100644 --- a/sources.json +++ b/sources.json @@ -1010,11 +1010,6 @@ "e0bd5e08395bcd5ae105ad279d8d3ba67e8b738b" ] }, - "https://github.com/justxd22/monero-ndk": { - "refs": [ - "f0894a6c06fc53542ab5505088f0a2feb5f14f4d" - ] - }, "https://github.com/libffi/libffi.git": { "refs": [ "e2eda0cf72a0598b44278cc91860ea402273fa29" @@ -1065,6 +1060,11 @@ "4b7c6d113fb89b755d762a88712c8a6873cddd47" ] }, + "https://github.com/seraphis-migration/monero.git": { + "refs": [ + "450c789fbe47e3c8847bf928fad9e7c5ccf39d16" + ] + }, "https://github.com/tpoechtrager/apple-libtapi.git": { "refs": [ "640b4623929c923c0468143ff2a363a48665fa54" @@ -2154,6 +2154,11 @@ "url": "https://download.oracle.com/berkeley-db/db-5.3.28.tar.gz", "sha256": "e0a992d740709892e81f9d93f06daf305cf73fb81b545afe72478043172c3628" }, + { + "kind": "tar.gz", + "url": "https://download.savannah.gnu.org/releases/freetype/freetype-2.14.1.tar.gz", + "sha256": "174d9e53402e1bf9ec7277e22ec199ba3e55a6be2c0740cb18c0ee9850fc8c34" + }, { "kind": "tar.gz", "url": "https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.46/pcre2-10.46.tar.gz", @@ -2169,6 +2174,11 @@ "url": "https://github.com/git/git/archive/refs/tags/v2.51.0.tar.gz", "sha256": "3524fc5fd81f16f80e1696a8281bd8ad831048b67848015d7b7382bf365ae685" }, + { + "kind": "tar.gz", + "url": "https://github.com/libffi/libffi/releases/download/v3.5.2/libffi-3.5.2.tar.gz", + "sha256": "f3a3082a23b37c293a4fcd1053147b371f2ff91fa7ea1b2a52e335676bac82dc" + }, { "kind": "tar.gz", "url": "https://github.com/ninja-build/ninja/archive/refs/tags/v1.13.1.tar.gz", @@ -2211,6 +2221,16 @@ "url": "https://github.com/westes/flex/releases/download/v2.6.4/flex-2.6.4.tar.gz", "sha256": "e87aae032bf07c26f85ac0ed3250998c37621d95f8bd748b31f15b33c45ee995" }, + { + "kind": "tar.gz", + "url": "https://github.com/xkbcommon/libxkbcommon/archive/refs/tags/xkbcommon-1.13.1.tar.gz", + "sha256": "aeb951964c2f7ecc08174cb5517962d157595e9e3f38fc4a130b91dc2f9fec18" + }, + { + "kind": "tar.gz", + "url": "https://gitlab.freedesktop.org/wayland/wayland/-/archive/1.25.0/wayland-1.25.0.tar.gz", + "sha256": "95413723f6cd0462770eda207a1c78d142d0a1bba9b0572a4ed1da6a9b27059c" + }, { "kind": "tar.gz", "url": "https://go.dev/dl/go1.25.0.src.tar.gz", @@ -2244,6 +2264,11 @@ "url": "https://sourceware.org/pub/bzip2/bzip2-1.0.8.tar.gz", "sha256": "ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269" }, + { + "kind": "tar.gz", + "url": "https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.12.6.tar.gz", + "sha256": "064b9ebf060c9e77011733ac9dc0e2ce92870b574cca2405e11f5353a683c334" + }, { "kind": "tar.gz", "url": "https://www.sqlite.org/2021/sqlite-autoconf-3350500.tar.gz", @@ -2254,6 +2279,31 @@ "url": "https://www.sqlite.org/2025/sqlite-autoconf-3510100.tar.gz", "sha256": "4f2445cd70479724d32ad015ec7fd37fbb6f6130013bd4bfbc80c32beb42b7e0" }, + { + "kind": "tar.gz", + "url": "https://xcb.freedesktop.org/dist/libxcb-1.17.0.tar.gz", + "sha256": "2c69287424c9e2128cb47ffe92171e10417041ec2963bceafb65cb3fcf8f0b85" + }, + { + "kind": "tar.gz", + "url": "https://xcb.freedesktop.org/dist/xcb-util-cursor-0.1.6.tar.gz", + "sha256": "eae38b2dfc5c529a886e507ef576b12d2a20aa1f149608e4853af760f31be60b" + }, + { + "kind": "tar.gz", + "url": "https://xorg.freedesktop.org/archive/individual/proto/xcb-proto-1.17.0.tar.gz", + "sha256": "392d3c9690f8c8202a68fdb89c16fd55159ab8d65000a6da213f4a1576e97a16" + }, + { + "kind": "tar.gz", + "url": "https://xorg.freedesktop.org/archive/individual/proto/xorgproto-2025.1.tar.gz", + "sha256": "d6f89f65bafb8c9b735e0515882b8a1511e8e864dde5e9513e191629369f2256" + }, + { + "kind": "tar.gz", + "url": "https://xorg.freedesktop.org/releases/individual/lib/libXau-1.0.12.tar.gz", + "sha256": "2402dd938da4d0a332349ab3d3586606175e19cb32cb9fe013c19f1dc922dcee" + }, { "kind": "tar.xz", "url": "http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.27.0.tar.xz", @@ -2264,6 +2314,11 @@ "url": "http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.28.0.tar.xz", "sha256": "5750e29a2bda5cd8d67900592576b1670a1987a4dcd5e4f6beae09138a1f5699" }, + { + "kind": "tar.xz", + "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-15.2.0/gcc-15.2.0.tar.xz", + "sha256": "438fd996826b0c82485a29da03a72d71d6e3541a83ec702df4271f6fe025d24e" + }, { "kind": "tar.xz", "url": "http://ftpmirror.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz", @@ -2299,6 +2354,11 @@ "url": "https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.15.9.tar.xz", "sha256": "e94f3af85492302f7a819441458f80bca0ad9912e5a4c83c699ff3c63c52957d" }, + { + "kind": "tar.xz", + "url": "https://dbus.freedesktop.org/releases/dbus/dbus-1.14.10.tar.xz", + "sha256": "ba1f21d2bd9d339da2d4aa8780c09df32fea87998b73da24f49ab9df1e36a50f" + }, { "kind": "tar.xz", "url": "https://download.gnome.org/sources/glib/2.86/glib-2.86.4.tar.xz", @@ -2314,6 +2374,48 @@ "url": "https://download.qemu.org/qemu-10.2.1.tar.xz", "sha256": "a3717477d8e2c84d630bfffbc20f6cd3293eb45aa1e6dac6d0cc27689991c9e1" }, + { + "kind": "tar.xz", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtbase-everywhere-src-6.11.1.tar.xz", + "sha256": "d9594a31228aa23ad6b531719a29b45f0f3989fe6c136d45767ea179f233c1ac", + "path": "qtbase" + }, + { + "kind": "tar.xz", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtmultimedia-everywhere-src-6.11.1.tar.xz", + "sha256": "390f8e52ddee3aca5c4de7eead900c84c4fa61ff6d1f0ebea9c7543365c09b0a", + "path": "qtmultimedia" + }, + { + "kind": "tar.xz", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtshadertools-everywhere-src-6.11.1.tar.xz", + "sha256": "2075052f9b23bcf9de045bbd180037084942f82cce870aab14a1454902c982fc", + "path": "qtshadertools" + }, + { + "kind": "tar.xz", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtsvg-everywhere-src-6.11.1.tar.xz", + "sha256": "7f3cf02f4824bf03c2c5859ea6db173bf1482a1daf24e6cdf7bc78cfa26a8a94", + "path": "qtsvg" + }, + { + "kind": "tar.xz", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qttools-everywhere-src-6.11.1.tar.xz", + "sha256": "8e61835a679c93fa9c6065b142353c2071ba68e297898937c32a03777fcaf50d", + "path": "qttools" + }, + { + "kind": "tar.xz", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtwayland-everywhere-src-6.11.1.tar.xz", + "sha256": "95788aa502f75441d4edf65932b235f76523084e13dbbb7b9ee2d207b32bd9b3", + "path": "qtwayland" + }, + { + "kind": "tar.xz", + "url": "https://download.qt.io/official_releases/qt/6.11/6.11.1/submodules/qtwebsockets-everywhere-src-6.11.1.tar.xz", + "sha256": "243e3aa11924c8c5c1645e892f62d013caa3766c57512ca926d5b58146646fbf", + "path": "qtwebsockets" + }, { "kind": "tar.xz", "url": "https://ftp.gnu.org/gnu/diffutils/diffutils-3.12.tar.xz", @@ -2379,10 +2481,45 @@ "url": "https://github.com/MrCyjaneK/easybs/releases/download/r0/clang21-x86_64-linux-gnu.tar.xz", "sha256": "bad39866fe2a91d1c399e09094c109c38ab911277f7c2367eb850cd423f7d78d" }, + { + "kind": "tar.xz", + "url": "https://github.com/MrCyjaneK/easybs/releases/download/r1/clang21-aarch64-apple-darwin.tar.xz", + "sha256": "80e16711526b83f323a1014479a19a816e24f785f30dd712b5be297cc9b604e1" + }, + { + "kind": "tar.xz", + "url": "https://github.com/llvm/llvm-project/releases/download/llvmorg-19.1.7/llvm-project-19.1.7.src.tar.xz", + "sha256": "82401fea7b79d0078043f7598b835284d6650a75b93e64b6f761ea7b63097501" + }, { "kind": "tar.xz", "url": "https://static.mrcyjanek.net/bootstrap/clang21-aarch64-apple-darwin.tar.xz", "sha256": "735e9433e8961ab960b9a7c68a1f4ded5d0a6eecf8de58cd7bad80550ae184f1" + }, + { + "kind": "tar.xz", + "url": "https://xcb.freedesktop.org/dist/xcb-util-0.4.1.tar.xz", + "sha256": "5abe3bbbd8e54f0fa3ec945291b7e8fa8cfd3cccc43718f8758430f94126e512" + }, + { + "kind": "tar.xz", + "url": "https://xcb.freedesktop.org/dist/xcb-util-image-0.4.1.tar.xz", + "sha256": "ccad8ee5dadb1271fd4727ad14d9bd77a64e505608766c4e98267d9aede40d3d" + }, + { + "kind": "tar.xz", + "url": "https://xcb.freedesktop.org/dist/xcb-util-keysyms-0.4.1.tar.xz", + "sha256": "7c260a5294412aed429df1da2f8afd3bd07b7cba3fec772fba15a613a6d5c638" + }, + { + "kind": "tar.xz", + "url": "https://xcb.freedesktop.org/dist/xcb-util-renderutil-0.3.10.tar.xz", + "sha256": "3e15d4f0e22d8ddbfbb9f5d77db43eacd7a304029bf25a6166cc63caa96d04ba" + }, + { + "kind": "tar.xz", + "url": "https://xcb.freedesktop.org/dist/xcb-util-wm-0.4.2.tar.xz", + "sha256": "62c34e21d06264687faea7edbf63632c9f04d55e72114aa4a57bb95e4f888a0b" } ] } \ No newline at end of file From 21813d694de60d9d48c03c1b14dba16cfbc8472a Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 1 Aug 2026 11:46:24 +0200 Subject: [PATCH 162/200] wip --- pack/build.go | 6 ++--- packages/monero@fcmp-stage.json | 10 ++++--- packages/native/_.json | 6 ++--- packages/native/_/_.json | 2 +- packages/ncurses.json | 11 ++++++-- packages/sodium.json | 1 + packages/unbound.json | 1 + patches/monero@fcmp-stage/remove_icu4c.patch | 28 ++++++++++++++++++++ 8 files changed, 53 insertions(+), 12 deletions(-) create mode 100644 patches/monero@fcmp-stage/remove_icu4c.patch diff --git a/pack/build.go b/pack/build.go index 5c604be..dac6d71 100644 --- a/pack/build.go +++ b/pack/build.go @@ -21,15 +21,15 @@ func (p *Package) EnsureBuilt(h *host.Host, buildDependencies bool) { buildPath := p.GenerateBuildPath(h, "built") + ".info.txt" info, err := os.ReadFile(buildPath) if err != nil { - log.Printf("[%s] No build cache found, building...", p.Package) + log.Printf("[%s][%s] No build cache found, building...", h.Triplet, p.Package) p.BuildPackage(h, true) return } if string(info) == p.GeneratePackageInfo(h) { - log.Printf("[%s] Build cache found, skipping build...", p.Package) + log.Printf("[%s][%s] Build cache found, skipping build...", h.Triplet, p.Package) return } - log.Printf("[%s] Build cache found, but info mismatch, rebuilding...", p.Package) + log.Printf("[%s][%s] Build cache found, but info mismatch, rebuilding...", h.Triplet, p.Package) p.BuildPackage(h, true) } diff --git a/packages/monero@fcmp-stage.json b/packages/monero@fcmp-stage.json index 94032cc..105eb3a 100644 --- a/packages/monero@fcmp-stage.json +++ b/packages/monero@fcmp-stage.json @@ -37,20 +37,24 @@ ], "patches": [ "dummy_rt.patch", - "drop_translations.patch" + "drop_translations.patch", + "remove_icu4c.patch" ], "build": { "env": [ "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE", - "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX" + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:*:config_opts=$config_opts -DDEPENDS=ON -DUSE_READLINE=OFF", + "*:*-android*:config_opts=$config_opts -DANDROID=ON" ], "steps": [ "*:*:git submodule update --init --force", "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/dummy_rt.patch", "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/drop_translations.patch", + "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/remove_icu4c.patch", "*:*:mkdir -p build", "*:*:cd build && cmake .. $config_opts", - "*:*:cd build && make -j1", + "*:*:cd build && make -j$NUM_CORES", "*:*:cd build && make DESTDIR=$STAGING_DIR install" ] } diff --git a/packages/native/_.json b/packages/native/_.json index cb7546f..502e514 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -54,7 +54,6 @@ "*:*-linux-gnu:PKG_CONFIG_SYSROOT_DIR=$PREFIX", "*:*-linux-gnu:PKG_CONFIG_LIBDIR=$NATIVEPREFIX/lib/pkgconfig:$PREFIX/lib/pkgconfig:$PREFIX/share/pkgconfig", "*:*-apple-darwin:QT_MAC_SDK_NO_VERSION_CHECK=1", - "*:*-w64-mingw32:WINDRES=$RC $RCFLAGS", "*:*-android*:ANDROID_NDK_ROOT=$NATIVEPREFIX", "*:*:LIBRARY_PATH=$LIBRARY_PATH:$PREFIX/lib", "*:aarch64-apple-darwin:RUST_TRIPLET=aarch64-apple-darwin", @@ -79,7 +78,7 @@ "*:x86_64-apple-darwin:CMAKE_SYSTEM_NAME=Darwin", "*:x86_64-apple-darwin:SDK_VERSION=26.1", "*:x86_64-apple-darwin:SDK_PATH=$NATIVEPREFIX/SDK/MacOSX$SDK_VERSION.sdk", - "*:x86_64-apple-darwin:OSX_MIN_VERSION=10.16", + "*:x86_64-apple-darwin:OSX_MIN_VERSION=13.0", "*:x86_64-apple-darwin:LD64_VERSION=609", "*:x86_64-apple-darwin:CC_target=x86_64-apple-darwin", "*:x86_64-apple-darwin:CC=$NATIVEPREFIX/bin/x86_64-apple-darwin-clang -mmacosx-version-min=$OSX_MIN_VERSION -isysroot $SDK_PATH -I$PREFIX/include", @@ -130,8 +129,9 @@ "*:*-apple-*:INSTALL_NAME_TOOL=$NATIVEPREFIX/_/bin/install_name_tool", "*:*-w64-mingw32:CMAKE_SYSTEM_NAME=Windows", "*:*-w64-mingw32:CC_target=$HOST", - "*:*-w64-mingw32:RC=$HOST-windres", + "*:*-w64-mingw32:RC=$NATIVEPREFIX/bin/$HOST-windres", "*:*-w64-mingw32:RCFLAGS=-I$PREFIX/sysroot/usr/$HOST/include -I$PREFIX/include -I$PREFIX/usr/include", + "*:*-w64-mingw32:WINDRES=$RC $RCFLAGS", "*:*-w64-mingw32:CC=$NATIVEPREFIX/bin/$HOST-gcc", "*:*-w64-mingw32:CXX=$NATIVEPREFIX/bin/$HOST-g++", "*:*-w64-mingw32:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/sysroot/usr/$HOST/include -I$PREFIX/include -I$PREFIX/usr/include", diff --git a/packages/native/_/_.json b/packages/native/_/_.json index 1ce23ee..97cd0dc 100644 --- a/packages/native/_/_.json +++ b/packages/native/_/_.json @@ -19,7 +19,7 @@ ] }, "export-env": [ - "darwin_arm64:*:OSX_MIN_VERSION=13", + "darwin_arm64:*:OSX_MIN_VERSION=13.0", "darwin_arm64:*:CC=$NATIVEPREFIX/_/bin/clang", "darwin_arm64:*:CXX=$NATIVEPREFIX/_/bin/clang++", "darwin_arm64:*:LDFLAGS=$LDFLAGS -stdlib=libc++ -lc++ -lc++abi", diff --git a/packages/ncurses.json b/packages/ncurses.json index 68e928b..3525e35 100644 --- a/packages/ncurses.json +++ b/packages/ncurses.json @@ -10,7 +10,13 @@ } ], "dependencies": [ - "*:*:native/_" + "*:*:native/_/_", + "*:*:native/_", + "*:*:native/sed", + "*:*:native/grep", + "*:*:native/make", + "*:*:native/gawk", + "*:*:native/bash" ], "patches": [ "fallback.c" @@ -51,6 +57,7 @@ "*:*:config_opts=$config_opts --disable-term-driver", "*:*:config_opts=$config_opts --enable-interop", "*:*:config_opts=$config_opts --enable-widec", + "*:*:config_opts=$config_opts --with-build-cc=$CC_FOR_BUILD", "*:*:SHOULD_BUILD=echo", "*:*-linux-*:SHOULD_BUILD=", "*:*-w64-mingw32:SHOULD_BUILD=", @@ -58,7 +65,7 @@ ], "steps": [ "*:*:$SHOULD_BUILD cp $PATCH_DIR/ncurses/fallback.c ncurses", - "*:*:$SHOULD_BUILD ./configure $config_opts", + "*:*:$SHOULD_BUILD bash ./configure $config_opts", "*:*:$SHOULD_BUILD make -j$NUM_CORES $build_opts", "*:*:$SHOULD_BUILD make install.libs DESTDIR=$STAGING_DIR" ] diff --git a/packages/sodium.json b/packages/sodium.json index 7d3da59..2c4ff65 100644 --- a/packages/sodium.json +++ b/packages/sodium.json @@ -33,6 +33,7 @@ ], "build": { "env": [ + "*:aarch64-apple-ios-simulator:HOST=aarch64-apple-ios", "*:*:config_opts=--host=$HOST --prefix=$PREFIX", "*:*:config_opts=$config_opts --enable-static --disable-shared --disable-asm --with-pic" ], diff --git a/packages/unbound.json b/packages/unbound.json index 3ddae31..0cf2aa1 100644 --- a/packages/unbound.json +++ b/packages/unbound.json @@ -37,6 +37,7 @@ "*:*:config_opts=$config_opts --without-pythonmodule --disable-flto --with-pthreads --with-libunbound-only", "*:*-linux-*:config_opts=$config_opts --with-pic", "*:*-w64-*:config_opts=$config_opts --enable-static-exe --sysconfdir=/etc --prefix=$PREFIX --target=$PREFIX", + "*:*-w64-*:config_opts=$config_opts --with-conf-file=$PREFIX/etc/unbound/unbound.conf --with-run-dir=$PREFIX/var/lib/unbound --with-rootkey-file=$PREFIX/etc/unbound/root.key --with-rootcert-file=$PREFIX/etc/unbound/icannbundle.pem", "*:x86_64-apple-darwin:config_opts=$config_opts ac_cv_func_SHA384_Init=yes", "*:*-linux-android*:config_opts=$config_opts ac_cv_type_pthread_spinlock_t=no", "*:*:config_opts=$config_opts ac_cv_func_getentropy=no" diff --git a/patches/monero@fcmp-stage/remove_icu4c.patch b/patches/monero@fcmp-stage/remove_icu4c.patch new file mode 100644 index 0000000..5b899e3 --- /dev/null +++ b/patches/monero@fcmp-stage/remove_icu4c.patch @@ -0,0 +1,28 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ccb2c34dc..cbc67f9fd 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -974,19 +974,16 @@ include_directories(SYSTEM ${Boost_INCLUDE_DIRS}) + if(MINGW) + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wa,-mbig-obj") + set(EXTRA_LIBRARIES mswsock;ws2_32;iphlpapi;crypt32;bcrypt) +- if(NOT DEPENDS) ++ if(DEPENDS) ++ set(ICU_LIBRARIES iconv) ++ else() + # This is an extremely ugly hack to get around Boost not being built with static ICU. + # We reported the issue, we are waiting for upstream to fix this issue: https://github.com/boostorg/boost/issues/1079#issue-3384962885 + # This hack links shared ICU libs to avoid linker errors we get in MSYS2 compilation (undefined symbols to ICU). + set(OLD_LIB_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) + set(CMAKE_FIND_LIBRARY_SUFFIXES ".dll.a") +- find_library(ICUIO_LIBRARIES NAMES icuio REQUIRED) +- find_library(ICUIN_LIBRARIES NAMES icuin REQUIRED) +- find_library(ICUUC_LIBRARIES NAMES icuuc REQUIRED) +- find_library(ICUDT_LIBRARIES NAMES icudt REQUIRED) +- find_library(ICUTU_LIBRARIES NAMES icutu REQUIRED) + find_library(ICONV_LIBRARIES NAMES iconv REQUIRED) +- set(ICU_LIBRARIES ${ICUIO_LIBRARIES} ${ICUIN_LIBRARIES} ${ICUUC_LIBRARIES} ${ICUDT_LIBRARIES} ${ICUTU_LIBRARIES} ${ICONV_LIBRARIES}) ++ set(ICU_LIBRARIES ${ICUIO_LIBRARIES} ${ICONV_LIBRARIES}) + set(CMAKE_FIND_LIBRARY_SUFFIXES ${OLD_LIB_SUFFIXES}) + endif() + elseif(APPLE OR OPENBSD OR ANDROID) From 06a8bed8bd9ceae59e9141684624390316e704f7 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 2 Aug 2026 13:02:11 +0200 Subject: [PATCH 163/200] aasaas --- packages/rust-std.json | 32 +++++++++++++++++++++++++++----- 1 file changed, 27 insertions(+), 5 deletions(-) diff --git a/packages/rust-std.json b/packages/rust-std.json index a27291c..6d66984 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -9,6 +9,14 @@ "url": "http://static.rust-lang.org/dist/rustc-1.95.0-src.tar.gz" } ], + "export-env": [ + "linux_arm64:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/cargo-linker-clang", + "linux_arm64:aarch64-linux-gnu:RUSTFLAGS=-Clinker=$NATIVEPREFIX/bin/cargo-linker-clang -Clink-arg=-L$NATIVEPREFIX/lib", + "linux_amd64:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/cargo-linker-clang", + "linux_amd64:x86_64-linux-gnu:RUSTFLAGS=-Clinker=$NATIVEPREFIX/bin/cargo-linker-clang -Clink-arg=-L$NATIVEPREFIX/lib", + "darwin_arm64:aarch64-apple-darwin:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$NATIVEPREFIX/bin/cargo-linker-clang", + "darwin_arm64:aarch64-apple-darwin:RUSTFLAGS=-Clinker=$NATIVEPREFIX/bin/cargo-linker-clang -Clink-arg=-L$NATIVEPREFIX/lib" + ], "dependencies": [ "*:*:native/_/_", "*:*:native/_", @@ -90,12 +98,16 @@ "*:armv7a-linux-androideabi:CXX_armv7_linux_androideabi=$RUST_CXX", "*:armv7a-linux-androideabi:AR_armv7_linux_androideabi=$RUST_AR", "*:*:RUST_STD_PROFILE=std", - "linux_amd64:x86_64-linux-gnu:RUST_STD_PROFILE=std-native", - "linux_arm64:aarch64-linux-gnu:RUST_STD_PROFILE=std-native", + "linux_amd64:x86_64-linux-gnu:RUST_STD_PROFILE=", + "linux_amd64:x86_64-linux-gnu:RUST_LLVM_PROFILE=", + "linux_arm64:aarch64-linux-gnu:RUST_STD_PROFILE=", + "linux_arm64:aarch64-linux-gnu:RUST_LLVM_PROFILE=", "linux_amd64:aarch64-linux-gnu:RUST_STD_PROFILE=std-native", "linux_arm64:x86_64-linux-gnu:RUST_STD_PROFILE=std-native", "darwin_arm64:*:RUST_STD_PROFILE=std-native", "*:*-apple-*:RUST_STD_PROFILE=std-apple", + "darwin_arm64:aarch64-apple-darwin:RUST_STD_PROFILE=", + "darwin_arm64:aarch64-apple-darwin:RUST_LLVM_PROFILE=", "*:*-w64-mingw32:RUST_STD_PROFILE=std-mingw", "*:*android*:RUST_STD_PROFILE=std-android", "*:*android*:RUST_LLVM_PROFILE=llvm", @@ -296,6 +308,7 @@ "*:*:echo 'ninja = true' >> config.toml", "*:*:echo 'download-ci-llvm = false' >> config.toml", "*:*:echo 'libzstd = false' >> config.toml", + "linux_arm64:aarch64-linux-gnu:sed -i 's/download-ci-llvm = false/download-ci-llvm = true/; s/libzstd = false/libzstd = true/' config.toml", "*:*:@$RUST_LLVM_PROFILE python3 ./x.py build llvm -j$NUM_CORES", "*:*:@$RUST_STD_PROFILE python3 ./x.py build library/std --stage 1 --target $RUST_TRIPLET -j$NUM_CORES", "linux_*:*-apple-*:ln -sf $RUST_CC $NATIVEPREFIX/bin/cc", @@ -306,9 +319,18 @@ "*:*-apple-ios*:cp -f $PATCH_DIR/rust-std/xcrun $STAGING_DIR$NATIVEPREFIX/bin/xcrun", "*:*-apple-ios*:chmod +x $STAGING_DIR$NATIVEPREFIX/bin/xcrun", "*:*:touch $STAGING_DIR$NATIVEPREFIX/bin/.keep", - "*:*:$NATIVEPREFIX/bin/rm -rf $STAGING_DIR$NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET", - "*:*:$NATIVEPREFIX/bin/cp -a build/*/stage1/lib/rustlib/$RUST_TRIPLET $STAGING_DIR$NATIVEPREFIX/lib/rustlib/", - "*:*:test \"$BUILD_TRIPLET\" = \"$RUST_TRIPLET\" || $NATIVEPREFIX/bin/cp -a $NATIVEPREFIX/lib/rustlib/$BUILD_TRIPLET $STAGING_DIR$NATIVEPREFIX/lib/rustlib/" + "linux_amd64:x86_64-linux-gnu:printf '#!/bin/sh\\nexec \"$NATIVEPREFIX/bin/x86_64-linux-gnu-gcc\" --sysroot=\"$PREFIX/sysroot\" \"$@\"\\n' > $STAGING_DIR$NATIVEPREFIX/bin/cargo-linker-clang", + "linux_amd64:x86_64-linux-gnu:chmod +x $STAGING_DIR$NATIVEPREFIX/bin/cargo-linker-clang", + "linux_amd64:x86_64-linux-gnu:cp -a $NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET $STAGING_DIR$NATIVEPREFIX/lib/rustlib/", + "linux_arm64:aarch64-linux-gnu:printf '#!/bin/sh\\nexec \"$NATIVEPREFIX/bin/aarch64-linux-gnu-gcc\" --sysroot=\"$PREFIX/sysroot\" \"$@\"\\n' > $STAGING_DIR$NATIVEPREFIX/bin/cargo-linker-clang", + "linux_arm64:aarch64-linux-gnu:chmod +x $STAGING_DIR$NATIVEPREFIX/bin/cargo-linker-clang", + "linux_arm64:aarch64-linux-gnu:cp -a $NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET $STAGING_DIR$NATIVEPREFIX/lib/rustlib/", + "darwin_arm64:aarch64-apple-darwin:printf '#!/bin/sh\\nexec \"$NATIVEPREFIX/bin/aarch64-apple-darwin-clang\" -mmacosx-version-min=13.0 -isysroot \"$NATIVEPREFIX/SDK/MacOSX26.1.sdk\" -L\"$PREFIX/lib\" -lc++ -lc++abi \"$@\"\\n' > $STAGING_DIR$NATIVEPREFIX/bin/cargo-linker-clang", + "darwin_arm64:aarch64-apple-darwin:chmod +x $STAGING_DIR$NATIVEPREFIX/bin/cargo-linker-clang", + "darwin_arm64:aarch64-apple-darwin:cp -a $NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET $STAGING_DIR$NATIVEPREFIX/lib/rustlib/", + "*:*:@$RUST_STD_PROFILE $NATIVEPREFIX/bin/rm -rf $STAGING_DIR$NATIVEPREFIX/lib/rustlib/$RUST_TRIPLET", + "*:*:@$RUST_STD_PROFILE $NATIVEPREFIX/bin/cp -a build/*/stage1/lib/rustlib/$RUST_TRIPLET $STAGING_DIR$NATIVEPREFIX/lib/rustlib/", + "*:*:@$RUST_STD_PROFILE test \"$BUILD_TRIPLET\" = \"$RUST_TRIPLET\" || $NATIVEPREFIX/bin/cp -a $NATIVEPREFIX/lib/rustlib/$BUILD_TRIPLET $STAGING_DIR$NATIVEPREFIX/lib/rustlib/" ] } } From d0c4edb557a8add732c6fe9a8235c267175af49b Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 2 Aug 2026 20:22:04 +0200 Subject: [PATCH 164/200] ios patch --- packages/monero@fcmp-stage.json | 1 + patches/monero@fcmp-stage/447.patch | 30 +++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 patches/monero@fcmp-stage/447.patch diff --git a/packages/monero@fcmp-stage.json b/packages/monero@fcmp-stage.json index 105eb3a..1ba1ef7 100644 --- a/packages/monero@fcmp-stage.json +++ b/packages/monero@fcmp-stage.json @@ -52,6 +52,7 @@ "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/dummy_rt.patch", "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/drop_translations.patch", "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/remove_icu4c.patch", + "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/447.patch", "*:*:mkdir -p build", "*:*:cd build && cmake .. $config_opts", "*:*:cd build && make -j$NUM_CORES", diff --git a/patches/monero@fcmp-stage/447.patch b/patches/monero@fcmp-stage/447.patch new file mode 100644 index 0000000..b2bf9b5 --- /dev/null +++ b/patches/monero@fcmp-stage/447.patch @@ -0,0 +1,30 @@ +From 64178a58dc3f3cc4a6d686b37796231818d47a60 Mon Sep 17 00:00:00 2001 +From: Czarek Nakamoto +Date: Mon, 27 Jul 2026 14:15:44 +0200 +Subject: [PATCH] fix: use correct rust target for iOS and iOS simulator + +--- + src/fcmp_pp/fcmp_pp_rust/CMakeLists.txt | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +diff --git a/src/fcmp_pp/fcmp_pp_rust/CMakeLists.txt b/src/fcmp_pp/fcmp_pp_rust/CMakeLists.txt +index 3e2229f07be..6479d631c4b 100644 +--- a/src/fcmp_pp/fcmp_pp_rust/CMakeLists.txt ++++ b/src/fcmp_pp/fcmp_pp_rust/CMakeLists.txt +@@ -44,7 +44,15 @@ if(MINGW) + set(RUST_PLATFORM "pc-windows") + set(RUST_TOOLCHAIN "-gnu") + elseif(APPLE) +- set(RUST_PLATFORM "apple-darwin") ++ if(CMAKE_SYSTEM_NAME STREQUAL "iOS") ++ if(CMAKE_OSX_SYSROOT MATCHES "i[pP]hone[sS]imulator") ++ set(RUST_PLATFORM "apple-ios-sim") ++ else() ++ set(RUST_PLATFORM "apple-ios") ++ endif() ++ else() ++ set(RUST_PLATFORM "apple-darwin") ++ endif() + set(RUST_TOOLCHAIN "") + elseif(FREEBSD) + set(RUST_PLATFORM "unknown-freebsd") From 91f33785859d30ccca13277ae1b6e442abea978b Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Mon, 3 Aug 2026 00:12:01 +0200 Subject: [PATCH 165/200] wip --- packages/monero@fcmp-stage.json | 52 +++++++++++++- .../fix-ios-depends-build.patch | 69 +++++++++++++++++++ sources.json | 36 ++++++++++ 3 files changed, 154 insertions(+), 3 deletions(-) create mode 100644 patches/monero@fcmp-stage/fix-ios-depends-build.patch diff --git a/packages/monero@fcmp-stage.json b/packages/monero@fcmp-stage.json index 1ba1ef7..bc97a84 100644 --- a/packages/monero@fcmp-stage.json +++ b/packages/monero@fcmp-stage.json @@ -7,6 +7,48 @@ "kind": "git", "sha256": "450c789fbe47e3c8847bf928fad9e7c5ccf39d16", "url": "https://github.com/seraphis-migration/monero.git" + }, + { + "kind": "git", + "path": "external/gtest", + "sha256": "b514bdc898e2951020cbdca1304b75f5950d1f59", + "url": "https://github.com/google/googletest.git" + }, + { + "kind": "git", + "path": "external/mx25519", + "sha256": "e808a6406b254091f4ed83bf8ea35f032da7f0b7", + "url": "https://github.com/jeffro256/mx25519.git" + }, + { + "kind": "git", + "path": "external/miniupnp", + "sha256": "544e6fcc73c5ad9af48a8985c94f0f1d742ef2e0", + "url": "https://github.com/miniupnp/miniupnp.git" + }, + { + "kind": "git", + "path": "external/randomx", + "sha256": "102f8acf90a7649ada410de5499a7ec62e49e1da", + "url": "https://github.com/tevador/RandomX.git" + }, + { + "kind": "git", + "path": "external/rapidjson", + "sha256": "129d19ba7f496df5e33658527a7158c79b99c21c", + "url": "https://github.com/Tencent/rapidjson.git" + }, + { + "kind": "git", + "path": "external/supercop", + "sha256": "633500ad8c8759995049ccd022107d1fa8a1bbc9", + "url": "https://github.com/monero-project/supercop.git" + }, + { + "kind": "git", + "path": "external/rapidjson/thirdparty/gtest", + "sha256": "0a439623f75c029912728d80cb7f1b8b48739ca4", + "url": "https://github.com/google/googletest.git" } ], "dependencies": [ @@ -38,21 +80,25 @@ "patches": [ "dummy_rt.patch", "drop_translations.patch", - "remove_icu4c.patch" + "remove_icu4c.patch", + "447.patch", + "fix-ios-depends-build.patch" ], "build": { "env": [ "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE", "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", - "*:*:config_opts=$config_opts -DDEPENDS=ON -DUSE_READLINE=OFF", + "*:*:config_opts=$config_opts -DDEPENDS=ON", + "*:*:config_opts=$config_opts -DMANUAL_SUBMODULES=1", + "*:*:config_opts=$config_opts -DUSE_READLINE=OFF", "*:*-android*:config_opts=$config_opts -DANDROID=ON" ], "steps": [ - "*:*:git submodule update --init --force", "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/dummy_rt.patch", "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/drop_translations.patch", "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/remove_icu4c.patch", "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/447.patch", + "*:*:patch -p1 < $PATCH_DIR/monero@fcmp-stage/fix-ios-depends-build.patch", "*:*:mkdir -p build", "*:*:cd build && cmake .. $config_opts", "*:*:cd build && make -j$NUM_CORES", diff --git a/patches/monero@fcmp-stage/fix-ios-depends-build.patch b/patches/monero@fcmp-stage/fix-ios-depends-build.patch new file mode 100644 index 0000000..87ca87c --- /dev/null +++ b/patches/monero@fcmp-stage/fix-ios-depends-build.patch @@ -0,0 +1,69 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -52,10 +52,6 @@ if (POLICY CMP0179) + cmake_policy(SET CMP0179 NEW) + endif() + +-if (IOS) +- INCLUDE(CmakeLists_IOS.txt) +-endif() +- + project(monero) + + option (USE_COMPILER_CACHE "Use compiler cache if a usable instance is found (sccache/ccache)" ON) +diff --git a/src/cryptonote_basic/CMakeLists.txt b/src/cryptonote_basic/CMakeLists.txt +--- a/src/cryptonote_basic/CMakeLists.txt ++++ b/src/cryptonote_basic/CMakeLists.txt +@@ -28,7 +28,11 @@ + + if(APPLE) + if(DEPENDS) +- list(APPEND EXTRA_LIBRARIES "-framework Foundation -framework ApplicationServices -framework AppKit -framework IOKit") ++ if(${CMAKE_SYSTEM_NAME} STREQUAL "iOS") ++ list(APPEND EXTRA_LIBRARIES "-framework Foundation -framework IOKit") ++ else() ++ list(APPEND EXTRA_LIBRARIES "-framework Foundation -framework ApplicationServices -framework AppKit -framework IOKit") ++ endif() + else() + find_library(IOKIT_LIBRARY IOKit) + mark_as_advanced(IOKIT_LIBRARY) +diff --git a/src/cryptonote_basic/miner.cpp b/src/cryptonote_basic/miner.cpp +--- a/src/cryptonote_basic/miner.cpp ++++ b/src/cryptonote_basic/miner.cpp +@@ -46,7 +46,7 @@ + #include "boost/logic/tribool.hpp" + #include + +-#ifdef __APPLE__ ++#if defined(__APPLE__) && !defined(TARGET_OS_IPHONE) + #include + #include + #include +@@ -885,7 +885,7 @@ namespace cryptonote + + return true; + +- #elif defined(__APPLE__) ++ #elif defined(__APPLE__) && !defined(TARGET_OS_IPHONE) + + mach_msg_type_number_t count; + kern_return_t status; +@@ -951,7 +951,7 @@ namespace cryptonote + return true; + } + +- #elif (defined(__linux__) && defined(_SC_CLK_TCK)) || defined(__APPLE__) || defined(__FreeBSD__) ++ #elif (defined(__linux__) && defined(_SC_CLK_TCK)) || (defined(__APPLE__) && !defined(TARGET_OS_IPHONE)) || defined(__FreeBSD__) + + struct tms tms; + if ( times(&tms) != (clock_t)-1 ) +@@ -980,7 +980,7 @@ namespace cryptonote + return boost::logic::tribool(power_status.ACLineStatus != 1); + } + +- #elif defined(__APPLE__) ++ #elif defined(__APPLE__) && !defined(TARGET_OS_IPHONE) + + #if TARGET_OS_MAC && (!defined(MAC_OS_X_VERSION_MIN_REQUIRED) || MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_7) + return boost::logic::tribool(IOPSGetTimeRemainingEstimate() != kIOPSTimeRemainingUnlimited); diff --git a/sources.json b/sources.json index 0bd1342..6fd6146 100644 --- a/sources.json +++ b/sources.json @@ -978,6 +978,11 @@ "919e9e64cc4b20f5a1e4df1e38cce1bfe15aff09" ] }, + "https://github.com/Tencent/rapidjson.git": { + "refs": [ + "129d19ba7f496df5e33658527a7158c79b99c21c" + ] + }, "https://github.com/besser82/libxcrypt": { "refs": [ "55ea777e8d567e5e86ffac917c28815ac54cc341" @@ -989,6 +994,12 @@ "a3fef85781d3cda0b27388916f3287826aeec177" ] }, + "https://github.com/google/googletest.git": { + "refs": [ + "0a439623f75c029912728d80cb7f1b8b48739ca4", + "b514bdc898e2951020cbdca1304b75f5950d1f59" + ] + }, "https://github.com/guillemj/libmd.git": { "refs": [ "d5b8e853989a73f8fff9dc4e00dccd0b691b84f9" @@ -1005,6 +1016,11 @@ "8c63d71ff886bda90c86db28466287f977374237" ] }, + "https://github.com/jeffro256/mx25519.git": { + "refs": [ + "e808a6406b254091f4ed83bf8ea35f032da7f0b7" + ] + }, "https://github.com/julian-klode/triehash.git": { "refs": [ "e0bd5e08395bcd5ae105ad279d8d3ba67e8b738b" @@ -1040,6 +1056,16 @@ "e0fa23f1a3cb1eb1407165bd2fc36d2f6e6ad728" ] }, + "https://github.com/miniupnp/miniupnp.git": { + "refs": [ + "544e6fcc73c5ad9af48a8985c94f0f1d742ef2e0" + ] + }, + "https://github.com/monero-project/supercop.git": { + "refs": [ + "633500ad8c8759995049ccd022107d1fa8a1bbc9" + ] + }, "https://github.com/nodejs/node.git": { "refs": [ "1da054d99bb16d35c54d759f36ccc125b90070bd" @@ -1065,6 +1091,11 @@ "450c789fbe47e3c8847bf928fad9e7c5ccf39d16" ] }, + "https://github.com/tevador/RandomX.git": { + "refs": [ + "102f8acf90a7649ada410de5499a7ec62e49e1da" + ] + }, "https://github.com/tpoechtrager/apple-libtapi.git": { "refs": [ "640b4623929c923c0468143ff2a363a48665fa54" @@ -1679,6 +1710,11 @@ "url": "http://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz", "sha256": "6f504490b342a4f8a4c4a02fc9b866cbef8622d5df4e5452b46be121e46636c1" }, + { + "kind": "tar.gz", + "url": "http://download.libsodium.org/libsodium/releases/libsodium-1.0.22.tar.gz", + "sha256": "adbdd8f16149e81ac6078a03aca6fc03b592b89ef7b5ed83841c086191be3349" + }, { "kind": "tar.gz", "url": "http://download.savannah.nongnu.org/releases/libunwind/libunwind-1.5.0.tar.gz", From 0547208bc0874a261c33d4fba416e64aaed95082 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 5 Aug 2026 08:14:31 +0200 Subject: [PATCH 166/200] tmp --- packages/native/rust@1_90_0.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/native/rust@1_90_0.json b/packages/native/rust@1_90_0.json index e7e2cd2..c8ed755 100644 --- a/packages/native/rust@1_90_0.json +++ b/packages/native/rust@1_90_0.json @@ -18,8 +18,8 @@ "*:*:native/openssl", "*:*:native/pkgconf", "*:*:native/python@3.11", - "*_amd64:*:native/rust@1_90_0-mrustc", - "*_arm64:*:native/rust@1_90_0-bin" + "none:*:native/rust@1_90_0-mrustc", + "*:*:native/rust@1_90_0-bin" ], "build": { "env": [ From 5dca003e1a5b7bcb0300d16321bc71bb6ae32aae Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 5 Aug 2026 02:46:36 -0400 Subject: [PATCH 167/200] Revert "tmp" This reverts commit 0547208bc0874a261c33d4fba416e64aaed95082. --- packages/native/rust@1_90_0.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/native/rust@1_90_0.json b/packages/native/rust@1_90_0.json index c8ed755..e7e2cd2 100644 --- a/packages/native/rust@1_90_0.json +++ b/packages/native/rust@1_90_0.json @@ -18,8 +18,8 @@ "*:*:native/openssl", "*:*:native/pkgconf", "*:*:native/python@3.11", - "none:*:native/rust@1_90_0-mrustc", - "*:*:native/rust@1_90_0-bin" + "*_amd64:*:native/rust@1_90_0-mrustc", + "*_arm64:*:native/rust@1_90_0-bin" ], "build": { "env": [ From b5404555743da132eb5d7367dbf3d859e64ac337 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 5 Aug 2026 17:12:50 -0400 Subject: [PATCH 168/200] build fixes --- packages/native/openssl.json | 2 +- packages/native/rust@1_90_0-mrustc.json | 1 + packages/native/rust@1_90_0.json | 1 + packages/openssl.json | 2 +- 4 files changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/native/openssl.json b/packages/native/openssl.json index e8ecc95..16b31e7 100644 --- a/packages/native/openssl.json +++ b/packages/native/openssl.json @@ -16,7 +16,7 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$NATIVEPREFIX --openssldir=$NATIVEPREFIX/etc/openssl --libdir=$NATIVEPREFIX/lib", + "*:*:config_opts=--prefix=$NATIVEPREFIX --openssldir=$NATIVEPREFIX/etc/openssl --libdir=lib", "*:*:config_opts=$config_opts no-capieng", "*:*:config_opts=$config_opts no-dso", "*:*:config_opts=$config_opts no-dtls1", diff --git a/packages/native/rust@1_90_0-mrustc.json b/packages/native/rust@1_90_0-mrustc.json index 2c404aa..b2847cd 100644 --- a/packages/native/rust@1_90_0-mrustc.json +++ b/packages/native/rust@1_90_0-mrustc.json @@ -40,6 +40,7 @@ "env": [ "*:*:SHELL=$NATIVEPREFIX/bin/bash", "*:*:PARLEVEL=$NUM_CORES", + "*:*:OPENSSL_DIR=$NATIVEPREFIX", "linux_arm64:*:RUSTC_TARGET=aarch64-unknown-linux-gnu" ], "steps": [ diff --git a/packages/native/rust@1_90_0.json b/packages/native/rust@1_90_0.json index e7e2cd2..9f6c8b4 100644 --- a/packages/native/rust@1_90_0.json +++ b/packages/native/rust@1_90_0.json @@ -24,6 +24,7 @@ "build": { "env": [ "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH", + "*:*:OPENSSL_DIR=$NATIVEPREFIX", "linux_amd64:*:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", "linux_amd64:*:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang -Clink-arg=-L$NATIVEPREFIX/lib", "linux_arm64:*:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/_/bin/clang", diff --git a/packages/openssl.json b/packages/openssl.json index 2fb8083..66b5657 100644 --- a/packages/openssl.json +++ b/packages/openssl.json @@ -26,7 +26,7 @@ "*:*-android*:CC=clang", "*:*-android*:AR=ar", "*:*-android*:RANLIB=ranlib", - "*:*:config_opts=--prefix=$PREFIX --openssldir=$PREFIX/etc/openssl --libdir=$PREFIX/lib", + "*:*:config_opts=--prefix=$PREFIX --openssldir=$PREFIX/etc/openssl --libdir=lib", "*:*:config_opts=$config_opts no-ec_nistp_64_gcc_128", "*:*:config_opts=$config_opts no-gost", "*:*:config_opts=$config_opts no-md2", From a95e437f3373d197a602a10a99e91b9224fd0d97 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 7 Aug 2026 02:01:24 -0400 Subject: [PATCH 169/200] fix: x64 --- packages/native/osx-cross.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index e851a46..c087d31 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -65,7 +65,6 @@ "*:*-apple-*:COMPRESSLEVEL=6", "darwin_arm64:*-apple-*:LDFLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld", "linux_*:*-apple-*:LDFLAGS=$LDFLAGS -fuse-ld=lld -L$NATIVEPREFIX/_/sysroot/lib", - "linux_*:*-apple-*:CPLUS_INCLUDE_PATH=$NATIVEPREFIX/_/include/c++/15.2.0:$NATIVEPREFIX/_/include/c++/15.2.0/$HOST", "linux_*:*-apple-*:CXXFLAGS=$CXXFLAGS -fuse-ld=lld" ], "steps": [ @@ -80,8 +79,10 @@ "*:*-apple-*:mv $NATIVEPREFIX/share/xcode-sdk/*${SDK_VERSION}* tarballs", "darwin_arm64:*-apple-*:sed -i.bak 's|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1 -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX${SDK_VERSION}.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION -DHOST_LINK_VERSION=711 -DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld -DCMAKE_SHARED_LINKER_FLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld|' build_clang.sh", "linux_*:*-apple-*:sed -i.bak 's|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1 -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX${SDK_VERSION}.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION|' build_clang.sh", + "linux_*:*-apple-*:sed -i.bak 's|export CFLAGS=\"\"|export CFLAGS=\"--gcc-toolchain=$NATIVEPREFIX/_/libexec/gcc-toolchain --sysroot=$NATIVEPREFIX/_/sysroot\"|' build_clang.sh", + "linux_*:*-apple-*:sed -i.bak 's|export CXXFLAGS=\"\"|export CXXFLAGS=\"--gcc-toolchain=$NATIVEPREFIX/_/libexec/gcc-toolchain --sysroot=$NATIVEPREFIX/_/sysroot\"|' build_clang.sh", "*:*-apple-*:export PATH=$PWD/wrapper/bin:$PATH && CC=$NATIVEPREFIX/_/bin/clang-21 CXX=$NATIVEPREFIX/_/bin/clang++-21 LDFLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld yes | INSTALLPREFIX=$NATIVEPREFIX ./build_apple_clang.sh", - "*:*-apple-*:cd build/clang-21/build_stage3 && make install DESTDIR=$STAGING_DIR && make install", + "*:*-apple-*:cd build/clang-21/build_stage3 && make -j$NUM_CORES install DESTDIR=$STAGING_DIR && make -j$NUM_CORES install", "*:*-apple-*:sed -i.bak 's/## Compiler test ##/exit 0/g' build.sh", "*:*-apple-*:export PATH=$PWD/wrapper/bin:$PATH && OCDEBUG=1 TARGET_DIR=$STAGING_DIR$NATIVEPREFIX bash -x ./build.sh", "*:*-apple-*:rm $STAGING_DIR$NATIVEPREFIX/bin/*pkg-config" From e14af40efb1ee40430f835a35622e338422d40b0 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Fri, 7 Aug 2026 08:29:09 -0400 Subject: [PATCH 170/200] uhhh --- packages/native/rust@1_90_0-mrustc.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/native/rust@1_90_0-mrustc.json b/packages/native/rust@1_90_0-mrustc.json index b2847cd..6a97179 100644 --- a/packages/native/rust@1_90_0-mrustc.json +++ b/packages/native/rust@1_90_0-mrustc.json @@ -49,7 +49,7 @@ "darwin_arm64:*:$NATIVEPREFIX/bin/sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-apple-darwin/RUSTC_TARGET ?= aarch64-apple-darwin/' run_rustc/Makefile", "linux_arm64:*:$NATIVEPREFIX/bin/sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-unknown-linux-gnu/RUSTC_TARGET ?= aarch64-unknown-linux-gnu/' run_rustc/Makefile", "linux_arm64:*:$NATIVEPREFIX/bin/sed -i.bak 's/^[[:space:]]*RUSTC_TARGET ?= x86_64-unknown-linux-gnu/RUSTC_TARGET ?= aarch64-unknown-linux-gnu/' ./minicargo.mk", - "*:*:$NATIVEPREFIX/bin/sed -i.bak 's/LLVM_ENABLE_ZLIB=OFF/LLVM_ENABLE_ZLIB=OFF LLVM_ENABLE_ZSTD=OFF/' minicargo.mk", + "*:*:$NATIVEPREFIX/bin/sed -i.bak 's/LLVM_ENABLE_ZLIB=OFF/LLVM_ENABLE_ZLIB=OFF LLVM_ENABLE_ZSTD=OFF LLVM_ENABLE_LIBXML2=OFF/' minicargo.mk", "linux_amd64:*:REP=$NATIVEPREFIX/lib && $NATIVEPREFIX/bin/sed -i.bak \"s|^RUSTC_ENV_VARS += LD_LIBRARY_PATH=|RUSTC_ENV_VARS += LD_LIBRARY_PATH=$REP:|\" minicargo.mk", "*:*:echo >> build-1.90.0.sh", "*:*:echo make -C run_rustc >> build-1.90.0.sh", From 2969e90b2de309b1c233428e5fc1e41ea3b3520f Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 9 Aug 2026 11:52:52 +0200 Subject: [PATCH 171/200] lint --- cmd/lint/lint.go | 49 ++-- packages/dbus@1_14_10.json | 2 +- packages/fontconfig@2_12_6.json | 2 +- packages/freetype@2_14_1.json | 2 +- packages/libXau@1_0_12.json | 2 +- packages/libffi@3_5_2.json | 2 +- packages/libxcb@1_17_0.json | 2 +- packages/libxcb_util@0_4_1.json | 2 +- packages/libxcb_util_cursor@0_1_6.json | 2 +- packages/libxcb_util_image@0_4_1.json | 2 +- packages/libxcb_util_keysyms@0_4_1.json | 2 +- packages/libxcb_util_render@0_3_10.json | 2 +- packages/libxcb_util_wm@0_4_2.json | 2 +- packages/libxkbcommon@1_13_1.json | 2 +- packages/native/_.json | 38 +-- packages/native/_/_.json | 24 +- packages/native/_/clang@19.json | 2 +- packages/native/_/gcc@15_2_0.json | 32 +-- packages/native/cmake-toolchain.json | 2 +- packages/native/ct-tools.json | 2 +- packages/native/libffi@3_5_2.json | 2 +- packages/native/qt@6_11_1.json | 2 +- packages/native/rust-toolchain.json | 2 +- packages/native/rust@1_90_0-mrustc.json | 2 +- packages/native/wayland@1_25_0.json | 2 +- packages/qt@6_11_1.json | 2 +- packages/rust-hello-world.json | 2 +- packages/rust-std.json | 303 +++++++++++++++--------- packages/wayland@1_25_0.json | 2 +- packages/xcb_proto@1_17_0.json | 2 +- packages/xorgproto@2025_1.json | 2 +- sources.json | 5 + 32 files changed, 296 insertions(+), 207 deletions(-) diff --git a/cmd/lint/lint.go b/cmd/lint/lint.go index a790f53..d6214f2 100644 --- a/cmd/lint/lint.go +++ b/cmd/lint/lint.go @@ -6,7 +6,6 @@ import ( "log" "os" "path/filepath" - "sort" "strings" "github.com/mrcyjanek/simplybs/builder" @@ -24,8 +23,8 @@ type OrderedPackage struct { Download []map[string]interface{} `json:"download,omitempty"` Dependencies []string `json:"dependencies,omitempty"` Patches []string `json:"patches,omitempty"` + ExportEnv *[]string `json:"export-env,omitempty"` Build map[string]interface{} `json:"build,omitempty"` - ExportEnv []string `json:"export-env,omitempty"` } func Lint() { @@ -73,23 +72,12 @@ func fixFormatting() { } } if v, ok := data["dependencies"].([]interface{}); ok { - nativeDeps := []string{} - otherDeps := []string{} - + ordered.Dependencies = make([]string, 0, len(v)) for _, dep := range v { if s, ok := dep.(string); ok { - is := ifstring.ParseIfString(s) - if strings.HasPrefix(is.Content, "native") { - nativeDeps = append(nativeDeps, s) - } else { - otherDeps = append(otherDeps, s) - } + ordered.Dependencies = append(ordered.Dependencies, s) } } - - sort.Strings(nativeDeps) - sort.Strings(otherDeps) - ordered.Dependencies = append(nativeDeps, otherDeps...) } if v, ok := data["patches"].([]interface{}); ok { patches := make([]string, len(v)) @@ -100,17 +88,19 @@ func fixFormatting() { } ordered.Patches = patches } - if v, ok := data["build"].(map[string]interface{}); ok { - ordered.Build = v - } - if v, ok := data["export-env"].([]interface{}); ok { - exportEnv := make([]string, len(v)) - for i, env := range v { - if s, ok := env.(string); ok { - exportEnv[i] = s + if _, exists := data["export-env"]; exists { + exportEnv := []string{} + if v, ok := data["export-env"].([]interface{}); ok { + for _, env := range v { + if s, ok := env.(string); ok { + exportEnv = append(exportEnv, s) + } } } - ordered.ExportEnv = exportEnv + ordered.ExportEnv = &exportEnv + } + if v, ok := data["build"].(map[string]interface{}); ok { + ordered.Build = v } var buf bytes.Buffer @@ -251,7 +241,16 @@ func dfsCycleDetection(packageName string, graph map[string][]string, color map[ func createSourcesFile() { log.Println("Creating sources.json file...") - sources := utils.NewSourcesFile() + sources, err := utils.LoadSourcesFile() + if err != nil { + if os.IsNotExist(err) { + sources = utils.NewSourcesFile() + } else { + log.Fatalf("Failed to load sources.json: %v", err) + } + } else if sources.Repositories == nil { + sources.Repositories = make(map[string]utils.RepositoryInfo) + } currentRefs := 0 currentDownloads := 0 diff --git a/packages/dbus@1_14_10.json b/packages/dbus@1_14_10.json index 5cfe02c..8e8ff66 100644 --- a/packages/dbus@1_14_10.json +++ b/packages/dbus@1_14_10.json @@ -38,4 +38,4 @@ "*:*-linux-gnu:rm -f $STAGING_DIR$PREFIX/lib/*.la" ] } -} +} \ No newline at end of file diff --git a/packages/fontconfig@2_12_6.json b/packages/fontconfig@2_12_6.json index e1aab7a..4dc5bcc 100644 --- a/packages/fontconfig@2_12_6.json +++ b/packages/fontconfig@2_12_6.json @@ -38,4 +38,4 @@ "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/var $STAGING_DIR$PREFIX/lib/*.la" ] } -} +} \ No newline at end of file diff --git a/packages/freetype@2_14_1.json b/packages/freetype@2_14_1.json index 6cd2836..b2a2031 100644 --- a/packages/freetype@2_14_1.json +++ b/packages/freetype@2_14_1.json @@ -34,4 +34,4 @@ "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share/man $STAGING_DIR$PREFIX/lib/*.la" ] } -} +} \ No newline at end of file diff --git a/packages/libXau@1_0_12.json b/packages/libXau@1_0_12.json index aeea4f0..6a88178 100644 --- a/packages/libXau@1_0_12.json +++ b/packages/libXau@1_0_12.json @@ -37,4 +37,4 @@ "*:*-linux-gnu:sed -i 's/Requires: xproto//g' $STAGING_DIR$PREFIX/lib/pkgconfig/xau.pc" ] } -} +} \ No newline at end of file diff --git a/packages/libffi@3_5_2.json b/packages/libffi@3_5_2.json index b93c97c..00d4af4 100644 --- a/packages/libffi@3_5_2.json +++ b/packages/libffi@3_5_2.json @@ -27,4 +27,4 @@ "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install" ] } -} +} \ No newline at end of file diff --git a/packages/libxcb@1_17_0.json b/packages/libxcb@1_17_0.json index 96ed7d2..d17662c 100644 --- a/packages/libxcb@1_17_0.json +++ b/packages/libxcb@1_17_0.json @@ -40,4 +40,4 @@ "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } -} +} \ No newline at end of file diff --git a/packages/libxcb_util@0_4_1.json b/packages/libxcb_util@0_4_1.json index 6800338..beb42a3 100644 --- a/packages/libxcb_util@0_4_1.json +++ b/packages/libxcb_util@0_4_1.json @@ -35,4 +35,4 @@ "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } -} +} \ No newline at end of file diff --git a/packages/libxcb_util_cursor@0_1_6.json b/packages/libxcb_util_cursor@0_1_6.json index 8db0d4e..1d12e49 100644 --- a/packages/libxcb_util_cursor@0_1_6.json +++ b/packages/libxcb_util_cursor@0_1_6.json @@ -39,4 +39,4 @@ "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } -} +} \ No newline at end of file diff --git a/packages/libxcb_util_image@0_4_1.json b/packages/libxcb_util_image@0_4_1.json index c6f3747..543cc3d 100644 --- a/packages/libxcb_util_image@0_4_1.json +++ b/packages/libxcb_util_image@0_4_1.json @@ -36,4 +36,4 @@ "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } -} +} \ No newline at end of file diff --git a/packages/libxcb_util_keysyms@0_4_1.json b/packages/libxcb_util_keysyms@0_4_1.json index 75b4ed4..d3adfd8 100644 --- a/packages/libxcb_util_keysyms@0_4_1.json +++ b/packages/libxcb_util_keysyms@0_4_1.json @@ -35,4 +35,4 @@ "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } -} +} \ No newline at end of file diff --git a/packages/libxcb_util_render@0_3_10.json b/packages/libxcb_util_render@0_3_10.json index 8e78ef8..aca18a2 100644 --- a/packages/libxcb_util_render@0_3_10.json +++ b/packages/libxcb_util_render@0_3_10.json @@ -35,4 +35,4 @@ "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } -} +} \ No newline at end of file diff --git a/packages/libxcb_util_wm@0_4_2.json b/packages/libxcb_util_wm@0_4_2.json index fef3c4f..1f09853 100644 --- a/packages/libxcb_util_wm@0_4_2.json +++ b/packages/libxcb_util_wm@0_4_2.json @@ -36,4 +36,4 @@ "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/share $STAGING_DIR$PREFIX/lib/*.la" ] } -} +} \ No newline at end of file diff --git a/packages/libxkbcommon@1_13_1.json b/packages/libxkbcommon@1_13_1.json index dccae00..54b9342 100644 --- a/packages/libxkbcommon@1_13_1.json +++ b/packages/libxkbcommon@1_13_1.json @@ -42,4 +42,4 @@ "*:*-linux-gnu:DESTDIR=$STAGING_DIR ninja -C build install" ] } -} +} \ No newline at end of file diff --git a/packages/native/_.json b/packages/native/_.json index 502e514..dc38a0d 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -17,24 +17,6 @@ "*:*-w64-mingw32:native/ct-tools", "*:*:native/_/_" ], - "build": { - "env": [ - "*:none:A_=This is a meta-package library that includes c and c++ compiler", - "*:none:B_=All packages included as dependencies (other than bootstrap packages) are copied over to staging dir" - ], - "steps": [ - "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", - "*:*:rm -rf $STAGING_DIR$NATIVEPREFIX", - "*:*:cp -a $NATIVEPREFIX $STAGING_DIR$NATIVEPREFIX", - "*:*:rm -rf $STAGING_DIR$NATIVEPREFIX/_", - "*:*:mkdir -p $STAGING_DIR$PREFIX", - "*:*:rm -rf $STAGING_DIR$PREFIX", - "*:*:cp -a $PREFIX $STAGING_DIR$PREFIX", - "*:*:rm -rf $STAGING_DIR$PREFIX/bootstrap", - "*:*:mkdir -p $STAGING_DIR$HOME", - "*:*:touch $STAGING_DIR$HOME/.zshrc" - ] - }, "export-env": [ "*:*:CC_FOR_BUILD=$CC", "*:*:CXX_FOR_BUILD=$CXX", @@ -221,5 +203,23 @@ "*:x86_64-linux-android:CARGO_TARGET_X86_64_LINUX_ANDROID_RUSTFLAGS=-Clink-arg=-L$PREFIX/lib -Clink-arg=-lc -Clink-arg=-lc++abi -Clink-arg=-lm", "*:armv7a-linux-androideabi:CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_LINKER=$CC", "*:armv7a-linux-androideabi:CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_RUSTFLAGS=-Clink-arg=-L$PREFIX/lib -Clink-arg=-lc -Clink-arg=-lc++abi -Clink-arg=-lm" - ] + ], + "build": { + "env": [ + "*:none:A_=This is a meta-package library that includes c and c++ compiler", + "*:none:B_=All packages included as dependencies (other than bootstrap packages) are copied over to staging dir" + ], + "steps": [ + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:rm -rf $STAGING_DIR$NATIVEPREFIX", + "*:*:cp -a $NATIVEPREFIX $STAGING_DIR$NATIVEPREFIX", + "*:*:rm -rf $STAGING_DIR$NATIVEPREFIX/_", + "*:*:mkdir -p $STAGING_DIR$PREFIX", + "*:*:rm -rf $STAGING_DIR$PREFIX", + "*:*:cp -a $PREFIX $STAGING_DIR$PREFIX", + "*:*:rm -rf $STAGING_DIR$PREFIX/bootstrap", + "*:*:mkdir -p $STAGING_DIR$HOME", + "*:*:touch $STAGING_DIR$HOME/.zshrc" + ] + } } \ No newline at end of file diff --git a/packages/native/_/_.json b/packages/native/_/_.json index 97cd0dc..0fee349 100644 --- a/packages/native/_/_.json +++ b/packages/native/_/_.json @@ -7,17 +7,6 @@ "linux_amd64:*:native/_/linux_amd64_clang21", "linux_arm64:*:native/_/linux_arm64_clang21" ], - "build": { - "env": [ - "*:none:A_=This is a meta-package library that includes c and c++ compiler", - "*:none:B_=All packages included as dependencies (other than bootstrap packages) are copied over to staging dir." - ], - "steps": [ - "*:*:$NATIVEPREFIX/_/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX", - "*:*:$NATIVEPREFIX/_/bin/rm -rf $STAGING_DIR$NATIVEPREFIX", - "*:*:$NATIVEPREFIX/_/bin/cp -a $NATIVEPREFIX $STAGING_DIR$NATIVEPREFIX" - ] - }, "export-env": [ "darwin_arm64:*:OSX_MIN_VERSION=13.0", "darwin_arm64:*:CC=$NATIVEPREFIX/_/bin/clang", @@ -60,5 +49,16 @@ "*:*:LIBRARY_PATH=$LIBRARY_PATH:$NATIVEPREFIX/lib", "*:*:CC_BUILD=$CC $CFLAGS", "*:*:CXX_BUILD=$CXX $CXXFLAGS" - ] + ], + "build": { + "env": [ + "*:none:A_=This is a meta-package library that includes c and c++ compiler", + "*:none:B_=All packages included as dependencies (other than bootstrap packages) are copied over to staging dir." + ], + "steps": [ + "*:*:$NATIVEPREFIX/_/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX", + "*:*:$NATIVEPREFIX/_/bin/rm -rf $STAGING_DIR$NATIVEPREFIX", + "*:*:$NATIVEPREFIX/_/bin/cp -a $NATIVEPREFIX $STAGING_DIR$NATIVEPREFIX" + ] + } } \ No newline at end of file diff --git a/packages/native/_/clang@19.json b/packages/native/_/clang@19.json index b3721b2..504150c 100644 --- a/packages/native/_/clang@19.json +++ b/packages/native/_/clang@19.json @@ -49,4 +49,4 @@ "*:*:DESTDIR=$STAGING_DIR cmake --install build --component lld" ] } -} +} \ No newline at end of file diff --git a/packages/native/_/gcc@15_2_0.json b/packages/native/_/gcc@15_2_0.json index 2f5ac09..4b59888 100644 --- a/packages/native/_/gcc@15_2_0.json +++ b/packages/native/_/gcc@15_2_0.json @@ -25,20 +25,6 @@ "*:*:native/tar", "*:*:native/zlib" ], - "build": { - "env": [ - "linux_*:*:CC=$NATIVEPREFIX/_/bin/clang", - "linux_*:*:CXX=$NATIVEPREFIX/_/bin/clang++", - "*:*:config_opts=--prefix=$NATIVEPREFIX --disable-multilib --enable-languages=c,c++ --disable-bootstrap --disable-libsanitizer --disable-libvtv --disable-libphobos --disable-libssp --disable-libquadmath --disable-libgomp --without-isl --with-system-zlib --with-gmp=$NATIVEPREFIX --with-mpfr=$NATIVEPREFIX --with-mpc=$NATIVEPREFIX --disable-nls" - ], - "steps": [ - "*:*:$NATIVEPREFIX/bin/mkdir -p build", - "*:*:cd build && env -u LIBRARY_PATH ../configure $config_opts CC=\"$CC\" CXX=\"$CXX\"", - "*:*:cd build && env -u LIBRARY_PATH make -j$NUM_CORES all-gcc all-target-libgcc all-target-libstdc++-v3 all-target-libatomic", - "*:*:cd build && env -u LIBRARY_PATH make DESTDIR=$STAGING_DIR install-gcc install-target-libgcc install-target-libstdc++-v3 install-target-libatomic", - "*:*:$NATIVEPREFIX/bin/ln -sf gcc $STAGING_DIR$NATIVEPREFIX/bin/cc" - ] - }, "export-env": [ "linux_amd64:*:CC=$NATIVEPREFIX/bin/gcc", "linux_amd64:*:CXX=$NATIVEPREFIX/bin/g++", @@ -54,5 +40,19 @@ "linux_arm64:*:STRIP=$NATIVEPREFIX/bin/strip", "linux_arm64:*:NM=$NATIVEPREFIX/bin/nm", "linux_arm64:*:LDFLAGS=$LDFLAGS -L$NATIVEPREFIX/lib/gcc/aarch64-linux-gnu/15.2.0" - ] -} + ], + "build": { + "env": [ + "linux_*:*:CC=$NATIVEPREFIX/_/bin/clang", + "linux_*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "*:*:config_opts=--prefix=$NATIVEPREFIX --disable-multilib --enable-languages=c,c++ --disable-bootstrap --disable-libsanitizer --disable-libvtv --disable-libphobos --disable-libssp --disable-libquadmath --disable-libgomp --without-isl --with-system-zlib --with-gmp=$NATIVEPREFIX --with-mpfr=$NATIVEPREFIX --with-mpc=$NATIVEPREFIX --disable-nls" + ], + "steps": [ + "*:*:$NATIVEPREFIX/bin/mkdir -p build", + "*:*:cd build && env -u LIBRARY_PATH ../configure $config_opts CC=\"$CC\" CXX=\"$CXX\"", + "*:*:cd build && env -u LIBRARY_PATH make -j$NUM_CORES all-gcc all-target-libgcc all-target-libstdc++-v3 all-target-libatomic", + "*:*:cd build && env -u LIBRARY_PATH make DESTDIR=$STAGING_DIR install-gcc install-target-libgcc install-target-libstdc++-v3 install-target-libatomic", + "*:*:$NATIVEPREFIX/bin/ln -sf gcc $STAGING_DIR$NATIVEPREFIX/bin/cc" + ] + } +} \ No newline at end of file diff --git a/packages/native/cmake-toolchain.json b/packages/native/cmake-toolchain.json index eee5fea..a5b20c1 100644 --- a/packages/native/cmake-toolchain.json +++ b/packages/native/cmake-toolchain.json @@ -22,4 +22,4 @@ "*:*:cp toolchain.cmake $STAGING_DIR$NATIVEPREFIX/toolchain.cmake" ] } -} +} \ No newline at end of file diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 39cc8b0..b43183e 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -191,4 +191,4 @@ "*:x86_64-w64-mingw32:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-w64-mingw32-*; do ln -sf $f ${f#x86_64-w64-mingw32-}; done" ] } -} +} \ No newline at end of file diff --git a/packages/native/libffi@3_5_2.json b/packages/native/libffi@3_5_2.json index f70c7e6..d2ba1c0 100644 --- a/packages/native/libffi@3_5_2.json +++ b/packages/native/libffi@3_5_2.json @@ -21,4 +21,4 @@ "*:*:make DESTDIR=$STAGING_DIR install" ] } -} +} \ No newline at end of file diff --git a/packages/native/qt@6_11_1.json b/packages/native/qt@6_11_1.json index cc71b07..b8ccdc4 100644 --- a/packages/native/qt@6_11_1.json +++ b/packages/native/qt@6_11_1.json @@ -59,4 +59,4 @@ "*:*:DESTDIR=$STAGING_DIR cmake --install ." ] } -} +} \ No newline at end of file diff --git a/packages/native/rust-toolchain.json b/packages/native/rust-toolchain.json index 9a18748..d309781 100644 --- a/packages/native/rust-toolchain.json +++ b/packages/native/rust-toolchain.json @@ -14,4 +14,4 @@ "*:*:rm -rf $STAGING_DIR$NATIVEPREFIX/lib/rustlib" ] } -} +} \ No newline at end of file diff --git a/packages/native/rust@1_90_0-mrustc.json b/packages/native/rust@1_90_0-mrustc.json index 6a97179..ffd1c9c 100644 --- a/packages/native/rust@1_90_0-mrustc.json +++ b/packages/native/rust@1_90_0-mrustc.json @@ -65,4 +65,4 @@ "darwin_*:*:install_name_tool -change $PWD/run_rustc/output-1.90.0/build-std2/aarch64-apple-darwin/release/deps/libstd.dylib @loader_path/libstd.dylib $STAGING_DIR$NATIVEPREFIX/lib/rustlib/aarch64-apple-darwin/lib/librustc_driver.dylib" ] } -} +} \ No newline at end of file diff --git a/packages/native/wayland@1_25_0.json b/packages/native/wayland@1_25_0.json index 807896d..5c39385 100644 --- a/packages/native/wayland@1_25_0.json +++ b/packages/native/wayland@1_25_0.json @@ -26,4 +26,4 @@ "*:*:DESTDIR=$STAGING_DIR ninja -C build install" ] } -} +} \ No newline at end of file diff --git a/packages/qt@6_11_1.json b/packages/qt@6_11_1.json index b06e074..b92af30 100644 --- a/packages/qt@6_11_1.json +++ b/packages/qt@6_11_1.json @@ -196,4 +196,4 @@ "*:*:DESTDIR=$STAGING_DIR cmake --install ." ] } -} +} \ No newline at end of file diff --git a/packages/rust-hello-world.json b/packages/rust-hello-world.json index ee2a555..d59fa13 100644 --- a/packages/rust-hello-world.json +++ b/packages/rust-hello-world.json @@ -26,4 +26,4 @@ "*:*:$NATIVEPREFIX/bin/cp ./target/$RUST_TRIPLET/release/rust-hello-world.exe $STAGING_DIR$PREFIX/bin 2>/dev/null || $NATIVEPREFIX/bin/cp ./target/$RUST_TRIPLET/release/rust-hello-world $STAGING_DIR$PREFIX/bin" ] } -} +} \ No newline at end of file diff --git a/packages/rust-std.json b/packages/rust-std.json index 6d66984..0871d63 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -9,14 +9,6 @@ "url": "http://static.rust-lang.org/dist/rustc-1.95.0-src.tar.gz" } ], - "export-env": [ - "linux_arm64:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/cargo-linker-clang", - "linux_arm64:aarch64-linux-gnu:RUSTFLAGS=-Clinker=$NATIVEPREFIX/bin/cargo-linker-clang -Clink-arg=-L$NATIVEPREFIX/lib", - "linux_amd64:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/cargo-linker-clang", - "linux_amd64:x86_64-linux-gnu:RUSTFLAGS=-Clinker=$NATIVEPREFIX/bin/cargo-linker-clang -Clink-arg=-L$NATIVEPREFIX/lib", - "darwin_arm64:aarch64-apple-darwin:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$NATIVEPREFIX/bin/cargo-linker-clang", - "darwin_arm64:aarch64-apple-darwin:RUSTFLAGS=-Clinker=$NATIVEPREFIX/bin/cargo-linker-clang -Clink-arg=-L$NATIVEPREFIX/lib" - ], "dependencies": [ "*:*:native/_/_", "*:*:native/_", @@ -36,6 +28,14 @@ "*:*:native/zlib", "*:*:native/libpsl" ], + "export-env": [ + "linux_arm64:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/cargo-linker-clang", + "linux_arm64:aarch64-linux-gnu:RUSTFLAGS=-Clinker=$NATIVEPREFIX/bin/cargo-linker-clang -Clink-arg=-L$NATIVEPREFIX/lib", + "linux_amd64:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/cargo-linker-clang", + "linux_amd64:x86_64-linux-gnu:RUSTFLAGS=-Clinker=$NATIVEPREFIX/bin/cargo-linker-clang -Clink-arg=-L$NATIVEPREFIX/lib", + "darwin_arm64:aarch64-apple-darwin:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$NATIVEPREFIX/bin/cargo-linker-clang", + "darwin_arm64:aarch64-apple-darwin:RUSTFLAGS=-Clinker=$NATIVEPREFIX/bin/cargo-linker-clang -Clink-arg=-L$NATIVEPREFIX/lib" + ], "build": { "env": [ "*:*:OPENSSL_ROOT_DIR=$NATIVEPREFIX", @@ -116,66 +116,186 @@ ], "profiles": { "llvm": { + "env": [ + "*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", + "*:*:CC=$NATIVEPREFIX/_/bin/clang", + "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", + "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:aarch64-linux-gnu:HOST=x86_64-linux-gnu", + "linux_arm64:x86_64-linux-gnu:HOST=aarch64-linux-gnu", + "darwin_arm64:*:SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk", + "*:*:ARFLAGS=" + ], "unset": [ - "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", - "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", - "CC", "CXX", "CFLAGS", "CXXFLAGS", "CPPFLAGS", "LDFLAGS", + "LD", + "AS", + "NM", + "OBJCOPY", + "OBJDUMP", + "STRIP", + "READELF", + "MACOSX_DEPLOYMENT_TARGET", + "CMAKE_SYSTEM_NAME", + "CC", + "CXX", + "CFLAGS", + "CXXFLAGS", + "CPPFLAGS", + "LDFLAGS", "RUST_LDFLAGS", - "CC_x86_64_unknown_linux_gnu", "CXX_x86_64_unknown_linux_gnu", - "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", + "CC_x86_64_unknown_linux_gnu", + "CXX_x86_64_unknown_linux_gnu", + "CFLAGS_x86_64_unknown_linux_gnu", + "CXXFLAGS_x86_64_unknown_linux_gnu", "LDFLAGS_x86_64_unknown_linux_gnu", - "CC_aarch64_unknown_linux_gnu", "CXX_aarch64_unknown_linux_gnu", - "CFLAGS_aarch64_unknown_linux_gnu", "CXXFLAGS_aarch64_unknown_linux_gnu", + "CC_aarch64_unknown_linux_gnu", + "CXX_aarch64_unknown_linux_gnu", + "CFLAGS_aarch64_unknown_linux_gnu", + "CXXFLAGS_aarch64_unknown_linux_gnu", "LDFLAGS_aarch64_unknown_linux_gnu", - "CC_x86_64_pc_windows_gnu", "CXX_x86_64_pc_windows_gnu", - "CFLAGS_x86_64_pc_windows_gnu", "CXXFLAGS_x86_64_pc_windows_gnu", + "CC_x86_64_pc_windows_gnu", + "CXX_x86_64_pc_windows_gnu", + "CFLAGS_x86_64_pc_windows_gnu", + "CXXFLAGS_x86_64_pc_windows_gnu", "LDFLAGS_x86_64_pc_windows_gnu", - "CC_aarch64_linux_android", "CXX_aarch64_linux_android", - "CFLAGS_aarch64_linux_android", "CXXFLAGS_aarch64_linux_android", + "CC_aarch64_linux_android", + "CXX_aarch64_linux_android", + "CFLAGS_aarch64_linux_android", + "CXXFLAGS_aarch64_linux_android", "LDFLAGS_aarch64_linux_android", - "CC_x86_64_linux_android", "CXX_x86_64_linux_android", - "CFLAGS_x86_64_linux_android", "CXXFLAGS_x86_64_linux_android", + "CC_x86_64_linux_android", + "CXX_x86_64_linux_android", + "CFLAGS_x86_64_linux_android", + "CXXFLAGS_x86_64_linux_android", "LDFLAGS_x86_64_linux_android", - "CC_armv7_linux_androideabi", "CXX_armv7_linux_androideabi", - "CFLAGS_armv7_linux_androideabi", "CXXFLAGS_armv7_linux_androideabi", + "CC_armv7_linux_androideabi", + "CXX_armv7_linux_androideabi", + "CFLAGS_armv7_linux_androideabi", + "CXXFLAGS_armv7_linux_androideabi", "LDFLAGS_armv7_linux_androideabi" + ] + }, + "std": { + "env": [ + "*:*:ARFLAGS=" ], + "unset": [ + "LD", + "AS", + "NM", + "OBJCOPY", + "OBJDUMP", + "STRIP", + "READELF", + "MACOSX_DEPLOYMENT_TARGET", + "CMAKE_SYSTEM_NAME" + ] + }, + "std-android": { "env": [ "*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", "*:*:CC=$NATIVEPREFIX/_/bin/clang", "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CXXFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "*:*:ARFLAGS=" + ], + "unset": [ + "LD", + "AS", + "NM", + "OBJCOPY", + "OBJDUMP", + "STRIP", + "READELF", + "MACOSX_DEPLOYMENT_TARGET", + "CMAKE_SYSTEM_NAME", + "CFLAGS", + "CXXFLAGS", + "CPPFLAGS", + "LDFLAGS", + "CFLAGS_x86_64_unknown_linux_gnu", + "CXXFLAGS_x86_64_unknown_linux_gnu", + "CFLAGS_aarch64_unknown_linux_gnu", + "CXXFLAGS_aarch64_unknown_linux_gnu", + "CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER", + "CARGO_TARGET_AARCH64_LINUX_ANDROID_RUSTFLAGS", + "CARGO_TARGET_X86_64_LINUX_ANDROID_LINKER", + "CARGO_TARGET_X86_64_LINUX_ANDROID_RUSTFLAGS", + "CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_LINKER", + "CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_RUSTFLAGS" + ] + }, + "std-apple": { + "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "*:*:CC=$NATIVEPREFIX/bin/clang", + "*:*:CXX=$NATIVEPREFIX/bin/clang++", + "*:*:MACOSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION", "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", - "linux_amd64:aarch64-linux-gnu:HOST=x86_64-linux-gnu", - "linux_arm64:x86_64-linux-gnu:HOST=aarch64-linux-gnu", - "darwin_arm64:*:SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk", + "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CXXFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", "*:*:ARFLAGS=" + ], + "unset": [ + "LD", + "AS", + "NM", + "OBJCOPY", + "OBJDUMP", + "STRIP", + "READELF", + "CMAKE_SYSTEM_NAME", + "CC", + "CXX", + "LDFLAGS", + "MACOSX_DEPLOYMENT_TARGET", + "CFLAGS", + "CXXFLAGS", + "CPPFLAGS", + "CFLAGS_x86_64_unknown_linux_gnu", + "CXXFLAGS_x86_64_unknown_linux_gnu", + "CFLAGS_aarch64_unknown_linux_gnu", + "CXXFLAGS_aarch64_unknown_linux_gnu", + "CFLAGS_x86_64_pc_windows_gnu", + "CXXFLAGS_x86_64_pc_windows_gnu" ] }, - "std": { - "unset": [ - "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", - "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME" - ], + "std-mingw": { "env": [ + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", + "linux_amd64:*:CXXFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", "*:*:ARFLAGS=" + ], + "unset": [ + "LD", + "AS", + "NM", + "OBJCOPY", + "OBJDUMP", + "STRIP", + "READELF", + "MACOSX_DEPLOYMENT_TARGET", + "CMAKE_SYSTEM_NAME", + "CFLAGS", + "CXXFLAGS", + "CPPFLAGS", + "CFLAGS_x86_64_unknown_linux_gnu", + "CXXFLAGS_x86_64_unknown_linux_gnu", + "CFLAGS_aarch64_unknown_linux_gnu", + "CXXFLAGS_aarch64_unknown_linux_gnu" ] }, "std-native": { - "unset": [ - "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", - "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", - "CC", "CXX", "CFLAGS", "CXXFLAGS", "CPPFLAGS", "LDFLAGS", - "RUST_CFLAGS", "RUST_CXXFLAGS", "RUST_LDFLAGS", - "CFLAGS_aarch64_unknown_linux_gnu", "CXXFLAGS_aarch64_unknown_linux_gnu", - "LDFLAGS_aarch64_unknown_linux_gnu", - "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", - "LDFLAGS_x86_64_unknown_linux_gnu", - "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER", - "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS", - "CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER", - "CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS" - ], "env": [ "*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", "*:*:CC=$NATIVEPREFIX/_/bin/clang", @@ -209,71 +329,36 @@ "linux_amd64:x86_64-linux-gnu:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang", "linux_arm64:aarch64-linux-gnu:RUSTFLAGS=-Clinker=$NATIVEPREFIX/_/bin/clang", "*:*:ARFLAGS=" - ] - }, - "std-mingw": { - "unset": [ - "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", - "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", - "CFLAGS", "CXXFLAGS", "CPPFLAGS", - "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", - "CFLAGS_aarch64_unknown_linux_gnu", "CXXFLAGS_aarch64_unknown_linux_gnu" ], - "env": [ - "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", - "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "linux_amd64:*:CXXFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "*:*:ARFLAGS=" - ] - }, - "std-apple": { "unset": [ - "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", - "CMAKE_SYSTEM_NAME", "CC", "CXX", "LDFLAGS", "MACOSX_DEPLOYMENT_TARGET", - "CFLAGS", "CXXFLAGS", "CPPFLAGS", - "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", - "CFLAGS_aarch64_unknown_linux_gnu", "CXXFLAGS_aarch64_unknown_linux_gnu", - "CFLAGS_x86_64_pc_windows_gnu", "CXXFLAGS_x86_64_pc_windows_gnu" - ], - "env": [ - "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", - "*:*:CC=$NATIVEPREFIX/bin/clang", - "*:*:CXX=$NATIVEPREFIX/bin/clang++", - "*:*:MACOSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION", - "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", - "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", - "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "linux_amd64:*:CXXFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "*:*:ARFLAGS=" - ] - }, - "std-android": { - "unset": [ - "LD", "AS", "NM", "OBJCOPY", "OBJDUMP", "STRIP", "READELF", - "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", - "CFLAGS", "CXXFLAGS", "CPPFLAGS", "LDFLAGS", - "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", - "CFLAGS_aarch64_unknown_linux_gnu", "CXXFLAGS_aarch64_unknown_linux_gnu", - "CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER", - "CARGO_TARGET_AARCH64_LINUX_ANDROID_RUSTFLAGS", - "CARGO_TARGET_X86_64_LINUX_ANDROID_LINKER", - "CARGO_TARGET_X86_64_LINUX_ANDROID_RUSTFLAGS", - "CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_LINKER", - "CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_RUSTFLAGS" - ], - "env": [ - "*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", - "*:*:CC=$NATIVEPREFIX/_/bin/clang", - "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", - "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "linux_amd64:*:CXXFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", - "*:*:ARFLAGS=" + "LD", + "AS", + "NM", + "OBJCOPY", + "OBJDUMP", + "STRIP", + "READELF", + "MACOSX_DEPLOYMENT_TARGET", + "CMAKE_SYSTEM_NAME", + "CC", + "CXX", + "CFLAGS", + "CXXFLAGS", + "CPPFLAGS", + "LDFLAGS", + "RUST_CFLAGS", + "RUST_CXXFLAGS", + "RUST_LDFLAGS", + "CFLAGS_aarch64_unknown_linux_gnu", + "CXXFLAGS_aarch64_unknown_linux_gnu", + "LDFLAGS_aarch64_unknown_linux_gnu", + "CFLAGS_x86_64_unknown_linux_gnu", + "CXXFLAGS_x86_64_unknown_linux_gnu", + "LDFLAGS_x86_64_unknown_linux_gnu", + "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER", + "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS", + "CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER", + "CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS" ] } }, @@ -333,4 +418,4 @@ "*:*:@$RUST_STD_PROFILE test \"$BUILD_TRIPLET\" = \"$RUST_TRIPLET\" || $NATIVEPREFIX/bin/cp -a $NATIVEPREFIX/lib/rustlib/$BUILD_TRIPLET $STAGING_DIR$NATIVEPREFIX/lib/rustlib/" ] } -} +} \ No newline at end of file diff --git a/packages/wayland@1_25_0.json b/packages/wayland@1_25_0.json index 0f93fc7..afc528d 100644 --- a/packages/wayland@1_25_0.json +++ b/packages/wayland@1_25_0.json @@ -38,4 +38,4 @@ "*:*-linux-gnu:DESTDIR=$STAGING_DIR ninja -C build install" ] } -} +} \ No newline at end of file diff --git a/packages/xcb_proto@1_17_0.json b/packages/xcb_proto@1_17_0.json index 5ca182d..b27a0cb 100644 --- a/packages/xcb_proto@1_17_0.json +++ b/packages/xcb_proto@1_17_0.json @@ -32,4 +32,4 @@ "*:*-linux-gnu:rm -rf $STAGING_DIR$PREFIX/lib/python*/site-packages/xcbgen/__pycache__" ] } -} +} \ No newline at end of file diff --git a/packages/xorgproto@2025_1.json b/packages/xorgproto@2025_1.json index 43312f3..e71d51c 100644 --- a/packages/xorgproto@2025_1.json +++ b/packages/xorgproto@2025_1.json @@ -30,4 +30,4 @@ "*:*-linux-gnu:make DESTDIR=$STAGING_DIR install" ] } -} +} \ No newline at end of file diff --git a/sources.json b/sources.json index 6fd6146..330315b 100644 --- a/sources.json +++ b/sources.json @@ -1026,6 +1026,11 @@ "e0bd5e08395bcd5ae105ad279d8d3ba67e8b738b" ] }, + "https://github.com/justxd22/monero-ndk": { + "refs": [ + "f0894a6c06fc53542ab5505088f0a2feb5f14f4d" + ] + }, "https://github.com/libffi/libffi.git": { "refs": [ "e2eda0cf72a0598b44278cc91860ea402273fa29" From 2d5076e60907c9f8ef6f3a767879fbf1587f3502 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 9 Aug 2026 06:52:49 -0700 Subject: [PATCH 172/200] separate env-native by default --- host/main.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/host/main.go b/host/main.go index 77ef837..98d69cf 100644 --- a/host/main.go +++ b/host/main.go @@ -44,8 +44,8 @@ func (h *Host) GetNativeEnvPath() string { if os.Getenv("SIMPLYBS_NATIVE_ENV_DIR") != "" { return filepath.Join(os.Getenv("SIMPLYBS_NATIVE_ENV_DIR")) } - dir := h.GetEnvPath() - return filepath.Join(dir, "native") + dir := DataDirRoot() + return filepath.Join(dir, "env-native") } func (h *Host) GetEnvPath() string { From 61c24725dcce14ad621e3c56f4994e53d25a3ca7 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 9 Aug 2026 17:46:50 +0200 Subject: [PATCH 173/200] add onnxruntime, fix mingw builds in custom ENV --- packages/easyexif.json | 26 ++++ packages/native/ct-tools.json | 1 + packages/native/protobuf@21.12.json | 25 ++++ packages/nlohmann-json.json | 23 ++++ packages/onnxruntime.json | 130 ++++++++++++++++++ packages/stb.json | 23 ++++ packages/zxing-cpp.json | 41 ++++++ .../onnxruntime/cstdint-optimizer-api.patch | 10 ++ sources.json | 113 +++++++++++++++ 9 files changed, 392 insertions(+) create mode 100644 packages/easyexif.json create mode 100644 packages/native/protobuf@21.12.json create mode 100644 packages/nlohmann-json.json create mode 100644 packages/onnxruntime.json create mode 100644 packages/stb.json create mode 100644 packages/zxing-cpp.json create mode 100644 patches/onnxruntime/cstdint-optimizer-api.patch diff --git a/packages/easyexif.json b/packages/easyexif.json new file mode 100644 index 0000000..e404d7d --- /dev/null +++ b/packages/easyexif.json @@ -0,0 +1,26 @@ +{ + "package": "easyexif", + "version": "cd994a3b6009", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "cd994a3b6009bc3c1f84062e96bd7f5ad16e85f6", + "url": "https://github.com/mayanklahiri/easyexif.git" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/coreutils", + "*:*:native/bash" + ], + "build": { + "env": [], + "steps": [ + "*:*:mkdir -p $STAGING_DIR$PREFIX/include $STAGING_DIR$PREFIX/lib", + "*:*:cp exif.h $STAGING_DIR$PREFIX/include/easyexif.h", + "*:*:$CXX $CXXFLAGS -fPIC -I. -c exif.cpp -o easyexif.o", + "*:*:$AR rcs $STAGING_DIR$PREFIX/lib/libeasyexif.a easyexif.o" + ] + } +} \ No newline at end of file diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index b43183e..2504715 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -178,6 +178,7 @@ "linux_*:x86_64-w64-mingw32:mkdir -p patches/mingw-w64 && cp $PATCH_DIR/native/ct-tools/clang-widl-winnt.h.patch patches/mingw-w64/", "linux_*:x86_64-w64-mingw32:sed -i '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_MINGW_W64_PATCH_LOCAL y\\n put_new_config CT_MINGW_W64_PATCH_ORDER \"local,bundled\"\\n put_new_config CT_PATCH_USE_LOCAL y\\n put_new_config CT_LOCAL_PATCH_DIR \"'\"$(pwd)/patches\"'\"' run.sh", "*:{*-linux-gnu,*-w64-mingw32}:sed -i 's|install=\"./scripts/install-sh -c\"|install=\"'$NATIVEPREFIX'/bin/install -c\"|g' $NATIVEPREFIX/share/crosstool-ng/paths.sh", + "*:{*-linux-gnu,*-w64-mingw32}:mkdir -p $STAGING_DIR$PREFIX", "linux_*:{*-linux-gnu,*-w64-mingw32}:env -i PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH LIBTOOL=$NATIVEPREFIX/bin/libtool AR=$NATIVEPREFIX/_/bin/llvm-ar RANLIB=$NATIVEPREFIX/_/bin/llvm-ranlib PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", "darwin_*:{*-linux-gnu,*-w64-mingw32}:env -i SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH LIBTOOL=$NATIVEPREFIX/bin/libtool AR=$NATIVEPREFIX/_/bin/llvm-ar RANLIB=$NATIVEPREFIX/_/bin/llvm-ranlib PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET/* $STAGING_DIR/$PREFIX", diff --git a/packages/native/protobuf@21.12.json b/packages/native/protobuf@21.12.json new file mode 100644 index 0000000..c5f0845 --- /dev/null +++ b/packages/native/protobuf@21.12.json @@ -0,0 +1,25 @@ +{ + "package": "native/protobuf@21.12", + "version": "21.12", + "type": "native", + "download": [ + { + "kind": "tar.gz", + "sha256": "22fdaf641b31655d4b2297f9981fa5203b2866f8332d3c6333f6b0107bb320de", + "url": "https://github.com/protocolbuffers/protobuf/archive/refs/tags/v21.12.tar.gz" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/cmake", + "*:*:native/make" + ], + "build": { + "env": [], + "steps": [ + "*:*:cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$NATIVEPREFIX -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_BUILD_SHARED_LIBS=OFF -Dprotobuf_WITH_ZLIB=OFF", + "*:*:cmake --build build -j$NUM_CORES", + "*:*:DESTDIR=$STAGING_DIR cmake --install build" + ] + } +} \ No newline at end of file diff --git a/packages/nlohmann-json.json b/packages/nlohmann-json.json new file mode 100644 index 0000000..a275000 --- /dev/null +++ b/packages/nlohmann-json.json @@ -0,0 +1,23 @@ +{ + "package": "nlohmann-json", + "version": "3.11.3", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "0d8ef5af7f9794e3263480193c491549b2ba6cc74bb018906202ada498a79406", + "url": "https://github.com/nlohmann/json/archive/refs/tags/v3.11.3.tar.gz" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/coreutils" + ], + "build": { + "env": [], + "steps": [ + "*:*:mkdir -p $STAGING_DIR$PREFIX/include", + "*:*:cp -a include/nlohmann $STAGING_DIR$PREFIX/include/" + ] + } +} \ No newline at end of file diff --git a/packages/onnxruntime.json b/packages/onnxruntime.json new file mode 100644 index 0000000..b72d771 --- /dev/null +++ b/packages/onnxruntime.json @@ -0,0 +1,130 @@ +{ + "package": "onnxruntime", + "version": "1.20.1", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "d4c005506a2bbf88a838b14f8d1578406b8be2fb64abb50beeff908fb272529e", + "url": "https://github.com/microsoft/onnxruntime/archive/refs/tags/v1.20.1.tar.gz" + }, + { + "kind": "git", + "path": "deps/eigen", + "sha256": "e7248b26a1ed53fa030c5c459f7ea095dfd276ac", + "url": "https://gitlab.com/libeigen/eigen.git" + }, + { + "kind": "tar.gz", + "path": "deps/abseil_cpp", + "sha256": "f50e5ac311a81382da7fa75b97310e4b9006474f9560ac46f54a9967f07d4ae3", + "url": "https://github.com/abseil/abseil-cpp/archive/refs/tags/20240722.0.tar.gz" + }, + { + "kind": "tar.gz", + "path": "deps/re2", + "sha256": "eb2df807c781601c14a260a507a5bb4509be1ee626024cb45acbd57cb9d4032b", + "url": "https://github.com/google/re2/archive/refs/tags/2024-07-02.tar.gz" + }, + { + "kind": "tar.gz", + "path": "deps/google_nsync", + "sha256": "80fc1e605bb3cf5f272811ece39c4fb6761ffcb9b30563301845cc9ff381eb8b", + "url": "https://github.com/google/nsync/archive/refs/tags/1.26.0.tar.gz" + }, + { + "kind": "tar.gz", + "path": "deps/utf8_range", + "sha256": "e008768a46ee0ee646b8e4ef02f55af3634b3ad38b750489eb793774331ca5bd", + "url": "https://github.com/protocolbuffers/utf8_range/archive/72c943dea2b9240cd09efde15191e144bc7c7d38.tar.gz" + }, + { + "kind": "tar.gz", + "path": "deps/protobuf", + "sha256": "22fdaf641b31655d4b2297f9981fa5203b2866f8332d3c6333f6b0107bb320de", + "url": "https://github.com/protocolbuffers/protobuf/archive/refs/tags/v21.12.tar.gz" + }, + { + "kind": "tar.gz", + "path": "deps/date", + "sha256": "7a390f200f0ccd207e8cff6757e04817c1a0aec3e327b006b7eb451c57ee3538", + "url": "https://github.com/HowardHinnant/date/archive/refs/tags/v3.0.1.tar.gz" + }, + { + "kind": "tar.gz", + "path": "deps/mp11", + "sha256": "1705680b0849cac3258e528270c9071b440b95372e5be0b9197da89e84a794eb", + "url": "https://github.com/boostorg/mp11/archive/refs/tags/boost-1.82.0.tar.gz" + }, + { + "kind": "tar.gz", + "path": "deps/nlohmann_json", + "sha256": "5daca6ca216495edf89d167f808d1d03c4a4d929cef7da5e10f135ae1540c7e4", + "url": "https://github.com/nlohmann/json/archive/refs/tags/v3.10.5.tar.gz" + }, + { + "kind": "tar.gz", + "path": "deps/pytorch_cpuinfo", + "sha256": "c8f43b307fa7d911d88fec05448161eb1949c3fc0cb62f3a7a2c61928cdf2e9b", + "url": "https://github.com/pytorch/cpuinfo/archive/ca678952a9a8eaa6de112d154e8e104b22f9ab3f.tar.gz" + }, + { + "kind": "tar.gz", + "path": "deps/GSL", + "sha256": "f0e32cb10654fea91ad56bde89170d78cfbf4363ee0b01d8f097de2ba49f6ce9", + "url": "https://github.com/microsoft/GSL/archive/refs/tags/v4.0.0.tar.gz" + }, + { + "kind": "tar.gz", + "path": "deps/safeint", + "sha256": "d6b164bcea92a746e4d44132e505c7ab1816d1089ba99ebc674ccd4b70262ed5", + "url": "https://github.com/dcleblanc/SafeInt/archive/refs/tags/3.0.28.tar.gz" + }, + { + "kind": "tar.gz", + "path": "deps/flatbuffers", + "sha256": "1cce06b17cddd896b6d73cc047e36a254fb8df4d7ea18a46acf16c4c0cd3f3f3", + "url": "https://github.com/google/flatbuffers/archive/refs/tags/v23.5.26.tar.gz" + }, + { + "kind": "tar.gz", + "path": "deps/onnx", + "sha256": "0e6aa2c0a59bb2d90858ad0040ea1807117cc2f05b97702170f18e6cd6b66fb3", + "url": "https://github.com/onnx/onnx/archive/refs/tags/v1.16.1.tar.gz" + } + ], + "dependencies": [ + "*:{*-linux-gnu,*-apple-*}:native/_", + "*:{*-linux-gnu,*-apple-*}:native/cmake", + "*:{*-linux-gnu,*-apple-*}:native/cmake-toolchain", + "*:{*-linux-gnu,*-apple-*}:native/make", + "*:{*-linux-gnu,*-apple-*}:native/coreutils", + "*:{*-linux-gnu,*-apple-*}:native/bash", + "*:{*-linux-gnu,*-apple-*}:native/python@3.11", + "*:{*-linux-gnu,*-apple-*}:native/patch", + "*:{*-linux-gnu,*-apple-*}:native/protobuf@21.12" + ], + "build": { + "env": [ + "*:{*-linux-gnu,*-apple-*}:ort_extra=", + "*:aarch64-apple-darwin:ort_extra=CMAKE_OSX_ARCHITECTURES=arm64", + "*:x86_64-apple-darwin:ort_extra=CMAKE_OSX_ARCHITECTURES=x86_64", + "*:aarch64-apple-ios:ort_extra=CMAKE_OSX_ARCHITECTURES=arm64 CMAKE_OSX_DEPLOYMENT_TARGET=14.0", + "*:aarch64-apple-ios-simulator:ort_extra=CMAKE_OSX_ARCHITECTURES=arm64 CMAKE_OSX_DEPLOYMENT_TARGET=14.0", + "*:aarch64-apple-ios:CC=$NATIVEPREFIX/bin/aarch64-apple-ios-clang -target aarch64-apple-ios -mios-version-min=14.0 -isysroot $SDK_PATH -I$PREFIX/include", + "*:aarch64-apple-ios:CXX=$NATIVEPREFIX/bin/aarch64-apple-ios-clang++ -target aarch64-apple-ios -mios-version-min=14.0 -isysroot $SDK_PATH -I$PREFIX/include", + "*:aarch64-apple-ios-simulator:CC=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang -target aarch64-apple-ios-simulator -mios-version-min=14.0 -isysroot $SDK_PATH -I$PREFIX/include", + "*:aarch64-apple-ios-simulator:CXX=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang++ -target aarch64-apple-ios-simulator -mios-version-min=14.0 -isysroot $SDK_PATH -I$PREFIX/include" + ], + "steps": [ + "*:{*-linux-gnu,*-apple-*}:patch -p1 < $PATCH_DIR/onnxruntime/cstdint-optimizer-api.patch", + "*:{*-linux-gnu,*-apple-*}:patch -p1 -d deps/google_nsync < cmake/patches/nsync/nsync_1.26.0.patch", + "*:{*-linux-gnu,*-apple-*}:patch -p1 -d deps/protobuf < cmake/patches/protobuf/protobuf_cmake.patch", + "*:{*-linux-gnu,*-apple-*}:patch -p1 -d deps/flatbuffers < cmake/patches/flatbuffers/flatbuffers.patch", + "*:{*-linux-gnu,*-apple-*}:patch -p1 -d deps/onnx < cmake/patches/onnx/onnx.patch", + "*:{*-linux-gnu,*-apple-*}:./build.sh --config Release --build_shared_lib --parallel --skip_tests --allow_running_as_root --compile_no_warning_as_error --skip_submodule_sync --path_to_protoc_exe $NATIVEPREFIX/bin/protoc --cmake_extra_defines CMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE CMAKE_INSTALL_PREFIX=$PREFIX FETCHCONTENT_FULLY_DISCONNECTED=ON FETCHCONTENT_SOURCE_DIR_ABSEIL_CPP=$PWD/deps/abseil_cpp FETCHCONTENT_SOURCE_DIR_RE2=$PWD/deps/re2 FETCHCONTENT_SOURCE_DIR_GOOGLE_NSYNC=$PWD/deps/google_nsync FETCHCONTENT_SOURCE_DIR_UTF8_RANGE=$PWD/deps/utf8_range FETCHCONTENT_SOURCE_DIR_PROTOBUF=$PWD/deps/protobuf FETCHCONTENT_SOURCE_DIR_DATE=$PWD/deps/date FETCHCONTENT_SOURCE_DIR_MP11=$PWD/deps/mp11 FETCHCONTENT_SOURCE_DIR_NLOHMANN_JSON=$PWD/deps/nlohmann_json FETCHCONTENT_SOURCE_DIR_PYTORCH_CPUINFO=$PWD/deps/pytorch_cpuinfo FETCHCONTENT_SOURCE_DIR_PYTORCH_CLOG=$PWD/deps/pytorch_cpuinfo FETCHCONTENT_SOURCE_DIR_GSL=$PWD/deps/GSL FETCHCONTENT_SOURCE_DIR_SAFEINT=$PWD/deps/safeint FETCHCONTENT_SOURCE_DIR_FLATBUFFERS=$PWD/deps/flatbuffers FETCHCONTENT_SOURCE_DIR_ONNX=$PWD/deps/onnx onnxruntime_USE_PREINSTALLED_EIGEN=ON eigen_SOURCE_PATH=$PWD/deps/eigen CMAKE_POLICY_VERSION_MINIMUM=3.5 onnxruntime_BUILD_UNIT_TESTS=OFF FLATBUFFERS_BUILD_FLATC=OFF $ort_extra", + "*:{*-linux-gnu,*-apple-*}:DESTDIR=$STAGING_DIR cmake --install build/Linux/Release --prefix \"$PREFIX\"", + "*:{*-linux-gnu,*-apple-*}:cp -a $STAGING_DIR$PREFIX/include/onnxruntime/. $STAGING_DIR$PREFIX/include/" + ] + } +} diff --git a/packages/stb.json b/packages/stb.json new file mode 100644 index 0000000..994b023 --- /dev/null +++ b/packages/stb.json @@ -0,0 +1,23 @@ +{ + "package": "stb", + "version": "013ac3beddff", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "013ac3beddff3dbffafd5177e7972067cd2b5083", + "url": "https://github.com/nothings/stb.git" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/coreutils" + ], + "build": { + "env": [], + "steps": [ + "*:*:mkdir -p $STAGING_DIR$PREFIX/include", + "*:*:cp stb_image.h $STAGING_DIR$PREFIX/include/stb_image.h" + ] + } +} \ No newline at end of file diff --git a/packages/zxing-cpp.json b/packages/zxing-cpp.json new file mode 100644 index 0000000..ea2e0e9 --- /dev/null +++ b/packages/zxing-cpp.json @@ -0,0 +1,41 @@ +{ + "package": "zxing-cpp", + "version": "2.3.0", + "type": "host", + "download": [ + { + "kind": "tar.gz", + "sha256": "64e4139103fdbc57752698ee15b5f0b0f7af9a0331ecbdc492047e0772c417ba", + "url": "https://github.com/zxing-cpp/zxing-cpp/archive/refs/tags/v2.3.0.tar.gz" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/cmake", + "*:*:native/cmake-toolchain", + "*:*:native/make", + "*:*:native/coreutils", + "*:*:native/sed" + ], + "build": { + "env": [ + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", + "*:*:config_opts=$config_opts -DBUILD_SHARED_LIBS=OFF", + "*:*:config_opts=$config_opts -DZXING_EXAMPLES=OFF", + "*:*:config_opts=$config_opts -DZXING_C_API=OFF", + "*:*:config_opts=$config_opts -DZXING_WRITERS=OFF", + "*:*:config_opts=$config_opts -DZXING_READERS=ON", + "*:*:config_opts=$config_opts -DZXING_UNIT_TESTS=OFF", + "*:*:config_opts=$config_opts -DZXING_BLACKBOX_TESTS=OFF", + "*:*:config_opts=$config_opts -DZXING_DEPENDENCIES=LOCAL" + ], + "steps": [ + "*:*:sed -i 's/-Werror=undef/-Wno-error=undef/g' core/CMakeLists.txt", + "*:*:cmake -S . -B build $config_opts", + "*:*:cmake --build build -j$NUM_CORES", + "*:*:cd build && make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/patches/onnxruntime/cstdint-optimizer-api.patch b/patches/onnxruntime/cstdint-optimizer-api.patch new file mode 100644 index 0000000..382b15f --- /dev/null +++ b/patches/onnxruntime/cstdint-optimizer-api.patch @@ -0,0 +1,10 @@ +--- a/onnxruntime/core/optimizer/transpose_optimization/optimizer_api.h ++++ b/onnxruntime/core/optimizer/transpose_optimization/optimizer_api.h +@@ -3,6 +3,7 @@ + + #pragma once + ++#include + #include + #include + #include diff --git a/sources.json b/sources.json index 330315b..efb4c19 100644 --- a/sources.json +++ b/sources.json @@ -1051,6 +1051,11 @@ "ebb370ca83af193212df4dcbadcc5d87bc0de2f0" ] }, + "https://github.com/mayanklahiri/easyexif.git": { + "refs": [ + "cd994a3b6009bc3c1f84062e96bd7f5ad16e85f6" + ] + }, "https://github.com/mesonbuild/meson.git": { "refs": [ "751b09390996163348612f0b106114256305ee40" @@ -1076,6 +1081,11 @@ "1da054d99bb16d35c54d759f36ccc125b90070bd" ] }, + "https://github.com/nothings/stb.git": { + "refs": [ + "013ac3beddff3dbffafd5177e7972067cd2b5083" + ] + }, "https://github.com/pypa/flit.git": { "refs": [ "92c9486a543c4db266e3908bffc984060b8466af" @@ -1116,6 +1126,11 @@ "5fa4675419cfec60ac19a9c7f7c2d0e7c831a497" ] }, + "https://gitlab.com/libeigen/eigen.git": { + "refs": [ + "e7248b26a1ed53fa030c5c459f7ea095dfd276ac" + ] + }, "https://gitlab.gnome.org/GNOME/glib.git": { "refs": [ "e33be08bda99f453e497064e9e021d6306bbeb7d" @@ -2200,6 +2215,12 @@ "url": "https://download.savannah.gnu.org/releases/freetype/freetype-2.14.1.tar.gz", "sha256": "174d9e53402e1bf9ec7277e22ec199ba3e55a6be2c0740cb18c0ee9850fc8c34" }, + { + "kind": "tar.gz", + "url": "https://github.com/HowardHinnant/date/archive/refs/tags/v3.0.1.tar.gz", + "sha256": "7a390f200f0ccd207e8cff6757e04817c1a0aec3e327b006b7eb451c57ee3538", + "path": "deps/date" + }, { "kind": "tar.gz", "url": "https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.46/pcre2-10.46.tar.gz", @@ -2210,21 +2231,108 @@ "url": "https://github.com/RsyncProject/rsync/releases/download/v3.4.1/rsync-3.4.1.tar.gz", "sha256": "2924bcb3a1ed8b551fc101f740b9f0fe0a202b115027647cf69850d65fd88c52" }, + { + "kind": "tar.gz", + "url": "https://github.com/abseil/abseil-cpp/archive/refs/tags/20240722.0.tar.gz", + "sha256": "f50e5ac311a81382da7fa75b97310e4b9006474f9560ac46f54a9967f07d4ae3", + "path": "deps/abseil_cpp" + }, + { + "kind": "tar.gz", + "url": "https://github.com/boostorg/mp11/archive/refs/tags/boost-1.82.0.tar.gz", + "sha256": "1705680b0849cac3258e528270c9071b440b95372e5be0b9197da89e84a794eb", + "path": "deps/mp11" + }, + { + "kind": "tar.gz", + "url": "https://github.com/dcleblanc/SafeInt/archive/refs/tags/3.0.28.tar.gz", + "sha256": "d6b164bcea92a746e4d44132e505c7ab1816d1089ba99ebc674ccd4b70262ed5", + "path": "deps/safeint" + }, { "kind": "tar.gz", "url": "https://github.com/git/git/archive/refs/tags/v2.51.0.tar.gz", "sha256": "3524fc5fd81f16f80e1696a8281bd8ad831048b67848015d7b7382bf365ae685" }, + { + "kind": "tar.gz", + "url": "https://github.com/google/flatbuffers/archive/refs/tags/v23.5.26.tar.gz", + "sha256": "1cce06b17cddd896b6d73cc047e36a254fb8df4d7ea18a46acf16c4c0cd3f3f3", + "path": "deps/flatbuffers" + }, + { + "kind": "tar.gz", + "url": "https://github.com/google/nsync/archive/refs/tags/1.26.0.tar.gz", + "sha256": "80fc1e605bb3cf5f272811ece39c4fb6761ffcb9b30563301845cc9ff381eb8b", + "path": "deps/google_nsync" + }, + { + "kind": "tar.gz", + "url": "https://github.com/google/re2/archive/refs/tags/2024-07-02.tar.gz", + "sha256": "eb2df807c781601c14a260a507a5bb4509be1ee626024cb45acbd57cb9d4032b", + "path": "deps/re2" + }, { "kind": "tar.gz", "url": "https://github.com/libffi/libffi/releases/download/v3.5.2/libffi-3.5.2.tar.gz", "sha256": "f3a3082a23b37c293a4fcd1053147b371f2ff91fa7ea1b2a52e335676bac82dc" }, + { + "kind": "tar.gz", + "url": "https://github.com/microsoft/GSL/archive/refs/tags/v4.0.0.tar.gz", + "sha256": "f0e32cb10654fea91ad56bde89170d78cfbf4363ee0b01d8f097de2ba49f6ce9", + "path": "deps/GSL" + }, + { + "kind": "tar.gz", + "url": "https://github.com/microsoft/onnxruntime/archive/refs/tags/v1.20.1.tar.gz", + "sha256": "d4c005506a2bbf88a838b14f8d1578406b8be2fb64abb50beeff908fb272529e" + }, { "kind": "tar.gz", "url": "https://github.com/ninja-build/ninja/archive/refs/tags/v1.13.1.tar.gz", "sha256": "f0055ad0369bf2e372955ba55128d000cfcc21777057806015b45e4accbebf23" }, + { + "kind": "tar.gz", + "url": "https://github.com/nlohmann/json/archive/refs/tags/v3.10.5.tar.gz", + "sha256": "5daca6ca216495edf89d167f808d1d03c4a4d929cef7da5e10f135ae1540c7e4", + "path": "deps/nlohmann_json" + }, + { + "kind": "tar.gz", + "url": "https://github.com/nlohmann/json/archive/refs/tags/v3.11.3.tar.gz", + "sha256": "0d8ef5af7f9794e3263480193c491549b2ba6cc74bb018906202ada498a79406" + }, + { + "kind": "tar.gz", + "url": "https://github.com/onnx/onnx/archive/refs/tags/v1.16.1.tar.gz", + "sha256": "0e6aa2c0a59bb2d90858ad0040ea1807117cc2f05b97702170f18e6cd6b66fb3", + "path": "deps/onnx" + }, + { + "kind": "tar.gz", + "url": "https://github.com/protocolbuffers/protobuf/archive/refs/tags/v21.12.tar.gz", + "sha256": "22fdaf641b31655d4b2297f9981fa5203b2866f8332d3c6333f6b0107bb320de" + }, + { + "kind": "tar.gz", + "url": "https://github.com/protocolbuffers/protobuf/archive/refs/tags/v21.12.tar.gz", + "sha256": "22fdaf641b31655d4b2297f9981fa5203b2866f8332d3c6333f6b0107bb320de", + "path": "deps/protobuf" + }, + { + "kind": "tar.gz", + "url": "https://github.com/protocolbuffers/utf8_range/archive/72c943dea2b9240cd09efde15191e144bc7c7d38.tar.gz", + "sha256": "e008768a46ee0ee646b8e4ef02f55af3634b3ad38b750489eb793774331ca5bd", + "path": "deps/utf8_range" + }, + { + "kind": "tar.gz", + "url": "https://github.com/pytorch/cpuinfo/archive/ca678952a9a8eaa6de112d154e8e104b22f9ab3f.tar.gz", + "sha256": "c8f43b307fa7d911d88fec05448161eb1949c3fc0cb62f3a7a2c61928cdf2e9b", + "path": "deps/pytorch_cpuinfo" + }, { "kind": "tar.gz", "url": "https://github.com/rockdaboot/libpsl/releases/download/0.21.5/libpsl-0.21.5.tar.gz", @@ -2267,6 +2375,11 @@ "url": "https://github.com/xkbcommon/libxkbcommon/archive/refs/tags/xkbcommon-1.13.1.tar.gz", "sha256": "aeb951964c2f7ecc08174cb5517962d157595e9e3f38fc4a130b91dc2f9fec18" }, + { + "kind": "tar.gz", + "url": "https://github.com/zxing-cpp/zxing-cpp/archive/refs/tags/v2.3.0.tar.gz", + "sha256": "64e4139103fdbc57752698ee15b5f0b0f7af9a0331ecbdc492047e0772c417ba" + }, { "kind": "tar.gz", "url": "https://gitlab.freedesktop.org/wayland/wayland/-/archive/1.25.0/wayland-1.25.0.tar.gz", From a140923d67b86ab8db1c0a624d76f94a1fd64b10 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 9 Aug 2026 22:56:48 +0200 Subject: [PATCH 174/200] fix: macos? --- packages/onnxruntime.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/onnxruntime.json b/packages/onnxruntime.json index b72d771..a0dec46 100644 --- a/packages/onnxruntime.json +++ b/packages/onnxruntime.json @@ -123,8 +123,9 @@ "*:{*-linux-gnu,*-apple-*}:patch -p1 -d deps/flatbuffers < cmake/patches/flatbuffers/flatbuffers.patch", "*:{*-linux-gnu,*-apple-*}:patch -p1 -d deps/onnx < cmake/patches/onnx/onnx.patch", "*:{*-linux-gnu,*-apple-*}:./build.sh --config Release --build_shared_lib --parallel --skip_tests --allow_running_as_root --compile_no_warning_as_error --skip_submodule_sync --path_to_protoc_exe $NATIVEPREFIX/bin/protoc --cmake_extra_defines CMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE CMAKE_INSTALL_PREFIX=$PREFIX FETCHCONTENT_FULLY_DISCONNECTED=ON FETCHCONTENT_SOURCE_DIR_ABSEIL_CPP=$PWD/deps/abseil_cpp FETCHCONTENT_SOURCE_DIR_RE2=$PWD/deps/re2 FETCHCONTENT_SOURCE_DIR_GOOGLE_NSYNC=$PWD/deps/google_nsync FETCHCONTENT_SOURCE_DIR_UTF8_RANGE=$PWD/deps/utf8_range FETCHCONTENT_SOURCE_DIR_PROTOBUF=$PWD/deps/protobuf FETCHCONTENT_SOURCE_DIR_DATE=$PWD/deps/date FETCHCONTENT_SOURCE_DIR_MP11=$PWD/deps/mp11 FETCHCONTENT_SOURCE_DIR_NLOHMANN_JSON=$PWD/deps/nlohmann_json FETCHCONTENT_SOURCE_DIR_PYTORCH_CPUINFO=$PWD/deps/pytorch_cpuinfo FETCHCONTENT_SOURCE_DIR_PYTORCH_CLOG=$PWD/deps/pytorch_cpuinfo FETCHCONTENT_SOURCE_DIR_GSL=$PWD/deps/GSL FETCHCONTENT_SOURCE_DIR_SAFEINT=$PWD/deps/safeint FETCHCONTENT_SOURCE_DIR_FLATBUFFERS=$PWD/deps/flatbuffers FETCHCONTENT_SOURCE_DIR_ONNX=$PWD/deps/onnx onnxruntime_USE_PREINSTALLED_EIGEN=ON eigen_SOURCE_PATH=$PWD/deps/eigen CMAKE_POLICY_VERSION_MINIMUM=3.5 onnxruntime_BUILD_UNIT_TESTS=OFF FLATBUFFERS_BUILD_FLATC=OFF $ort_extra", - "*:{*-linux-gnu,*-apple-*}:DESTDIR=$STAGING_DIR cmake --install build/Linux/Release --prefix \"$PREFIX\"", + "linux_*:{*-linux-gnu,*-apple-*}:DESTDIR=$STAGING_DIR cmake --install build/Linux/Release --prefix \"$PREFIX\"", + "darwin_*:{*-linux-gnu,*-apple-*}:DESTDIR=$STAGING_DIR cmake --install build/MacOS/Release --prefix \"$PREFIX\"", "*:{*-linux-gnu,*-apple-*}:cp -a $STAGING_DIR$PREFIX/include/onnxruntime/. $STAGING_DIR$PREFIX/include/" ] } -} +} \ No newline at end of file From cac240693f617d27844b383c74da844b31a3ec94 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 11 Aug 2026 08:52:52 -0400 Subject: [PATCH 175/200] fix: build --- packages/rust-std.json | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/packages/rust-std.json b/packages/rust-std.json index 0871d63..2aa51b2 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -122,6 +122,7 @@ "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", + "linux_*:*:LDFLAGS=-L$NATIVEPREFIX/_/sysroot/lib", "linux_amd64:aarch64-linux-gnu:HOST=x86_64-linux-gnu", "linux_arm64:x86_64-linux-gnu:HOST=aarch64-linux-gnu", "darwin_arm64:*:SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk", @@ -144,6 +145,7 @@ "CPPFLAGS", "LDFLAGS", "RUST_LDFLAGS", + "LIBRARY_PATH", "CC_x86_64_unknown_linux_gnu", "CXX_x86_64_unknown_linux_gnu", "CFLAGS_x86_64_unknown_linux_gnu", @@ -269,7 +271,12 @@ }, "std-mingw": { "env": [ - "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", + "*:*:CC=$NATIVEPREFIX/_/bin/clang", + "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", + "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", + "linux_*:*:LDFLAGS=-L$NATIVEPREFIX/_/sysroot/lib", "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", @@ -286,13 +293,21 @@ "READELF", "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", + "CC", + "CXX", "CFLAGS", "CXXFLAGS", "CPPFLAGS", + "LDFLAGS", + "RUST_LDFLAGS", + "LIBRARY_PATH", "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", "CFLAGS_aarch64_unknown_linux_gnu", - "CXXFLAGS_aarch64_unknown_linux_gnu" + "CXXFLAGS_aarch64_unknown_linux_gnu", + "CFLAGS_x86_64_pc_windows_gnu", + "CXXFLAGS_x86_64_pc_windows_gnu", + "LDFLAGS_x86_64_pc_windows_gnu" ] }, "std-native": { From 7622c3927fea53fd7b111a5b644333a6fec8ea27 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 11 Aug 2026 13:34:32 -0400 Subject: [PATCH 176/200] Revert "fix: build" - didn't fix This reverts commit cac240693f617d27844b383c74da844b31a3ec94. --- packages/rust-std.json | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/packages/rust-std.json b/packages/rust-std.json index 2aa51b2..0871d63 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -122,7 +122,6 @@ "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", - "linux_*:*:LDFLAGS=-L$NATIVEPREFIX/_/sysroot/lib", "linux_amd64:aarch64-linux-gnu:HOST=x86_64-linux-gnu", "linux_arm64:x86_64-linux-gnu:HOST=aarch64-linux-gnu", "darwin_arm64:*:SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk", @@ -145,7 +144,6 @@ "CPPFLAGS", "LDFLAGS", "RUST_LDFLAGS", - "LIBRARY_PATH", "CC_x86_64_unknown_linux_gnu", "CXX_x86_64_unknown_linux_gnu", "CFLAGS_x86_64_unknown_linux_gnu", @@ -271,12 +269,7 @@ }, "std-mingw": { "env": [ - "*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", - "*:*:CC=$NATIVEPREFIX/_/bin/clang", - "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", - "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", - "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", - "linux_*:*:LDFLAGS=-L$NATIVEPREFIX/_/sysroot/lib", + "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", @@ -293,21 +286,13 @@ "READELF", "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", - "CC", - "CXX", "CFLAGS", "CXXFLAGS", "CPPFLAGS", - "LDFLAGS", - "RUST_LDFLAGS", - "LIBRARY_PATH", "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", "CFLAGS_aarch64_unknown_linux_gnu", - "CXXFLAGS_aarch64_unknown_linux_gnu", - "CFLAGS_x86_64_pc_windows_gnu", - "CXXFLAGS_x86_64_pc_windows_gnu", - "LDFLAGS_x86_64_pc_windows_gnu" + "CXXFLAGS_aarch64_unknown_linux_gnu" ] }, "std-native": { From 3036b7931adf42195a434f001d76658c508b364c Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 12 Aug 2026 02:35:24 +0200 Subject: [PATCH 177/200] Reapply "fix: build" - didn't fix - it did This reverts commit 7622c3927fea53fd7b111a5b644333a6fec8ea27. --- packages/rust-std.json | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/packages/rust-std.json b/packages/rust-std.json index 0871d63..2aa51b2 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -122,6 +122,7 @@ "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", + "linux_*:*:LDFLAGS=-L$NATIVEPREFIX/_/sysroot/lib", "linux_amd64:aarch64-linux-gnu:HOST=x86_64-linux-gnu", "linux_arm64:x86_64-linux-gnu:HOST=aarch64-linux-gnu", "darwin_arm64:*:SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk", @@ -144,6 +145,7 @@ "CPPFLAGS", "LDFLAGS", "RUST_LDFLAGS", + "LIBRARY_PATH", "CC_x86_64_unknown_linux_gnu", "CXX_x86_64_unknown_linux_gnu", "CFLAGS_x86_64_unknown_linux_gnu", @@ -269,7 +271,12 @@ }, "std-mingw": { "env": [ - "*:*:PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin", + "*:*:PATH=$NATIVEPREFIX/_/bin:$NATIVEPREFIX/bin", + "*:*:CC=$NATIVEPREFIX/_/bin/clang", + "*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "*:*:CFLAGS=-fPIC -I$NATIVEPREFIX/include", + "*:*:CXXFLAGS=-fPIC -I$NATIVEPREFIX/include", + "linux_*:*:LDFLAGS=-L$NATIVEPREFIX/_/sysroot/lib", "linux_arm64:*:CFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", "linux_arm64:*:CXXFLAGS_aarch64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", "linux_amd64:*:CFLAGS_x86_64_unknown_linux_gnu=-fPIC -I$NATIVEPREFIX/include", @@ -286,13 +293,21 @@ "READELF", "MACOSX_DEPLOYMENT_TARGET", "CMAKE_SYSTEM_NAME", + "CC", + "CXX", "CFLAGS", "CXXFLAGS", "CPPFLAGS", + "LDFLAGS", + "RUST_LDFLAGS", + "LIBRARY_PATH", "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", "CFLAGS_aarch64_unknown_linux_gnu", - "CXXFLAGS_aarch64_unknown_linux_gnu" + "CXXFLAGS_aarch64_unknown_linux_gnu", + "CFLAGS_x86_64_pc_windows_gnu", + "CXXFLAGS_x86_64_pc_windows_gnu", + "LDFLAGS_x86_64_pc_windows_gnu" ] }, "std-native": { From 35d8736dec79623bb51a8e59a613f8e5d28cfbbc Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Wed, 12 Aug 2026 04:53:58 -0400 Subject: [PATCH 178/200] wip? --- packages/rust-std.json | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/rust-std.json b/packages/rust-std.json index 2aa51b2..ecd2859 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -304,10 +304,7 @@ "CFLAGS_x86_64_unknown_linux_gnu", "CXXFLAGS_x86_64_unknown_linux_gnu", "CFLAGS_aarch64_unknown_linux_gnu", - "CXXFLAGS_aarch64_unknown_linux_gnu", - "CFLAGS_x86_64_pc_windows_gnu", - "CXXFLAGS_x86_64_pc_windows_gnu", - "LDFLAGS_x86_64_pc_windows_gnu" + "CXXFLAGS_aarch64_unknown_linux_gnu" ] }, "std-native": { From c82675f2f480f0e63709b8a9b71ca1b00f1986b0 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 13 Aug 2026 00:22:46 +0200 Subject: [PATCH 179/200] win --- .gitignore | 6 +- builder/builder_windows_amd64.go | 1 + builder/default.go | 4 +- cmd/release/main.go | 1 + go.mod | 5 +- go.sum | 4 + pack/build.go | 99 +++++--- pack/info.go | 18 +- pack/main.go | 27 ++- packages/libiconv.json | 1 + packages/libpsl.json | 9 +- packages/native/README.md | 13 +- packages/native/_.json | 4 +- packages/native/_/_.json | 28 ++- .../native/_/windows_amd64_cygwin_clang.json | 18 ++ packages/native/bash.json | 12 +- packages/native/bison.json | 2 +- packages/native/bzip2.json | 2 + packages/native/coreutils.json | 5 +- packages/native/crosstool-ng.json | 8 +- packages/native/ct-tools.json | 19 +- packages/native/curl.json | 3 +- packages/native/diffutils.json | 11 +- packages/native/file.json | 2 + packages/native/findutils.json | 6 +- packages/native/gawk.json | 9 +- packages/native/git.json | 5 +- packages/native/grep.json | 10 +- packages/native/gzip.json | 10 +- packages/native/icu4c.json | 3 +- packages/native/libpsl.json | 22 +- packages/native/libtapi.json | 23 +- packages/native/llvm-objcopy.json | 6 +- packages/native/m4.json | 3 +- packages/native/make.json | 13 +- packages/native/ncurses.json | 10 +- packages/native/openssl.json | 4 +- packages/native/osx-cross.json | 10 +- packages/native/perl.json | 15 +- packages/native/python@3.11.json | 4 +- packages/native/python@3.14.json | 7 +- packages/native/tar.json | 5 +- packages/native/texinfo.json | 3 +- packages/native/zlib.json | 2 +- packages/protobuf.json | 1 + packages/zeromq.json | 9 +- packages/zlib.json | 2 +- patches/native/_/drop-gnulib-wint-wrappers.sh | 41 ++++ patches/native/_/fix-gnulib-pthread-once.sh | 8 + patches/native/_/stage-seed-tools.sh | 34 +++ .../coreutils/clang-pthread-once-atomic.patch | 12 + .../native/python@3.14/cygwin-clockid-t.patch | 10 + .../python@3.14/cygwin-dynload-suffix.patch | 10 + utils/download/download.go | 111 ++++++--- utils/extract.go | 6 + utils/git.go | 22 +- utils/path.go | 217 ++++++++++++++++++ utils/path_test.go | 32 +++ utils/run_live.go | 29 +++ 59 files changed, 844 insertions(+), 172 deletions(-) create mode 100644 builder/builder_windows_amd64.go create mode 100644 packages/native/_/windows_amd64_cygwin_clang.json create mode 100644 patches/native/_/drop-gnulib-wint-wrappers.sh create mode 100644 patches/native/_/fix-gnulib-pthread-once.sh create mode 100644 patches/native/_/stage-seed-tools.sh create mode 100644 patches/native/coreutils/clang-pthread-once-atomic.patch create mode 100644 patches/native/python@3.14/cygwin-clockid-t.patch create mode 100644 patches/native/python@3.14/cygwin-dynload-suffix.patch create mode 100644 utils/path_test.go create mode 100644 utils/run_live.go diff --git a/.gitignore b/.gitignore index b8d24b2..2afbea0 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,8 @@ ct-config logs *.log -*.pid \ No newline at end of file +*.pid + +# Local Windows Cygwin+clang seed (keep README only) +patches/native/_/windows_amd64_cygwin_clang/** +!patches/native/_/windows_amd64_cygwin_clang/README.md diff --git a/builder/builder_windows_amd64.go b/builder/builder_windows_amd64.go new file mode 100644 index 0000000..e647fb2 --- /dev/null +++ b/builder/builder_windows_amd64.go @@ -0,0 +1 @@ +package builder diff --git a/builder/default.go b/builder/default.go index 119468e..729697a 100644 --- a/builder/default.go +++ b/builder/default.go @@ -17,10 +17,12 @@ func NativeTriplet() string { return "x86_64-linux-gnu" case "linux_arm64": return "aarch64-linux-gnu" + case "windows_amd64": + return "x86_64-pc-cygwin" default: log.Fatalf("unknown builder: %s", GetName()) return "" } } -var Builders = []string{"darwin_arm64", "linux_amd64", "linux_arm64"} +var Builders = []string{"darwin_arm64", "linux_amd64", "linux_arm64", "windows_amd64"} diff --git a/cmd/release/main.go b/cmd/release/main.go index 4555afe..a153f7e 100644 --- a/cmd/release/main.go +++ b/cmd/release/main.go @@ -30,6 +30,7 @@ func main() { {"linux", "amd64"}, {"linux", "arm64"}, {"darwin", "arm64"}, + {"windows", "amd64"}, } if err := createReleaseDirectory(); err != nil { diff --git a/go.mod b/go.mod index 9b70cbc..2aa132b 100644 --- a/go.mod +++ b/go.mod @@ -1,8 +1,11 @@ module github.com/mrcyjanek/simplybs -go 1.24.5 +go 1.25.0 require ( github.com/gobwas/glob v0.2.3 github.com/ulikunitz/xz v0.5.15 + golang.org/x/term v0.45.0 ) + +require golang.org/x/sys v0.47.0 // indirect diff --git a/go.sum b/go.sum index 42101c9..c5cee52 100644 --- a/go.sum +++ b/go.sum @@ -2,3 +2,7 @@ github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y= github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= github.com/ulikunitz/xz v0.5.15 h1:9DNdB5s+SgV3bQ2ApL10xRc35ck0DuIX/isZvIk+ubY= github.com/ulikunitz/xz v0.5.15/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= +golang.org/x/sys v0.47.0 h1:o7XGOvZQCADBQQ4Y7VNq2dRWQR7JmOUW8Kxx4ZsNgWs= +golang.org/x/sys v0.47.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= +golang.org/x/term v0.45.0 h1:NwWyBmoJCbfTHpxrWoZ9C6/VxOf7ic219I8xZZFdrf0= +golang.org/x/term v0.45.0/go.mod h1:9aqxs0blBcrm/n0L9QW0aRVD+ktan8ssZromtqJC43w= diff --git a/pack/build.go b/pack/build.go index dac6d71..01b5908 100644 --- a/pack/build.go +++ b/pack/build.go @@ -90,6 +90,9 @@ func (p *Package) ExtractSource(host *host.Host, buildPath string) { } var err error for _, download := range p.Download { + if download.Kind == "none" { + continue + } sourcePath := p.GenerateSourceBuildPath(download) actualBuildPath := buildPath if download.Path != "" { @@ -107,8 +110,6 @@ func (p *Package) ExtractSource(host *host.Host, buildPath string) { case "blob": os.MkdirAll(filepath.Dir(actualBuildPath), 0755) err = utils.Copy(sourcePath, actualBuildPath) - case "none": - return default: log.Fatalf("Unsupported archive kind: %s", download.Kind) } @@ -215,7 +216,7 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { p.ExtractSource(h, buildPath) - infoPath := filepath.Join(stagingPath, p.prefixPath(h), ".buildlib", p.ShortName(h)+".txt") + infoPath := filepath.Join(utils.DestDirJoin(stagingPath, p.prefixPath(h)), ".buildlib", p.ShortName(h)+".txt") os.MkdirAll(filepath.Dir(infoPath), 0755) err := os.WriteFile(infoPath, []byte(p.GeneratePackageInfo(h)), 0644) if err != nil { @@ -230,7 +231,11 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { if profileName == "" && strings.HasPrefix(step, "@") { continue } - cmd := exec.Command("sh", "-c", stepCmd) + nativePrefix := h.GetNativeEnvPath() + tmpDir := filepath.Join(nativePrefix, "_", "tmp") + os.MkdirAll(tmpDir, 0755) + shell := utils.ResolveShell(nativePrefix) + cmd := exec.Command(shell, "-c", stepCmd) cmd.Dir = buildPath pathEnv := utils.GetHostPath() env := p.envForStepFrom(baseEnv, h, profileName) @@ -240,16 +245,23 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { hostTriplet = builder.NativeTriplet() } - cmd.Env = append(cmd.Env, []string{ - "STAGING_DIR=" + stagingPath, - "HOST=" + hostTriplet, - "PREFIX=" + h.GetEnvPath(), - "NATIVEPREFIX=" + h.GetNativeEnvPath(), - "PATH=" + h.GetNativeEnvPath() + "/bin:" + env["PATH"] + ":" + pathEnv + ":" + h.GetEnvPath() + "/bin" + ":" + h.GetNativeEnvPath() + "/_/bin", - }...) + // Explicit env only — do not inherit the parent process environment. + overrides := map[string]string{ + "STAGING_DIR": utils.ToShellPath(stagingPath), + "HOST": hostTriplet, + "PREFIX": utils.ToShellPath(h.GetEnvPath()), + "NATIVEPREFIX": utils.ToShellPath(nativePrefix), + "PATH": utils.BuildStepPATH(nativePrefix, h.GetEnvPath(), env["PATH"], pathEnv), + "TEMP": utils.ToShellPath(tmpDir), + "TMP": utils.ToShellPath(tmpDir), + "TMPDIR": utils.ToShellPath(tmpDir), + "CYGWIN": "nodosfilewarning", + "MSYS": "nodosfilewarning", + } for k, v := range env { - cmd.Env = append(cmd.Env, k+"="+v) + overrides[k] = v } + cmd.Env = utils.ProcessEnv(overrides) writeDotEnv(path.Join(buildPath, "_source_me"), cmd.Env) @@ -257,9 +269,7 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { if profileName != "" { log.Printf("Using build profile: %s", profileName) } - cmd.Stderr = os.Stderr - cmd.Stdout = os.Stdout - err := cmd.Run() + err := utils.RunLive(cmd) if err != nil { log.Fatalf("[%s] build step failed: %s, error: %v, %s", p.Package, stepCmd, err, cmd.Dir) } @@ -269,13 +279,15 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { builtNativeArchivePath := p.GenerateBuildPath(h, "built") + "_native.tar.gz" os.MkdirAll(filepath.Dir(builtArchivePath), 0755) os.MkdirAll(filepath.Dir(builtNativeArchivePath), 0755) - os.MkdirAll(filepath.Join(stagingPath, h.GetNativeEnvPath()), 0755) - os.MkdirAll(filepath.Join(stagingPath, h.GetEnvPath()), 0755) - err = utils.CreateTarGz(filepath.Join(stagingPath, h.GetNativeEnvPath()), builtNativeArchivePath) + stagedNative := utils.DestDirJoin(stagingPath, h.GetNativeEnvPath()) + stagedHost := utils.DestDirJoin(stagingPath, h.GetEnvPath()) + os.MkdirAll(stagedNative, 0755) + os.MkdirAll(stagedHost, 0755) + err = utils.CreateTarGz(stagedNative, builtNativeArchivePath) if err != nil { log.Fatalf("Failed to create archive %s: %v", builtArchivePath, err) } - err = utils.CreateTarGz(filepath.Join(stagingPath, h.GetEnvPath()), builtArchivePath) + err = utils.CreateTarGz(stagedHost, builtArchivePath) if err != nil { log.Fatalf("Failed to create archive %s: %v", builtArchivePath, err) } @@ -310,6 +322,10 @@ func writeDotEnv(path string, env []string) { if len(parts) > 1 { val = parts[1] } + // Skip keys that are not valid bash identifiers (e.g. inherited Windows names). + if !isBashIdent(key) { + continue + } escapedVal := shellEscape(val) @@ -318,6 +334,22 @@ func writeDotEnv(path string, env []string) { f.WriteString(b.String()) } + +func isBashIdent(name string) bool { + if name == "" { + return false + } + for i, r := range name { + if r == '_' || (r >= 'A' && r <= 'Z') || (r >= 'a' && r <= 'z') { + continue + } + if i > 0 && r >= '0' && r <= '9' { + continue + } + return false + } + return true +} func shellEscape(value string) string { if value == "" { return "\"\"" @@ -349,10 +381,12 @@ func (p *Package) StartShell(h *host.Host) { env := p.GetEnv(h) pathEnv := utils.GetHostPath() + nativePrefix := h.GetNativeEnvPath() + os.MkdirAll(filepath.Join(nativePrefix, "_", "tmp"), 0755) userShell := os.Getenv("SHELL") if userShell == "" { - userShell = "/bin/sh" + userShell = utils.ResolveShell(nativePrefix) } fmt.Print("\n\n") builderName := builder.GetName() @@ -384,17 +418,24 @@ func (p *Package) StartShell(h *host.Host) { hostTriplet = builder.NativeTriplet() } - cmd.Env = append(cmd.Env, []string{ - "HOST=" + hostTriplet, - "PREFIX=" + h.GetEnvPath(), - "NATIVEPREFIX=" + h.GetNativeEnvPath(), - "PATH=" + h.GetNativeEnvPath() + "/bin:" + env["PATH"] + ":" + pathEnv, - "TERM=" + os.Getenv("TERM"), - }...) - + overrides := map[string]string{ + "HOST": hostTriplet, + "PREFIX": utils.ToShellPath(h.GetEnvPath()), + "NATIVEPREFIX": utils.ToShellPath(nativePrefix), + "PATH": utils.BuildStepPATH(nativePrefix, h.GetEnvPath(), env["PATH"], pathEnv), + "TEMP": utils.ToShellPath(filepath.Join(nativePrefix, "_", "tmp")), + "TMP": utils.ToShellPath(filepath.Join(nativePrefix, "_", "tmp")), + "TMPDIR": utils.ToShellPath(filepath.Join(nativePrefix, "_", "tmp")), + "CYGWIN": "nodosfilewarning", + "MSYS": "nodosfilewarning", + } + if term := os.Getenv("TERM"); term != "" { + overrides["TERM"] = term + } for k, v := range env { - cmd.Env = append(cmd.Env, k+"="+v) + overrides[k] = v } + cmd.Env = utils.ProcessEnv(overrides) writeDotEnv(path.Join(buildPath, "_source_me"), cmd.Env) err := cmd.Run() diff --git a/pack/info.go b/pack/info.go index bbcfa2c..b65a286 100644 --- a/pack/info.go +++ b/pack/info.go @@ -26,7 +26,7 @@ func (p *Package) prefixPath(h *host.Host) string { } func (p *Package) homePath(h *host.Host) string { - return p.prefixPath(h) + "/home/user" + return filepath.Join(p.prefixPath(h), "home", "user") } func (p *Package) FilterForHost(h *host.Host) *Package { @@ -127,18 +127,18 @@ func (p *Package) minimalEnvWithStaging(h *host.Host, stagingPath string) map[st targetTriplet = builder.NativeTriplet() } return map[string]string{ - "PATH": h.GetNativeEnvPath() + "/bin:" + h.GetNativeEnvPath() + "/_/bin:" + utils.GetHostPath(), + "PATH": utils.BuildStepPATH(h.GetNativeEnvPath(), h.GetEnvPath(), "", utils.GetHostPath()), "HOST": hostTriplet, "TARGET": targetTriplet, - "PREFIX": h.GetEnvPath(), - "NATIVEPREFIX": h.GetNativeEnvPath(), - "HOME": p.homePath(h), - "HOST_PREFIX": h.GetEnvPath(), + "PREFIX": utils.ToShellPath(h.GetEnvPath()), + "NATIVEPREFIX": utils.ToShellPath(h.GetNativeEnvPath()), + "HOME": utils.ToShellPath(p.homePath(h)), + "HOST_PREFIX": utils.ToShellPath(h.GetEnvPath()), "NUM_CORES": strconv.Itoa(getNumCores()), - "PATCH_DIR": filepath.Join(getwd, "patches"), - "STAGING_DIR": stagingPath, + "PATCH_DIR": utils.ToShellPath(filepath.Join(getwd, "patches")), + "STAGING_DIR": utils.ToShellPath(stagingPath), "PKG_CONFIG_ALLOW_CROSS": "1", - "PKG_CONFIG_SYSROOT_DIR": h.GetEnvPath(), + "PKG_CONFIG_SYSROOT_DIR": utils.ToShellPath(h.GetEnvPath()), "BUILDER_GOOS": runtime.GOOS, "BUILDER_GOARCH": runtime.GOARCH, } diff --git a/pack/main.go b/pack/main.go index 4c6eb42..6e36914 100644 --- a/pack/main.go +++ b/pack/main.go @@ -203,27 +203,30 @@ func Cleanup() { currentFileName := fmt.Sprintf("%s-%s-%s", pkg.Package, pkg.Version, currentBuildID) currentFileName = strings.ReplaceAll(currentFileName, "/", "_") - archPath := filepath.Join(builder, "built", target, currentFileName+".tar.gz") - archNativePath := filepath.Join(builder, "built", target, currentFileName+"_native.tar.gz") - infoPath := filepath.Join(builder, "built", target, currentFileName+".info.txt") - + var archPath, archNativePath, infoPath string if pkg.Type == "native" { + // Native archives live flat under built/ (no target triplet dir). archPath = filepath.Join(builder, "built", currentFileName+".tar.gz") - archNativePath = filepath.Join(builder, "built", target, currentFileName+"_native.tar.gz") + archNativePath = filepath.Join(builder, "built", currentFileName+"_native.tar.gz") infoPath = filepath.Join(builder, "built", currentFileName+".info.txt") + } else { + archPath = filepath.Join(builder, "built", target, currentFileName+".tar.gz") + archNativePath = filepath.Join(builder, "built", target, currentFileName+"_native.tar.gz") + infoPath = filepath.Join(builder, "built", target, currentFileName+".info.txt") } - keepFiles[archPath] = true - keepFiles[archNativePath] = true - keepFiles[infoPath] = true + // Walk uses ToSlash; keep keys must match on Windows (filepath.Join uses '\'). + keepFiles[filepath.ToSlash(archPath)] = true + keepFiles[filepath.ToSlash(archNativePath)] = true + keepFiles[filepath.ToSlash(infoPath)] = true } } var keepFilesCopy = make(map[string]bool) maps.Copy(keepFilesCopy, keepFiles) - for k, _ := range keepFilesCopy { - if k[len(k)-len(".tar.gz"):] == ".tar.gz" { - keepFiles[k[:len(k)-len(".tar.gz")]+"_native.tar.gz"] = true + for k := range keepFilesCopy { + if strings.HasSuffix(k, ".tar.gz") && !strings.HasSuffix(k, "_native.tar.gz") { + keepFiles[strings.TrimSuffix(k, ".tar.gz")+"_native.tar.gz"] = true } } @@ -231,7 +234,7 @@ func Cleanup() { sourcePath := pkg.GenerateSourceBuildPath(download) relPath, err := filepath.Rel(buildlibDir, sourcePath) if err == nil { - keepSources[relPath] = true + keepSources[filepath.ToSlash(relPath)] = true } } } diff --git a/packages/libiconv.json b/packages/libiconv.json index 3ab8c57..ef017e9 100644 --- a/packages/libiconv.json +++ b/packages/libiconv.json @@ -36,6 +36,7 @@ "*:*:cp -f $NATIVEPREFIX/share/config/config.sub build-aux/", "*:*:sed -i.bak 's|#include |#include \"stdckdint.in.h\"|' ./srclib/malloca.c", "*:*:bash ./configure $config_opts", + "*:*-w64-mingw32:sed -i.bak -e '/cd srclib/d' -e '/cd src &&/d' Makefile", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", "*:*:mkdir -p $STAGING_DIR$PREFIX/include", diff --git a/packages/libpsl.json b/packages/libpsl.json index 6c2d256..fda7bf4 100644 --- a/packages/libpsl.json +++ b/packages/libpsl.json @@ -14,11 +14,14 @@ "*:*:unistring" ], "build": { - "env": [], + "env": [ + "*:*:config_opts=--prefix=$PREFIX", + "windows_*:*:config_opts=$config_opts --disable-builtin" + ], "steps": [ - "*:*:./configure --prefix=$PREFIX", + "*:*:./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] } -} \ No newline at end of file +} diff --git a/packages/native/README.md b/packages/native/README.md index 1d1324a..4c19a6a 100644 --- a/packages/native/README.md +++ b/packages/native/README.md @@ -1,3 +1,14 @@ # _native_ packages -These packages are intended to be ran on host when building. \ No newline at end of file +These packages are intended to be ran on host when building. + +## Windows (`windows_amd64`) + +Builder userspace ABI is **Cygwin** (`NativeTriplet` = `x86_64-pc-cygwin`). + +1. Provide a Cygwin+clang seed under `patches/native/_/windows_amd64_cygwin_clang/` (see README there). +2. `native/_/_` stages that seed into `$NATIVEPREFIX/_/`. +3. Rebuild `native/*` from source (make, bash, coreutils, …) with that compiler. +4. Build `native/crosstool-ng` then `native/ct-tools` from source for each `TOOL_TARGET`. + +Suggested climb order toward ct-tools: `native/make` → `native/bash` → coreutils/sed/grep/… → autotools → `native/xz` → `native/crosstool-ng` → `native/ct-tools`. diff --git a/packages/native/_.json b/packages/native/_.json index dc38a0d..2e6d3a3 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -213,7 +213,9 @@ "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX", "*:*:rm -rf $STAGING_DIR$NATIVEPREFIX", "*:*:cp -a $NATIVEPREFIX $STAGING_DIR$NATIVEPREFIX", - "*:*:rm -rf $STAGING_DIR$NATIVEPREFIX/_", + "darwin_arm64:*:rm -rf $STAGING_DIR$NATIVEPREFIX/_", + "linux_amd64:*:rm -rf $STAGING_DIR$NATIVEPREFIX/_", + "linux_arm64:*:rm -rf $STAGING_DIR$NATIVEPREFIX/_", "*:*:mkdir -p $STAGING_DIR$PREFIX", "*:*:rm -rf $STAGING_DIR$PREFIX", "*:*:cp -a $PREFIX $STAGING_DIR$PREFIX", diff --git a/packages/native/_/_.json b/packages/native/_/_.json index 0fee349..1f79f6a 100644 --- a/packages/native/_/_.json +++ b/packages/native/_/_.json @@ -5,7 +5,8 @@ "dependencies": [ "darwin_arm64:*:native/_/darwin_arm64_clang21", "linux_amd64:*:native/_/linux_amd64_clang21", - "linux_arm64:*:native/_/linux_arm64_clang21" + "linux_arm64:*:native/_/linux_arm64_clang21", + "windows_amd64:*:native/_/windows_amd64_cygwin_clang" ], "export-env": [ "darwin_arm64:*:OSX_MIN_VERSION=13.0", @@ -31,12 +32,21 @@ "linux_arm64:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", "linux_arm64:*:STRIP=$NATIVEPREFIX/_/bin/strip", "linux_arm64:*:NM=$NATIVEPREFIX/_/bin/nm", + "windows_amd64:*:CC=$NATIVEPREFIX/_/bin/gcc", + "windows_amd64:*:CXX=$NATIVEPREFIX/_/bin/g++", + "windows_amd64:*:AR=$NATIVEPREFIX/_/bin/ar", + "windows_amd64:*:RANLIB=$NATIVEPREFIX/_/bin/ranlib", + "windows_amd64:*:STRIP=$NATIVEPREFIX/_/bin/strip", + "windows_amd64:*:NM=$NATIVEPREFIX/_/bin/nm", "*:*:CFLAGS=$CFLAGS -I$NATIVEPREFIX/include", "*:*:CXXFLAGS=$CXXFLAGS -I$NATIVEPREFIX/include", "*:*:CPPFLAGS=$CPPFLAGS -I$NATIVEPREFIX/include", - "*:*:CFLAGS=$CFLAGS -fPIC", - "*:*:CXXFLAGS=$CXXFLAGS -fPIC", - "*:*:LDFLAGS=$LDFLAGS -fPIC", + "linux_*:*:CFLAGS=$CFLAGS -fPIC", + "linux_*:*:CXXFLAGS=$CXXFLAGS -fPIC", + "linux_*:*:LDFLAGS=$LDFLAGS -fPIC", + "darwin_*:*:CFLAGS=$CFLAGS -fPIC", + "darwin_*:*:CXXFLAGS=$CXXFLAGS -fPIC", + "darwin_*:*:LDFLAGS=$LDFLAGS -fPIC", "*:*:CC_FOR_BUILD=$CC", "*:*:CXX_FOR_BUILD=$CXX", "*:*:HOST_CC=$CC", @@ -44,8 +54,10 @@ "darwin_arm64:*:CARGO_TARGET_AARCH64_APPLE_DARWIN_LINKER=$CC", "linux_amd64:*:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$CC", "linux_arm64:*:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$CC", + "windows_amd64:*:CARGO_TARGET_X86_64_PC_WINDOWS_GNU_LINKER=$CC", "*:*:LDFLAGS=$LDFLAGS -L$NATIVEPREFIX/lib", - "*:*:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$NATIVEPREFIX/lib", + "linux_*:*:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$NATIVEPREFIX/lib", + "darwin_*:*:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$NATIVEPREFIX/lib", "*:*:LIBRARY_PATH=$LIBRARY_PATH:$NATIVEPREFIX/lib", "*:*:CC_BUILD=$CC $CFLAGS", "*:*:CXX_BUILD=$CXX $CXXFLAGS" @@ -58,7 +70,9 @@ "steps": [ "*:*:$NATIVEPREFIX/_/bin/mkdir -p $STAGING_DIR$NATIVEPREFIX", "*:*:$NATIVEPREFIX/_/bin/rm -rf $STAGING_DIR$NATIVEPREFIX", - "*:*:$NATIVEPREFIX/_/bin/cp -a $NATIVEPREFIX $STAGING_DIR$NATIVEPREFIX" + "darwin_arm64:*:$NATIVEPREFIX/_/bin/cp -a $NATIVEPREFIX $STAGING_DIR$NATIVEPREFIX", + "linux_*:*:$NATIVEPREFIX/_/bin/cp -a $NATIVEPREFIX $STAGING_DIR$NATIVEPREFIX", + "windows_amd64:*:$NATIVEPREFIX/_/bin/cp -a $NATIVEPREFIX $STAGING_DIR$NATIVEPREFIX" ] } -} \ No newline at end of file +} diff --git a/packages/native/_/windows_amd64_cygwin_clang.json b/packages/native/_/windows_amd64_cygwin_clang.json new file mode 100644 index 0000000..b6debca --- /dev/null +++ b/packages/native/_/windows_amd64_cygwin_clang.json @@ -0,0 +1,18 @@ +{ + "package": "native/_/windows_amd64_cygwin_clang", + "version": "0.0.0", + "type": "native", + "download": [ + { + "kind": "tar.xz", + "sha256": "6b31052404b8c5eb9f66c48230aafa4e2947b9dc6a6048515aae67e9c33e87a6", + "url": "https://github.com/MrCyjaneK/easybs/releases/download/r2/clang20-x86_64-windows-cygwin.tar.xz" + } + ], + "build": { + "steps": [ + "*:*:./bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/_/", + "*:*:./bin/cp -a * $STAGING_DIR$NATIVEPREFIX/_/ || true" + ] + } +} diff --git a/packages/native/bash.json b/packages/native/bash.json index 0d43092..4ffaac9 100644 --- a/packages/native/bash.json +++ b/packages/native/bash.json @@ -6,7 +6,7 @@ { "kind": "tar.gz", "sha256": "0d5cd86965f869a26cf64f4b71be7b96f90a3ba8b3d74e27e8e9d9d5550f31ba", - "url": "http://ftpmirror.gnu.org/bash/bash-5.3.tar.gz" + "url": "https://ftp.gnu.org/gnu/bash/bash-5.3.tar.gz" } ], "dependencies": [ @@ -17,9 +17,13 @@ "env": [], "steps": [ "*:*:dash ./configure --prefix=$NATIVEPREFIX", - "*:*:make -j$NUM_CORES V=1", + "darwin_arm64:*:make -j$NUM_CORES V=1", + "linux_*:*:make -j$NUM_CORES V=1", + "windows_amd64:*:make -j$NUM_CORES V=1 LDFLAGS=\"$LDFLAGS -Wl,--allow-multiple-definition\"", "*:*:make install DESTDIR=$STAGING_DIR", - "*:*:ln -sf $NATIVEPREFIX/bin/bash $STAGING_DIR$NATIVEPREFIX/bin/sh" + "darwin_arm64:*:ln -sf $NATIVEPREFIX/bin/bash $STAGING_DIR$NATIVEPREFIX/bin/sh", + "linux_*:*:ln -sf $NATIVEPREFIX/bin/bash $STAGING_DIR$NATIVEPREFIX/bin/sh", + "windows_amd64:*:test -f $STAGING_DIR$NATIVEPREFIX/bin/bash.exe && cp -f $STAGING_DIR$NATIVEPREFIX/bin/bash.exe $STAGING_DIR$NATIVEPREFIX/bin/sh.exe || true" ] } -} \ No newline at end of file +} diff --git a/packages/native/bison.json b/packages/native/bison.json index b572eeb..7474a85 100644 --- a/packages/native/bison.json +++ b/packages/native/bison.json @@ -22,7 +22,7 @@ "*:*:ACLOCAL=true" ], "steps": [ - "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:./configure --prefix=$NATIVEPREFIX gl_cv_have_weak=no", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] diff --git a/packages/native/bzip2.json b/packages/native/bzip2.json index 590fb48..a42192a 100644 --- a/packages/native/bzip2.json +++ b/packages/native/bzip2.json @@ -17,6 +17,8 @@ "*:*:native/sed" ], "build": { + "env": [ + ], "steps": [ "*:*:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", "*:*:make -j$NUM_CORES CC=\"$CC\"", diff --git a/packages/native/coreutils.json b/packages/native/coreutils.json index 7c679e5..0ec0cd7 100644 --- a/packages/native/coreutils.json +++ b/packages/native/coreutils.json @@ -14,6 +14,9 @@ "*:*:native/bash", "*:*:native/make" ], + "patches": [ + "clang-pthread-once-atomic.patch" + ], "build": { "env": [ "*:*:config_opts=--prefix=$NATIVEPREFIX" @@ -24,4 +27,4 @@ "*:*:DESTDIR=$STAGING_DIR make install" ] } -} \ No newline at end of file +} diff --git a/packages/native/crosstool-ng.json b/packages/native/crosstool-ng.json index a2a6405..d6a57e8 100644 --- a/packages/native/crosstool-ng.json +++ b/packages/native/crosstool-ng.json @@ -45,10 +45,16 @@ "*:x86_64-linux-musl:TOOL_TARGET=x86_64-linux-musl" ], "steps": [ + "*:*:test -e $NATIVEPREFIX/bin/makeinfo || cp -f $NATIVEPREFIX/bin/texi2any $NATIVEPREFIX/bin/makeinfo", + "*:*:test -e $NATIVEPREFIX/bin/which || printf '%s\\n' '#!/bin/sh' 'command -v \"$1\"' >$NATIVEPREFIX/bin/which && chmod +x $NATIVEPREFIX/bin/which", "*:*:./bootstrap", "*:*:./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", - "*:*:make install DESTDIR=$STAGING_DIR" + "*:*:make install DESTDIR=$STAGING_DIR", + "*:*:rm -f $STAGING_DIR$NATIVEPREFIX/share/crosstool-ng/LICENSE && cp -f $STAGING_DIR$NATIVEPREFIX/share/crosstool-ng/COPYING $STAGING_DIR$NATIVEPREFIX/share/crosstool-ng/LICENSE", + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:printf '%s\\n' '#!/bin/sh' 'command -v \"$1\"' >$STAGING_DIR$NATIVEPREFIX/bin/which && chmod +x $STAGING_DIR$NATIVEPREFIX/bin/which", + "*:*:test -e $STAGING_DIR$NATIVEPREFIX/bin/makeinfo || cp -f $STAGING_DIR$NATIVEPREFIX/bin/texi2any $STAGING_DIR$NATIVEPREFIX/bin/makeinfo 2>/dev/null || true" ] } } \ No newline at end of file diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 2504715..cb8e6db 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -84,7 +84,7 @@ "kind": "blob", "path": "work/.build/tarballs/musl-1.2.5.tar.gz", "sha256": "a9a118bbe84d8764da0ea0d28b3ab3fae8477fc7e4085d90102b8596fc7c75e4", - "url": "https://www.musl-libc.org/releases/musl-1.2.5.tar.gz" + "url": "https://sources.voidlinux.org/musl-1.2.5/musl-1.2.5.tar.gz" }, { "kind": "blob", @@ -108,7 +108,7 @@ "kind": "blob", "path": "work/.build/tarballs/zlib-1.3.1.tar.xz", "sha256": "38ef96b8dfe510d42707d9c781877914792541133e1870841463bfa73f883e32", - "url": "http://www.zlib.net/zlib-1.3.1.tar.xz" + "url": "https://github.com/madler/zlib/releases/download/v1.3.1/zlib-1.3.1.tar.xz" }, { "kind": "blob", @@ -163,6 +163,12 @@ "steps": [ "linux_*:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/_/bin/gcc", "linux_*:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/_/bin/g++", + "windows_*:*:ln -sf $NATIVEPREFIX/_/bin/clang $NATIVEPREFIX/_/bin/gcc", + "windows_*:*:ln -sf $NATIVEPREFIX/_/bin/clang++ $NATIVEPREFIX/_/bin/g++", + "windows_*:*:test -e $NATIVEPREFIX/bin/which || printf '%s\\n' '#!/bin/sh' 'command -v \"$1\"' >$NATIVEPREFIX/bin/which && chmod +x $NATIVEPREFIX/bin/which", + "windows_*:*:test -e $NATIVEPREFIX/bin/makeinfo || cp -f $NATIVEPREFIX/bin/texi2any $NATIVEPREFIX/bin/makeinfo", + "windows_*:*:test -e $NATIVEPREFIX/share/crosstool-ng/LICENSE || cp -f $NATIVEPREFIX/share/crosstool-ng/COPYING $NATIVEPREFIX/share/crosstool-ng/LICENSE", + "windows_*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:sed -i.bak '/put_new_config CT_CC_LANG_CXX y/a\\ put_new_config CT_BINUTILS_PLUGINS n\\n put_new_config CT_CC_GCC_ENABLE_PLUGINS n\\n put_new_config CT_MINGW_TOOLS n' run.sh", "darwin_*:*:mv $NATIVEPREFIX/_/bin/lld $NATIVEPREFIX/_/bin/lld-real", "darwin_*:*:rm -f $NATIVEPREFIX/_/bin/ld $NATIVEPREFIX/_/bin/ld64.lld $NATIVEPREFIX/_/bin/ld.lld", "darwin_*:*:sed \"s|@LD64_LLD@|$NATIVEPREFIX/_/bin/lld-real|g; s|@SDK_VERSION@|26.1|g\" $PATCH_DIR/native/ct-tools/host-ld-wrapper.sh > $NATIVEPREFIX/_/bin/ld && chmod +x $NATIVEPREFIX/_/bin/ld", @@ -177,9 +183,12 @@ "darwin_*:{*-linux-gnu,*-linux-musl}:sed -i.bak '/put_new_config CT_CC_LANG_CXX y/a\\ put_new_config CT_NCURSES_HOST_FALLBACKS \"\"' run.sh", "linux_*:x86_64-w64-mingw32:mkdir -p patches/mingw-w64 && cp $PATCH_DIR/native/ct-tools/clang-widl-winnt.h.patch patches/mingw-w64/", "linux_*:x86_64-w64-mingw32:sed -i '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_MINGW_W64_PATCH_LOCAL y\\n put_new_config CT_MINGW_W64_PATCH_ORDER \"local,bundled\"\\n put_new_config CT_PATCH_USE_LOCAL y\\n put_new_config CT_LOCAL_PATCH_DIR \"'\"$(pwd)/patches\"'\"' run.sh", + "windows_*:x86_64-w64-mingw32:mkdir -p patches/mingw-w64 && cp $PATCH_DIR/native/ct-tools/clang-widl-winnt.h.patch patches/mingw-w64/", + "windows_*:x86_64-w64-mingw32:sed -i '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_MINGW_W64_PATCH_LOCAL y\\n put_new_config CT_MINGW_W64_PATCH_ORDER \"local,bundled\"\\n put_new_config CT_PATCH_USE_LOCAL y\\n put_new_config CT_LOCAL_PATCH_DIR \"'\"$(pwd)/patches\"'\"' run.sh", "*:{*-linux-gnu,*-w64-mingw32}:sed -i 's|install=\"./scripts/install-sh -c\"|install=\"'$NATIVEPREFIX'/bin/install -c\"|g' $NATIVEPREFIX/share/crosstool-ng/paths.sh", "*:{*-linux-gnu,*-w64-mingw32}:mkdir -p $STAGING_DIR$PREFIX", "linux_*:{*-linux-gnu,*-w64-mingw32}:env -i PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH LIBTOOL=$NATIVEPREFIX/bin/libtool AR=$NATIVEPREFIX/_/bin/llvm-ar RANLIB=$NATIVEPREFIX/_/bin/llvm-ranlib PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", + "windows_*:{*-linux-gnu,*-linux-musl,*-w64-mingw32}:env -i SYSTEMROOT=\"$SYSTEMROOT\" TEMP=\"$TEMP\" TMP=\"$TMP\" PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH LIBTOOL=$NATIVEPREFIX/bin/libtool AR=$NATIVEPREFIX/_/bin/llvm-ar RANLIB=$NATIVEPREFIX/_/bin/llvm-ranlib PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", "darwin_*:{*-linux-gnu,*-w64-mingw32}:env -i SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH LIBTOOL=$NATIVEPREFIX/bin/libtool AR=$NATIVEPREFIX/_/bin/llvm-ar RANLIB=$NATIVEPREFIX/_/bin/llvm-ranlib PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", "*:{*-linux-gnu,*-w64-mingw32}:mv $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET/* $STAGING_DIR/$PREFIX", "*:{*-linux-gnu,*-w64-mingw32}:rm -rf $STAGING_DIR/$PREFIX/$TOOL_TARGET/$TOOL_TARGET", @@ -189,7 +198,11 @@ "*:x86_64-linux-gnu:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-linux-gnu-*; do ln -sf $f ${f#x86_64-linux-gnu-}; done", "*:aarch64-linux-gnu:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in aarch64-linux-gnu-*; do ln -sf $f ${f#aarch64-linux-gnu-}; done", "*:x86_64-linux-musl:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-linux-musl-*; do ln -sf $f ${f#x86_64-linux-musl-}; done", - "*:x86_64-w64-mingw32:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-w64-mingw32-*; do ln -sf $f ${f#x86_64-w64-mingw32-}; done" + "linux_*:x86_64-w64-mingw32:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-w64-mingw32-*; do ln -sf $f ${f#x86_64-w64-mingw32-}; done", + "darwin_*:x86_64-w64-mingw32:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-w64-mingw32-*; do ln -sf $f ${f#x86_64-w64-mingw32-}; done", + "windows_*:x86_64-w64-mingw32:find $STAGING_DIR/$PREFIX -type l -print0 | while IFS= read -r -d '' l; do t=$(readlink \"$l\"); case \"$t\" in ../../x86_64-w64-mingw32/sysroot/*) ln -sfn \"../sysroot/${t#../../x86_64-w64-mingw32/sysroot/}\" \"$l\";; ../../x86_64-w64-mingw32/lib32/*) ln -sfn \"../lib32/${t#../../x86_64-w64-mingw32/lib32/}\" \"$l\";; esac; done", + "windows_*:x86_64-w64-mingw32:cd $STAGING_DIR/$NATIVEPREFIX/bin && for f in x86_64-w64-mingw32-*; do cp -f \"$f\" \"${f#x86_64-w64-mingw32-}\"; done", + "windows_*:x86_64-w64-mingw32:find $STAGING_DIR/$PREFIX $STAGING_DIR/$NATIVEPREFIX -type l -print0 | sort -rz | while IFS= read -r -d '' l; do t=$(readlink -f \"$l\" 2>/dev/null || true); if [ -n \"$t\" ] && [ -e \"$t\" ]; then rm -f \"$l\"; cp -a \"$t\" \"$l\"; else rm -f \"$l\"; fi; done" ] } } \ No newline at end of file diff --git a/packages/native/curl.json b/packages/native/curl.json index 6529485..cc44a2e 100644 --- a/packages/native/curl.json +++ b/packages/native/curl.json @@ -14,7 +14,8 @@ "*:*:native/bash", "*:*:native/libpsl", "*:*:native/make", - "*:*:native/openssl" + "*:*:native/openssl", + "*:*:native/perl" ], "build": { "env": [ diff --git a/packages/native/diffutils.json b/packages/native/diffutils.json index 48b942e..6598f4a 100644 --- a/packages/native/diffutils.json +++ b/packages/native/diffutils.json @@ -17,11 +17,16 @@ "*:*:native/perl" ], "build": { - "env": [], + "env": [ + "*:*:config_opts=--prefix=$NATIVEPREFIX", + "*:*:LIBS=-liconv", + "windows_*:*:config_opts=$config_opts gl_cv_have_weak=no" + ], "steps": [ - "*:*:./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure $config_opts", + "windows_*:*:bash $PATCH_DIR/native/_/drop-gnulib-wint-wrappers.sh", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] } -} \ No newline at end of file +} diff --git a/packages/native/file.json b/packages/native/file.json index 50e5d29..3c66c20 100644 --- a/packages/native/file.json +++ b/packages/native/file.json @@ -15,6 +15,8 @@ "*:*:native/make" ], "build": { + "env": [ + ], "steps": [ "*:*:bash ./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", diff --git a/packages/native/findutils.json b/packages/native/findutils.json index f4604e2..bab03f7 100644 --- a/packages/native/findutils.json +++ b/packages/native/findutils.json @@ -18,12 +18,14 @@ ], "build": { "env": [ - "*:*:config_opts=--prefix=$NATIVEPREFIX" + "*:*:config_opts=--prefix=$NATIVEPREFIX", + "windows_*:*:config_opts=$config_opts gl_cv_have_weak=no" ], "steps": [ "*:*:bash ./configure $config_opts", + "windows_*:*:bash $PATCH_DIR/native/_/drop-gnulib-wint-wrappers.sh", "*:*:make -j$NUM_CORES", "*:*:DESTDIR=$STAGING_DIR make install" ] } -} \ No newline at end of file +} diff --git a/packages/native/gawk.json b/packages/native/gawk.json index b270f8d..55f2a1b 100644 --- a/packages/native/gawk.json +++ b/packages/native/gawk.json @@ -25,12 +25,15 @@ "*:*:AUTOMAKE=true", "*:*:ACLOCAL=true", "*:*:MAKEINFO=true", - "darwin_*:*:CFLAGS=$CFLAGS -include mach-o/dyld.h" + "*:*:config_opts=--prefix=$NATIVEPREFIX", + "darwin_*:*:CFLAGS=$CFLAGS -include mach-o/dyld.h", + "windows_*:*:config_opts=$config_opts gl_cv_have_weak=no" ], "steps": [ - "*:*:bash ./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure $config_opts", + "windows_*:*:bash $PATCH_DIR/native/_/drop-gnulib-wint-wrappers.sh", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] } -} \ No newline at end of file +} diff --git a/packages/native/git.json b/packages/native/git.json index 49e66b5..d531d44 100644 --- a/packages/native/git.json +++ b/packages/native/git.json @@ -17,6 +17,7 @@ "*:*:native/expat", "*:*:native/gettext", "*:*:native/libiconv", + "*:*:native/libpsl", "*:*:native/make", "*:*:native/openssl", "*:*:native/python@3.14", @@ -26,14 +27,16 @@ "env": [], "steps": [ "linux_*:*:make -j$NUM_CORES prefix=$NATIVEPREFIX LDFLAGS=\"$LDFLAGS\" EXTLIBS='-liconv -lz -lgettextpo' CC=$CC", + "windows_*:*:make -j$NUM_CORES prefix=$NATIVEPREFIX LDFLAGS=\"$LDFLAGS\" EXTLIBS='-liconv -lz -lgettextpo -lcurl -lpsl -lssl -lcrypto' CC=$CC", "darwin_*:*:make -j$NUM_CORES prefix=$NATIVEPREFIX LDFLAGS=\"$LDFLAGS\" EXTLIBS='-liconv -lz -lgettextpo -lintl' CC=$CC", "linux_*:*:make prefix=$NATIVEPREFIX DESTDIR=$STAGING_DIR LDFLAGS=\"$LDFLAGS\" EXTLIBS='-liconv -lz -lgettextpo' install CC=$CC", + "windows_*:*:make prefix=$NATIVEPREFIX DESTDIR=$STAGING_DIR LDFLAGS=\"$LDFLAGS\" EXTLIBS='-liconv -lz -lgettextpo -lcurl -lpsl -lssl -lcrypto' install CC=$CC", "darwin_*:*:make prefix=$NATIVEPREFIX DESTDIR=$STAGING_DIR LDFLAGS=\"$LDFLAGS\" EXTLIBS='-liconv -lz -lgettextpo -lintl' install CC=$CC", "*:*:mkdir -p $STAGING_DIR$HOME", "*:*:echo '[user]' >> $STAGING_DIR$HOME/.gitconfig", "*:*:echo '\tname = simplybs' >> $STAGING_DIR$HOME/.gitconfig", "*:*:echo '\temail = simplybs@mrcyjanek.net' >> $STAGING_DIR$HOME/.gitconfig", - "*:*:python3 $PATCH_DIR/android_ndk/symlink_same.py $STAGING_DIR$NATIVEPREFIX" + "*:*:python3.14 $PATCH_DIR/android_ndk/symlink_same.py $STAGING_DIR$NATIVEPREFIX" ] } } \ No newline at end of file diff --git a/packages/native/grep.json b/packages/native/grep.json index 26cb542..e0c63e2 100644 --- a/packages/native/grep.json +++ b/packages/native/grep.json @@ -15,11 +15,15 @@ "*:*:native/make" ], "build": { - "env": [], + "env": [ + "*:*:config_opts=--prefix=$NATIVEPREFIX", + "windows_*:*:config_opts=$config_opts gl_cv_have_weak=no" + ], "steps": [ - "*:*:bash ./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure $config_opts", + "windows_*:*:bash $PATCH_DIR/native/_/drop-gnulib-wint-wrappers.sh", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] } -} \ No newline at end of file +} diff --git a/packages/native/gzip.json b/packages/native/gzip.json index 95854ec..c169971 100644 --- a/packages/native/gzip.json +++ b/packages/native/gzip.json @@ -15,11 +15,15 @@ "*:*:native/make" ], "build": { - "env": [], + "env": [ + "*:*:config_opts=--prefix=$NATIVEPREFIX", + "windows_*:*:config_opts=$config_opts gl_cv_have_weak=no" + ], "steps": [ - "*:*:bash ./configure --prefix=$NATIVEPREFIX", + "*:*:bash ./configure $config_opts", + "windows_*:*:bash $PATCH_DIR/native/_/drop-gnulib-wint-wrappers.sh", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install" ] } -} \ No newline at end of file +} diff --git a/packages/native/icu4c.json b/packages/native/icu4c.json index d3dd2ff..5d687b6 100644 --- a/packages/native/icu4c.json +++ b/packages/native/icu4c.json @@ -21,7 +21,8 @@ "build": { "env": [ "linux_*:*:ICU_PLATFORM=Linux/gcc", - "darwin_*:*:ICU_PLATFORM=Darwin" + "darwin_*:*:ICU_PLATFORM=Darwin", + "windows_*:*:ICU_PLATFORM=Cygwin/gcc" ], "steps": [ "*:*-w64-mingw32:patch -p1 < $PATCH_DIR/icu4c/icu-001-dont-build-static-dynamic-twice.patch", diff --git a/packages/native/libpsl.json b/packages/native/libpsl.json index 931590d..40202c8 100644 --- a/packages/native/libpsl.json +++ b/packages/native/libpsl.json @@ -17,11 +17,23 @@ "*:*:native/unistring" ], "build": { - "env": [], + "env": [ + "*:*:config_opts=--prefix=$NATIVEPREFIX", + "windows_*:*:config_opts=$config_opts --disable-builtin" + ], "steps": [ - "*:*:bash ./configure --prefix=$NATIVEPREFIX", - "*:*:make -j$NUM_CORES", - "*:*:make DESTDIR=$STAGING_DIR install" + "*:*:bash ./configure $config_opts", + "windows_*:*:sed -i.bak -e 's/^BUILT_SOURCES = suffixes_dafsa.h/BUILT_SOURCES =/' -e '/^suffixes_dafsa\\.h:/,/^$/d' src/Makefile", + "linux_*:*:make -j$NUM_CORES", + "linux_*:*:make DESTDIR=$STAGING_DIR install", + "darwin_*:*:make -j$NUM_CORES", + "darwin_*:*:make DESTDIR=$STAGING_DIR install", + "windows_*:*:make -j$NUM_CORES -C include", + "windows_*:*:make -j$NUM_CORES -C src", + "windows_*:*:make -j$NUM_CORES -C tools", + "windows_*:*:make DESTDIR=$STAGING_DIR -C include install", + "windows_*:*:make DESTDIR=$STAGING_DIR -C src install", + "windows_*:*:make DESTDIR=$STAGING_DIR -C tools install" ] } -} \ No newline at end of file +} diff --git a/packages/native/libtapi.json b/packages/native/libtapi.json index db69144..1b7d674 100644 --- a/packages/native/libtapi.json +++ b/packages/native/libtapi.json @@ -9,12 +9,12 @@ "url": "https://github.com/tpoechtrager/apple-libtapi.git" } ], - "dependencies": [ + "dependencies": [ "*:*:native/_/_", "*:*:native/bash", "*:*:native/cmake", "*:*:native/ninja", - "linux_*:*:native/libc++" + "{linux_*,windows_*}:*:native/libc++" ], "build": { "env": [ @@ -35,21 +35,22 @@ "darwin_arm64:*:config_opts=$config_opts -DCMAKE_CXX_FLAGS=-stdlib=libc++", "darwin_arm64:*:CMAKE_EXE_LINKER_FLAGS=-stdlib=libc++ -lc++ -lc++abi", "darwin_arm64:*:CMAKE_SHARED_LINKER_FLAGS=-stdlib=libc++ -lc++ -lc++abi", - "linux_*:*:CC=$NATIVEPREFIX/_/bin/clang", - "linux_*:*:CXX=$NATIVEPREFIX/_/bin/clang++", + "{linux_*,windows_*}:*:CC=$NATIVEPREFIX/_/bin/clang", + "{linux_*,windows_*}:*:CXX=$NATIVEPREFIX/_/bin/clang++", "linux_arm64:*:config_opts=$config_opts -DLLVM_HOST_TRIPLE=aarch64-linux-gnu", "linux_amd64:*:config_opts=$config_opts -DLLVM_HOST_TRIPLE=x86_64-linux-gnu", - "linux_*:*:config_opts=$config_opts -DLLVM_ENABLE_LIBCXX=ON", - "linux_*:*:config_opts=$config_opts -DCMAKE_C_COMPILER=$NATIVEPREFIX/_/bin/clang", - "linux_*:*:config_opts=$config_opts -DCMAKE_CXX_COMPILER=$NATIVEPREFIX/_/bin/clang++", - "linux_*:*:CMAKE_CXX_FLAGS=-stdlib=libc++ -I$NATIVEPREFIX/include/c++/v1", - "linux_*:*:CMAKE_EXE_LINKER_FLAGS=-L$NATIVEPREFIX/lib -stdlib=libc++ -lc++ -lc++abi -lunwind -latomic", - "linux_*:*:CMAKE_SHARED_LINKER_FLAGS=-L$NATIVEPREFIX/lib -stdlib=libc++ -lc++ -lc++abi -lunwind" + "windows_amd64:*:config_opts=$config_opts -DLLVM_HOST_TRIPLE=x86_64-pc-cygwin", + "{linux_*,windows_*}:*:config_opts=$config_opts -DLLVM_ENABLE_LIBCXX=ON", + "{linux_*,windows_*}:*:config_opts=$config_opts -DCMAKE_C_COMPILER=$NATIVEPREFIX/_/bin/clang", + "{linux_*,windows_*}:*:config_opts=$config_opts -DCMAKE_CXX_COMPILER=$NATIVEPREFIX/_/bin/clang++", + "{linux_*,windows_*}:*:CMAKE_CXX_FLAGS=-stdlib=libc++ -I$NATIVEPREFIX/include/c++/v1", + "{linux_*,windows_*}:*:CMAKE_EXE_LINKER_FLAGS=-L$NATIVEPREFIX/lib -stdlib=libc++ -lc++ -lc++abi -lunwind -latomic", + "{linux_*,windows_*}:*:CMAKE_SHARED_LINKER_FLAGS=-L$NATIVEPREFIX/lib -stdlib=libc++ -lc++ -lc++abi -lunwind" ], "steps": [ "*:*:sed -i.bak '/add_clang_subdirectory(IndexStore)/d; /add_clang_subdirectory(libclang)/d' src/clang/tools/CMakeLists.txt", "darwin_arm64:*:cmake $config_opts -DCMAKE_EXE_LINKER_FLAGS=\"$CMAKE_EXE_LINKER_FLAGS\" -DCMAKE_SHARED_LINKER_FLAGS=\"$CMAKE_SHARED_LINKER_FLAGS\"", - "linux_*:*:cmake $config_opts -DCMAKE_CXX_FLAGS=\"$CMAKE_CXX_FLAGS\" -DCMAKE_EXE_LINKER_FLAGS=\"$CMAKE_EXE_LINKER_FLAGS\" -DCMAKE_SHARED_LINKER_FLAGS=\"$CMAKE_SHARED_LINKER_FLAGS\"", + "{linux_*,windows_*}:*:cmake $config_opts -DCMAKE_CXX_FLAGS=\"$CMAKE_CXX_FLAGS\" -DCMAKE_EXE_LINKER_FLAGS=\"$CMAKE_EXE_LINKER_FLAGS\" -DCMAKE_SHARED_LINKER_FLAGS=\"$CMAKE_SHARED_LINKER_FLAGS\"", "*:*:cmake --build build --target clangBasic libtapi -j$NUM_CORES", "*:*:DESTDIR=$STAGING_DIR ninja -C build install-libtapi install-tapi-headers" ] diff --git a/packages/native/llvm-objcopy.json b/packages/native/llvm-objcopy.json index 0c9fab5..54dbba2 100644 --- a/packages/native/llvm-objcopy.json +++ b/packages/native/llvm-objcopy.json @@ -14,13 +14,13 @@ "*:*:native/bash", "*:*:native/cmake", "*:*:native/make", - "*:*:native/ninja" + "*:*:native/python@3.11" ], "build": { "steps": [ "*:*:mkdir build && cd build", - "*:*:cd build && cmake -G Ninja -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release ../llvm", - "*:*:cd build && ninja llvm-objcopy", + "*:*:cd build && cmake -G \"Unix Makefiles\" -DLLVM_ENABLE_PROJECTS='llvm' -DCMAKE_BUILD_TYPE=Release -DLLVM_TARGETS_TO_BUILD=X86 -DLLVM_INCLUDE_TESTS=OFF -DPython3_EXECUTABLE=$NATIVEPREFIX/bin/python3.11 ../llvm", + "*:*:cd build && make -j$NUM_CORES llvm-objcopy", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin/", "*:*:cp build/bin/llvm-objcopy $STAGING_DIR$NATIVEPREFIX/bin/llvm-objcopy" ] diff --git a/packages/native/m4.json b/packages/native/m4.json index 6153650..8e9c3de 100644 --- a/packages/native/m4.json +++ b/packages/native/m4.json @@ -16,7 +16,8 @@ "*:*:native/sed" ], "build": { - "env": [], + "env": [ + ], "steps": [ "*:*:bash ./configure --prefix=$NATIVEPREFIX --disable-nls", "*:*:sed -i.bak 's/^run.*automake.*/exit 0/' build-aux/missing", diff --git a/packages/native/make.json b/packages/native/make.json index 4a19195..8fca79c 100644 --- a/packages/native/make.json +++ b/packages/native/make.json @@ -19,9 +19,14 @@ "*:*:dash ./configure --disable-dependency-tracking", "*:*:dash ./build.sh", "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", - "*:*:cp make $STAGING_DIR/$NATIVEPREFIX/bin/make", - "*:*:ln -s make $STAGING_DIR$NATIVEPREFIX/bin/gmake", - "*:*:ln -s make $STAGING_DIR$NATIVEPREFIX/bin/gnumake" + "*:*:cp make $STAGING_DIR$NATIVEPREFIX/bin/make", + "windows_amd64:*:test -f make.exe && cp -f make.exe $STAGING_DIR$NATIVEPREFIX/bin/make.exe || true", + "darwin_arm64:*:ln -s make $STAGING_DIR$NATIVEPREFIX/bin/gmake", + "darwin_arm64:*:ln -s make $STAGING_DIR$NATIVEPREFIX/bin/gnumake", + "linux_*:*:ln -s make $STAGING_DIR$NATIVEPREFIX/bin/gmake", + "linux_*:*:ln -s make $STAGING_DIR$NATIVEPREFIX/bin/gnumake", + "windows_amd64:*:cp -f $STAGING_DIR$NATIVEPREFIX/bin/make.exe $STAGING_DIR$NATIVEPREFIX/bin/gmake.exe", + "windows_amd64:*:cp -f $STAGING_DIR$NATIVEPREFIX/bin/make.exe $STAGING_DIR$NATIVEPREFIX/bin/gnumake.exe" ] } -} \ No newline at end of file +} diff --git a/packages/native/ncurses.json b/packages/native/ncurses.json index 02a85be..9d0b83d 100644 --- a/packages/native/ncurses.json +++ b/packages/native/ncurses.json @@ -58,9 +58,13 @@ "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES $build_opts", "*:*:make install.libs install.includes DESTDIR=$STAGING_DIR", - "*:*:ln -sf ncursesw/panel.h $STAGING_DIR$NATIVEPREFIX/include/panel.h", - "*:*:ln -sf ncursesw/form.h $STAGING_DIR$NATIVEPREFIX/include/form.h", - "*:*:ln -sf libncursesw.a $STAGING_DIR$NATIVEPREFIX/lib/libncurses.a" + "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/include/ncursesw/panel.h $STAGING_DIR$NATIVEPREFIX/include/panel.h", + "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/include/ncursesw/form.h $STAGING_DIR$NATIVEPREFIX/include/form.h", + "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/include/ncursesw/curses.h $STAGING_DIR$NATIVEPREFIX/include/curses.h", + "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/include/ncursesw/curses.h $STAGING_DIR$NATIVEPREFIX/include/ncurses.h", + "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/lib/libncursesw.a $STAGING_DIR$NATIVEPREFIX/lib/libncurses.a", + "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/lib/libpanelw.a $STAGING_DIR$NATIVEPREFIX/lib/libpanel.a", + "*:*:sed -i.bak '1i#define NCURSES_STATIC' $STAGING_DIR$NATIVEPREFIX/include/ncursesw/ncurses_dll.h" ] } } \ No newline at end of file diff --git a/packages/native/openssl.json b/packages/native/openssl.json index 16b31e7..1bd05b9 100644 --- a/packages/native/openssl.json +++ b/packages/native/openssl.json @@ -40,7 +40,9 @@ "linux_arm64:*:config_opts=$config_opts linux-generic64", "darwin_arm64:*:config_opts=$config_opts darwin64-arm64-cc", "darwin_amd64:*:config_opts=$config_opts darwin64-x86_64-cc", - "windows_amd64:*:config_opts=$config_opts mingw64" + "windows_amd64:*:config_opts=$config_opts -fPIC", + "windows_amd64:*:config_opts=$config_opts no-winstore", + "windows_amd64:*:config_opts=$config_opts Cygwin-x86_64" ], "steps": [ "*:*:sed -i.bak 's/#define DATE \"built on: \\$date\"/#define DATE \"built on: Jan 1 1970 00:00:01\"/' util/mkbuildinf.pl", diff --git a/packages/native/osx-cross.json b/packages/native/osx-cross.json index c087d31..1bfaf60 100644 --- a/packages/native/osx-cross.json +++ b/packages/native/osx-cross.json @@ -64,8 +64,8 @@ "*:*-apple-*:SDK_VERSION=26.1", "*:*-apple-*:COMPRESSLEVEL=6", "darwin_arm64:*-apple-*:LDFLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld", - "linux_*:*-apple-*:LDFLAGS=$LDFLAGS -fuse-ld=lld -L$NATIVEPREFIX/_/sysroot/lib", - "linux_*:*-apple-*:CXXFLAGS=$CXXFLAGS -fuse-ld=lld" + "{linux_*,windows_*}:*-apple-*:LDFLAGS=$LDFLAGS -fuse-ld=lld -L$NATIVEPREFIX/_/sysroot/lib", + "{linux_*,windows_*}:*-apple-*:CXXFLAGS=$CXXFLAGS -fuse-ld=lld" ], "steps": [ "*:*-apple-*:mkdir -p wrapper/bin", @@ -78,9 +78,9 @@ "*:*-apple-*:sed -i.bak 's/--with-libxar=$TARGET_DIR/--with-libxar=$PREFIX\\/native/g' build.sh", "*:*-apple-*:mv $NATIVEPREFIX/share/xcode-sdk/*${SDK_VERSION}* tarballs", "darwin_arm64:*-apple-*:sed -i.bak 's|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1 -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX${SDK_VERSION}.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION -DHOST_LINK_VERSION=711 -DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld -DCMAKE_SHARED_LINKER_FLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld|' build_clang.sh", - "linux_*:*-apple-*:sed -i.bak 's|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1 -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX${SDK_VERSION}.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION|' build_clang.sh", - "linux_*:*-apple-*:sed -i.bak 's|export CFLAGS=\"\"|export CFLAGS=\"--gcc-toolchain=$NATIVEPREFIX/_/libexec/gcc-toolchain --sysroot=$NATIVEPREFIX/_/sysroot\"|' build_clang.sh", - "linux_*:*-apple-*:sed -i.bak 's|export CXXFLAGS=\"\"|export CXXFLAGS=\"--gcc-toolchain=$NATIVEPREFIX/_/libexec/gcc-toolchain --sysroot=$NATIVEPREFIX/_/sysroot\"|' build_clang.sh", + "{linux_*,windows_*}:*-apple-*:sed -i.bak 's|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1|-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=1 -DCMAKE_OSX_SYSROOT=$NATIVEPREFIX/_/SDK/MacOSX${SDK_VERSION}.sdk -DCMAKE_OSX_DEPLOYMENT_TARGET=$OSX_MIN_VERSION|' build_clang.sh", + "{linux_*,windows_*}:*-apple-*:sed -i.bak 's|export CFLAGS=\"\"|export CFLAGS=\"--gcc-toolchain=$NATIVEPREFIX/_/libexec/gcc-toolchain --sysroot=$NATIVEPREFIX/_/sysroot\"|' build_clang.sh", + "{linux_*,windows_*}:*-apple-*:sed -i.bak 's|export CXXFLAGS=\"\"|export CXXFLAGS=\"--gcc-toolchain=$NATIVEPREFIX/_/libexec/gcc-toolchain --sysroot=$NATIVEPREFIX/_/sysroot\"|' build_clang.sh", "*:*-apple-*:export PATH=$PWD/wrapper/bin:$PATH && CC=$NATIVEPREFIX/_/bin/clang-21 CXX=$NATIVEPREFIX/_/bin/clang++-21 LDFLAGS=-fuse-ld=$NATIVEPREFIX/_/bin/ld yes | INSTALLPREFIX=$NATIVEPREFIX ./build_apple_clang.sh", "*:*-apple-*:cd build/clang-21/build_stage3 && make -j$NUM_CORES install DESTDIR=$STAGING_DIR && make -j$NUM_CORES install", "*:*-apple-*:sed -i.bak 's/## Compiler test ##/exit 0/g' build.sh", diff --git a/packages/native/perl.json b/packages/native/perl.json index 56d6f51..13bbac6 100644 --- a/packages/native/perl.json +++ b/packages/native/perl.json @@ -16,13 +16,20 @@ "*:*:native/sed" ], "build": { - "env": [], + "env": [ + ], "steps": [ "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib $NATIVEPREFIX/lib", "*:*:sed -i.bak '/^#ifndef PERL_BUILD_DATE$/,/^#endif$/{/^#ifndef PERL_BUILD_DATE$/!d; s/.*/\\#define PERL_BUILD_DATE \"Jan 1 1970 00:00:01\"/;}' perl.c", - "*:*:bash ./Configure -des -Dprefix=$NATIVEPREFIX -Duseithreads -Dall_static -Dcc=$CC -Dlibs=\"-lpthread -ldl -lm -lutil -lc\"", - "*:*:make -j$NUM_CORES CC=$CC", + "linux_*:*:bash ./Configure -des -Dprefix=$NATIVEPREFIX -Duseithreads -Dall_static -Dcc=$CC -Dlibs=\"-lpthread -ldl -lm -lutil -lc\"", + "darwin_*:*:bash ./Configure -des -Dprefix=$NATIVEPREFIX -Duseithreads -Dall_static -Dcc=$CC -Dlibs=\"-lpthread -ldl -lm -lutil -lc\"", + "windows_amd64:*:bash ./Configure -des -Dprefix=$NATIVEPREFIX -Duseithreads -Dcc=$CC -Dld=$CC -Dlibs=\"-lm\"", + "windows_amd64:*:sed -i.bak \"s|^PATH=.*|PATH='.:$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:/usr/bin/'|\" config.sh", + "windows_amd64:*:bash ./Configure -S", + "linux_*:*:make -j$NUM_CORES CC=$CC", + "darwin_*:*:make -j$NUM_CORES CC=$CC", + "windows_amd64:*:make -j1 CC=$CC", "*:*:make DESTDIR=$STAGING_DIR install CC=$CC" ] } -} \ No newline at end of file +} diff --git a/packages/native/python@3.11.json b/packages/native/python@3.11.json index 698cfa5..4f196a1 100644 --- a/packages/native/python@3.11.json +++ b/packages/native/python@3.11.json @@ -24,6 +24,7 @@ "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-test-modules", "*:*:config_opts=$config_opts --enable-static", + "*:*:config_opts=$config_opts --without-ensurepip", "*:*:MACOSX_DEPLOYMENT_TARGET=13.0", "darwin_*:*:LIBS=-lintl -liconv" ], @@ -32,7 +33,8 @@ "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", - "*:*:cd $STAGING_DIR$NATIVEPREFIX/bin && ln -s python3 python" + "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.11 $STAGING_DIR$NATIVEPREFIX/bin/python3", + "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.11 $STAGING_DIR$NATIVEPREFIX/bin/python" ] } } \ No newline at end of file diff --git a/packages/native/python@3.14.json b/packages/native/python@3.14.json index be344c7..3c330b9 100644 --- a/packages/native/python@3.14.json +++ b/packages/native/python@3.14.json @@ -15,6 +15,7 @@ "*:*:native/gettext", "*:*:native/libiconv", "*:*:native/make", + "*:*:native/openssl", "*:*:native/patch", "*:*:native/pkgconf", "*:*:native/zlib" @@ -24,15 +25,19 @@ "*:*:config_opts=--prefix=$NATIVEPREFIX", "*:*:config_opts=$config_opts --disable-test-modules", "*:*:config_opts=$config_opts --enable-static", + "*:*:config_opts=$config_opts --with-openssl=$NATIVEPREFIX", "*:*:MACOSX_DEPLOYMENT_TARGET=13.0", "darwin_*:*:LIBS=-lintl -liconv" ], "steps": [ "*:*:sed -i.bak '/^#ifndef DATE/i\\\n\\/* Deterministic date and time. *\\/\\\n#define DATE \"Jan 1 1970\"\\\n#define TIME \"00:00:01\"\\\n' Modules/getbuildinfo.c", + "windows_*:*:patch -p1 < $PATCH_DIR/native/python@3.14/cygwin-clockid-t.patch", + "windows_*:*:patch -p1 < $PATCH_DIR/native/python@3.14/cygwin-dynload-suffix.patch", "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", - "*:*:cd $STAGING_DIR$NATIVEPREFIX/bin && ln -s python3 python" + "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.14 $STAGING_DIR$NATIVEPREFIX/bin/python3", + "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.14 $STAGING_DIR$NATIVEPREFIX/bin/python" ] } } \ No newline at end of file diff --git a/packages/native/tar.json b/packages/native/tar.json index 2524c1b..95371ed 100644 --- a/packages/native/tar.json +++ b/packages/native/tar.json @@ -18,7 +18,8 @@ "build": { "env": [ "*:*:config_opts=--prefix=$NATIVEPREFIX", - "*:*:LIBS=-liconv" + "*:*:LIBS=-liconv", + "windows_*:*:config_opts=$config_opts gl_cv_have_weak=no" ], "steps": [ "*:*:bash ./configure $config_opts", @@ -26,4 +27,4 @@ "*:*:make DESTDIR=$STAGING_DIR install" ] } -} \ No newline at end of file +} diff --git a/packages/native/texinfo.json b/packages/native/texinfo.json index b9e191c..0f744cb 100644 --- a/packages/native/texinfo.json +++ b/packages/native/texinfo.json @@ -25,7 +25,8 @@ "steps": [ "*:*:bash ./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", - "*:*:make DESTDIR=$STAGING_DIR install" + "*:*:make DESTDIR=$STAGING_DIR install", + "*:*:cd $STAGING_DIR$NATIVEPREFIX/bin && ln -sf texi2any makeinfo" ] } } \ No newline at end of file diff --git a/packages/native/zlib.json b/packages/native/zlib.json index 665aab3..f7f574a 100644 --- a/packages/native/zlib.json +++ b/packages/native/zlib.json @@ -6,7 +6,7 @@ { "kind": "tar.gz", "sha256": "9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23", - "url": "http://www.zlib.net/zlib-1.3.1.tar.gz" + "url": "https://github.com/madler/zlib/releases/download/v1.3.1/zlib-1.3.1.tar.gz" } ], "dependencies": [ diff --git a/packages/protobuf.json b/packages/protobuf.json index 314d71c..200931f 100644 --- a/packages/protobuf.json +++ b/packages/protobuf.json @@ -43,6 +43,7 @@ "*:*:cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googletest/build-aux/config.sub", "*:*:cp -f $NATIVEPREFIX/share/config/config.guess third_party/googletest/googlemock/build-aux/config.guess", "*:*:cp -f $NATIVEPREFIX/share/config/config.sub third_party/googletest/googlemock/build-aux/config.sub", + "*:*-w64-*:sed -i.bak -e 's| third_party/googletest||g' configure", "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES -C src libprotobuf.la", "*:*:make -j$NUM_CORES -C src DESTDIR=$STAGING_DIR install-libLTLIBRARIES install-nobase_includeHEADERS", diff --git a/packages/zeromq.json b/packages/zeromq.json index b4d87db..2910b03 100644 --- a/packages/zeromq.json +++ b/packages/zeromq.json @@ -33,10 +33,17 @@ "env": [ "*:aarch64-apple-ios*:HOST=aarch64-apple-darwin", "*:*:config_opts=--prefix=$PREFIX --host=$HOST --without-documentation --disable-shared --without-libsodium --disable-curve --disable-libbsd", + "*:*-w64-mingw32:config_opts=$config_opts --disable-pedantic --disable-Werror", "*:*-linux-gnu:config_opts=$config_opts --with-pic", - "*:*:cxxflags=$CXXFLAGS -std=c++17" + "*:*:cxxflags=$CXXFLAGS -std=c++17", + "*:*:SED=$NATIVEPREFIX/bin/sed", + "*:*:GREP=$NATIVEPREFIX/bin/grep", + "*:*:PKG_CONFIG=$NATIVEPREFIX/bin/pkgconf" ], "steps": [ + "*:*:mkdir -p config", + "*:*:libtoolize --copy --force", + "*:*:test -f config/ltmain.sh || cp -f ltmain.sh config/ltmain.sh", "*:*:bash ./autogen.sh", "*:*:patch -p1 < $PATCH_DIR/zeromq/fix_declaration.patch", "*:*:bash ./configure $config_opts", diff --git a/packages/zlib.json b/packages/zlib.json index 7de95bf..8a11495 100644 --- a/packages/zlib.json +++ b/packages/zlib.json @@ -6,7 +6,7 @@ { "kind": "tar.gz", "sha256": "9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23", - "url": "http://www.zlib.net/zlib-1.3.1.tar.gz" + "url": "https://github.com/madler/zlib/releases/download/v1.3.1/zlib-1.3.1.tar.gz" } ], "dependencies": [ diff --git a/patches/native/_/drop-gnulib-wint-wrappers.sh b/patches/native/_/drop-gnulib-wint-wrappers.sh new file mode 100644 index 0000000..01ed368 --- /dev/null +++ b/patches/native/_/drop-gnulib-wint-wrappers.sh @@ -0,0 +1,41 @@ +#!/bin/sh +# Gnulib's stddef wrapper breaks Cygwin's __need_wint_t protocol (sys/_types.h +# sees an unknown wint_t). Replace stddef.h with #include_next, then restore +# gnulib's unreachable() helper that newer packages expect from stddef.h. +# Leave *.in.h present and older than the stub so make does not regenerate it. +set -e +stub_stddef() { + dir=$1 + f="$dir/stddef.h" + inh="$dir/stddef.in.h" + [ -f "$f" ] || [ -f "$inh" ] || return 0 + rm -f "$f" + cat >"$f" <<'EOF' +#include_next +#ifndef unreachable +# if defined __has_builtin +# if __has_builtin (__builtin_unreachable) +# define unreachable() __builtin_unreachable () +# endif +# endif +#endif +#ifndef unreachable +# if defined __GNUC__ || defined __clang__ +# define unreachable() __builtin_unreachable () +# else +# define unreachable() ((void) 0) +# endif +#endif +EOF + cp -f "$f" "$inh" + touch -t 197001010000.01 "$inh" 2>/dev/null || true + touch "$f" +} +for dir in lib libgrep libgzip gnulib-lib; do + [ -d "$dir" ] || continue + stub_stddef "$dir" +done +find . -type d \( -name lib -o -name gnulib-lib \) 2>/dev/null | +while read -r dir; do + stub_stddef "$dir" +done diff --git a/patches/native/_/fix-gnulib-pthread-once.sh b/patches/native/_/fix-gnulib-pthread-once.sh new file mode 100644 index 0000000..75a189e --- /dev/null +++ b/patches/native/_/fix-gnulib-pthread-once.sh @@ -0,0 +1,8 @@ +#!/bin/sh +# Clang rejects __sync_* on _Atomic* in gnulib's Cygwin pthread-once workaround. +# Safe no-op if the file or pattern is absent. +set -e +f=lib/pthread-once.c +if [ -f "$f" ] && grep -q '__sync_bool_compare_and_swap (&state_p->done, 1, 2)' "$f"; then + sed -i.bak 's/__sync_bool_compare_and_swap (&state_p->done, 1, 2)/__sync_bool_compare_and_swap ((unsigned short *) \&state_p->done, 1, 2)/' "$f" +fi diff --git a/patches/native/_/stage-seed-tools.sh b/patches/native/_/stage-seed-tools.sh new file mode 100644 index 0000000..4fb418b --- /dev/null +++ b/patches/native/_/stage-seed-tools.sh @@ -0,0 +1,34 @@ +#!/bin/sh +# On Windows/Cygwin, several gnulib packages fail with wint_t / uchar issues. +# Stage the matching tools already present in the Cygwin seed ($NATIVEPREFIX/_/bin). +set -e +bin="$NATIVEPREFIX/_/bin" +dest="$STAGING_DIR$NATIVEPREFIX/bin" +mkdir -p "$dest" +copy_one() { + name=$1 + if [ -f "$bin/$name.exe" ]; then + cp -f "$bin/$name.exe" "$dest/$name.exe" + return + fi + if [ -f "$bin/$name" ]; then + cp -f "$bin/$name" "$dest/$name" + return + fi + # Common aliases shipped as argv0 copies of another tool. + case "$name" in + egrep|fgrep) + cp -f "$bin/grep.exe" "$dest/$name.exe" + ;; + gunzip|zcat|gzcat) + cp -f "$bin/gzip.exe" "$dest/$name.exe" + ;; + *) + echo "seed tool missing: $bin/$name(.exe)" >&2 + exit 1 + ;; + esac +} +for name in "$@"; do + copy_one "$name" +done diff --git a/patches/native/coreutils/clang-pthread-once-atomic.patch b/patches/native/coreutils/clang-pthread-once-atomic.patch new file mode 100644 index 0000000..ce329a4 --- /dev/null +++ b/patches/native/coreutils/clang-pthread-once-atomic.patch @@ -0,0 +1,12 @@ +--- a/lib/pthread-once.c ++++ b/lib/pthread-once.c +@@ -92,7 +92,8 @@ pthread_once (pthread_once_t *once_control, void (*initfunction) (void)) + /* num_threads is now zero, and done is > 0. + No other thread will need to use the lock. + We can therefore destroy the lock, to free resources. */ +- if (__sync_bool_compare_and_swap (&state_p->done, 1, 2)) ++ /* Clang rejects __sync_* on _Atomic*; cast to the underlying type. */ ++ if (__sync_bool_compare_and_swap ((unsigned short *) &state_p->done, 1, 2)) + pthread_mutex_destroy (&once_control->mutex); + } + } diff --git a/patches/native/python@3.14/cygwin-clockid-t.patch b/patches/native/python@3.14/cygwin-clockid-t.patch new file mode 100644 index 0000000..4c90bd9 --- /dev/null +++ b/patches/native/python@3.14/cygwin-clockid-t.patch @@ -0,0 +1,10 @@ +--- a/Modules/timemodule.c ++++ b/Modules/timemodule.c +@@ -188,7 +188,7 @@ time_clockid_converter(PyObject *obj, clockid_t *p) + #ifdef _AIX + long long clk_id = PyLong_AsLongLong(obj); +-#elif defined(__DragonFly__) ++#elif defined(__DragonFly__) || defined(__CYGWIN__) + long clk_id = PyLong_AsLong(obj); + #else + int clk_id = PyLong_AsInt(obj); diff --git a/patches/native/python@3.14/cygwin-dynload-suffix.patch b/patches/native/python@3.14/cygwin-dynload-suffix.patch new file mode 100644 index 0000000..dd8aa90 --- /dev/null +++ b/patches/native/python@3.14/cygwin-dynload-suffix.patch @@ -0,0 +1,10 @@ +--- a/Python/dynload_shlib.c ++++ b/Python/dynload_shlib.c +@@ -38,6 +38,7 @@ + + const char *_PyImport_DynLoadFiletab[] = { + #ifdef __CYGWIN__ ++ "." SOABI ".dll", + ".dll", + #else /* !__CYGWIN__ */ + "." SOABI ".so", diff --git a/utils/download/download.go b/utils/download/download.go index f7553c9..6fee208 100644 --- a/utils/download/download.go +++ b/utils/download/download.go @@ -138,6 +138,7 @@ func downloadToFileWithResume(destPath, url string) (int64, error) { if err != nil { return 0, fmt.Errorf("failed to create request: %v", err) } + // req.Header.Set("User-Agent", "simplybs/1.0 (+https://github.com/mrcyjanek/simplybs)") if fileSize > 0 { req.Header.Set("Range", fmt.Sprintf("bytes=%d-", fileSize)) @@ -279,41 +280,77 @@ func DownloadFile(packageName, path, url, expectedSha256 string, isMirror bool) os.MkdirAll(filepath.Dir(path), 0755) - attempt := 0 - for attempt <= maxDownloadRetries { - if attempt > 0 { - log.Printf("Retry attempt %d/%d for %s", attempt, maxDownloadRetries, url) - time.Sleep(downloadRetryDelay) - } + candidates := []string{url} + if alt := gnuFtpFallbackURL(url); alt != "" && alt != url { + // Prefer mirrors.kernel.org when ftpmirror is flaky (502 / timeouts). + candidates = []string{alt, url} + } - startSize := fileSizeAt(downloadTempPath(path)) - bytesReceived, err := downloadWithResume(path, url, expectedSha256) - if err == nil { - log.Printf("Successfully downloaded and verified %s", path) - return nil - } + var lastErr error + for _, candidate := range candidates { + attempt := 0 + for attempt <= maxDownloadRetries { + if attempt > 0 { + log.Printf("Retry attempt %d/%d for %s", attempt, maxDownloadRetries, candidate) + time.Sleep(downloadRetryDelay) + } - if bytesReceived == 0 && attempt == 0 { - return fmt.Errorf("no data received from server: %v", err) - } + startSize := fileSizeAt(downloadTempPath(path)) + bytesReceived, err := downloadWithResume(path, candidate, expectedSha256) + if err == nil { + log.Printf("Successfully downloaded and verified %s", path) + return nil + } + lastErr = err - log.Printf("Download failed: %v", err) + if bytesReceived == 0 && attempt == 0 { + log.Printf("No data from %s: %v", candidate, err) + break + } - if shouldResetRetryCount(err, downloadTempPath(path), startSize, bytesReceived) { - log.Printf("Made progress (%s), resetting retry count", formatBytes(bytesReceived-startSize)) - attempt = 0 - continue - } + log.Printf("Download failed: %v", err) - attempt++ - if attempt > maxDownloadRetries { - return fmt.Errorf("failed after %d retries: %v", maxDownloadRetries, err) + if shouldResetRetryCount(err, downloadTempPath(path), startSize, bytesReceived) { + log.Printf("Made progress (%s), resetting retry count", formatBytes(bytesReceived-startSize)) + attempt = 0 + continue + } + + attempt++ + if attempt > maxDownloadRetries { + log.Printf("Failed after %d retries for %s: %v", maxDownloadRetries, candidate, err) + break + } } } + if lastErr != nil { + return fmt.Errorf("download failed after all retries: %v", lastErr) + } return fmt.Errorf("download failed after all retries") } +// gnuFtpFallbackURL maps flaky GNU FTP hosts to mirrors.kernel.org. +func gnuFtpFallbackURL(raw string) string { + u, err := url.Parse(raw) + if err != nil { + return "" + } + host := strings.ToLower(u.Host) + switch host { + case "ftpmirror.gnu.org", "www.ftpmirror.gnu.org", "ftp.gnu.org", "www.gnu.org": + default: + return "" + } + u.Scheme = "https" + u.Host = "mirrors.kernel.org" + // www.gnu.org paths are under /software/...; kernel mirror only has /gnu/. + if host == "www.gnu.org" { + return "" + } + return u.String() +} + func downloadWithResume(path, url, expectedSha256 string) (int64, error) { tempPath := downloadTempPath(path) @@ -326,12 +363,13 @@ func downloadWithResume(path, url, expectedSha256 string) (int64, error) { if err != nil { return bytesRead, fmt.Errorf("failed to open file for verification: %v", err) } - defer file.Close() hasher := sha256.New() if _, err := io.Copy(hasher, file); err != nil { + file.Close() return bytesRead, fmt.Errorf("failed to calculate hash: %v", err) } + file.Close() actualHash := hex.EncodeToString(hasher.Sum(nil)) if actualHash != expectedSha256 { @@ -340,13 +378,34 @@ func downloadWithResume(path, url, expectedSha256 string) (int64, error) { } if err := os.Rename(tempPath, path); err != nil { + // Windows can refuse rename if AV still has a handle; fall back to copy. + if copyErr := copyFile(tempPath, path); copyErr != nil { + os.Remove(tempPath) + return bytesRead, fmt.Errorf("failed to move download into place: %v (copy fallback: %v)", err, copyErr) + } os.Remove(tempPath) - return bytesRead, fmt.Errorf("failed to move download into place: %v", err) } return bytesRead, nil } +func copyFile(src, dst string) error { + in, err := os.Open(src) + if err != nil { + return err + } + defer in.Close() + out, err := os.OpenFile(dst, os.O_CREATE|os.O_WRONLY|os.O_TRUNC, 0644) + if err != nil { + return err + } + defer out.Close() + if _, err := io.Copy(out, in); err != nil { + return err + } + return out.Close() +} + func FileSHA256(path string) (string, error) { file, err := os.Open(path) if err != nil { diff --git a/utils/extract.go b/utils/extract.go index fc56921..f39fca2 100644 --- a/utils/extract.go +++ b/utils/extract.go @@ -356,6 +356,12 @@ func CreateTarGz(sourcePath, archivePath string) error { header, err := tar.FileInfoHeader(info, "") if err != nil { + // Windows reparse points / Cygwin native symlinks show up as + // ModeIrregular and cannot be archived by archive/tar. + if info.Mode()&os.ModeIrregular != 0 { + log.Printf("skipping irregular file (not archivable): %s", path) + continue + } return err } diff --git a/utils/git.go b/utils/git.go index e4a0cee..9562d4a 100644 --- a/utils/git.go +++ b/utils/git.go @@ -12,6 +12,10 @@ import ( "github.com/mrcyjanek/simplybs/utils/download" ) +func gitCommand(args ...string) *exec.Cmd { + return exec.Command(ResolveGit(), args...) +} + func verifyBundleHasRef(bundlePath string, refs []string) bool { tempVerifyDir := bundlePath + ".verify.tmp" defer RemoveAll(tempVerifyDir) @@ -19,14 +23,14 @@ func verifyBundleHasRef(bundlePath string, refs []string) bool { os.MkdirAll(tempVerifyDir, 0755) // Initialize a temporary git repo - initCmd := exec.Command("git", "init") + initCmd := gitCommand("init") initCmd.Dir = tempVerifyDir if err := initCmd.Run(); err != nil { return false } for _, ref := range refs { - fetchCmd := exec.Command("git", "fetch", bundlePath, ref) + fetchCmd := gitCommand("fetch", bundlePath, ref) fetchCmd.Dir = tempVerifyDir if err := fetchCmd.Run(); err != nil { log.Printf("Bundle does not contain ref %s", ref) @@ -89,7 +93,7 @@ func createBundleFromRepo(bundlePath, url string, refs []string) error { defer RemoveAll(tempDir) log.Printf("Cloning repository from %s", url) - cloneCmd := exec.Command("git", "clone", url, tempDir) + cloneCmd := gitCommand("clone", url, tempDir) cloneCmd.Stdout = os.Stdout cloneCmd.Stderr = os.Stderr if err := cloneCmd.Run(); err != nil { @@ -104,7 +108,7 @@ func createBundleFromRepo(bundlePath, url string, refs []string) error { branchName := fmt.Sprintf("bundle-ref-%d", i) branchNames = append(branchNames, branchName) - branchCmd := exec.Command("git", "branch", branchName, ref) + branchCmd := gitCommand("branch", branchName, ref) branchCmd.Dir = tempDir branchCmd.Stdout = os.Stdout branchCmd.Stderr = os.Stderr @@ -115,7 +119,7 @@ func createBundleFromRepo(bundlePath, url string, refs []string) error { } bundleArgs := append([]string{"bundle", "create", bundlePath}, branchNames...) - bundleCmd := exec.Command("git", bundleArgs...) + bundleCmd := gitCommand(bundleArgs...) bundleCmd.Dir = tempDir bundleCmd.Stdout = os.Stdout bundleCmd.Stderr = os.Stderr @@ -203,13 +207,13 @@ func ExtractGitCloneBundle(bundlePath, destPath, ref string) error { os.MkdirAll(destPath, 0755) steps := [][]string{ - {"git", "init"}, - {"git", "fetch", bundlePath, ref}, - {"git", "checkout", "--force", ref}, + {"init"}, + {"fetch", bundlePath, ref}, + {"checkout", "--force", ref}, } for i, step := range steps { - cmd := exec.Command(step[0], step[1:]...) + cmd := gitCommand(step...) cmd.Dir = destPath cmd.Stdout = os.Stdout cmd.Stderr = os.Stderr diff --git a/utils/path.go b/utils/path.go index 99d7c20..06ace3d 100644 --- a/utils/path.go +++ b/utils/path.go @@ -2,17 +2,234 @@ package utils import ( "log" + "os" + "os/exec" + "path/filepath" "runtime" + "strings" ) +// WindowsCygwinSeedRel is the repo-relative seed tree used before +// $NATIVEPREFIX/_ exists (PATCH_DIR / easybs-shaped Cygwin+clang). +const WindowsCygwinSeedRel = "patches/native/_/windows_amd64_cygwin_clang" + +func WindowsCygwinSeedBin() string { + wd, err := os.Getwd() + if err != nil { + return filepath.Join(WindowsCygwinSeedRel, "bin") + } + return filepath.Join(wd, WindowsCygwinSeedRel, "bin") +} + +func windowsGitBins() []string { + var out []string + roots := []string{ + os.Getenv("ProgramFiles"), + `C:\Program Files`, + } + if pf86 := os.Getenv("ProgramFiles(x86)"); pf86 != "" { + roots = append(roots, pf86) + } + for _, root := range roots { + if root == "" { + continue + } + out = append(out, + filepath.Join(root, "Git", "cmd"), + filepath.Join(root, "Git", "bin"), + filepath.Join(root, "Git", "mingw64", "bin"), + filepath.Join(root, "Git", "usr", "bin"), + ) + } + return out +} + +// ResolveGit returns an absolute path to git for host-side downloads. +// On Windows this finds Git-for-Windows without putting its MSYS usr/bin on +// the build-step PATH (which breaks autoconf/egrep). +func ResolveGit() string { + if p, err := exec.LookPath("git"); err == nil { + return p + } + if runtime.GOOS != "windows" { + return "git" + } + for _, dir := range windowsGitBins() { + cand := filepath.Join(dir, "git.exe") + if st, err := os.Stat(cand); err == nil && !st.IsDir() { + return cand + } + } + return "git" +} + +func guessNativePrefix() string { + if v := os.Getenv("SIMPLYBS_NATIVE_ENV_DIR"); v != "" { + return v + } + wd, err := os.Getwd() + if err != nil { + return filepath.Join(".buildlib", "env-native") + } + if v := os.Getenv("SIMPLYBS_DATA_DIR"); v != "" { + return filepath.Join(v, "env-native") + } + return filepath.Join(wd, ".buildlib", "env-native") +} + func GetHostPath() string { switch runtime.GOOS { case "darwin": return "" case "linux": return "" + case "windows": + // Prefer the Cygwin seed only. Git-for-Windows on PATH makes + // autoconf pick MSYS grep/sed (paths with spaces) and break egrep. + return ToShellPath(WindowsCygwinSeedBin()) default: log.Fatalln("Unsupported OS: ", runtime.GOOS) return "" } } + +// ToShellPath converts a native path into the form used inside build-step +// shells. On Windows this project always uses Cygwin (/cygdrive/...), even +// when ResolveShell temporarily falls back to Git Bash after env-native is +// wiped between EnsureBuilt and ExtractEnv. Hashing PREFIX/NATIVEPREFIX via +// Git's /c/... form would look for a different archive than the one built +// under Cygwin. +func ToShellPath(p string) string { + if runtime.GOOS != "windows" { + return p + } + if p == "" { + return p + } + abs := p + if !filepath.IsAbs(abs) { + if a, err := filepath.Abs(abs); err == nil { + abs = a + } + } + vol := filepath.VolumeName(abs) + if len(vol) >= 2 && vol[1] == ':' { + letter := strings.ToLower(string(vol[0])) + rest := filepath.ToSlash(abs[len(vol):]) + if rest == "" { + rest = "/" + } + return "/cygdrive/" + letter + rest + } + return filepath.ToSlash(abs) +} + +// DestDirJoin mirrors Unix string concat of $STAGING_DIR$PREFIX for archives +// and Go file ops so the staged tree matches what the shell wrote. +func DestDirJoin(staging, prefix string) string { + if runtime.GOOS != "windows" { + rel := strings.TrimPrefix(filepath.ToSlash(prefix), "/") + return filepath.Join(staging, filepath.FromSlash(rel)) + } + shellPrefix := ToShellPath(prefix) + rel := strings.TrimPrefix(shellPrefix, "/") + return filepath.Join(staging, filepath.FromSlash(rel)) +} + +// ResolveShell returns the shell used for build steps. +// Prefer Cygwin seed sh when present; otherwise Git for Windows sh. +func ResolveShell(nativePrefix string) string { + if runtime.GOOS != "windows" { + return "sh" + } + if nativePrefix == "" { + nativePrefix = guessNativePrefix() + } + candidates := []string{ + filepath.Join(nativePrefix, "_", "bin", "sh.exe"), + filepath.Join(nativePrefix, "_", "bin", "sh"), + // After native/_ stages tools into bin/, prefer that Cygwin sh + // over Git Bash so /cygdrive paths keep working. + filepath.Join(nativePrefix, "bin", "sh.exe"), + filepath.Join(nativePrefix, "bin", "sh"), + filepath.Join(nativePrefix, "bin", "bash.exe"), + filepath.Join(nativePrefix, "bin", "bash"), + filepath.Join(WindowsCygwinSeedBin(), "sh.exe"), + filepath.Join(WindowsCygwinSeedBin(), "sh"), + } + for _, b := range windowsGitBins() { + candidates = append(candidates, filepath.Join(b, "sh.exe")) + } + for _, c := range candidates { + if st, err := os.Stat(c); err == nil && !st.IsDir() { + return c + } + } + if p, err := exec.LookPath("sh.exe"); err == nil { + return p + } + if p, err := exec.LookPath("sh"); err == nil { + return p + } + return "sh" +} + +// ProcessEnv builds an explicit process environment from overrides only. +// On Windows, SYSTEMROOT is copied from the host so Win32 APIs keep working; +// nothing else is inherited from the parent process. +func ProcessEnv(overrides map[string]string) []string { + out := make([]string, 0, len(overrides)+1) + if runtime.GOOS == "windows" { + if !hasEnvKey(overrides, "SYSTEMROOT") { + if v := os.Getenv("SYSTEMROOT"); v != "" { + out = append(out, "SYSTEMROOT="+v) + } + } + } + for k, v := range overrides { + out = append(out, k+"="+v) + } + return out +} + +func hasEnvKey(env map[string]string, key string) bool { + if _, ok := env[key]; ok { + return true + } + if runtime.GOOS != "windows" { + return false + } + want := strings.ToUpper(key) + for k := range env { + if strings.ToUpper(k) == want { + return true + } + } + return false +} + +// BuildStepPATH prefers the simplybs native toolchain, then bootstrap host +// bins (seed / Git), then prefix bins. Always colon-separated for POSIX sh. +func BuildStepPATH(nativePrefix, prefix, envPath, hostPath string) string { + parts := []string{ + ToShellPath(filepath.Join(nativePrefix, "_", "bin")), + ToShellPath(filepath.Join(nativePrefix, "bin")), + } + if envPath != "" { + parts = append(parts, envPath) + } + if hostPath != "" { + parts = append(parts, hostPath) + } + if prefix != "" { + parts = append(parts, ToShellPath(filepath.Join(prefix, "bin"))) + } + out := parts[0] + for _, p := range parts[1:] { + if p == "" { + continue + } + out += ":" + p + } + return out +} diff --git a/utils/path_test.go b/utils/path_test.go new file mode 100644 index 0000000..9244cce --- /dev/null +++ b/utils/path_test.go @@ -0,0 +1,32 @@ +package utils + +import ( + "path/filepath" + "runtime" + "strings" + "testing" +) + +func TestToShellPathWindows(t *testing.T) { + if runtime.GOOS != "windows" { + t.Skip("windows only") + } + got := ToShellPath(`C:\Users\user\work\simplybs\.buildlib\env-native`) + want := `/cygdrive/c/Users/user/work/simplybs/.buildlib/env-native` + if got != want { + t.Fatalf("ToShellPath: got %q, want %q", got, want) + } +} + +func TestDestDirJoinWindows(t *testing.T) { + if runtime.GOOS != "windows" { + t.Skip("windows only") + } + staging := `C:\Users\user\work\simplybs\.buildlib\windows_amd64\staging\pkg` + prefix := `C:\Users\user\work\simplybs\.buildlib\env-native` + got := DestDirJoin(staging, prefix) + shellAsWin := filepath.Join(staging, filepath.FromSlash(strings.TrimPrefix(ToShellPath(prefix), "/"))) + if got != shellAsWin { + t.Fatalf("DestDirJoin vs shell concat:\n join %q\n mapped %q\n shellPrefix %q", got, shellAsWin, ToShellPath(prefix)) + } +} diff --git a/utils/run_live.go b/utils/run_live.go new file mode 100644 index 0000000..c4d60c4 --- /dev/null +++ b/utils/run_live.go @@ -0,0 +1,29 @@ +package utils + +import ( + "os" + "os/exec" + + "golang.org/x/term" +) + +// RunLive runs cmd with stdout/stderr streamed as they are produced. +// +// When our own stdout is not a terminal (piped, PowerShell 2>&1, CI capture), +// libc fully-buffers the child's stdout, so tools like configure look silent +// until a large flush. Merging both streams onto stderr avoids that in hosts +// that flush the error stream more eagerly (notably PowerShell). +// +// We intentionally do not allocate a PTY here: if the sink stops reading, +// a PTY writer can fill its buffer and deadlock the whole build step. +func RunLive(cmd *exec.Cmd) error { + if term.IsTerminal(int(os.Stdout.Fd())) { + cmd.Stdout = os.Stdout + cmd.Stderr = os.Stderr + return cmd.Run() + } + + cmd.Stdout = os.Stderr + cmd.Stderr = os.Stderr + return cmd.Run() +} From aeca8cfa3dc253dac990ea51b1052facd8997c44 Mon Sep 17 00:00:00 2001 From: cyan Date: Wed, 12 Aug 2026 10:39:24 +0200 Subject: [PATCH 180/200] Add minimal Cloud Agent development environment (go + gh) (#1) * Add Cloud Agent development environment (go, gh, docker) Adds .cursor/environment.json with install/start scripts: - install.sh warms the Go module/build caches (dev loop is 'go run .') and installs Docker + fuse-overlayfs (best-effort, nice-to-have). - start.sh launches the Docker daemon per boot (idempotent, non-blocking). go and gh are already provided by the default base image. Co-authored-by: cyan * Drop start.sh; do not auto-start docker daemon Docker is still installed by install.sh; the daemon can be started on demand. Co-authored-by: cyan * Add AGENTS.md with dev-loop and lint instructions Co-authored-by: cyan * Drop docker; keep environment minimal (go + gh only) install.sh now only warms the Go module/build caches. go and gh come from the base image. Co-authored-by: cyan --------- Co-authored-by: Cursor Agent --- .cursor/environment.json | 4 +++ .cursor/install.sh | 19 ++++++++++++++ AGENTS.md | 57 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 80 insertions(+) create mode 100644 .cursor/environment.json create mode 100755 .cursor/install.sh create mode 100644 AGENTS.md diff --git a/.cursor/environment.json b/.cursor/environment.json new file mode 100644 index 0000000..ebf4ee1 --- /dev/null +++ b/.cursor/environment.json @@ -0,0 +1,4 @@ +{ + "name": "simplybs", + "install": "./.cursor/install.sh" +} diff --git a/.cursor/install.sh b/.cursor/install.sh new file mode 100755 index 0000000..d1302a6 --- /dev/null +++ b/.cursor/install.sh @@ -0,0 +1,19 @@ +#!/usr/bin/env bash +# Idempotent environment bootstrap for simplybs. +# Runs after the repository is checked out. The dev loop is just `go run .`, +# so this only warms the Go module/build caches (which also validates the +# toolchain). go and gh are provided by the base image. +set -euo pipefail + +cd "$(dirname "$0")/.." + +echo "==> go version" +go version + +echo "==> go mod download" +go mod download + +echo "==> go build ./..." +go build ./... + +echo "==> install complete" diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..755a0bc --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,57 @@ +# AGENTS.md + +`simplybs` is a cross-compilation build system written in Go. Package definitions +live in `packages/*.json` (and `packages/native/*.json`); patches live in `patches/`. + +## Dev loop + +The tool is run directly from source — there is no separate build step for +day-to-day work: + +```bash +go run . +``` + +Common invocations: + +```bash +go run . -host x86_64-linux-gnu -package zlib -list # show a package + its dep tree +go run . -host x86_64-linux-gnu -package zlib -download # fetch sources (verifies sha256) +go run . -host x86_64-linux-gnu -package zlib -build # build a package (+ its deps) +go run . -world -host -build # build everything for a host +``` + +Supported host triplets are defined in `host/main.go` (e.g. `x86_64-linux-gnu`, +`aarch64-linux-android`, `x86_64-w64-mingw32`, `aarch64-apple-darwin`). + +## After editing packages — always run lint + +Whenever you add or change a package definition (new source, new git ref, bumped +version, new dependency, etc.), regenerate metadata and validate with: + +```bash +go run . -lint +``` + +`-lint` reformats every `packages/**.json`, checks for invalid/cyclic +dependencies, and regenerates the checked-in `sources.json`. Commit the resulting +`sources.json` changes together with your package edits. + +To generate git `download` entries from repos you've checked out locally: + +```bash +go run ./cmd/gengitdeps # prints download JSON to stdout +``` + +## Tests + +```bash +go test ./... +``` + +Note: `host.TestHosts` is data-driven from `packages/native/_.json` and may +already fail on a clean checkout — unrelated to environment setup. + +## Tooling + +`go` and `gh` are provided by the base image; there is nothing else to install. From 5138a704923146c9480df174cd1d09ba930114c6 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Wed, 12 Aug 2026 09:02:47 +0000 Subject: [PATCH 181/200] Set SIMPLYBS_CACHE_* env vars box-wide in install Writes resolved values to /etc/environment (all PAM sessions) and a dynamic /etc/profile.d/simplybs-cache.sh (login shells). Idempotent. Co-authored-by: cyan --- .cursor/install.sh | 30 ++++++++++++++++++++++++++++++ AGENTS.md | 8 ++++++++ 2 files changed, 38 insertions(+) diff --git a/.cursor/install.sh b/.cursor/install.sh index d1302a6..81e3e0d 100755 --- a/.cursor/install.sh +++ b/.cursor/install.sh @@ -16,4 +16,34 @@ go mod download echo "==> go build ./..." go build ./... +# --- simplybs cache env vars -------------------------------------------- +# Make the cache settings available to every command on the box. Two places: +# * /etc/environment -> picked up by PAM for all sessions (no shell +# expansion allowed, so we write resolved values). +# * /etc/profile.d/ -> sourced by login shells (keeps the dynamic form). +configure_cache_env() { + local repo="mrcyjanek/simplybs_private" + local tag="v0-sbs-${USER}-$(go env GOOS)-$(go env GOARCH)" + + echo "==> configuring SIMPLYBS_CACHE_* (tag=${tag}, repo=${repo})" + + # /etc/environment: replace any prior entries, then append resolved values. + sudo touch /etc/environment + sudo sed -i '/^SIMPLYBS_CACHE_TAG=/d;/^SIMPLYBS_CACHE_REPO=/d' /etc/environment + printf 'SIMPLYBS_CACHE_TAG=%s\nSIMPLYBS_CACHE_REPO=%s\n' "$tag" "$repo" \ + | sudo tee -a /etc/environment >/dev/null + + # /etc/profile.d: dynamic exports for login shells (safe if go is missing). + sudo tee /etc/profile.d/simplybs-cache.sh >/dev/null <<'EOF' +export SIMPLYBS_CACHE_REPO=mrcyjanek/simplybs_private +if command -v go >/dev/null 2>&1; then + export SIMPLYBS_CACHE_TAG="v0-sbs-${USER}-$(go env GOOS)-$(go env GOARCH)" +else + export SIMPLYBS_CACHE_TAG="v0-sbs-${USER}-linux-amd64" +fi +EOF +} + +configure_cache_env + echo "==> install complete" diff --git a/AGENTS.md b/AGENTS.md index 755a0bc..f0dad4e 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -55,3 +55,11 @@ already fail on a clean checkout — unrelated to environment setup. ## Tooling `go` and `gh` are provided by the base image; there is nothing else to install. + +## Cache environment variables + +`install.sh` exports the shared cache settings box-wide (via `/etc/environment` +and `/etc/profile.d/simplybs-cache.sh`), so every command sees them: + +- `SIMPLYBS_CACHE_TAG=v0-sbs---` (e.g. `v0-sbs-ubuntu-linux-amd64`) +- `SIMPLYBS_CACHE_REPO=mrcyjanek/simplybs_private` From e1e9e49bdc582b1b2383f356f282563ed479bcae Mon Sep 17 00:00:00 2001 From: cyan Date: Thu, 13 Aug 2026 17:46:23 +0200 Subject: [PATCH 182/200] Selective GitHub Release build cache (pull needed / push changed) (#2) * Add selective GitHub Release build cache pull/push Built artifacts are already content-addressed by short hash. Wire that into a GitHub Releases cache so -cache-pull (and EnsureBuilt auto-pull) only fetch the package tree you need, and -cache-push only uploads assets that are not already on the release. Co-authored-by: cyan * Require SIMPLYBS_CACHE_TAG and SIMPLYBS_CACHE_REPO to enable cache Drop the USER-based tag default. Both env vars are mandatory; when set, cache is enabled and EnsureBuilt auto-pulls. Co-authored-by: cyan * Auto pull and push build cache when cache env is set With SIMPLYBS_CACHE_TAG and SIMPLYBS_CACHE_REPO set, -build pulls the needed package tree up front, still pulls per-package in EnsureBuilt, pushes each package after a successful local build, and finishes with a tree push for anything still missing on the release. Co-authored-by: cyan * Docs: note install.sh sets SIMPLYBS_CACHE_* box-wide Co-authored-by: cyan * Fix AGENTS.md rebase conflict markers Co-authored-by: cyan --------- Co-authored-by: Cursor Agent --- AGENTS.md | 9 + README.md | 42 +++- main.go | 47 ++++- pack/build.go | 7 + pack/cache.go | 475 +++++++++++++++++++++++++++++++++++++++++++++ pack/cache_test.go | 413 +++++++++++++++++++++++++++++++++++++++ 6 files changed, 991 insertions(+), 2 deletions(-) create mode 100644 pack/cache.go create mode 100644 pack/cache_test.go diff --git a/AGENTS.md b/AGENTS.md index f0dad4e..e704670 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -63,3 +63,12 @@ and `/etc/profile.d/simplybs-cache.sh`), so every command sees them: - `SIMPLYBS_CACHE_TAG=v0-sbs---` (e.g. `v0-sbs-ubuntu-linux-amd64`) - `SIMPLYBS_CACHE_REPO=mrcyjanek/simplybs_private` + +When both are set, cache is enabled: `-build` auto-pulls needed artifacts and +auto-pushes new/changed ones (see README). Explicit flags: + +```bash +go run . -host x86_64-linux-gnu -package zlib -cache-pull +go run . -host x86_64-linux-gnu -package zlib -build +go run . -host x86_64-linux-gnu -package zlib -cache-push +``` diff --git a/README.md b/README.md index d7da65e..2268d54 100644 --- a/README.md +++ b/README.md @@ -83,7 +83,47 @@ $ go run . -host armv7a-linux-androideabi -package tor -build ## Recommended / "official" cache settings - ```bash SIMPLYBS_ENV_DIR=/opt/_ ``` + +## Build cache (GitHub Releases) + +Built package archives are content-addressed (`package-version-<8-char-hash>`). +They can be shared via a rolling GitHub Release without downloading the whole +cache on every run. + +Cache is enabled only when **both** required variables are set: + +| Variable | Required | Purpose | +| --- | --- | --- | +| `SIMPLYBS_CACHE_TAG` | yes | Release tag (e.g. `v0-sbs-$USER-$GOOS-$GOARCH`) | +| `SIMPLYBS_CACHE_REPO` | yes | `owner/repo` hosting the release | +| `SIMPLYBS_GH` | no | Optional path to `gh` | + +```bash +# Set by .cursor/install.sh box-wide; override if needed: +# export SIMPLYBS_CACHE_TAG=v0-sbs-$USER-$(go env GOOS)-$(go env GOARCH) +# export SIMPLYBS_CACHE_REPO=mrcyjanek/simplybs_private +``` + +With those set, `-build` auto-pulls the needed package tree up front, pulls +per-package inside `EnsureBuilt` as a fallback, pushes each package after a +successful local build, and runs a final tree push for anything still missing +on the release: + +```bash +go run . -host x86_64-linux-gnu -package zlib -build +``` + +Explicit pull/push still work: + +```bash +go run . -host x86_64-linux-gnu -package zlib -cache-pull +go run . -cache-push # all local built/ +go run . -host x86_64-linux-gnu -package zlib -cache-push # that package tree only +``` + +Push only uploads local artifacts that are not already on the release (a +package rebuild with a new hash is a new asset name, so “changed” caches +upload naturally). diff --git a/main.go b/main.go index 6020dee..02fac2c 100644 --- a/main.go +++ b/main.go @@ -27,6 +27,8 @@ func main() { argVersion := flag.Bool("v", false, "Show version") argShell := flag.Bool("shell", false, "Extract source and start shell with build environment") argCleanup := flag.Bool("cleanup", false, "Remove everything except current built archives") + argCachePull := flag.Bool("cache-pull", false, "Download needed build-cache artifacts (requires SIMPLYBS_CACHE_TAG and SIMPLYBS_CACHE_REPO)") + argCachePush := flag.Bool("cache-push", false, "Upload new/changed local build-cache artifacts (requires SIMPLYBS_CACHE_TAG and SIMPLYBS_CACHE_REPO)") // argQuiet := flag.Bool("quiet", false, "Redirect stdout and stderr to /dev/null") flag.Parse() if *argVersion { @@ -49,10 +51,18 @@ func main() { packageNames := []*pack.Package{} if *argWorld { packageNames = pack.GetAllPackages() - } else { + } else if *argPkg != "" { packageNames = pack.GetPackagesByList(*argPkg) } + if *argCachePush && *argPkg == "" && !*argWorld { + // Push every local built artifact for this builder that is not on the release. + if err := pack.CachePush(nil, nil); err != nil { + crash.Handle(err) + } + return + } + if len(packageNames) == 0 { crash.Handle(fmt.Errorf("no valid -package names or -world provided")) } @@ -66,6 +76,30 @@ func main() { return } + if *argCachePull || *argCachePush { + if *argHost == "" { + crash.Handle(fmt.Errorf("-cache-pull/-cache-push with -package requires -host")) + } + hosts := strings.SplitSeq(*argHost, ",") + for h := range hosts { + host := host.SupportedHosts[h] + if host == nil { + crash.Handle(fmt.Errorf("host %s not supported", h)) + } + if *argCachePull { + if err := pack.CachePull(packageNames, host); err != nil { + crash.Handle(err) + } + } + if *argCachePush { + if err := pack.CachePush(packageNames, host); err != nil { + crash.Handle(err) + } + } + } + return + } + hosts := strings.SplitSeq(*argHost, ",") for h := range hosts { host := host.SupportedHosts[h] @@ -85,9 +119,20 @@ func buildForHost(host *host.Host, packageNames []*pack.Package, list bool, extr } if build { + if pack.CacheEnabled() { + log.Printf("cache: enabled (tag=%s repo=%s); auto pull/push", pack.CacheTag(), pack.CacheRepo()) + if err := pack.CachePull(packageNames, host); err != nil { + log.Printf("cache: auto-pull failed: %v", err) + } + } for _, pkg := range packageNames { pkg.EnsureBuilt(host, true) } + if pack.CacheEnabled() { + if err := pack.CachePush(packageNames, host); err != nil { + log.Printf("cache: auto-push failed: %v", err) + } + } } if extract { for _, pkg := range packageNames { diff --git a/pack/build.go b/pack/build.go index 01b5908..b3d520a 100644 --- a/pack/build.go +++ b/pack/build.go @@ -20,6 +20,12 @@ import ( func (p *Package) EnsureBuilt(h *host.Host, buildDependencies bool) { buildPath := p.GenerateBuildPath(h, "built") + ".info.txt" info, err := os.ReadFile(buildPath) + if err != nil { + // Selective remote pull: only this package's assets (by short-hash name). + if TryPullPackageCache(p, h) { + info, err = os.ReadFile(buildPath) + } + } if err != nil { log.Printf("[%s][%s] No build cache found, building...", h.Triplet, p.Package) p.BuildPackage(h, true) @@ -299,6 +305,7 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { } log.Printf("Package built successfully: %s", builtArchivePath) + TryPushPackageCache(p, h) } func writeDotEnv(path string, env []string) { diff --git a/pack/cache.go b/pack/cache.go new file mode 100644 index 0000000..246d5e3 --- /dev/null +++ b/pack/cache.go @@ -0,0 +1,475 @@ +package pack + +import ( + "encoding/json" + "fmt" + "io" + "log" + "os" + "os/exec" + "path/filepath" + "strings" + "sync" + + "github.com/mrcyjanek/simplybs/host" +) + +// Remote build-cache assets live on a GitHub release. Paths under +// DataDir()/built are flattened with '+' so release asset names stay flat: +// +// x86_64-linux-gnu/zlib-1.3.1-deadbeef.tar.gz +// -> x86_64-linux-gnu+zlib-1.3.1-deadbeef.tar.gz +// +// Pull only requests assets for the packages needed by the current build +// (by short-hash filename). Push only uploads local files that are missing +// from the release (content changes produce a new short-hash name). +// +// Cache is enabled only when both SIMPLYBS_CACHE_TAG and SIMPLYBS_CACHE_REPO +// are set; EnsureBuilt then auto-pulls missing artifacts. + +const cacheAssetSuffixes = 3 // .info.txt, .tar.gz, _native.tar.gz + +var ( + remoteAssetsOnce sync.Once + remoteAssets map[string]bool + remoteAssetsErr error +) + +// CacheTag returns SIMPLYBS_CACHE_TAG (empty if unset). +func CacheTag() string { + return os.Getenv("SIMPLYBS_CACHE_TAG") +} + +// CacheRepo returns SIMPLYBS_CACHE_REPO (owner/repo; empty if unset). +func CacheRepo() string { + return os.Getenv("SIMPLYBS_CACHE_REPO") +} + +// CacheEnabled reports whether remote build cache is configured. +// Both SIMPLYBS_CACHE_TAG and SIMPLYBS_CACHE_REPO must be set. +func CacheEnabled() bool { + return CacheTag() != "" && CacheRepo() != "" +} + +func requireCacheConfig() (tag, repo string, err error) { + tag = CacheTag() + repo = CacheRepo() + if tag == "" || repo == "" { + return "", "", fmt.Errorf("cache: set both SIMPLYBS_CACHE_TAG and SIMPLYBS_CACHE_REPO") + } + return tag, repo, nil +} + +func ghCmd(args ...string) *exec.Cmd { + bin := os.Getenv("SIMPLYBS_GH") + if bin == "" { + bin = "gh" + } + repo := CacheRepo() + if repo == "" { + return exec.Command(bin, args...) + } + return exec.Command(bin, append([]string{"-R", repo}, args...)...) +} + +// AssetNameForRel converts a path relative to DataDir()/built into a flat +// release asset name. +func AssetNameForRel(rel string) string { + rel = filepath.ToSlash(rel) + if strings.Contains(rel, "/") { + return strings.ReplaceAll(rel, "/", "+") + } + return rel +} + +// RelFromAssetName reverses AssetNameForRel. +func RelFromAssetName(name string) string { + return strings.ReplaceAll(name, "+", "/") +} + +// BuiltRelPaths returns the paths (relative to DataDir()/built) for a +// package's cache artifacts on host h. +func (p *Package) BuiltRelPaths(h *host.Host) []string { + base := p.GenerateBuildPath(h, "built") + builtRoot := filepath.Join(host.DataDir(), "built") + relBase, err := filepath.Rel(builtRoot, base) + if err != nil { + log.Fatalf("cache: relative path for %s: %v", base, err) + } + relBase = filepath.ToSlash(relBase) + return []string{ + relBase + ".info.txt", + relBase + ".tar.gz", + relBase + "_native.tar.gz", + } +} + +// CollectNeededPackages returns pkg plus its transitive dependencies for h. +func CollectNeededPackages(pkgs []*Package, h *host.Host) []*Package { + seen := map[string]*Package{} + var walk func(*Package) + walk = func(p *Package) { + if p == nil { + return + } + if _, ok := seen[p.Package]; ok { + return + } + seen[p.Package] = p + for _, dep := range filteredDependencyPackages(p.Dependencies, h) { + walk(dep) + } + } + for _, p := range pkgs { + walk(p) + } + out := make([]*Package, 0, len(seen)) + for _, p := range seen { + out = append(out, p) + } + return out +} + +func neededAssetNames(pkgs []*Package, h *host.Host) []string { + needed := CollectNeededPackages(pkgs, h) + names := make([]string, 0, len(needed)*cacheAssetSuffixes) + for _, p := range needed { + for _, rel := range p.BuiltRelPaths(h) { + names = append(names, AssetNameForRel(rel)) + } + } + return names +} + +func loadRemoteAssets(tag string) (map[string]bool, error) { + remoteAssetsOnce.Do(func() { + remoteAssets = map[string]bool{} + cmd := ghCmd("release", "view", tag, "--json", "assets") + out, err := cmd.Output() + if err != nil { + stderr := "" + if exitErr, ok := err.(*exec.ExitError); ok { + stderr = string(exitErr.Stderr) + } + msg := strings.ToLower(stderr + string(out) + err.Error()) + if strings.Contains(msg, "not found") || strings.Contains(msg, "could not find") || strings.Contains(msg, "http 404") { + log.Printf("cache: release %q not found; treating as empty", tag) + return + } + remoteAssetsErr = fmt.Errorf("gh release view %s: %w%s", tag, err, formatStderr(stderr)) + return + } + var parsed struct { + Assets []struct { + Name string `json:"name"` + } `json:"assets"` + } + if err := json.Unmarshal(out, &parsed); err != nil { + remoteAssetsErr = err + return + } + for _, a := range parsed.Assets { + remoteAssets[a.Name] = true + } + }) + return remoteAssets, remoteAssetsErr +} + +func formatStderr(stderr string) string { + stderr = strings.TrimSpace(stderr) + if stderr == "" { + return "" + } + return ": " + stderr +} + +func resetRemoteAssetsCache() { + remoteAssetsOnce = sync.Once{} + remoteAssets = nil + remoteAssetsErr = nil +} + +func ensureRelease(tag string) error { + view := ghCmd("release", "view", tag) + if err := view.Run(); err == nil { + return nil + } + create := ghCmd("release", "create", tag, + "--title", "simplybs build cache", + "--notes", "Rolling cache of simplybs build artifacts (per-package, content-addressed by short hash).", + ) + create.Stdout = os.Stdout + create.Stderr = os.Stderr + return create.Run() +} + +func downloadAsset(tag, assetName, destPath string) error { + if err := os.MkdirAll(filepath.Dir(destPath), 0755); err != nil { + return err + } + staging, err := os.MkdirTemp("", "simplybs-cache-*") + if err != nil { + return err + } + defer os.RemoveAll(staging) + + cmd := ghCmd("release", "download", tag, "-p", assetName, "-D", staging) + cmd.Stdout = os.Stdout + cmd.Stderr = os.Stderr + if err := cmd.Run(); err != nil { + return err + } + src := filepath.Join(staging, assetName) + // gh may write the literal asset name; if the pattern matched a file with + // a different on-disk name, pick the sole file in staging. + if _, err := os.Stat(src); err != nil { + entries, readErr := os.ReadDir(staging) + if readErr != nil { + return err + } + if len(entries) != 1 || entries[0].IsDir() { + return fmt.Errorf("cache: expected one downloaded file for %s", assetName) + } + src = filepath.Join(staging, entries[0].Name()) + } + tmp := destPath + ".tmp" + if err := copyFile(src, tmp); err != nil { + return err + } + return os.Rename(tmp, destPath) +} + +func copyFile(src, dst string) error { + in, err := os.Open(src) + if err != nil { + return err + } + defer in.Close() + out, err := os.OpenFile(dst, os.O_CREATE|os.O_WRONLY|os.O_TRUNC, 0644) + if err != nil { + return err + } + defer out.Close() + _, err = io.Copy(out, in) + return err +} + +// TryPullPackageCache downloads missing built artifacts for one package from +// the GitHub release cache. Returns true when a complete local cache is present +// afterwards (either already was, or was fetched). +func TryPullPackageCache(p *Package, h *host.Host) bool { + if !CacheEnabled() { + return false + } + tag := CacheTag() + assets, err := loadRemoteAssets(tag) + if err != nil { + log.Printf("cache: failed to list release assets: %v", err) + return false + } + builtRoot := filepath.Join(host.DataDir(), "built") + ok := true + for _, rel := range p.BuiltRelPaths(h) { + dest := filepath.Join(builtRoot, filepath.FromSlash(rel)) + if _, err := os.Stat(dest); err == nil { + continue + } + name := AssetNameForRel(rel) + if !assets[name] { + ok = false + continue + } + log.Printf("[%s][%s] cache pull: %s", h.Triplet, p.Package, name) + if err := downloadAsset(tag, name, dest); err != nil { + log.Printf("[%s][%s] cache pull failed for %s: %v", h.Triplet, p.Package, name, err) + ok = false + } + } + return ok +} + +// CachePull downloads only the built artifacts needed for pkgs on host h. +func CachePull(pkgs []*Package, h *host.Host) error { + tag, _, err := requireCacheConfig() + if err != nil { + return err + } + assets, err := loadRemoteAssets(tag) + if err != nil { + return fmt.Errorf("cache: list assets: %w", err) + } + + builtRoot := filepath.Join(host.DataDir(), "built") + names := neededAssetNames(pkgs, h) + toDownload := 0 + skippedLocal := 0 + missingRemote := 0 + for _, name := range names { + rel := RelFromAssetName(name) + dest := filepath.Join(builtRoot, filepath.FromSlash(rel)) + if _, err := os.Stat(dest); err == nil { + skippedLocal++ + continue + } + if !assets[name] { + missingRemote++ + continue + } + log.Printf("cache: download %s", name) + if err := downloadAsset(tag, name, dest); err != nil { + return fmt.Errorf("cache: download %s: %w", name, err) + } + toDownload++ + } + log.Printf("cache pull: downloaded=%d already-local=%d not-on-release=%d needed=%d tag=%s", + toDownload, skippedLocal, missingRemote, len(names), tag) + return nil +} + +// TryPushPackageCache uploads this package's built artifacts that are missing +// from the release. No-op when cache is disabled or everything is already remote. +func TryPushPackageCache(p *Package, h *host.Host) { + if !CacheEnabled() { + return + } + tag := CacheTag() + if err := ensureRelease(tag); err != nil { + log.Printf("[%s][%s] cache push: ensure release: %v", h.Triplet, p.Package, err) + return + } + assets, err := loadRemoteAssets(tag) + if err != nil { + log.Printf("[%s][%s] cache push: list assets: %v", h.Triplet, p.Package, err) + return + } + builtRoot := filepath.Join(host.DataDir(), "built") + var uploadPaths []string + var uploadNames []string + for _, rel := range p.BuiltRelPaths(h) { + name := AssetNameForRel(rel) + if assets[name] { + continue + } + abs := filepath.Join(builtRoot, filepath.FromSlash(rel)) + if _, err := os.Stat(abs); err != nil { + continue + } + uploadPaths = append(uploadPaths, abs) + uploadNames = append(uploadNames, name) + } + if len(uploadPaths) == 0 { + return + } + if err := uploadAssets(tag, uploadPaths, uploadNames); err != nil { + log.Printf("[%s][%s] cache push failed: %v", h.Triplet, p.Package, err) + return + } + for _, name := range uploadNames { + assets[name] = true + log.Printf("[%s][%s] cache push: %s", h.Triplet, p.Package, name) + } +} + +func uploadAssets(tag string, uploadPaths, uploadNames []string) error { + staging, err := os.MkdirTemp("", "simplybs-cache-upload-*") + if err != nil { + return err + } + defer os.RemoveAll(staging) + + staged := make([]string, 0, len(uploadPaths)) + for i, src := range uploadPaths { + dst := filepath.Join(staging, uploadNames[i]) + if err := copyFile(src, dst); err != nil { + return err + } + staged = append(staged, dst) + } + + log.Printf("cache push: uploading %d file(s) to %s...", len(staged), tag) + args := append([]string{"release", "upload", tag}, staged...) + cmd := ghCmd(args...) + cmd.Stdout = os.Stdout + cmd.Stderr = os.Stderr + if err := cmd.Run(); err != nil { + return fmt.Errorf("cache: upload: %w", err) + } + log.Printf("cache push: uploaded=%d tag=%s", len(staged), tag) + return nil +} + +// CachePush uploads local built artifacts that are not yet on the release. +// When pkgs is non-empty, only artifacts for those packages (and their deps) +// on host h are considered; otherwise every file under DataDir()/built is. +func CachePush(pkgs []*Package, h *host.Host) error { + tag, _, err := requireCacheConfig() + if err != nil { + return err + } + if err := ensureRelease(tag); err != nil { + return fmt.Errorf("cache: ensure release: %w", err) + } + resetRemoteAssetsCache() + assets, err := loadRemoteAssets(tag) + if err != nil { + return fmt.Errorf("cache: list assets: %w", err) + } + + builtRoot := filepath.Join(host.DataDir(), "built") + var uploadPaths []string + var uploadNames []string + + consider := func(absPath, name string) { + if assets[name] { + return + } + uploadPaths = append(uploadPaths, absPath) + uploadNames = append(uploadNames, name) + } + + if len(pkgs) > 0 && h != nil { + for _, name := range neededAssetNames(pkgs, h) { + rel := RelFromAssetName(name) + abs := filepath.Join(builtRoot, filepath.FromSlash(rel)) + if _, err := os.Stat(abs); err != nil { + continue + } + consider(abs, name) + } + } else { + if _, err := os.Stat(builtRoot); os.IsNotExist(err) { + log.Printf("cache: built dir not found: %s", builtRoot) + return nil + } + err := filepath.WalkDir(builtRoot, func(path string, d os.DirEntry, err error) error { + if err != nil { + return err + } + if d.IsDir() { + return nil + } + rel, err := filepath.Rel(builtRoot, path) + if err != nil { + return err + } + consider(path, AssetNameForRel(rel)) + return nil + }) + if err != nil { + return err + } + } + + if len(uploadPaths) == 0 { + log.Printf("cache push: nothing to upload (tag=%s remote-assets=%d)", tag, len(assets)) + return nil + } + + if err := uploadAssets(tag, uploadPaths, uploadNames); err != nil { + return err + } + for _, name := range uploadNames { + assets[name] = true + } + return nil +} diff --git a/pack/cache_test.go b/pack/cache_test.go new file mode 100644 index 0000000..0bdd6df --- /dev/null +++ b/pack/cache_test.go @@ -0,0 +1,413 @@ +package pack + +import ( + "encoding/json" + "fmt" + "os" + "path/filepath" + "strings" + "testing" + + "github.com/mrcyjanek/simplybs/host" +) + +func chdirRepoRoot(t *testing.T) { + t.Helper() + wd, err := os.Getwd() + if err != nil { + t.Fatal(err) + } + for { + if _, err := os.Stat(filepath.Join(wd, "packages", "native", "_.json")); err == nil { + if err := os.Chdir(wd); err != nil { + t.Fatal(err) + } + return + } + parent := filepath.Dir(wd) + if parent == wd { + t.Fatal("could not find repo root (packages/native/_.json)") + } + wd = parent + } +} + +func TestAssetNameRoundTrip(t *testing.T) { + cases := []string{ + "zlib-1.3.1-deadbeef.tar.gz", + "x86_64-linux-gnu/zlib-1.3.1-deadbeef.tar.gz", + "x86_64-linux-gnu/native_foo/bar-1.0-abcd1234.info.txt", + } + for _, rel := range cases { + name := AssetNameForRel(rel) + got := RelFromAssetName(name) + if filepath.ToSlash(got) != filepath.ToSlash(rel) { + t.Fatalf("round-trip %q -> %q -> %q", rel, name, got) + } + if rel != filepath.Base(rel) && !containsPlus(name) { + t.Fatalf("expected '+' in asset name for nested path, got %q", name) + } + } +} + +func containsPlus(s string) bool { + for i := 0; i < len(s); i++ { + if s[i] == '+' { + return true + } + } + return false +} + +func TestCacheEnabledRequiresTagAndRepo(t *testing.T) { + t.Setenv("SIMPLYBS_CACHE_TAG", "") + t.Setenv("SIMPLYBS_CACHE_REPO", "") + if CacheEnabled() { + t.Fatal("expected cache disabled with neither set") + } + t.Setenv("SIMPLYBS_CACHE_TAG", "v0-sbs-test") + if CacheEnabled() { + t.Fatal("expected cache disabled with only TAG set") + } + t.Setenv("SIMPLYBS_CACHE_TAG", "") + t.Setenv("SIMPLYBS_CACHE_REPO", "owner/repo") + if CacheEnabled() { + t.Fatal("expected cache disabled with only REPO set") + } + t.Setenv("SIMPLYBS_CACHE_TAG", "v0-sbs-test") + t.Setenv("SIMPLYBS_CACHE_REPO", "owner/repo") + if !CacheEnabled() { + t.Fatal("expected cache enabled when both set") + } + if CacheTag() != "v0-sbs-test" || CacheRepo() != "owner/repo" { + t.Fatalf("CacheTag/CacheRepo = %q / %q", CacheTag(), CacheRepo()) + } +} + +func TestRequireCacheConfig(t *testing.T) { + t.Setenv("SIMPLYBS_CACHE_TAG", "") + t.Setenv("SIMPLYBS_CACHE_REPO", "owner/repo") + if _, _, err := requireCacheConfig(); err == nil { + t.Fatal("expected error when TAG missing") + } + t.Setenv("SIMPLYBS_CACHE_TAG", "v0-sbs-test") + t.Setenv("SIMPLYBS_CACHE_REPO", "") + if _, _, err := requireCacheConfig(); err == nil { + t.Fatal("expected error when REPO missing") + } + t.Setenv("SIMPLYBS_CACHE_REPO", "owner/repo") + tag, repo, err := requireCacheConfig() + if err != nil || tag != "v0-sbs-test" || repo != "owner/repo" { + t.Fatalf("got tag=%q repo=%q err=%v", tag, repo, err) + } +} + +func TestBuiltRelPathsNativeAndHost(t *testing.T) { + chdirRepoRoot(t) + t.Setenv("SIMPLYBS_DATA_DIR", t.TempDir()) + pkg, err := FindPackage("zlib") + if err != nil { + t.Fatal(err) + } + h := host.SupportedHosts["x86_64-linux-gnu"] + rels := pkg.BuiltRelPaths(h) + if len(rels) != 3 { + t.Fatalf("expected 3 paths, got %v", rels) + } + for _, rel := range rels { + if filepath.ToSlash(rel) != rel { + t.Fatalf("expected slash paths, got %q", rel) + } + if rel == filepath.Base(rel) { + t.Fatalf("host package should be under triplet dir, got %q", rel) + } + name := AssetNameForRel(rel) + if RelFromAssetName(name) != rel { + t.Fatalf("asset encoding broken for %q", rel) + } + } + + native, err := FindPackage("native/zlib") + if err != nil { + t.Fatal(err) + } + nrels := native.BuiltRelPaths(h) + for _, rel := range nrels { + if rel != filepath.Base(rel) { + t.Fatalf("native package should be flat under built/, got %q", rel) + } + } +} + +func TestNeededAssetNamesIsSelective(t *testing.T) { + chdirRepoRoot(t) + t.Setenv("SIMPLYBS_DATA_DIR", t.TempDir()) + pkg, err := FindPackage("zlib") + if err != nil { + t.Fatal(err) + } + h := host.SupportedHosts["x86_64-linux-gnu"] + names := neededAssetNames([]*Package{pkg}, h) + if len(names) < 3 { + t.Fatalf("expected at least root package assets, got %d", len(names)) + } + // Must include transitive deps, but remain far below a full-world dump. + all := GetAllPackages() + world := neededAssetNames(all, h) + if len(names) >= len(world) { + t.Fatalf("zlib tree (%d) should be smaller than world (%d)", len(names), len(world)) + } + if len(names)%3 != 0 { + t.Fatalf("asset count should be multiple of 3, got %d", len(names)) + } +} + +func TestCachePullDownloadsOnlyNeededAssets(t *testing.T) { + chdirRepoRoot(t) + dataDir := t.TempDir() + t.Setenv("SIMPLYBS_DATA_DIR", dataDir) + t.Setenv("SIMPLYBS_CACHE_TAG", "v0-sbs-test-linux-amd64") + t.Setenv("SIMPLYBS_CACHE_REPO", "owner/simplybs-cache") + + pkg, err := FindPackage("zlib") + if err != nil { + t.Fatal(err) + } + h := host.SupportedHosts["x86_64-linux-gnu"] + needed := neededAssetNames([]*Package{pkg}, h) + if len(needed) < 6 { + t.Fatalf("expected a non-trivial zlib tree, got %d assets", len(needed)) + } + + // Release contains needed assets plus a large pile of unrelated ones. + type asset struct { + Name string `json:"name"` + } + payload := struct { + Assets []asset `json:"assets"` + }{} + for _, name := range needed { + payload.Assets = append(payload.Assets, asset{Name: name}) + } + for i := 0; i < 1000; i++ { + payload.Assets = append(payload.Assets, asset{Name: fmt.Sprintf("unrelated-pkg-%d-deadbeef.tar.gz", i)}) + } + assetsPath := filepath.Join(t.TempDir(), "assets.json") + raw, err := json.Marshal(payload) + if err != nil { + t.Fatal(err) + } + if err := os.WriteFile(assetsPath, raw, 0644); err != nil { + t.Fatal(err) + } + + logPath := filepath.Join(t.TempDir(), "gh.log") + fakeGh := filepath.Join(t.TempDir(), "gh") + script := `#!/bin/bash +set -euo pipefail +echo "$*" >> "$FAKE_GH_LOG" +cmd=$1; shift +case "$cmd" in + -R) shift; cmd=$1; shift ;; +esac +case "$cmd" in + release) + sub=$1; shift + case "$sub" in + view) cat "$FAKE_GH_ASSETS" ;; + download) + pattern=""; dest="." + while [[ $# -gt 0 ]]; do + case "$1" in + -p) pattern=$2; shift 2 ;; + -D) dest=$2; shift 2 ;; + *) shift ;; + esac + done + echo "DOWNLOAD $pattern" >> "$FAKE_GH_LOG" + printf 'ok' > "$dest/$pattern" + ;; + *) echo "bad sub $sub" >&2; exit 1 ;; + esac + ;; + *) echo "bad $cmd" >&2; exit 1 ;; +esac +` + if err := os.WriteFile(fakeGh, []byte(script), 0755); err != nil { + t.Fatal(err) + } + t.Setenv("SIMPLYBS_GH", fakeGh) + t.Setenv("FAKE_GH_LOG", logPath) + t.Setenv("FAKE_GH_ASSETS", assetsPath) + + resetRemoteAssetsCache() + if err := CachePull([]*Package{pkg}, h); err != nil { + t.Fatal(err) + } + + logData, err := os.ReadFile(logPath) + if err != nil { + t.Fatal(err) + } + downloads := 0 + for _, line := range strings.Split(string(logData), "\n") { + if strings.HasPrefix(line, "DOWNLOAD ") { + downloads++ + name := strings.TrimPrefix(line, "DOWNLOAD ") + if strings.HasPrefix(name, "unrelated-pkg-") { + t.Fatalf("downloaded unrelated asset %q", name) + } + } + } + if downloads != len(needed) { + t.Fatalf("downloaded %d assets, want %d needed", downloads, len(needed)) + } + + builtRoot := filepath.Join(host.DataDir(), "built") + for _, name := range needed { + dest := filepath.Join(builtRoot, filepath.FromSlash(RelFromAssetName(name))) + if _, err := os.Stat(dest); err != nil { + t.Fatalf("missing local cache file for %s: %v", name, err) + } + } + + // Second pull should not hit release download again. + resetRemoteAssetsCache() + if err := os.WriteFile(logPath, nil, 0644); err != nil { + t.Fatal(err) + } + if err := CachePull([]*Package{pkg}, h); err != nil { + t.Fatal(err) + } + logData, err = os.ReadFile(logPath) + if err != nil { + t.Fatal(err) + } + for _, line := range strings.Split(string(logData), "\n") { + if strings.HasPrefix(line, "DOWNLOAD ") { + t.Fatalf("second pull re-downloaded %q", line) + } + } +} + +func TestTryPushPackageCacheUploadsOnlyMissing(t *testing.T) { + chdirRepoRoot(t) + dataDir := t.TempDir() + t.Setenv("SIMPLYBS_DATA_DIR", dataDir) + t.Setenv("SIMPLYBS_CACHE_TAG", "v0-sbs-test-linux-amd64") + t.Setenv("SIMPLYBS_CACHE_REPO", "owner/simplybs-cache") + + pkg, err := FindPackage("native/zlib") + if err != nil { + t.Fatal(err) + } + h := host.SupportedHosts["x86_64-linux-gnu"] + rels := pkg.BuiltRelPaths(h) + builtRoot := filepath.Join(host.DataDir(), "built") + for _, rel := range rels { + path := filepath.Join(builtRoot, filepath.FromSlash(rel)) + if err := os.MkdirAll(filepath.Dir(path), 0755); err != nil { + t.Fatal(err) + } + if err := os.WriteFile(path, []byte("payload-"+rel), 0644); err != nil { + t.Fatal(err) + } + } + + // Remote already has the .info.txt; the two archives should upload. + already := AssetNameForRel(rels[0]) + assetsPath := filepath.Join(t.TempDir(), "assets.json") + if err := os.WriteFile(assetsPath, []byte(`{"assets":[{"name":"`+already+`"}]}`), 0644); err != nil { + t.Fatal(err) + } + logPath := filepath.Join(t.TempDir(), "gh.log") + fakeGh := filepath.Join(t.TempDir(), "gh") + script := `#!/bin/bash +set -euo pipefail +echo "$*" >> "$FAKE_GH_LOG" +cmd=$1; shift +case "$cmd" in + -R) shift; cmd=$1; shift ;; +esac +case "$cmd" in + release) + sub=$1; shift + case "$sub" in + view) cat "$FAKE_GH_ASSETS" ;; + create) echo CREATE >> "$FAKE_GH_LOG" ;; + upload) + echo "UPLOAD $*" >> "$FAKE_GH_LOG" + ;; + *) echo "bad sub $sub" >&2; exit 1 ;; + esac + ;; + *) echo "bad $cmd" >&2; exit 1 ;; +esac +` + if err := os.WriteFile(fakeGh, []byte(script), 0755); err != nil { + t.Fatal(err) + } + t.Setenv("SIMPLYBS_GH", fakeGh) + t.Setenv("FAKE_GH_LOG", logPath) + t.Setenv("FAKE_GH_ASSETS", assetsPath) + + resetRemoteAssetsCache() + TryPushPackageCache(pkg, h) + + logData, err := os.ReadFile(logPath) + if err != nil { + t.Fatal(err) + } + logStr := string(logData) + if !strings.Contains(logStr, "UPLOAD ") { + t.Fatalf("expected upload, log=%s", logStr) + } + if strings.Contains(logStr, already) { + t.Fatalf("should not re-upload existing asset %s; log=%s", already, logStr) + } + wantTar := AssetNameForRel(rels[1]) + wantNative := AssetNameForRel(rels[2]) + if !strings.Contains(logStr, wantTar) || !strings.Contains(logStr, wantNative) { + t.Fatalf("expected upload of %s and %s; log=%s", wantTar, wantNative, logStr) + } + + // Second push should upload nothing. + if err := os.WriteFile(logPath, nil, 0644); err != nil { + t.Fatal(err) + } + TryPushPackageCache(pkg, h) + logData, err = os.ReadFile(logPath) + if err != nil { + t.Fatal(err) + } + if strings.Contains(string(logData), "UPLOAD ") { + t.Fatalf("second push should be a no-op, log=%s", logData) + } +} + +func TestTryPushDisabledWithoutCacheEnv(t *testing.T) { + t.Setenv("SIMPLYBS_CACHE_TAG", "") + t.Setenv("SIMPLYBS_CACHE_REPO", "") + // Must not panic / call gh when disabled. + TryPushPackageCache(&Package{Package: "zlib", Version: "1.0"}, host.SupportedHosts["x86_64-linux-gnu"]) +} + +func TestCollectNeededPackagesIncludesDeps(t *testing.T) { + chdirRepoRoot(t) + pkg, err := FindPackage("zlib") + if err != nil { + t.Fatal(err) + } + h := host.SupportedHosts["x86_64-linux-gnu"] + needed := CollectNeededPackages([]*Package{pkg}, h) + found := map[string]bool{} + for _, p := range needed { + found[p.Package] = true + } + if !found["zlib"] { + t.Fatal("missing zlib") + } + if !found["native/make"] { + t.Fatal("expected transitive native/make dependency") + } +} From 0db773d850877d106f91983a7d85e0332be350ee Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Fri, 14 Aug 2026 19:18:40 +0000 Subject: [PATCH 183/200] Document rust-std all-platforms build in AGENTS.md Co-authored-by: cyan --- AGENTS.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/AGENTS.md b/AGENTS.md index e704670..776b3bc 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -24,6 +24,36 @@ go run . -world -host -build # build everything for Supported host triplets are defined in `host/main.go` (e.g. `x86_64-linux-gnu`, `aarch64-linux-android`, `x86_64-w64-mingw32`, `aarch64-apple-darwin`). +## rust-std (all platforms) + +`rust-std` builds the Rust standard library (`library/std`, stage 1) for a +given `-host` triplet. **“All platforms”** means every entry in +`host.SupportedHosts` — pass them as a comma-separated `-host` list: + +| `-host` (simplybs triplet) | Rust target (`$RUST_TRIPLET`) | +| --- | --- | +| `x86_64-linux-gnu` | `x86_64-unknown-linux-gnu` | +| `aarch64-linux-gnu` | `aarch64-unknown-linux-gnu` | +| `x86_64-w64-mingw32` | `x86_64-pc-windows-gnu` | +| `aarch64-apple-darwin` | `aarch64-apple-darwin` | +| `x86_64-apple-darwin` | `x86_64-apple-darwin` | +| `aarch64-apple-ios` | `aarch64-apple-ios` | +| `aarch64-apple-ios-simulator` | `aarch64-apple-ios-sim` | +| `aarch64-linux-android` | `aarch64-linux-android` | +| `x86_64-linux-android` | `x86_64-linux-android` | +| `armv7a-linux-androideabi` | `armv7-linux-androideabi` | + +```bash +go run . -host \ + aarch64-apple-darwin,x86_64-apple-darwin,aarch64-apple-ios,aarch64-apple-ios-simulator,\ + x86_64-w64-mingw32,x86_64-linux-gnu,aarch64-linux-gnu,aarch64-linux-android,\ + x86_64-linux-android,armv7a-linux-androideabi \ + -package rust-std -build +``` + +Each host build is independent (separate artifact under `.buildlib/_/built/`). +Requires `native/rust` (and the full native toolchain for that target) to already be built. + ## After editing packages — always run lint Whenever you add or change a package definition (new source, new git ref, bumped From 340e50339c00f809b5c6e414b6bd683baae8b71e Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sat, 15 Aug 2026 09:30:09 +0000 Subject: [PATCH 184/200] Revert BuildStepPATH order: bin before _/bin The win commit put $NATIVEPREFIX/_/bin ahead of bin on PATH, so sh resolved to the clang seed toybox instead of native/bash. That broke perl Configure/make (and anything else probing sh from PATH). Co-authored-by: cyan --- utils/path.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/utils/path.go b/utils/path.go index 06ace3d..f84016c 100644 --- a/utils/path.go +++ b/utils/path.go @@ -210,10 +210,12 @@ func hasEnvKey(env map[string]string, key string) bool { // BuildStepPATH prefers the simplybs native toolchain, then bootstrap host // bins (seed / Git), then prefix bins. Always colon-separated for POSIX sh. +// $NATIVEPREFIX/bin (bash, etc.) must precede $NATIVEPREFIX/_/bin (clang seed +// toybox sh) so Configure scripts pick up bash for SHELL. func BuildStepPATH(nativePrefix, prefix, envPath, hostPath string) string { parts := []string{ - ToShellPath(filepath.Join(nativePrefix, "_", "bin")), ToShellPath(filepath.Join(nativePrefix, "bin")), + ToShellPath(filepath.Join(nativePrefix, "_", "bin")), } if envPath != "" { parts = append(parts, envPath) From d7aad9efbcbbef627f626b09ec1b272f615931d7 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 15 Aug 2026 11:35:10 +0200 Subject: [PATCH 185/200] cleanup --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index 2268d54..5336290 100644 --- a/README.md +++ b/README.md @@ -102,7 +102,6 @@ Cache is enabled only when **both** required variables are set: | `SIMPLYBS_GH` | no | Optional path to `gh` | ```bash -# Set by .cursor/install.sh box-wide; override if needed: # export SIMPLYBS_CACHE_TAG=v0-sbs-$USER-$(go env GOOS)-$(go env GOARCH) # export SIMPLYBS_CACHE_REPO=mrcyjanek/simplybs_private ``` From fd43c83d8f150996788347c575abe0cf78243486 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 16 Aug 2026 09:59:18 +0200 Subject: [PATCH 186/200] wip --- packages/boost@1_90_0.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/boost@1_90_0.json b/packages/boost@1_90_0.json index d69655b..5ad941a 100644 --- a/packages/boost@1_90_0.json +++ b/packages/boost@1_90_0.json @@ -26,6 +26,7 @@ ], "build": { "env": [ + "*:*-linux-gnu*:CXXFLAGS=$CXXFLAGS -fPIC", "*:*-apple-ios*:target_os=iphone", "*:*-linux-android*:target_os=android", "*:*-mingw32*:target_os=windows", From d375bd80a9a91bc33612073d71e3c0db47a0b132 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 16 Aug 2026 10:23:34 +0200 Subject: [PATCH 187/200] ugh --- packages/native/python@3.11.json | 4 ++-- packages/native/python@3.14.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/native/python@3.11.json b/packages/native/python@3.11.json index 4f196a1..7282088 100644 --- a/packages/native/python@3.11.json +++ b/packages/native/python@3.11.json @@ -33,8 +33,8 @@ "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", - "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.11 $STAGING_DIR$NATIVEPREFIX/bin/python3", - "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.11 $STAGING_DIR$NATIVEPREFIX/bin/python" + "*:*:rm -f $STAGING_DIR$NATIVEPREFIX/bin/python3 && cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.11 $STAGING_DIR$NATIVEPREFIX/bin/python3", + "*:*:rm -f $STAGING_DIR$NATIVEPREFIX/bin/python && cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.11 $STAGING_DIR$NATIVEPREFIX/bin/python" ] } } \ No newline at end of file diff --git a/packages/native/python@3.14.json b/packages/native/python@3.14.json index 3c330b9..7c30352 100644 --- a/packages/native/python@3.14.json +++ b/packages/native/python@3.14.json @@ -36,8 +36,8 @@ "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", - "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.14 $STAGING_DIR$NATIVEPREFIX/bin/python3", - "*:*:cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.14 $STAGING_DIR$NATIVEPREFIX/bin/python" + "*:*:rm -f $STAGING_DIR$NATIVEPREFIX/bin/python3 && cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.14 $STAGING_DIR$NATIVEPREFIX/bin/python3", + "*:*:rm -f $STAGING_DIR$NATIVEPREFIX/bin/python && cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.14 $STAGING_DIR$NATIVEPREFIX/bin/python" ] } } \ No newline at end of file From 0359059212d52b4a8d998de6e92ebd64321f37e6 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 16 Aug 2026 10:59:54 +0200 Subject: [PATCH 188/200] sdanojl --- packages/native/diffutils.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/native/diffutils.json b/packages/native/diffutils.json index 6598f4a..b272a29 100644 --- a/packages/native/diffutils.json +++ b/packages/native/diffutils.json @@ -12,6 +12,7 @@ "dependencies": [ "*:*:native/_/_", "*:*:native/autoconf", + "*:*:native/bash", "*:*:native/libiconv", "*:*:native/make", "*:*:native/perl" From cf71888b95038e65f324cbf0d786b08714f7a2ca Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sun, 16 Aug 2026 12:16:02 +0200 Subject: [PATCH 189/200] win --- pack/build.go | 24 +++++++++-------- .../native/_/windows_amd64_cygwin_clang.json | 2 +- packages/unbound.json | 2 +- utils/download/download.go | 7 +++-- utils/git.go | 3 ++- utils/path.go | 27 +++++++++++++------ 6 files changed, 41 insertions(+), 24 deletions(-) diff --git a/pack/build.go b/pack/build.go index b3d520a..d002ed5 100644 --- a/pack/build.go +++ b/pack/build.go @@ -240,7 +240,7 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { nativePrefix := h.GetNativeEnvPath() tmpDir := filepath.Join(nativePrefix, "_", "tmp") os.MkdirAll(tmpDir, 0755) - shell := utils.ResolveShell(nativePrefix) + shell := utils.ResolveShellForBuild(nativePrefix, buildPath) cmd := exec.Command(shell, "-c", stepCmd) cmd.Dir = buildPath pathEnv := utils.GetHostPath() @@ -253,16 +253,18 @@ func (p *Package) buildPackageInternal(h *host.Host, buildDependencies bool) { // Explicit env only — do not inherit the parent process environment. overrides := map[string]string{ - "STAGING_DIR": utils.ToShellPath(stagingPath), - "HOST": hostTriplet, - "PREFIX": utils.ToShellPath(h.GetEnvPath()), - "NATIVEPREFIX": utils.ToShellPath(nativePrefix), - "PATH": utils.BuildStepPATH(nativePrefix, h.GetEnvPath(), env["PATH"], pathEnv), - "TEMP": utils.ToShellPath(tmpDir), - "TMP": utils.ToShellPath(tmpDir), - "TMPDIR": utils.ToShellPath(tmpDir), - "CYGWIN": "nodosfilewarning", - "MSYS": "nodosfilewarning", + "STAGING_DIR": utils.ToShellPath(stagingPath), + "HOST": hostTriplet, + "PREFIX": utils.ToShellPath(h.GetEnvPath()), + "NATIVEPREFIX": utils.ToShellPath(nativePrefix), + "PATH": utils.BuildStepPATH(nativePrefix, h.GetEnvPath(), env["PATH"], pathEnv), + "TEMP": utils.ToShellPath(tmpDir), + "TMP": utils.ToShellPath(tmpDir), + "TMPDIR": utils.ToShellPath(tmpDir), + "CYGWIN": "nodosfilewarning", + "MSYS": "nodosfilewarning", + "MSYS_NO_PATHCONV": "1", + "MSYS2_ARG_CONV_EXCL": "*", } for k, v := range env { overrides[k] = v diff --git a/packages/native/_/windows_amd64_cygwin_clang.json b/packages/native/_/windows_amd64_cygwin_clang.json index b6debca..c1bc5a3 100644 --- a/packages/native/_/windows_amd64_cygwin_clang.json +++ b/packages/native/_/windows_amd64_cygwin_clang.json @@ -12,7 +12,7 @@ "build": { "steps": [ "*:*:./bin/mkdir -p $STAGING_DIR$NATIVEPREFIX/_/", - "*:*:./bin/cp -a * $STAGING_DIR$NATIVEPREFIX/_/ || true" + "*:*:./bin/cp -a bin etc include lib libexec sbin share tmp usr $STAGING_DIR$NATIVEPREFIX/_/ || true" ] } } diff --git a/packages/unbound.json b/packages/unbound.json index 0cf2aa1..86a2b7a 100644 --- a/packages/unbound.json +++ b/packages/unbound.json @@ -46,7 +46,7 @@ "*:*:patch -p1 < $PATCH_DIR/unbound/disable-glibc-reallocarray.patch", "*:*:autoconf", "*:*:./configure $config_opts", - "*:*:make -j1 $build_opts V=1", + "*:*:make -j$NUM_CORES $build_opts V=1", "*:*:make -j1 DESTDIR=$STAGING_DIR install" ] } diff --git a/utils/download/download.go b/utils/download/download.go index 6fee208..5ad6369 100644 --- a/utils/download/download.go +++ b/utils/download/download.go @@ -11,6 +11,7 @@ import ( "net/http" "net/url" "os" + "path" "path/filepath" "strconv" "strings" @@ -251,8 +252,10 @@ func URLToPath(urlStr string) (string, error) { return "", fmt.Errorf("failed to parse URL: %v", err) } - path := strings.TrimPrefix(parsedURL.Path, "/") - return filepath.Join(parsedURL.Host, path), nil + // Always slash-separated: used as a mirror URL suffix and as a relative + // cache key. Callers that need a filesystem path must filepath.FromSlash. + rel := strings.TrimPrefix(parsedURL.Path, "/") + return path.Join(parsedURL.Host, rel), nil } func DownloadFile(packageName, path, url, expectedSha256 string, isMirror bool) error { diff --git a/utils/git.go b/utils/git.go index 9562d4a..578a3fc 100644 --- a/utils/git.go +++ b/utils/git.go @@ -6,6 +6,7 @@ import ( "log" "os" "os/exec" + "path" "path/filepath" "strings" @@ -49,7 +50,7 @@ func downloadBundleFromMirrors(bundlePath, originalURL string, refs []string) er } bundleFilename := filepath.Base(bundlePath) - mirrorPath := filepath.Join(filepath.Dir(urlPath), bundleFilename) + mirrorPath := path.Join(path.Dir(urlPath), bundleFilename) mirrors := download.GetMirrors() tempFile := bundlePath + ".download.tmp" diff --git a/utils/path.go b/utils/path.go index f84016c..7500f86 100644 --- a/utils/path.go +++ b/utils/path.go @@ -137,8 +137,17 @@ func DestDirJoin(staging, prefix string) string { } // ResolveShell returns the shell used for build steps. -// Prefer Cygwin seed sh when present; otherwise Git for Windows sh. +// Prefer $NATIVEPREFIX/_/bin/sh (Cygwin seed) when present; otherwise Git. +// Do not use $NATIVEPREFIX/bin/sh — that would bypass PATH order and can pick +// the wrong shell relative to the bash we build into bin/. func ResolveShell(nativePrefix string) string { + return ResolveShellForBuild(nativePrefix, "") +} + +// ResolveShellForBuild is ResolveShell, but when buildPath contains bin/sh +// (e.g. the extracted windows cygwin seed tarball), prefer that over Git. +// Cold bootstrap has no $NATIVEPREFIX/_ yet; Git Bash would mangle /cygdrive paths. +func ResolveShellForBuild(nativePrefix, buildPath string) string { if runtime.GOOS != "windows" { return "sh" } @@ -148,15 +157,17 @@ func ResolveShell(nativePrefix string) string { candidates := []string{ filepath.Join(nativePrefix, "_", "bin", "sh.exe"), filepath.Join(nativePrefix, "_", "bin", "sh"), - // After native/_ stages tools into bin/, prefer that Cygwin sh - // over Git Bash so /cygdrive paths keep working. - filepath.Join(nativePrefix, "bin", "sh.exe"), - filepath.Join(nativePrefix, "bin", "sh"), - filepath.Join(nativePrefix, "bin", "bash.exe"), - filepath.Join(nativePrefix, "bin", "bash"), + } + if buildPath != "" { + candidates = append(candidates, + filepath.Join(buildPath, "bin", "sh.exe"), + filepath.Join(buildPath, "bin", "sh"), + ) + } + candidates = append(candidates, filepath.Join(WindowsCygwinSeedBin(), "sh.exe"), filepath.Join(WindowsCygwinSeedBin(), "sh"), - } + ) for _, b := range windowsGitBins() { candidates = append(candidates, filepath.Join(b, "sh.exe")) } From 6addb59c00c1babbbf56b66452b8ef068a27cdc8 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Mon, 10 Aug 2026 08:47:11 +0000 Subject: [PATCH 190/200] add ffmpeg n9.0 from git Static libraries only (no ffmpeg/ffprobe programs), cross-compiled from the n9.0 release commit. Stays LGPL-only: never enables gpl/nonfree/version3, and configure asserts CONFIG_GPL/NONFREE/VERSION3 remain 0. Docs/asm/autodetect off. --- packages/ffmpeg.json | 54 ++++++++++++++++++++++++++++++++++++++++++++ sources.json | 5 ++++ 2 files changed, 59 insertions(+) create mode 100644 packages/ffmpeg.json diff --git a/packages/ffmpeg.json b/packages/ffmpeg.json new file mode 100644 index 0000000..3fd2308 --- /dev/null +++ b/packages/ffmpeg.json @@ -0,0 +1,54 @@ +{ + "package": "ffmpeg", + "version": "n9.0", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "d32b387f2b0a484599d4587d651891f0c63c4238", + "url": "https://github.com/FFmpeg/FFmpeg.git" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/_", + "*:*:native/bash", + "*:*:native/coreutils", + "*:*:native/grep", + "*:*:native/make", + "*:*:native/sed" + ], + "build": { + "env": [ + "*:*-linux-gnu:ffmpeg_os=linux", + "*:*-linux-android*:ffmpeg_os=android", + "*:*-apple-*:ffmpeg_os=darwin", + "*:*-w64-mingw32:ffmpeg_os=mingw32", + "*:armv7a-*:ffmpeg_arch=arm", + "*:aarch64-*:ffmpeg_arch=aarch64", + "*:x86_64-*:ffmpeg_arch=x86_64", + "*:*:config_opts=--prefix=$PREFIX", + "*:*:config_opts=$config_opts --enable-cross-compile", + "*:*:config_opts=$config_opts --arch=$ffmpeg_arch", + "*:*:config_opts=$config_opts --target-os=$ffmpeg_os", + "*:*:config_opts=$config_opts --host-cc=$NATIVEPREFIX/_/bin/clang", + "*:*:config_opts=$config_opts --enable-static", + "*:*:config_opts=$config_opts --disable-shared", + "*:*:config_opts=$config_opts --disable-doc", + "*:*:config_opts=$config_opts --disable-autodetect", + "*:*:config_opts=$config_opts --disable-asm", + "*:*:config_opts=$config_opts --disable-programs", + "*:*-linux-gnu:config_opts=$config_opts --sysroot=$PREFIX/sysroot", + "*:*-w64-mingw32:config_opts=$config_opts --sysroot=$PREFIX/sysroot", + "*:*-apple-*:config_opts=$config_opts --sysroot=$SDK_PATH" + ], + "steps": [ + "*:*:bash ./configure $config_opts --cc=\"$CC\" --ar=\"$AR\" --ranlib=\"$RANLIB\" --strip=\"$STRIP\" --nm=\"$NM\" --extra-cflags=\"$CFLAGS\" --extra-ldflags=\"$LDFLAGS\"", + "*:*:grep -E '#define CONFIG_GPL 0' config.h", + "*:*:grep -E '#define CONFIG_NONFREE 0' config.h", + "*:*:grep -E '#define CONFIG_VERSION3 0' config.h", + "*:*:make -j$NUM_CORES", + "*:*:make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/sources.json b/sources.json index efb4c19..13e9d3f 100644 --- a/sources.json +++ b/sources.json @@ -941,6 +941,11 @@ "66979328cf3f15cecdc61ea58c9f81e6071f8983" ] }, + "https://github.com/FFmpeg/FFmpeg.git": { + "refs": [ + "d32b387f2b0a484599d4587d651891f0c63c4238" + ] + }, "https://github.com/MrCyjaneK/7zz_unzip.git": { "refs": [ "f802bc7b20bf0626d765ff3fe0ef0adb3fd93b26" From 7057f270cbb075bcba48ddd3c48fbc9c034c3c6d Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Mon, 10 Aug 2026 12:23:12 +0000 Subject: [PATCH 191/200] add whisper-cpp v1.9.2 from git Static CPU build of ggml-org/whisper.cpp without examples. Depends on ffmpeg. iOS uses deployment target 14.0. --- packages/whisper-cpp.json | 55 +++++++++++++++++++++++++++++++++++++++ sources.json | 5 ++++ 2 files changed, 60 insertions(+) create mode 100644 packages/whisper-cpp.json diff --git a/packages/whisper-cpp.json b/packages/whisper-cpp.json new file mode 100644 index 0000000..427f8b0 --- /dev/null +++ b/packages/whisper-cpp.json @@ -0,0 +1,55 @@ +{ + "package": "whisper-cpp", + "version": "v1.9.2", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "306c88f4d1286aec1bf96e544632897886af5501", + "url": "https://github.com/ggml-org/whisper.cpp.git" + } + ], + "dependencies": [ + "*:*:native/_", + "*:*:native/cmake", + "*:*:native/cmake-toolchain", + "*:*:native/make", + "*:*:native/coreutils", + "*:*:native/bash", + "*:*:ffmpeg" + ], + "build": { + "env": [ + "*:*:config_opts=-DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", + "*:*:config_opts=$config_opts -DBUILD_SHARED_LIBS=OFF", + "*:*:config_opts=$config_opts -DGGML_NATIVE=OFF", + "*:*:config_opts=$config_opts -DGGML_OPENMP=OFF", + "*:*:config_opts=$config_opts -DGGML_METAL=OFF", + "*:*:config_opts=$config_opts -DGGML_BLAS=OFF", + "*:*:config_opts=$config_opts -DGGML_ACCELERATE=OFF", + "*:*:config_opts=$config_opts -DGGML_CCACHE=OFF", + "*:*:config_opts=$config_opts -DWHISPER_BUILD_TESTS=OFF", + "*:*:config_opts=$config_opts -DWHISPER_BUILD_EXAMPLES=OFF", + "*:*:config_opts=$config_opts -DWHISPER_BUILD_SERVER=OFF", + "*:*:config_opts=$config_opts -DWHISPER_CURL=OFF", + "*:*:config_opts=$config_opts -DWHISPER_SDL2=OFF", + "*:*:config_opts=$config_opts -DWHISPER_COREML=OFF", + "*:*-apple-ios*:config_opts=$config_opts -DCMAKE_MACOSX_BUNDLE=OFF", + "*:*-apple-ios*:config_opts=$config_opts -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0", + "*:*-apple-ios*:config_opts=$config_opts -DCMAKE_OSX_ARCHITECTURES=arm64", + "*:aarch64-apple-ios:IOS_MIN_VERSION=14.0", + "*:aarch64-apple-ios-simulator:IOS_MIN_VERSION=14.0", + "*:aarch64-apple-ios:CC=$NATIVEPREFIX/bin/aarch64-apple-ios-clang -target aarch64-apple-ios -mios-version-min=14.0 -isysroot $SDK_PATH -I$PREFIX/include", + "*:aarch64-apple-ios:CXX=$NATIVEPREFIX/bin/aarch64-apple-ios-clang++ -target aarch64-apple-ios -mios-version-min=14.0 -isysroot $SDK_PATH -I$PREFIX/include", + "*:aarch64-apple-ios-simulator:CC=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang -target aarch64-apple-ios-simulator -mios-version-min=14.0 -isysroot $SDK_PATH -I$PREFIX/include", + "*:aarch64-apple-ios-simulator:CXX=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang++ -target aarch64-apple-ios-simulator -mios-version-min=14.0 -isysroot $SDK_PATH -I$PREFIX/include" + ], + "steps": [ + "*:*:cmake -S . -B build $config_opts", + "*:*:cmake --build build -j$NUM_CORES", + "*:*:cd build && make DESTDIR=$STAGING_DIR install" + ] + } +} \ No newline at end of file diff --git a/sources.json b/sources.json index 13e9d3f..5bdaa9e 100644 --- a/sources.json +++ b/sources.json @@ -999,6 +999,11 @@ "a3fef85781d3cda0b27388916f3287826aeec177" ] }, + "https://github.com/ggml-org/whisper.cpp.git": { + "refs": [ + "306c88f4d1286aec1bf96e544632897886af5501" + ] + }, "https://github.com/google/googletest.git": { "refs": [ "0a439623f75c029912728d80cb7f1b8b48739ca4", From 76c452402bc7b821bdd5df917bc14d4858ab6662 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Mon, 10 Aug 2026 14:35:21 +0000 Subject: [PATCH 192/200] add filament v1.75.0 from git Split like boost/b2: native/filament-tools installs only host tool binaries (matc/resgen/cmgen/filamesh/mipgen/uberz/glslminifier); host filament imports them via a generated ImportExecutables cmake and builds the libraries with CMAKE_TOOLCHAIN_FILE. --- packages/filament.json | 72 +++++++++++++++++++++++++++++ packages/native/filament-tools.json | 41 ++++++++++++++++ sources.json | 5 ++ 3 files changed, 118 insertions(+) create mode 100644 packages/filament.json create mode 100644 packages/native/filament-tools.json diff --git a/packages/filament.json b/packages/filament.json new file mode 100644 index 0000000..0b351f2 --- /dev/null +++ b/packages/filament.json @@ -0,0 +1,72 @@ +{ + "package": "filament", + "version": "v1.75.0", + "type": "host", + "download": [ + { + "kind": "git", + "sha256": "0e58877c09afb1aacd09ff640f74d2adcd2a7e80", + "url": "https://github.com/google/filament.git" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/_", + "*:*:native/bash", + "*:*:native/cmake", + "*:*:native/cmake-toolchain", + "*:*:native/coreutils", + "*:*:native/filament-tools", + "*:*:native/findutils", + "*:*:native/ninja", + "*:*:native/sed" + ], + "build": { + "env": [ + "*:x86_64-*:dist_arch=x86_64", + "*:aarch64-apple-*:dist_arch=arm64", + "*:aarch64-linux-*:dist_arch=aarch64", + "*:armv7a-*:dist_arch=arm", + "*:x86_64-linux-gnu:CXXFLAGS=$CXXFLAGS -Wno-error=shadow -Wno-shadow -Wno-error=undef", + "*:aarch64-linux-gnu:CXXFLAGS=$CXXFLAGS -Wno-error=shadow -Wno-shadow -Wno-error=undef -U__ARM_NEON", + "*:*-apple-*:RANLIB=$NATIVEPREFIX/bin/ranlib", + "*:*-apple-*:AR=$NATIVEPREFIX/bin/ar", + "*:*-apple-*:CXXFLAGS=$CXXFLAGS -Wno-deprecated -Wno-deprecated-declarations -Wno-error=deprecated -Wno-error=deprecated-declarations", + "*:*-apple-*:OBJCXXFLAGS=$CXXFLAGS -Wno-deprecated -Wno-deprecated-declarations -Wno-error=deprecated -Wno-error=deprecated-declarations", + "*:*-apple-ios*:config_opts_ios=-DIOS=1", + "*:*-apple-ios*:CFLAGS=$CFLAGS -DFILAMENT_IOS", + "*:*-apple-ios*:CXXFLAGS=$CXXFLAGS -DFILAMENT_IOS", + "*:*-apple-ios*:OBJCXXFLAGS=$OBJCXXFLAGS -DFILAMENT_IOS", + "*:*-apple-ios-simulator:CFLAGS=$CFLAGS -DFILAMENT_IOS_SIMULATOR -mios-version-min=13.0", + "*:*-apple-ios-simulator:CXXFLAGS=$CXXFLAGS -DFILAMENT_IOS_SIMULATOR -mios-version-min=13.0", + "*:*-apple-ios-simulator:OBJCXXFLAGS=$OBJCXXFLAGS -DFILAMENT_IOS_SIMULATOR -mios-version-min=13.0", + "*:*-apple-ios-simulator:LDFLAGS=$LDFLAGS -mios-version-min=13.0", + "*:*-apple-ios-simulator:config_opts_ios=$config_opts_ios -DCMAKE_OSX_DEPLOYMENT_TARGET=13.0", + "*:*:config_opts=-G Ninja", + "*:*:config_opts=$config_opts -DCMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$PREFIX", + "*:*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", + "*:*:config_opts=$config_opts -DDIST_ARCH=$dist_arch", + "*:*:config_opts=$config_opts -DFILAMENT_IMPORT_PREBUILT_EXECUTABLES_DIR=out", + "*:*:config_opts=$config_opts -DFILAMENT_SKIP_SAMPLES=ON", + "*:*:config_opts=$config_opts -DFILAMENT_SKIP_SDL2=ON", + "*:*:config_opts=$config_opts -DFILAMENT_BUILD_TESTING=OFF", + "*:*:config_opts=$config_opts -DFILAMENT_SUPPORTS_XCB=OFF", + "*:*:config_opts=$config_opts -DFILAMENT_SUPPORTS_XLIB=OFF", + "*:*:config_opts=$config_opts -DUSE_STATIC_LIBCXX=OFF", + "*:*-apple-ios*:config_opts=$config_opts $config_opts_ios", + "*:*-linux-gnu:config_opts=$config_opts -DFILAMENT_ENABLE_EXPERIMENTAL_GCC_SUPPORT=ON", + "*:*-linux-gnu:config_opts=$config_opts -DFILAMENT_SUPPORTS_OPENGL=OFF" + ], + "steps": [ + "*:*:mkdir -p out", + "*:*:printf '%s\\n' 'foreach(_filament_tool IN ITEMS matc cmgen filamesh mipgen resgen uberz glslminifier)' ' if(NOT TARGET ${_filament_tool})' ' add_executable(${_filament_tool} IMPORTED)' ' set_property(TARGET ${_filament_tool} APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)' ' set_target_properties(${_filament_tool} PROPERTIES IMPORTED_LOCATION_RELEASE \"'$NATIVEPREFIX'/bin/${_filament_tool}\")' ' endif()' 'endforeach()' > out/ImportExecutables-Prebuilt.cmake", + "*:*:sed -i '/add_subdirectory(\\${TOOLS}\\/cmgen)/i\\if (NOT FILAMENT_IMPORT_PREBUILT_EXECUTABLES)' CMakeLists.txt", + "*:*:sed -i '/add_subdirectory(\\${TOOLS}\\/specgen)/a\\endif()' CMakeLists.txt", + "*:*-linux-gnu:find . -name CMakeLists.txt -print0 | xargs -0 sed -i '/fstrict-vtable-pointers/d'", + "*:*:cmake -S . -B build $config_opts", + "*:*:cmake --build build -j$NUM_CORES", + "*:*:DESTDIR=$STAGING_DIR cmake --install build" + ] + } +} \ No newline at end of file diff --git a/packages/native/filament-tools.json b/packages/native/filament-tools.json new file mode 100644 index 0000000..9bdc81e --- /dev/null +++ b/packages/native/filament-tools.json @@ -0,0 +1,41 @@ +{ + "package": "native/filament-tools", + "version": "v1.75.0", + "type": "native", + "download": [ + { + "kind": "git", + "sha256": "0e58877c09afb1aacd09ff640f74d2adcd2a7e80", + "url": "https://github.com/google/filament.git" + } + ], + "dependencies": [ + "*:*:native/_/_", + "*:*:native/bash", + "*:*:native/cmake", + "*:*:native/coreutils", + "*:*:native/ninja", + "*:*:native/sed" + ], + "build": { + "env": [ + "*:*:CXXFLAGS=$CXXFLAGS -Wno-error=shadow -Wno-shadow -Wno-error=undef -Wno-invalid-constexpr -Wno-error=thread-safety-attributes -Wno-thread-safety-attributes -Wno-error=thread-safety-analysis -Wno-thread-safety-analysis", + "*:*:config_opts=-G Ninja", + "*:*:config_opts=$config_opts -DCMAKE_BUILD_TYPE=Release", + "*:*:config_opts=$config_opts -DCMAKE_INSTALL_PREFIX=$NATIVEPREFIX", + "*:*:config_opts=$config_opts -DFILAMENT_SKIP_SAMPLES=ON", + "*:*:config_opts=$config_opts -DFILAMENT_SKIP_SDL2=ON", + "*:*:config_opts=$config_opts -DFILAMENT_BUILD_TESTING=OFF", + "*:*:config_opts=$config_opts -DFILAMENT_SUPPORTS_XCB=OFF", + "*:*:config_opts=$config_opts -DFILAMENT_SUPPORTS_XLIB=OFF", + "*:*:config_opts=$config_opts -DFILAMENT_SUPPORTS_OPENGL=OFF", + "*:*:config_opts=$config_opts -DUSE_STATIC_LIBCXX=OFF" + ], + "steps": [ + "*:*:env -u CMAKE_TOOLCHAIN_FILE cmake -S . -B build $config_opts", + "*:*:cmake --build build -j$NUM_CORES --target matc resgen cmgen filamesh mipgen uberz glslminifier", + "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/bin", + "*:*:cp -a build/tools/matc/matc build/tools/resgen/resgen build/tools/cmgen/cmgen build/tools/filamesh/filamesh build/tools/mipgen/mipgen build/tools/uberz/uberz build/tools/glslminifier/glslminifier $STAGING_DIR$NATIVEPREFIX/bin/" + ] + } +} \ No newline at end of file diff --git a/sources.json b/sources.json index 5bdaa9e..2204665 100644 --- a/sources.json +++ b/sources.json @@ -1004,6 +1004,11 @@ "306c88f4d1286aec1bf96e544632897886af5501" ] }, + "https://github.com/google/filament.git": { + "refs": [ + "0e58877c09afb1aacd09ff640f74d2adcd2a7e80" + ] + }, "https://github.com/google/googletest.git": { "refs": [ "0a439623f75c029912728d80cb7f1b8b48739ca4", From 1271667c4a1f18b30d47fc3e402691eac5c13965 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Sat, 15 Aug 2026 23:26:10 +0200 Subject: [PATCH 193/200] build onnxruntime for Android (cpuinfo properties, log sink, libiconv) simplybs treats Android as Linux, so __ANDROID__ sources were skipped at CMake time. Enable the host filters and compile/link the Android pieces without setting CMAKE_SYSTEM_NAME=Android. Co-authored-by: Cursor --- packages/onnxruntime.json | 42 ++++++++++--------- .../onnxruntime/android-log-and-sink.patch | 35 ++++++++++++++++ .../cpuinfo-android-properties.patch | 11 +++++ 3 files changed, 69 insertions(+), 19 deletions(-) create mode 100644 patches/onnxruntime/android-log-and-sink.patch create mode 100644 patches/onnxruntime/cpuinfo-android-properties.patch diff --git a/packages/onnxruntime.json b/packages/onnxruntime.json index a0dec46..0645680 100644 --- a/packages/onnxruntime.json +++ b/packages/onnxruntime.json @@ -94,19 +94,21 @@ } ], "dependencies": [ - "*:{*-linux-gnu,*-apple-*}:native/_", - "*:{*-linux-gnu,*-apple-*}:native/cmake", - "*:{*-linux-gnu,*-apple-*}:native/cmake-toolchain", - "*:{*-linux-gnu,*-apple-*}:native/make", - "*:{*-linux-gnu,*-apple-*}:native/coreutils", - "*:{*-linux-gnu,*-apple-*}:native/bash", - "*:{*-linux-gnu,*-apple-*}:native/python@3.11", - "*:{*-linux-gnu,*-apple-*}:native/patch", - "*:{*-linux-gnu,*-apple-*}:native/protobuf@21.12" + "*:*:native/_", + "*:*:native/cmake", + "*:*:native/cmake-toolchain", + "*:*:native/make", + "*:*:native/coreutils", + "*:*:native/bash", + "*:*:native/python@3.11", + "*:*:native/patch", + "*:*:native/protobuf@21.12", + "*:*-android*:libiconv" ], "build": { "env": [ - "*:{*-linux-gnu,*-apple-*}:ort_extra=", + "*:*:ort_extra=", + "*:*-android*:ort_extra=Iconv_INCLUDE_DIR=$PREFIX/include Iconv_LIBRARY=$PREFIX/lib/libiconv.a", "*:aarch64-apple-darwin:ort_extra=CMAKE_OSX_ARCHITECTURES=arm64", "*:x86_64-apple-darwin:ort_extra=CMAKE_OSX_ARCHITECTURES=x86_64", "*:aarch64-apple-ios:ort_extra=CMAKE_OSX_ARCHITECTURES=arm64 CMAKE_OSX_DEPLOYMENT_TARGET=14.0", @@ -117,15 +119,17 @@ "*:aarch64-apple-ios-simulator:CXX=$NATIVEPREFIX/bin/aarch64-apple-ios-simulator-clang++ -target aarch64-apple-ios-simulator -mios-version-min=14.0 -isysroot $SDK_PATH -I$PREFIX/include" ], "steps": [ - "*:{*-linux-gnu,*-apple-*}:patch -p1 < $PATCH_DIR/onnxruntime/cstdint-optimizer-api.patch", - "*:{*-linux-gnu,*-apple-*}:patch -p1 -d deps/google_nsync < cmake/patches/nsync/nsync_1.26.0.patch", - "*:{*-linux-gnu,*-apple-*}:patch -p1 -d deps/protobuf < cmake/patches/protobuf/protobuf_cmake.patch", - "*:{*-linux-gnu,*-apple-*}:patch -p1 -d deps/flatbuffers < cmake/patches/flatbuffers/flatbuffers.patch", - "*:{*-linux-gnu,*-apple-*}:patch -p1 -d deps/onnx < cmake/patches/onnx/onnx.patch", - "*:{*-linux-gnu,*-apple-*}:./build.sh --config Release --build_shared_lib --parallel --skip_tests --allow_running_as_root --compile_no_warning_as_error --skip_submodule_sync --path_to_protoc_exe $NATIVEPREFIX/bin/protoc --cmake_extra_defines CMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE CMAKE_INSTALL_PREFIX=$PREFIX FETCHCONTENT_FULLY_DISCONNECTED=ON FETCHCONTENT_SOURCE_DIR_ABSEIL_CPP=$PWD/deps/abseil_cpp FETCHCONTENT_SOURCE_DIR_RE2=$PWD/deps/re2 FETCHCONTENT_SOURCE_DIR_GOOGLE_NSYNC=$PWD/deps/google_nsync FETCHCONTENT_SOURCE_DIR_UTF8_RANGE=$PWD/deps/utf8_range FETCHCONTENT_SOURCE_DIR_PROTOBUF=$PWD/deps/protobuf FETCHCONTENT_SOURCE_DIR_DATE=$PWD/deps/date FETCHCONTENT_SOURCE_DIR_MP11=$PWD/deps/mp11 FETCHCONTENT_SOURCE_DIR_NLOHMANN_JSON=$PWD/deps/nlohmann_json FETCHCONTENT_SOURCE_DIR_PYTORCH_CPUINFO=$PWD/deps/pytorch_cpuinfo FETCHCONTENT_SOURCE_DIR_PYTORCH_CLOG=$PWD/deps/pytorch_cpuinfo FETCHCONTENT_SOURCE_DIR_GSL=$PWD/deps/GSL FETCHCONTENT_SOURCE_DIR_SAFEINT=$PWD/deps/safeint FETCHCONTENT_SOURCE_DIR_FLATBUFFERS=$PWD/deps/flatbuffers FETCHCONTENT_SOURCE_DIR_ONNX=$PWD/deps/onnx onnxruntime_USE_PREINSTALLED_EIGEN=ON eigen_SOURCE_PATH=$PWD/deps/eigen CMAKE_POLICY_VERSION_MINIMUM=3.5 onnxruntime_BUILD_UNIT_TESTS=OFF FLATBUFFERS_BUILD_FLATC=OFF $ort_extra", - "linux_*:{*-linux-gnu,*-apple-*}:DESTDIR=$STAGING_DIR cmake --install build/Linux/Release --prefix \"$PREFIX\"", - "darwin_*:{*-linux-gnu,*-apple-*}:DESTDIR=$STAGING_DIR cmake --install build/MacOS/Release --prefix \"$PREFIX\"", - "*:{*-linux-gnu,*-apple-*}:cp -a $STAGING_DIR$PREFIX/include/onnxruntime/. $STAGING_DIR$PREFIX/include/" + "*:*:patch -p1 < $PATCH_DIR/onnxruntime/cstdint-optimizer-api.patch", + "*:*-android*:patch -p1 < $PATCH_DIR/onnxruntime/android-log-and-sink.patch", + "*:*:patch -p1 -d deps/google_nsync < cmake/patches/nsync/nsync_1.26.0.patch", + "*:*:patch -p1 -d deps/protobuf < cmake/patches/protobuf/protobuf_cmake.patch", + "*:*:patch -p1 -d deps/flatbuffers < cmake/patches/flatbuffers/flatbuffers.patch", + "*:*:patch -p1 -d deps/onnx < cmake/patches/onnx/onnx.patch", + "*:*-android*:patch -p1 -d deps/pytorch_cpuinfo < $PATCH_DIR/onnxruntime/cpuinfo-android-properties.patch", + "*:*:./build.sh --config Release --build_shared_lib --parallel --skip_tests --allow_running_as_root --compile_no_warning_as_error --skip_submodule_sync --path_to_protoc_exe $NATIVEPREFIX/bin/protoc --cmake_extra_defines CMAKE_TOOLCHAIN_FILE=$CMAKE_TOOLCHAIN_FILE CMAKE_INSTALL_PREFIX=$PREFIX FETCHCONTENT_FULLY_DISCONNECTED=ON FETCHCONTENT_SOURCE_DIR_ABSEIL_CPP=$PWD/deps/abseil_cpp FETCHCONTENT_SOURCE_DIR_RE2=$PWD/deps/re2 FETCHCONTENT_SOURCE_DIR_GOOGLE_NSYNC=$PWD/deps/google_nsync FETCHCONTENT_SOURCE_DIR_UTF8_RANGE=$PWD/deps/utf8_range FETCHCONTENT_SOURCE_DIR_PROTOBUF=$PWD/deps/protobuf FETCHCONTENT_SOURCE_DIR_DATE=$PWD/deps/date FETCHCONTENT_SOURCE_DIR_MP11=$PWD/deps/mp11 FETCHCONTENT_SOURCE_DIR_NLOHMANN_JSON=$PWD/deps/nlohmann_json FETCHCONTENT_SOURCE_DIR_PYTORCH_CPUINFO=$PWD/deps/pytorch_cpuinfo FETCHCONTENT_SOURCE_DIR_PYTORCH_CLOG=$PWD/deps/pytorch_cpuinfo FETCHCONTENT_SOURCE_DIR_GSL=$PWD/deps/GSL FETCHCONTENT_SOURCE_DIR_SAFEINT=$PWD/deps/safeint FETCHCONTENT_SOURCE_DIR_FLATBUFFERS=$PWD/deps/flatbuffers FETCHCONTENT_SOURCE_DIR_ONNX=$PWD/deps/onnx onnxruntime_USE_PREINSTALLED_EIGEN=ON eigen_SOURCE_PATH=$PWD/deps/eigen CMAKE_POLICY_VERSION_MINIMUM=3.5 onnxruntime_BUILD_UNIT_TESTS=OFF FLATBUFFERS_BUILD_FLATC=OFF $ort_extra", + "linux_*:*:DESTDIR=$STAGING_DIR cmake --install build/Linux/Release --prefix \"$PREFIX\"", + "darwin_*:*:DESTDIR=$STAGING_DIR cmake --install build/MacOS/Release --prefix \"$PREFIX\"", + "*:*:cp -a $STAGING_DIR$PREFIX/include/onnxruntime/. $STAGING_DIR$PREFIX/include/" ] } } \ No newline at end of file diff --git a/patches/onnxruntime/android-log-and-sink.patch b/patches/onnxruntime/android-log-and-sink.patch new file mode 100644 index 0000000..5f635a9 --- /dev/null +++ b/patches/onnxruntime/android-log-and-sink.patch @@ -0,0 +1,35 @@ +--- a/cmake/onnxruntime_common.cmake ++++ b/cmake/onnxruntime_common.cmake +@@ -47,7 +47,7 @@ + ) + endif() + +- if (CMAKE_SYSTEM_NAME STREQUAL "Android") ++ if (CMAKE_SYSTEM_NAME STREQUAL "Android" OR CMAKE_C_COMPILER MATCHES "android" OR "$ENV{HOST}" MATCHES "android") + list(APPEND onnxruntime_common_src_patterns + "${ONNXRUNTIME_ROOT}/core/platform/android/logging/*.h" + "${ONNXRUNTIME_ROOT}/core/platform/android/logging/*.cc" +--- a/cmake/CMakeLists.txt ++++ b/cmake/CMakeLists.txt +@@ -1676,7 +1676,7 @@ + list(APPEND onnxruntime_EXTERNAL_LIBRARIES ${ICONV_LIB} ${CMAKE_DL_LIBS} Threads::Threads) + endif() + +-if (CMAKE_SYSTEM_NAME STREQUAL "Android") ++if (CMAKE_SYSTEM_NAME STREQUAL "Android" OR CMAKE_C_COMPILER MATCHES "android" OR "$ENV{HOST}" MATCHES "android") + list(APPEND onnxruntime_EXTERNAL_LIBRARIES log) + endif() + +--- a/cmake/onnxruntime_mlas.cmake ++++ b/cmake/onnxruntime_mlas.cmake +@@ -745,8 +745,8 @@ + if(NOT WIN32) + target_link_libraries(onnxruntime_mlas_q4dq PRIVATE nsync::nsync_cpp ${CMAKE_DL_LIBS}) + endif() +- if (CMAKE_SYSTEM_NAME STREQUAL "Android") +- target_link_libraries(onnxruntime_mlas_q4dq PRIVATE ${android_shared_libs}) ++ if (CMAKE_SYSTEM_NAME STREQUAL "Android" OR CMAKE_C_COMPILER MATCHES "android" OR "$ENV{HOST}" MATCHES "android") ++ target_link_libraries(onnxruntime_mlas_q4dq PRIVATE log) + endif() + + if(WIN32) diff --git a/patches/onnxruntime/cpuinfo-android-properties.patch b/patches/onnxruntime/cpuinfo-android-properties.patch new file mode 100644 index 0000000..6b9cfee --- /dev/null +++ b/patches/onnxruntime/cpuinfo-android-properties.patch @@ -0,0 +1,11 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -211,7 +211,7 @@ + ELSEIF(IS_APPLE_OS AND CPUINFO_TARGET_PROCESSOR MATCHES "arm64.*") + LIST(APPEND CPUINFO_SRCS src/arm/mach/init.c) + ENDIF() +- IF(CMAKE_SYSTEM_NAME STREQUAL "Android") ++ IF(CMAKE_SYSTEM_NAME STREQUAL "Android" OR CMAKE_C_COMPILER MATCHES "android" OR "$ENV{HOST}" MATCHES "android") + LIST(APPEND CPUINFO_SRCS + src/arm/android/properties.c) + ENDIF() From d903cea425cdb24861cb93c2f16b297217028d8a Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sun, 16 Aug 2026 19:04:15 +0000 Subject: [PATCH 194/200] Downgrade linux-gnu ct-tools glibc to 2.41 --- packages/native/ct-tools.json | 7 ++++--- sources.json | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index cb8e6db..305d9cc 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -46,9 +46,9 @@ }, { "kind": "blob", - "path": "work/.build/tarballs/glibc-2.42.tar.xz", - "sha256": "d1775e32e4628e64ef930f435b67bb63af7599acb6be2b335b9f19f16509f17f", - "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.42.tar.xz" + "path": "work/.build/tarballs/glibc-2.41.tar.xz", + "sha256": "a5a26b22f545d6b7d7b3dd828e11e428f24f4fac43c934fb071b6a7d0828e901", + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.41.tar.xz" }, { "kind": "blob", @@ -185,6 +185,7 @@ "linux_*:x86_64-w64-mingw32:sed -i '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_MINGW_W64_PATCH_LOCAL y\\n put_new_config CT_MINGW_W64_PATCH_ORDER \"local,bundled\"\\n put_new_config CT_PATCH_USE_LOCAL y\\n put_new_config CT_LOCAL_PATCH_DIR \"'\"$(pwd)/patches\"'\"' run.sh", "windows_*:x86_64-w64-mingw32:mkdir -p patches/mingw-w64 && cp $PATCH_DIR/native/ct-tools/clang-widl-winnt.h.patch patches/mingw-w64/", "windows_*:x86_64-w64-mingw32:sed -i '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_MINGW_W64_PATCH_LOCAL y\\n put_new_config CT_MINGW_W64_PATCH_ORDER \"local,bundled\"\\n put_new_config CT_PATCH_USE_LOCAL y\\n put_new_config CT_LOCAL_PATCH_DIR \"'\"$(pwd)/patches\"'\"' run.sh", + "*:*-linux-gnu:sed -i -e 's/^CT_GLIBC_V_2_42=y$/# CT_GLIBC_V_2_42 is not set/' -e 's/^# CT_GLIBC_V_2_41 is not set$/CT_GLIBC_V_2_41=y/' -e 's/^CT_GLIBC_VERSION=\"2.42\"$/CT_GLIBC_VERSION=\"2.41\"/' -e 's/^CT_GLIBC_2_42_or_later=y$/# CT_GLIBC_2_42_or_later is not set/' -e 's/^CT_GLIBC_2_42_or_older=y$/CT_GLIBC_2_41_or_older=y/' -e 's/^CT_GLIBC_later_than_2_41=y$/# CT_GLIBC_later_than_2_41 is not set/' platforms/$TOOL_TARGET/.config", "*:{*-linux-gnu,*-w64-mingw32}:sed -i 's|install=\"./scripts/install-sh -c\"|install=\"'$NATIVEPREFIX'/bin/install -c\"|g' $NATIVEPREFIX/share/crosstool-ng/paths.sh", "*:{*-linux-gnu,*-w64-mingw32}:mkdir -p $STAGING_DIR$PREFIX", "linux_*:{*-linux-gnu,*-w64-mingw32}:env -i PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH LIBTOOL=$NATIVEPREFIX/bin/libtool AR=$NATIVEPREFIX/_/bin/llvm-ar RANLIB=$NATIVEPREFIX/_/bin/llvm-ranlib PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", diff --git a/sources.json b/sources.json index 2204665..7d42a62 100644 --- a/sources.json +++ b/sources.json @@ -1277,6 +1277,12 @@ "sha256": "a5a26b22f545d6b7d7b3dd828e11e428f24f4fac43c934fb071b6a7d0828e901", "path": ".build/tarballs/glibc-2.41.tar.xz" }, + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.41.tar.xz", + "sha256": "a5a26b22f545d6b7d7b3dd828e11e428f24f4fac43c934fb071b6a7d0828e901", + "path": "work/.build/tarballs/glibc-2.41.tar.xz" + }, { "kind": "blob", "url": "http://ftpmirror.gnu.org/gnu/glibc/glibc-2.42.tar.xz", @@ -1541,6 +1547,12 @@ "sha256": "b115ce6285dd9f3f401459912c12d28eb2e2d81e2387a71f6300aa11f7bc3288", "path": "tarballs/llvmorg-20.1.8.zip" }, + { + "kind": "blob", + "url": "https://github.com/madler/zlib/releases/download/v1.3.1/zlib-1.3.1.tar.xz", + "sha256": "38ef96b8dfe510d42707d9c781877914792541133e1870841463bfa73f883e32", + "path": "work/.build/tarballs/zlib-1.3.1.tar.xz" + }, { "kind": "blob", "url": "https://go.dev/dl/go1.25.0.darwin-arm64.tar.gz", @@ -1595,6 +1607,12 @@ "sha256": "302b78f3e1f131cfbf91b24e53a5c79e1d9234c143443ab936b9e5ad08dea5b6", "path": "patch/patch-src_dbinc_db.in" }, + { + "kind": "blob", + "url": "https://sources.voidlinux.org/musl-1.2.5/musl-1.2.5.tar.gz", + "sha256": "a9a118bbe84d8764da0ea0d28b3ab3fae8477fc7e4085d90102b8596fc7c75e4", + "path": "work/.build/tarballs/musl-1.2.5.tar.gz" + }, { "kind": "blob", "url": "https://static.rust-lang.org/dist/rust-1.90.0-aarch64-apple-darwin.tar.gz", @@ -2230,6 +2248,11 @@ "url": "https://download.savannah.gnu.org/releases/freetype/freetype-2.14.1.tar.gz", "sha256": "174d9e53402e1bf9ec7277e22ec199ba3e55a6be2c0740cb18c0ee9850fc8c34" }, + { + "kind": "tar.gz", + "url": "https://ftp.gnu.org/gnu/bash/bash-5.3.tar.gz", + "sha256": "0d5cd86965f869a26cf64f4b71be7b96f90a3ba8b3d74e27e8e9d9d5550f31ba" + }, { "kind": "tar.gz", "url": "https://github.com/HowardHinnant/date/archive/refs/tags/v3.0.1.tar.gz", @@ -2292,6 +2315,11 @@ "url": "https://github.com/libffi/libffi/releases/download/v3.5.2/libffi-3.5.2.tar.gz", "sha256": "f3a3082a23b37c293a4fcd1053147b371f2ff91fa7ea1b2a52e335676bac82dc" }, + { + "kind": "tar.gz", + "url": "https://github.com/madler/zlib/releases/download/v1.3.1/zlib-1.3.1.tar.gz", + "sha256": "9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23" + }, { "kind": "tar.gz", "url": "https://github.com/microsoft/GSL/archive/refs/tags/v4.0.0.tar.gz", @@ -2655,6 +2683,11 @@ "url": "https://github.com/MrCyjaneK/easybs/releases/download/r1/clang21-aarch64-apple-darwin.tar.xz", "sha256": "80e16711526b83f323a1014479a19a816e24f785f30dd712b5be297cc9b604e1" }, + { + "kind": "tar.xz", + "url": "https://github.com/MrCyjaneK/easybs/releases/download/r2/clang20-x86_64-windows-cygwin.tar.xz", + "sha256": "6b31052404b8c5eb9f66c48230aafa4e2947b9dc6a6048515aae67e9c33e87a6" + }, { "kind": "tar.xz", "url": "https://github.com/llvm/llvm-project/releases/download/llvmorg-19.1.7/llvm-project-19.1.7.src.tar.xz", From 72300a7f759c39001056b178411cc7f960326a8a Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 18 Aug 2026 13:56:05 +0200 Subject: [PATCH 195/200] static-link libstdc++ for onnxruntime linux-gnu builds Avoid CXXABI_1.3.15 from newer cross-GCC libstdc++ so prebuilts install on older distros (e.g. Sailfish OS). Co-authored-by: Cursor --- packages/onnxruntime.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/onnxruntime.json b/packages/onnxruntime.json index 0645680..54c45ef 100644 --- a/packages/onnxruntime.json +++ b/packages/onnxruntime.json @@ -108,6 +108,7 @@ "build": { "env": [ "*:*:ort_extra=", + "*:*-linux-gnu:ort_extra=CMAKE_SHARED_LINKER_FLAGS=-static-libstdc++", "*:*-android*:ort_extra=Iconv_INCLUDE_DIR=$PREFIX/include Iconv_LIBRARY=$PREFIX/lib/libiconv.a", "*:aarch64-apple-darwin:ort_extra=CMAKE_OSX_ARCHITECTURES=arm64", "*:x86_64-apple-darwin:ort_extra=CMAKE_OSX_ARCHITECTURES=x86_64", From 5c8da8dc333d4ef40728ddf3d73418f19ca44a58 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Thu, 20 Aug 2026 11:43:32 +0200 Subject: [PATCH 196/200] tmp -fPIC zlib --- packages/zlib.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/zlib.json b/packages/zlib.json index 8a11495..b218c4c 100644 --- a/packages/zlib.json +++ b/packages/zlib.json @@ -20,6 +20,7 @@ ], "build": { "env": [ + "*:*:CFLAGS=$CFLAGS -fPIC", "*:*:config_opts=--prefix=$PREFIX --static", "*:*:CROSS_PREFIX=$HOST-" ], From 00d46359e1e8be9e677a39708606e5ac140c5cd3 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sat, 15 Aug 2026 10:46:53 +0000 Subject: [PATCH 197/200] Fix native/python@3.11 install symlinks and add bash dep to diffutils Co-authored-by: cyan --- packages/native/diffutils.json | 2 +- packages/native/python@3.11.json | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/native/diffutils.json b/packages/native/diffutils.json index b272a29..5f29420 100644 --- a/packages/native/diffutils.json +++ b/packages/native/diffutils.json @@ -30,4 +30,4 @@ "*:*:make DESTDIR=$STAGING_DIR install" ] } -} +} \ No newline at end of file diff --git a/packages/native/python@3.11.json b/packages/native/python@3.11.json index 7282088..067d685 100644 --- a/packages/native/python@3.11.json +++ b/packages/native/python@3.11.json @@ -33,8 +33,8 @@ "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", - "*:*:rm -f $STAGING_DIR$NATIVEPREFIX/bin/python3 && cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.11 $STAGING_DIR$NATIVEPREFIX/bin/python3", - "*:*:rm -f $STAGING_DIR$NATIVEPREFIX/bin/python && cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.11 $STAGING_DIR$NATIVEPREFIX/bin/python" + "*:*:ln -sf python3.11 $STAGING_DIR$NATIVEPREFIX/bin/python3", + "*:*:ln -sf python3.11 $STAGING_DIR$NATIVEPREFIX/bin/python" ] } } \ No newline at end of file From 36677d539fb68f29282c2af0a4ca8c19c95ff8ff Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Sat, 15 Aug 2026 12:13:27 +0000 Subject: [PATCH 198/200] Fix native/python@3.14 install symlinks (same as 3.11) Co-authored-by: cyan --- packages/native/python@3.14.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/native/python@3.14.json b/packages/native/python@3.14.json index 7c30352..1fa1acc 100644 --- a/packages/native/python@3.14.json +++ b/packages/native/python@3.14.json @@ -36,8 +36,8 @@ "*:*:bash ./configure $config_opts", "*:*:make -j$NUM_CORES", "*:*:make DESTDIR=$STAGING_DIR install", - "*:*:rm -f $STAGING_DIR$NATIVEPREFIX/bin/python3 && cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.14 $STAGING_DIR$NATIVEPREFIX/bin/python3", - "*:*:rm -f $STAGING_DIR$NATIVEPREFIX/bin/python && cp -f $STAGING_DIR$NATIVEPREFIX/bin/python3.14 $STAGING_DIR$NATIVEPREFIX/bin/python" + "*:*:ln -sf python3.14 $STAGING_DIR$NATIVEPREFIX/bin/python3", + "*:*:ln -sf python3.14 $STAGING_DIR$NATIVEPREFIX/bin/python" ] } } \ No newline at end of file From e127d31851a063b4da454e18a90d1dbd09f71bb6 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Thu, 27 Aug 2026 16:29:05 +0000 Subject: [PATCH 199/200] Run go run . -lint (reformat package JSON) Co-authored-by: mrcyjanek --- packages/libpsl.json | 2 +- packages/native/_/_.json | 2 +- packages/native/_/windows_amd64_cygwin_clang.json | 2 +- packages/native/bash.json | 2 +- packages/native/bzip2.json | 3 +-- packages/native/coreutils.json | 2 +- packages/native/file.json | 3 +-- packages/native/findutils.json | 2 +- packages/native/gawk.json | 2 +- packages/native/grep.json | 2 +- packages/native/gzip.json | 2 +- packages/native/libpsl.json | 2 +- packages/native/libtapi.json | 2 +- packages/native/m4.json | 3 +-- packages/native/make.json | 2 +- packages/native/perl.json | 5 ++--- packages/native/tar.json | 2 +- 17 files changed, 18 insertions(+), 22 deletions(-) diff --git a/packages/libpsl.json b/packages/libpsl.json index fda7bf4..c4622d8 100644 --- a/packages/libpsl.json +++ b/packages/libpsl.json @@ -24,4 +24,4 @@ "*:*:make DESTDIR=$STAGING_DIR install" ] } -} +} \ No newline at end of file diff --git a/packages/native/_/_.json b/packages/native/_/_.json index 1f79f6a..49eedf2 100644 --- a/packages/native/_/_.json +++ b/packages/native/_/_.json @@ -75,4 +75,4 @@ "windows_amd64:*:$NATIVEPREFIX/_/bin/cp -a $NATIVEPREFIX $STAGING_DIR$NATIVEPREFIX" ] } -} +} \ No newline at end of file diff --git a/packages/native/_/windows_amd64_cygwin_clang.json b/packages/native/_/windows_amd64_cygwin_clang.json index c1bc5a3..c862441 100644 --- a/packages/native/_/windows_amd64_cygwin_clang.json +++ b/packages/native/_/windows_amd64_cygwin_clang.json @@ -15,4 +15,4 @@ "*:*:./bin/cp -a bin etc include lib libexec sbin share tmp usr $STAGING_DIR$NATIVEPREFIX/_/ || true" ] } -} +} \ No newline at end of file diff --git a/packages/native/bash.json b/packages/native/bash.json index 4ffaac9..92cd1a7 100644 --- a/packages/native/bash.json +++ b/packages/native/bash.json @@ -26,4 +26,4 @@ "windows_amd64:*:test -f $STAGING_DIR$NATIVEPREFIX/bin/bash.exe && cp -f $STAGING_DIR$NATIVEPREFIX/bin/bash.exe $STAGING_DIR$NATIVEPREFIX/bin/sh.exe || true" ] } -} +} \ No newline at end of file diff --git a/packages/native/bzip2.json b/packages/native/bzip2.json index a42192a..4a26d81 100644 --- a/packages/native/bzip2.json +++ b/packages/native/bzip2.json @@ -17,8 +17,7 @@ "*:*:native/sed" ], "build": { - "env": [ - ], + "env": [], "steps": [ "*:*:sed -i.bak 's/-Wall/-Wall -fPIC/' Makefile", "*:*:make -j$NUM_CORES CC=\"$CC\"", diff --git a/packages/native/coreutils.json b/packages/native/coreutils.json index 0ec0cd7..94006bd 100644 --- a/packages/native/coreutils.json +++ b/packages/native/coreutils.json @@ -27,4 +27,4 @@ "*:*:DESTDIR=$STAGING_DIR make install" ] } -} +} \ No newline at end of file diff --git a/packages/native/file.json b/packages/native/file.json index 3c66c20..ab6624a 100644 --- a/packages/native/file.json +++ b/packages/native/file.json @@ -15,8 +15,7 @@ "*:*:native/make" ], "build": { - "env": [ - ], + "env": [], "steps": [ "*:*:bash ./configure --prefix=$NATIVEPREFIX", "*:*:make -j$NUM_CORES", diff --git a/packages/native/findutils.json b/packages/native/findutils.json index bab03f7..d7d9da5 100644 --- a/packages/native/findutils.json +++ b/packages/native/findutils.json @@ -28,4 +28,4 @@ "*:*:DESTDIR=$STAGING_DIR make install" ] } -} +} \ No newline at end of file diff --git a/packages/native/gawk.json b/packages/native/gawk.json index 55f2a1b..761b803 100644 --- a/packages/native/gawk.json +++ b/packages/native/gawk.json @@ -36,4 +36,4 @@ "*:*:make DESTDIR=$STAGING_DIR install" ] } -} +} \ No newline at end of file diff --git a/packages/native/grep.json b/packages/native/grep.json index e0c63e2..35c0c8a 100644 --- a/packages/native/grep.json +++ b/packages/native/grep.json @@ -26,4 +26,4 @@ "*:*:make DESTDIR=$STAGING_DIR install" ] } -} +} \ No newline at end of file diff --git a/packages/native/gzip.json b/packages/native/gzip.json index c169971..9426a46 100644 --- a/packages/native/gzip.json +++ b/packages/native/gzip.json @@ -26,4 +26,4 @@ "*:*:make DESTDIR=$STAGING_DIR install" ] } -} +} \ No newline at end of file diff --git a/packages/native/libpsl.json b/packages/native/libpsl.json index 40202c8..6b640b9 100644 --- a/packages/native/libpsl.json +++ b/packages/native/libpsl.json @@ -36,4 +36,4 @@ "windows_*:*:make DESTDIR=$STAGING_DIR -C tools install" ] } -} +} \ No newline at end of file diff --git a/packages/native/libtapi.json b/packages/native/libtapi.json index 1b7d674..5029d1b 100644 --- a/packages/native/libtapi.json +++ b/packages/native/libtapi.json @@ -9,7 +9,7 @@ "url": "https://github.com/tpoechtrager/apple-libtapi.git" } ], - "dependencies": [ + "dependencies": [ "*:*:native/_/_", "*:*:native/bash", "*:*:native/cmake", diff --git a/packages/native/m4.json b/packages/native/m4.json index 8e9c3de..6153650 100644 --- a/packages/native/m4.json +++ b/packages/native/m4.json @@ -16,8 +16,7 @@ "*:*:native/sed" ], "build": { - "env": [ - ], + "env": [], "steps": [ "*:*:bash ./configure --prefix=$NATIVEPREFIX --disable-nls", "*:*:sed -i.bak 's/^run.*automake.*/exit 0/' build-aux/missing", diff --git a/packages/native/make.json b/packages/native/make.json index 8fca79c..d109ce8 100644 --- a/packages/native/make.json +++ b/packages/native/make.json @@ -29,4 +29,4 @@ "windows_amd64:*:cp -f $STAGING_DIR$NATIVEPREFIX/bin/make.exe $STAGING_DIR$NATIVEPREFIX/bin/gnumake.exe" ] } -} +} \ No newline at end of file diff --git a/packages/native/perl.json b/packages/native/perl.json index 13bbac6..2bfa20a 100644 --- a/packages/native/perl.json +++ b/packages/native/perl.json @@ -16,8 +16,7 @@ "*:*:native/sed" ], "build": { - "env": [ - ], + "env": [], "steps": [ "*:*:mkdir -p $STAGING_DIR$NATIVEPREFIX/lib $NATIVEPREFIX/lib", "*:*:sed -i.bak '/^#ifndef PERL_BUILD_DATE$/,/^#endif$/{/^#ifndef PERL_BUILD_DATE$/!d; s/.*/\\#define PERL_BUILD_DATE \"Jan 1 1970 00:00:01\"/;}' perl.c", @@ -32,4 +31,4 @@ "*:*:make DESTDIR=$STAGING_DIR install CC=$CC" ] } -} +} \ No newline at end of file diff --git a/packages/native/tar.json b/packages/native/tar.json index 95371ed..a298688 100644 --- a/packages/native/tar.json +++ b/packages/native/tar.json @@ -27,4 +27,4 @@ "*:*:make DESTDIR=$STAGING_DIR install" ] } -} +} \ No newline at end of file From 75b490aafc95ba2a52dc80270d2aa36638a309f7 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Thu, 27 Aug 2026 16:36:09 +0000 Subject: [PATCH 200/200] Pin *-linux-gnu ct-tools to GCC 13.4.0 (CXXABI 1.3.14) Keep mingw on GCC 15.2.0. Crosstool-ng 1.28 maps CT_GCC_V_13 to 13.4.0. Co-authored-by: mrcyjanek --- packages/native/_.json | 2 +- packages/native/ct-tools.json | 7 +++++++ packages/rust-std.json | 8 ++++---- sources.json | 6 ++++++ 4 files changed, 18 insertions(+), 5 deletions(-) diff --git a/packages/native/_.json b/packages/native/_.json index 2e6d3a3..045bd28 100644 --- a/packages/native/_.json +++ b/packages/native/_.json @@ -136,7 +136,7 @@ "*:*-linux-gnu:CC=$NATIVEPREFIX/bin/$HOST-gcc", "*:*-linux-gnu:CXX=$NATIVEPREFIX/bin/$HOST-g++", "*:*-linux-gnu:CFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", - "*:*-linux-gnu:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/$HOST -I$PREFIX/usr/include", + "*:*-linux-gnu:CXXFLAGS=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/13.4.0 -I$PREFIX/include/c++/13.4.0/$HOST -I$PREFIX/usr/include", "*:*-linux-gnu:CPPFLAGS=-I$PREFIX/include -I$PREFIX/usr/include", "*:*-linux-gnu:LDFLAGS=--sysroot=$PREFIX/sysroot -L$PREFIX/lib -L$PREFIX/usr/lib", "*:*-linux-gnu:AR=$NATIVEPREFIX/bin/$HOST-ar", diff --git a/packages/native/ct-tools.json b/packages/native/ct-tools.json index 305d9cc..591dd95 100644 --- a/packages/native/ct-tools.json +++ b/packages/native/ct-tools.json @@ -32,6 +32,12 @@ "sha256": "438fd996826b0c82485a29da03a72d71d6e3541a83ec702df4271f6fe025d24e", "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-15.2.0/gcc-15.2.0.tar.xz" }, + { + "kind": "blob", + "path": "work/.build/tarballs/gcc-13.4.0.tar.xz", + "sha256": "9c4ce6dbb040568fdc545588ac03c5cbc95a8dbf0c7aa490170843afb59ca8f5", + "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-13.4.0/gcc-13.4.0.tar.xz" + }, { "kind": "blob", "path": "work/.build/tarballs/gdb-16.3.tar.xz", @@ -186,6 +192,7 @@ "windows_*:x86_64-w64-mingw32:mkdir -p patches/mingw-w64 && cp $PATCH_DIR/native/ct-tools/clang-widl-winnt.h.patch patches/mingw-w64/", "windows_*:x86_64-w64-mingw32:sed -i '/put_new_config CT_MINGW_DEFAULT_MSVCRT_UCRT y/a\\ put_new_config CT_MINGW_W64_PATCH_LOCAL y\\n put_new_config CT_MINGW_W64_PATCH_ORDER \"local,bundled\"\\n put_new_config CT_PATCH_USE_LOCAL y\\n put_new_config CT_LOCAL_PATCH_DIR \"'\"$(pwd)/patches\"'\"' run.sh", "*:*-linux-gnu:sed -i -e 's/^CT_GLIBC_V_2_42=y$/# CT_GLIBC_V_2_42 is not set/' -e 's/^# CT_GLIBC_V_2_41 is not set$/CT_GLIBC_V_2_41=y/' -e 's/^CT_GLIBC_VERSION=\"2.42\"$/CT_GLIBC_VERSION=\"2.41\"/' -e 's/^CT_GLIBC_2_42_or_later=y$/# CT_GLIBC_2_42_or_later is not set/' -e 's/^CT_GLIBC_2_42_or_older=y$/CT_GLIBC_2_41_or_older=y/' -e 's/^CT_GLIBC_later_than_2_41=y$/# CT_GLIBC_later_than_2_41 is not set/' platforms/$TOOL_TARGET/.config", + "*:*-linux-gnu:sed -i -e 's/^CT_GCC_V_15=y$/# CT_GCC_V_15 is not set/' -e 's/^# CT_GCC_V_13 is not set$/CT_GCC_V_13=y/' -e 's/^CT_GCC_VERSION=\"15.2.0\"$/CT_GCC_VERSION=\"13.4.0\"/' -e 's/^CT_GCC_later_than_15=y$/# CT_GCC_later_than_15 is not set/' -e 's/^CT_GCC_15_or_later=y$/# CT_GCC_15_or_later is not set/' -e 's/^CT_GCC_later_than_14=y$/# CT_GCC_later_than_14 is not set/' -e 's/^CT_GCC_14_or_later=y$/# CT_GCC_14_or_later is not set/' -e 's/^CT_GCC_later_than_13=y$/# CT_GCC_later_than_13 is not set/' platforms/$TOOL_TARGET/.config", "*:{*-linux-gnu,*-w64-mingw32}:sed -i 's|install=\"./scripts/install-sh -c\"|install=\"'$NATIVEPREFIX'/bin/install -c\"|g' $NATIVEPREFIX/share/crosstool-ng/paths.sh", "*:{*-linux-gnu,*-w64-mingw32}:mkdir -p $STAGING_DIR$PREFIX", "linux_*:{*-linux-gnu,*-w64-mingw32}:env -i PATH=$NATIVEPREFIX/bin:$NATIVEPREFIX/_/bin:$PATH LIBTOOL=$NATIVEPREFIX/bin/libtool AR=$NATIVEPREFIX/_/bin/llvm-ar RANLIB=$NATIVEPREFIX/_/bin/llvm-ranlib PREFIX=$(realpath $STAGING_DIR$PREFIX) ./run.sh $TOOL_TARGET", diff --git a/packages/rust-std.json b/packages/rust-std.json index ecd2859..cfb80d1 100644 --- a/packages/rust-std.json +++ b/packages/rust-std.json @@ -319,22 +319,22 @@ "darwin_arm64:*:SDKROOT=$NATIVEPREFIX/_/SDK/MacOSX26.1.sdk", "darwin_arm64:*:CXXFLAGS=-fPIC -stdlib=libc++", "darwin_*:x86_64-linux-gnu:CFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", - "darwin_*:x86_64-linux-gnu:CXXFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/$HOST -I$PREFIX/usr/include", + "darwin_*:x86_64-linux-gnu:CXXFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/13.4.0 -I$PREFIX/include/c++/13.4.0/$HOST -I$PREFIX/usr/include", "darwin_*:x86_64-linux-gnu:LDFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -L$PREFIX/lib -L$PREFIX/usr/lib", "darwin_*:aarch64-linux-gnu:CFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", - "darwin_*:aarch64-linux-gnu:CXXFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/$HOST -I$PREFIX/usr/include", + "darwin_*:aarch64-linux-gnu:CXXFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/13.4.0 -I$PREFIX/include/c++/13.4.0/$HOST -I$PREFIX/usr/include", "darwin_*:aarch64-linux-gnu:LDFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -L$PREFIX/lib -L$PREFIX/usr/lib", "darwin_*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/$HOST-gcc", "darwin_*:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", "darwin_*:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/$HOST-gcc", "darwin_*:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", "linux_amd64:aarch64-linux-gnu:CFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", - "linux_amd64:aarch64-linux-gnu:CXXFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/$HOST -I$PREFIX/usr/include", + "linux_amd64:aarch64-linux-gnu:CXXFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/13.4.0 -I$PREFIX/include/c++/13.4.0/$HOST -I$PREFIX/usr/include", "linux_amd64:aarch64-linux-gnu:LDFLAGS_aarch64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -L$PREFIX/lib -L$PREFIX/usr/lib", "linux_amd64:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/$HOST-gcc", "linux_amd64:aarch64-linux-gnu:CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", "linux_arm64:x86_64-linux-gnu:CFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/usr/include", - "linux_arm64:x86_64-linux-gnu:CXXFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/15.2.0 -I$PREFIX/include/c++/15.2.0/$HOST -I$PREFIX/usr/include", + "linux_arm64:x86_64-linux-gnu:CXXFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -I$PREFIX/include -I$PREFIX/include/c++/13.4.0 -I$PREFIX/include/c++/13.4.0/$HOST -I$PREFIX/usr/include", "linux_arm64:x86_64-linux-gnu:LDFLAGS_x86_64_unknown_linux_gnu=--sysroot=$PREFIX/sysroot -L$PREFIX/lib -L$PREFIX/usr/lib", "linux_arm64:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER=$NATIVEPREFIX/bin/$HOST-gcc", "linux_arm64:x86_64-linux-gnu:CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS=-Clink-arg=--sysroot=$PREFIX/sysroot -Clink-arg=-L$PREFIX/lib -Clink-arg=-L$PREFIX/usr/lib", diff --git a/sources.json b/sources.json index 7d42a62..290861c 100644 --- a/sources.json +++ b/sources.json @@ -1205,6 +1205,12 @@ } }, "downloads": [ + { + "kind": "blob", + "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-13.4.0/gcc-13.4.0.tar.xz", + "sha256": "9c4ce6dbb040568fdc545588ac03c5cbc95a8dbf0c7aa490170843afb59ca8f5", + "path": "work/.build/tarballs/gcc-13.4.0.tar.xz" + }, { "kind": "blob", "url": "http://ftpmirror.gnu.org/gnu/gcc/gcc-14.2.0/gcc-14.2.0.tar.xz",