diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-05-18 22:00:52 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-05-18 22:06:00 +0900 |
| commit | 594221eb78fede12840121982782a470e6ed29d0 (patch) | |
| tree | 84142dce80eb59e4b8b0a2babad2777de5c37c85 /internal/rosa/package/gnu.az | |
| parent | 34822925e18cb35e1815d3837a8b55169953d876 (diff) | |
internal/rosa/package: migrate gnutls
This is the first nontrivial package to be migrated to azalea. Validated to generate identical IR.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/rosa/package/gnu.az')
| -rw-r--r-- | internal/rosa/package/gnu.az | 664 |
1 files changed, 664 insertions, 0 deletions
diff --git a/internal/rosa/package/gnu.az b/internal/rosa/package/gnu.az new file mode 100644 index 00000000..3dc7074f --- /dev/null +++ b/internal/rosa/package/gnu.az @@ -0,0 +1,664 @@ +// GNU software with trivial packaging. + +package m4 { + description = "a macro processor with GNU extensions"; + website = "https://www.gnu.org/software/m4"; + anitya = 1871; + + version* = "1.4.21"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/m4/m4-"+version+".tar.bz2"; + checksum = "pPa6YOo722Jw80l1OsH1tnUaklnPFjFT-bxGw5iAVrZTm1P8FQaWao_NXop46-pm"; + compress = bzip2; + }; + + writable = true; + early = ` +chmod +w tests/test-c32ispunct.sh && echo '#!/bin/sh' > tests/test-c32ispunct.sh +`; + + exec = make {}; + + inputs = [ + diffutils, + + kernel-headers, + ]; +} + +package autoconf { + description = "M4 macros to produce self-contained configure script"; + website = "https://www.gnu.org/software/autoconf"; + anitya = 141; + + version* = "2.73"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/autoconf/autoconf-"+version+".tar.gz"; + checksum = "yGabDTeOfaCUB0JX-h3REYLYzMzvpDwFmFFzHNR7QilChCUNE4hR6q7nma4viDYg"; + compress = gzip; + }; + + // test suite is very expensive + exclusive = true; + + exec = make { + check = [ + "TESTSUITEFLAGS=" + jobsFlagE, + "check", + ]; + }; + + inputs = [ + m4, + perl, + bash, + diffutils, + ]; + + runtime = [ + m4, + perl, + ]; +} + +package automake { + description = "a tool for automatically generating Makefile.in files"; + website = "https://www.gnu.org/software/automake"; + anitya = 144; + + version* = "1.18.1"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/automake/automake-"+version+".tar.gz"; + checksum = "FjvLG_GdQP7cThTZJLDMxYpRcKdpAVG-YDs1Fj1yaHlSdh_Kx6nRGN14E0r_BjcG"; + compress = gzip; + }; + + writable = true; + early = ` +test_disable() { chmod +w "$2" && echo "$1" > "$2"; } + +test_disable '#!/bin/sh' t/objcxx-minidemo.sh +test_disable '#!/bin/sh' t/objcxx-deps.sh + +test_disable '#!/bin/sh' t/dist-no-built-sources.sh +test_disable '#!/bin/sh' t/distname.sh +test_disable '#!/bin/sh' t/pr9.sh +`; + + exec = make {}; + + inputs = [ + grep, + gzip, + autoconf, + diffutils, + ]; + + runtime = [ autoconf ]; +} + +package libtool { + description = "a generic library support script"; + website = "https://www.gnu.org/software/libtool"; + anitya = 1741; + + version* = "2.5.4"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/libtool/libtool-"+version+".tar.gz"; + checksum = "pa6LSrQggh8mSJHQfwGjysAApmZlGJt8wif2cCLzqAAa2jpsTY0jZ-6stS3BWZ2Q"; + compress = gzip; + }; + + exec = make { + // _Z2a2c: symbol not found + skipEarlyStageCheck = true; + + check = [ + "TESTSUITEFLAGS=" + jobsFlagE, + "check", + ]; + }; + + inputs = [ + m4, + diffutils, + ]; +} + +package gzip { + description = "a popular data compression program"; + website = "https://www.gnu.org/software/gzip"; + anitya = 1290; + + version* = "1.14"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/gzip/gzip-"+version+".tar.gz"; + checksum = "NWhjUavnNfTDFkZJyAUonL9aCOak8GVajWX2OMlzpFnuI0ErpBFyj88mz2xSjz0q"; + compress = gzip; + }; + + exec = make { + // dependency loop + skipCheck = true; + }; +} + +package sed { + description = "a non-interactive command-line text editor"; + website = "https://www.gnu.org/software/sed"; + anitya = 4789; + + version* = "4.10"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/sed/sed-"+version+".tar.gz"; + checksum = "TXTRFQJCyflb-bpBRI2S5Y1DpplwvT7-KfXtpqN4AdZgZ5OtI6yStn1-bkhDKx51"; + compress = gzip; + }; + + exec = make {}; + + inputs = [ + diffutils, + + kernel-headers, + ]; +} + +package diffutils { + description = "several programs related to finding differences between files"; + website = "https://www.gnu.org/software/diffutils"; + anitya = 436; + + version* = "3.12"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/diffutils/diffutils-"+version+".tar.gz"; + checksum = "9J5VAq5oA7eqwzS1Yvw-l3G5o-TccUrNQR3PvyB_lgdryOFAfxtvQfKfhdpquE44"; + compress = gzip; + }; + + writable = true; + early = ` +test_disable() { chmod +w "$2" && echo "$1" > "$2"; } + +test_disable '#!/bin/sh' gnulib-tests/test-c32ispunct.sh +test_disable 'int main(){return 0;}' gnulib-tests/test-c32ispunct.c +test_disable '#!/bin/sh' tests/cmp +`; + + toyboxEarly = true; + exec = make {}; +} + +package patch { + description = "a program to apply diff output to files"; + website = "https://savannah.gnu.org/projects/patch"; + anitya = 2597; + + version* = "2.8"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/patch/patch-"+version+".tar.gz"; + checksum = "MA0BQc662i8QYBD-DdGgyyfTwaeALZ1K0yusV9rAmNiIsQdX-69YC4t9JEGXZkeR"; + compress = gzip; + }; + + writable = true; + early = ` +test_disable() { chmod +w "$2" && echo "$1" > "$2"; } + +test_disable '#!/bin/sh' tests/ed-style +test_disable '#!/bin/sh' tests/need-filename +`; + + toyboxEarly = true; + exec = make {}; +} + +package gawk { + description = "an implementation of awk with GNU extensions"; + website = "https://www.gnu.org/software/gawk"; + anitya = 868; + + version* = "5.4.0"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/gawk/gawk-"+version+".tar.gz"; + checksum = "m0RkIolC-PI7EY5q8pcx5Y-0twlIW0Yp3wXXmV-QaHorSdf8BhZ7kW9F8iWomz0C"; + compress = gzip; + }; + + toyboxEarly = true; + exec = make { + // dependency loop + skipCheck = true; + }; +} + +package grep { + description = "searches input for lines containing a match to a pattern"; + website = "https://www.gnu.org/software/grep"; + anitya = 1251; + + version* = "3.12"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/grep/grep-"+version+".tar.gz"; + checksum = "qMB4RjaPNRRYsxix6YOrjE8gyAT1zVSTy4nW4wKW9fqa0CHYAuWgPwDTirENzm_1"; + compress = gzip; + }; + + writable = true; + early = ` +test_disable() { chmod +w "$2" && echo "$1" > "$2"; } + +test_disable '#!/bin/sh' gnulib-tests/test-c32ispunct.sh +test_disable 'int main(){return 0;}' gnulib-tests/test-c32ispunct.c +`; + + exec = make {}; + + inputs = [ diffutils ]; +} + +package gettext { + description = "tools for producing multi-lingual messages"; + website = "https://www.gnu.org/software/gettext"; + anitya = 898; + + version* = "1.0"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/gettext/gettext-"+version+".tar.gz"; + checksum = "3MasKeEdPeFEgWgzsBKk7JqWqql1wEMbgPmzAfs-mluyokoW0N8oQVxPQoOnSdgC"; + compress = gzip; + }; + + writable = true; + early = ` +test_disable() { chmod +w "$2" && echo "$1" > "$2"; } + +test_disable '#!/bin/sh' gettext-tools/tests/msgcat-22 +test_disable '#!/bin/sh' gettext-tools/tests/msgconv-2 +test_disable '#!/bin/sh' gettext-tools/tests/msgconv-8 +test_disable '#!/bin/sh' gettext-tools/tests/xgettext-python-3 +test_disable '#!/bin/sh' gettext-tools/tests/msgmerge-compendium-6 +test_disable '#!/bin/sh' gettext-tools/tests/gettextpo-1 +test_disable '#!/bin/sh' gettext-tools/tests/format-c-5 +test_disable '#!/bin/sh' gettext-tools/gnulib-tests/test-c32ispunct.sh +test_disable 'int main(){return 0;}' gettext-tools/gnulib-tests/test-stdcountof-h.c + +touch gettext-tools/autotools/archive.dir.tar +`; + + exec = make {}; + + inputs = [ + diffutils, + gzip, + sed, + + kernel-headers, + ]; +} + +package findutils { + description = "the basic directory searching utilities"; + website = "https://www.gnu.org/software/findutils"; + anitya = 812; + + version* = "4.10.0"; + source = remoteFile { + url = "https://ftpmirror.gnu.org/gnu/findutils/findutils-"+version+".tar.xz"; + checksum = "ZXABdNBQXL7QjTygynRRTdXYWxQKZ0Wn5eMd3NUnxR0xaS0u0VfcKoTlbo50zxv6"; + }; + + early = ` +echo '#!/bin/sh' > gnulib-tests/test-c32ispunct.sh +echo 'int main(){return 0;}' > tests/xargs/test-sigusr.c +`; + + exec = make {}; + + inputs = [ + diffutils, + xz, + sed, + ]; +} + +package bash { + description = "the Bourne Again SHell"; + website = "https://www.gnu.org/software/bash"; + anitya = 166; + + version* = "5.3"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/bash/bash-"+version+".tar.gz"; + checksum = "4LQ_GRoB_ko-Ih8QPf_xRKA02xAm_TOxQgcJLmFDT6udUPxTAWrsj-ZNeuTusyDq"; + compress = gzip; + }; + + toyboxEarly = true; + exec = make { + configure = { + "without-bash-malloc"; + }; + postInstall = "ln -s bash /work/system/bin/sh\n"; + }; +} + +package coreutils { + description = "the basic file, shell and text manipulation utilities"; + website = "https://www.gnu.org/software/coreutils"; + anitya = 343; + + version* = "9.11"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/coreutils/coreutils-"+version+".tar.gz"; + checksum = "t8UMed5wpFEoC56aa42_yidfOAaRGzOfj7MRtQkkqgGbpXiskNA8bd-EmVSQkZie"; + compress = gzip; + }; + + toyboxEarly = true; + writable = true; + early = ` +test_disable() { chmod +w "$2" && echo "$1" > "$2"; } + +test_disable '#!/bin/sh' gnulib-tests/test-c32ispunct.sh +test_disable '#!/bin/sh' tests/ls/hyperlink.sh +test_disable '#!/bin/sh' tests/misc/user.sh +test_disable 'int main(){return 0;}' gnulib-tests/test-chown.c +test_disable 'int main(){return 0;}' gnulib-tests/test-fchownat.c +test_disable 'int main(){return 0;}' gnulib-tests/test-lchown.c +`; + + exec = make { + configure = { + "enable-single-binary": "symlinks"; + }; + }; + + inputs = [ + perl, + bash, + + kernel-headers, + ]; +} + +package tar { + description = "provides the ability to create tar archives"; + website = "https://www.gnu.org/software/tar"; + anitya = 4939; + + version* = "1.35"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/tar/tar-"+version+".tar.gz"; + checksum = "zSaoSlVUDW0dSfm4sbL4FrXLFR8U40Fh3zY5DWhR5NCIJ6GjU6Kc4VZo2-ZqpBRA"; + compress = gzip; + }; + + exec = make { + configure = { + "disable-acl"; + "without-posix-acls"; + "without-xattrs"; + }; + + check = [ + // very expensive + "TARTEST_SKIP_LARGE_FILES=1", + + "TESTSUITEFLAGS=" + jobsFlagE, + "check", + ]; + }; + + inputs = [ + diffutils, + + gzip, + bzip2, + zstd, + ]; +} + +package texinfo { + description = "the GNU square-wheel-reinvension of man pages"; + website = "https://www.gnu.org/software/texinfo"; + anitya = 4958; + + version* = "7.3"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/texinfo/texinfo-"+version+".tar.gz"; + checksum = "RRmC8Xwdof7JuZJeWGAQ_GeASIHAuJFQMbNONXBz5InooKIQGmqmWRjGNGEr5n4-"; + compress = gzip; + }; + + exec = make { + // nonstandard glibc extension + skipCheck = true; + }; + + inputs = [ perl ]; + + runtime = [ + perl, + gawk, + ]; +} + +package gperf { + description = "a perfect hash function generator"; + website = "https://www.gnu.org/software/gperf"; + anitya = 1237; + + version* = "3.3"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gperf/gperf-"+version+".tar.gz"; + checksum = "RtIy9pPb_Bb8-31J2Nw-rRGso2JlS-lDlVhuNYhqR7Nt4xM_nObznxAlBMnarJv7"; + compress = gzip; + }; + + exec = make {}; + + inputs = [ diffutils ]; +} + +package bc { + description = "an arbitrary precision numeric processing language"; + website = "https://www.gnu.org/software/bc"; + anitya = 170; + + version* = "1.08.2"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/bc/bc-"+version+".tar.gz"; + checksum = "8h6f3hjV80XiFs6v9HOPF2KEyg1kuOgn5eeFdVspV05ODBVQss-ey5glc8AmneLy"; + compress = gzip; + }; + + // source expected to be writable + writable = true; + chmod = true; + + exec = make {}; + + inputs = [ + texinfo, + ]; +} + +package libiconv { + description = "iconv implementation independent of glibc"; + website = "https://www.gnu.org/software/libiconv"; + anitya = 10656; + + version* = "1.19"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/libiconv/libiconv-"+version+".tar.gz"; + checksum = "UibB6E23y4MksNqYmCCrA3zTFO6vJugD1DEDqqWYFZNuBsUWMVMcncb_5pPAr88x"; + compress = gzip; + }; + + exec = make {}; +} + +package parallel { + description = "a shell tool for executing jobs in parallel using one or more computers"; + website = "https://www.gnu.org/software/parallel"; + anitya = 5448; + + version* = "20260422"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/parallel/parallel-"+version+".tar.bz2"; + checksum = "eTsepxgqhXpMEhPd55qh-W5y4vjKn0x9TD2mzbJCNZYtFf4lT4Wzoqr74HGJYBEH"; + compress = bzip2; + }; + + early = ` +ln -s ../system/bin/bash /bin/ +`; + + exec = make {}; + + inputs = [ + perl, + bash, + ]; + + runtime = [ perl ]; +} + +package libunistring { + description = "provides functions for manipulating Unicode strings"; + website = "https://www.gnu.org/software/libunistring"; + anitya = 1747; + + version* = "1.4.2"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/libunistring/libunistring-"+version+".tar.gz"; + checksum = "iW9BbfLoVlXjWoLTZ4AekQSu4cFBnLcZ4W8OHWbv0AhJNgD3j65_zqaLMzFKylg2"; + compress = gzip; + }; + + writable = true; + early = ` +test_disable() { chmod +w "$2" && echo "$1" > "$2"; } + +test_disable '#!/bin/sh' tests/test-c32ispunct.sh +test_disable 'int main(){return 0;}' tests/test-c32ispunct.c +`; + + exec = make {}; + + inputs = [ + diffutils, + ]; +} + +package libtasn1 { + description = "the ASN.1 library used by GnuTLS, p11-kit and some other packages"; + website = "https://www.gnu.org/software/libtasn1"; + anitya = 1734; + + version* = "4.21.0"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/libtasn1/libtasn1-"+version+".tar.gz"; + checksum = "9DYI3UYbfYLy8JsKUcY6f0irskbfL0fHZA91Q-JEOA3kiUwpodyjemRsYRjUpjuq"; + compress = gzip; + }; + + exec = make {}; +} + +package readline { + description = "provides a set of functions for use by applications that allow users to edit command lines as they are typed in"; + website = "https://tiswww.cwru.edu/php/chet/readline/rltop.html"; + anitya = 4173; + + version* = "8.3"; + source = remoteTar { + url = "https://ftpmirror.gnu.org/gnu/readline/readline-"+version+".tar.gz"; + checksum = "r-lcGRJq_MvvBpOq47Z2Y1OI2iqrmtcqhTLVXR0xWo37ZpC2uT_md7gKq5o_qTMV"; + compress = gzip; + }; + + exec = make { + configure = { + "with-curses"; + "with-shared-termcap-library"; + }; + }; + + inputs = [ ncurses ]; + runtime = [ ncurses ]; +} + +package gmp { + description = "a free library for arbitrary precision arithmetic"; + website = "https://gmplib.org"; + anitya = 1186; + + version* = "6.3.0"; + source = remoteTar { + url = "https://gcc.gnu.org/pub/gcc/infrastructure/"+ + "gmp-"+version+".tar.bz2"; + checksum = "yrgbgEDWKDdMWVHh7gPbVl56-sRtVVhfvv0M_LX7xMUUk_mvZ1QOJEAnt7g4i3k5"; + compress = bzip2; + }; + + env = [ + "CC=cc", + ]; + + exec = make {}; + + inputs = [ m4 ]; +} + +package mpfr { + description = "a C library for multiple-precision floating-point computations"; + website = "https://www.mpfr.org"; + anitya = 2019; + + version* = "4.2.2"; + source = remoteTar { + url = "https://gcc.gnu.org/pub/gcc/infrastructure/"+ + "mpfr-"+version+".tar.bz2"; + checksum = "wN3gx0zfIuCn9r3VAn_9bmfvAYILwrRfgBjYSD1IjLqyLrLojNN5vKyQuTE9kA-B"; + compress = bzip2; + }; + + exec = make {}; + + inputs = [ gmp ]; + runtime = [ gmp ]; +} + +package mpc { + description = "a C library for the arithmetic of complex numbers"; + website = "https://www.multiprecision.org"; + anitya = 1667; + + version* = "1.4.1"; + source = remoteGitLab { + domain = "gitlab.inria.fr"; + suffix = "mpc/mpc"; + ref = version; + checksum = "ZffaZyWkvIw0iPvRe5EJ7O-VvHtSkbbb3K_7SgPtK810NvGan7nbF0T5-6tozjQN"; + }; + + // does not find mpc-impl.h otherwise + enterSource = true; + + exec = make { + inPlace = true; + generate = "autoreconf -vfi"; + }; + + inputs = [ + automake, + libtool, + texinfo, + + mpfr, + ]; + + runtime = [ mpfr ]; +} |
