diff --git a/mirror.sh b/mirror.sh index 41df934d..65a20f13 100755 --- a/mirror.sh +++ b/mirror.sh @@ -156,7 +156,8 @@ do_file() { prefix_ref=${reference} # All git repositories we already use remove "v"s from the beginning # of branch/tag names in the tarball prefix - if echo "${reference}" | grep -Eq "^v[0-9]"; then + # except for gitlab + if echo "${reference}" | grep -Eq "^v[0-9]" | grep -vq gitlab; then prefix_ref=$(echo "${reference}" | sed "s/^v//") fi prefix=$(basename "${repo}" | sed "s/.git$//")-${prefix_ref} diff --git a/parts.rst b/parts.rst index d4555bcf..c079e0b1 100644 --- a/parts.rst +++ b/parts.rst @@ -1074,18 +1074,6 @@ patch 2.7.6 Our old patch was built with manual makefile and used mes libc. This is a newer version which we need in order to import gnulib into gettext. -gettext 0.21 -============ - -GNU Gettext is an internationalization and localization system used for writing -multilingual programs. - -texinfo 6.7 -=========== - -Texinfo is a typesetting syntax used for generating documentation. We can now use -``makeinfo`` script to convert ``.texi`` files into ``.info`` documentation format. - gcc 4.7.4 ========= @@ -1104,6 +1092,65 @@ This version of binutils provides a more comprehensive set of programming tools creating and managing binary programs. It also includes modern versions of the ``ld`` linker, the ``as`` assembler and the ``ar`` program. +musl 1.2.5 +========== + +With GCC and binutils supporting a musl-based toolchain natively, musl itself is rebuilt +with support for dynamic linking. + +python 2.0.1 +============ + +Everything is in place to bootstrap the useful programming language/utility +Python. While Python is largely written in C, many parts of the codebase are +generated from Python scripts, which only increases as Python matured over time. + +We begin with Python 2.0.1, which has minimal generated code, most of which can +be removed. Lib/{keyword,token,symbol} scripts are rewritten in C and used to +regenerate parts of the standard library. Unicode support and sre (regex) +support is stripped out. + +Using the stripped-down first version of Python 2.0.1, Python 2.0.1 is rebuilt, +including Unicode and regex support (required for future Python builds). The +first version is insufficient to run the Lib/{keyword,token,symbol} scripts, so +those continue to use the C versions. + +Precompiled Python code at this point is highly unreproducible, so it is +deleted (JIT compiled instead). This makes Python itself slower, but this is of +little consequence. + +python 2.3.7 +============ + +Python 2.0.1 is sufficient to build Python 2.3.7. + +Differences to 2.0.1: + +* The new "ast" module, performing parsing of Python, is generated from a + parsing specification using Python code. +* 2.0.1 is insufficient to run 2.3.7's unicode regeneration, so Unicode + support is again stripped out. + +Python 2.3.7 is then rebuilt to include Unicode support. + +gperf 3.1 +========= + +``gperf`` is a perfect hash function generator (hash function is injective). + +gettext 0.26 +============ + +GNU Gettext is an internationalization and localization system used for writing +multilingual programs. Now that we have Python 2.3 and gperf, we can regenerate +all the pregenerated files in Gettext and so build it. + +texinfo 6.7 +=========== + +Texinfo is a typesetting syntax used for generating documentation. We can now use +``makeinfo`` script to convert ``.texi`` files into ``.info`` documentation format. + perl 5.15.7 =========== @@ -1209,11 +1256,6 @@ perl 5.42.0 5.42 is the latest version of Perl! The Perl bootstrap is complete. -gperf 3.1 -========= - -``gperf`` is a perfect hash function generator (hash function is injective). - libunistring 0.9.10 =================== @@ -1279,47 +1321,6 @@ We use the `gnu-autogen-bootstrapping -# SPDX-FileCopyrightText: 2021 Andrius Štikonas -# -# SPDX-License-Identifier: GPL-3.0-or-later - -src_prepare() { - find . -name '*.info*' -delete - find . -name '*.gmo' -delete - - # bison - rm gettext-runtime/intl/plural.c gettext-tools/src/{po-gram-gen,cldr-plural}.{c,h} - GNULIB_SRCDIR=$(realpath ../gnulib-7daa86f) ./autogen.sh - - # Precompiled Java class - rm gettext-tools/gnulib-lib/javaversion.class - touch gettext-tools/gnulib-lib/javaversion.class -} - -src_configure() { - INTLBISON=bison-3.6 \ - TOOLS_BISON=bison-3.6 \ - ./configure --prefix="${PREFIX}" \ - --libdir="${LIBDIR}" \ - --enable-static \ - --disable-shared \ - --disable-java -} - -src_compile() { - make "${MAKEJOBS}" MAKEINFO=true CFLAGS="-I${PWD}/libtextstyle/lib" -} - -src_install() { - make MAKEINFO=true DESTDIR="${DESTDIR}" install -} diff --git a/steps/gettext-0.21/sources b/steps/gettext-0.21/sources deleted file mode 100644 index a1580e8d..00000000 --- a/steps/gettext-0.21/sources +++ /dev/null @@ -1,2 +0,0 @@ -f https://mirrors.kernel.org/gnu/gettext/gettext-0.21.tar.xz d20fcbb537e02dcf1383197ba05bd0734ef7bf5db06bdb241eb69b7d16b73192 -g https://https.git.savannah.gnu.org/git/gnulib.git~7daa86f _ 2d911c2f2ed97b347d6d360b742abdc98aa626d4f8f847ee682c7cde12e90871 gnulib-7daa86f.tar.gz diff --git a/steps/gettext-0.26/files/post-global-regen.patch b/steps/gettext-0.26/files/post-global-regen.patch new file mode 100644 index 00000000..409a37a3 --- /dev/null +++ b/steps/gettext-0.26/files/post-global-regen.patch @@ -0,0 +1,398 @@ +SPDX-FileCopyrightText: 2019 Bruno Haible + +SPDX-License-Identifier: GPL-3.0-or-later + +This is the set of differences between the generated file and hand +modifications made for the file in gettext. + +Applied after the regenerations occur. + +--- a/include/libxml/globals.h 2025-12-31 10:27:50.432552177 +1100 ++++ b/include/libxml/globals.h 2019-12-23 22:21:12.000000000 +1100 +@@ -62,6 +91,8 @@ + XMLPUBFUN xmlOutputBufferCreateFilenameFunc + XMLCALL xmlOutputBufferCreateFilenameDefault (xmlOutputBufferCreateFilenameFunc func); + ++#if !defined IN_LIBTEXTSTYLE ++ + /* + * Externally global symbols which need to be protected for backwards + * compatibility support. +@@ -101,6 +132,8 @@ + #undef xmlParserInputBufferCreateFilenameValue + #undef xmlOutputBufferCreateFilenameValue + ++#endif ++ + /** + * xmlRegisterNodeFunc: + * @node: the current node +--- a/globals.c 2025-12-31 10:42:52.577486689 +1100 ++++ b/globals.c 2019-12-23 22:21:12.000000000 +1100 +@@ -70,6 +99,8 @@ + * * + ************************************************************************/ + ++#if !defined IN_LIBTEXTSTYLE ++ + /* + * Memory allocation routines + */ +@@ -79,6 +110,8 @@ + #undef xmlMemStrdup + #undef xmlRealloc + ++#endif ++ + #if defined(DEBUG_MEMORY_LOCATION) || defined(DEBUG_MEMORY) + xmlFreeFunc xmlFree = (xmlFreeFunc) xmlMemFree; + xmlMallocFunc xmlMalloc = (xmlMallocFunc) xmlMemMalloc; +@@ -150,6 +183,8 @@ + #include + #include + ++#if !defined IN_LIBTEXTSTYLE ++ + #undef docbDefaultSAXHandler + #undef htmlDefaultSAXHandler + #undef oldXMLWDcompatibility +@@ -179,6 +214,9 @@ + + #undef xmlParserInputBufferCreateFilenameValue + #undef xmlOutputBufferCreateFilenameValue ++ ++#endif ++ + /** + * xmlParserVersion: + * +@@ -702,7 +740,9 @@ + } + + #ifdef LIBXML_DOCB_ENABLED ++#if !defined IN_LIBTEXTSTYLE + #undef docbDefaultSAXHandler ++#endif + xmlSAXHandlerV1 * + __docbDefaultSAXHandler(void) { + if (IS_MAIN_THREAD) +@@ -713,7 +753,9 @@ + #endif + + #ifdef LIBXML_HTML_ENABLED ++#if !defined IN_LIBTEXTSTYLE + #undef htmlDefaultSAXHandler ++#endif + xmlSAXHandlerV1 * + __htmlDefaultSAXHandler(void) { + if (IS_MAIN_THREAD) +@@ -723,7 +765,9 @@ + } + #endif + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlLastError ++#endif + xmlError * + __xmlLastError(void) { + if (IS_MAIN_THREAD) +@@ -738,7 +782,9 @@ + * the right place for them :-) + */ + #if defined(LIBXML_THREAD_ALLOC_ENABLED) && defined(LIBXML_THREAD_ENABLED) ++#if !defined IN_LIBTEXTSTYLE + #undef xmlMalloc ++#endif + xmlMallocFunc * + __xmlMalloc(void){ + if (IS_MAIN_THREAD) +@@ -747,7 +793,9 @@ + return (&xmlGetGlobalState()->xmlMalloc); + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlMallocAtomic ++#endif + xmlMallocFunc * + __xmlMallocAtomic(void){ + if (IS_MAIN_THREAD) +@@ -756,7 +804,9 @@ + return (&xmlGetGlobalState()->xmlMallocAtomic); + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlRealloc ++#endif + xmlReallocFunc * + __xmlRealloc(void){ + if (IS_MAIN_THREAD) +@@ -765,7 +815,9 @@ + return (&xmlGetGlobalState()->xmlRealloc); + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlFree ++#endif + xmlFreeFunc * + __xmlFree(void){ + if (IS_MAIN_THREAD) +@@ -791,7 +843,9 @@ + */ + + ++#if !defined IN_LIBTEXTSTYLE + #undef oldXMLWDcompatibility ++#endif + int * + __oldXMLWDcompatibility(void) { + if (IS_MAIN_THREAD) +@@ -800,7 +854,9 @@ + return (&xmlGetGlobalState()->oldXMLWDcompatibility); + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlBufferAllocScheme ++#endif + xmlBufferAllocationScheme * + __xmlBufferAllocScheme(void) { + if (IS_MAIN_THREAD) +@@ -817,7 +873,9 @@ + return ret; + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlDefaultBufferSize ++#endif + int * + __xmlDefaultBufferSize(void) { + if (IS_MAIN_THREAD) +@@ -834,7 +892,10 @@ + return ret; + } + ++#ifdef LIBXML_SAX1_ENABLED ++#if !defined IN_LIBTEXTSTYLE + #undef xmlDefaultSAXHandler ++#endif + xmlSAXHandlerV1 * + __xmlDefaultSAXHandler(void) { + if (IS_MAIN_THREAD) +@@ -842,8 +903,11 @@ + else + return (&xmlGetGlobalState()->xmlDefaultSAXHandler); + } ++#endif /* LIBXML_SAX1_ENABLED */ + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlDefaultSAXLocator ++#endif + xmlSAXLocator * + __xmlDefaultSAXLocator(void) { + if (IS_MAIN_THREAD) +@@ -852,7 +916,9 @@ + return (&xmlGetGlobalState()->xmlDefaultSAXLocator); + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlDoValidityCheckingDefaultValue ++#endif + int * + __xmlDoValidityCheckingDefaultValue(void) { + if (IS_MAIN_THREAD) +@@ -869,7 +935,9 @@ + return ret; + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlGenericError ++#endif + xmlGenericErrorFunc * + __xmlGenericError(void) { + if (IS_MAIN_THREAD) +@@ -878,7 +946,9 @@ + return (&xmlGetGlobalState()->xmlGenericError); + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlStructuredError ++#endif + xmlStructuredErrorFunc * + __xmlStructuredError(void) { + if (IS_MAIN_THREAD) +@@ -887,7 +957,9 @@ + return (&xmlGetGlobalState()->xmlStructuredError); + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlGenericErrorContext ++#endif + void * * + __xmlGenericErrorContext(void) { + if (IS_MAIN_THREAD) +@@ -896,7 +968,9 @@ + return (&xmlGetGlobalState()->xmlGenericErrorContext); + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlStructuredErrorContext ++#endif + void * * + __xmlStructuredErrorContext(void) { + if (IS_MAIN_THREAD) +@@ -905,7 +979,9 @@ + return (&xmlGetGlobalState()->xmlStructuredErrorContext); + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlGetWarningsDefaultValue ++#endif + int * + __xmlGetWarningsDefaultValue(void) { + if (IS_MAIN_THREAD) +@@ -922,7 +998,9 @@ + return ret; + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlIndentTreeOutput ++#endif + int * + __xmlIndentTreeOutput(void) { + if (IS_MAIN_THREAD) +@@ -939,7 +1017,9 @@ + return ret; + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlTreeIndentString ++#endif + const char * * + __xmlTreeIndentString(void) { + if (IS_MAIN_THREAD) +@@ -956,7 +1036,9 @@ + return ret; + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlKeepBlanksDefaultValue ++#endif + int * + __xmlKeepBlanksDefaultValue(void) { + if (IS_MAIN_THREAD) +@@ -973,7 +1055,9 @@ + return ret; + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlLineNumbersDefaultValue ++#endif + int * + __xmlLineNumbersDefaultValue(void) { + if (IS_MAIN_THREAD) +@@ -990,7 +1074,9 @@ + return ret; + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlLoadExtDtdDefaultValue ++#endif + int * + __xmlLoadExtDtdDefaultValue(void) { + if (IS_MAIN_THREAD) +@@ -1007,7 +1093,9 @@ + return ret; + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlParserDebugEntities ++#endif + int * + __xmlParserDebugEntities(void) { + if (IS_MAIN_THREAD) +@@ -1024,7 +1112,9 @@ + return ret; + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlParserVersion ++#endif + const char * * + __xmlParserVersion(void) { + if (IS_MAIN_THREAD) +@@ -1033,7 +1123,9 @@ + return (&xmlGetGlobalState()->xmlParserVersion); + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlPedanticParserDefaultValue ++#endif + int * + __xmlPedanticParserDefaultValue(void) { + if (IS_MAIN_THREAD) +@@ -1050,7 +1142,9 @@ + return ret; + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlSaveNoEmptyTags ++#endif + int * + __xmlSaveNoEmptyTags(void) { + if (IS_MAIN_THREAD) +@@ -1067,7 +1161,9 @@ + return ret; + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlSubstituteEntitiesDefaultValue ++#endif + int * + __xmlSubstituteEntitiesDefaultValue(void) { + if (IS_MAIN_THREAD) +@@ -1084,7 +1180,9 @@ + return ret; + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlRegisterNodeDefaultValue ++#endif + xmlRegisterNodeFunc * + __xmlRegisterNodeDefaultValue(void) { + if (IS_MAIN_THREAD) +@@ -1093,7 +1191,9 @@ + return (&xmlGetGlobalState()->xmlRegisterNodeDefaultValue); + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlDeregisterNodeDefaultValue ++#endif + xmlDeregisterNodeFunc * + __xmlDeregisterNodeDefaultValue(void) { + if (IS_MAIN_THREAD) +@@ -1102,7 +1202,9 @@ + return (&xmlGetGlobalState()->xmlDeregisterNodeDefaultValue); + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlParserInputBufferCreateFilenameValue ++#endif + xmlParserInputBufferCreateFilenameFunc * + __xmlParserInputBufferCreateFilenameValue(void) { + if (IS_MAIN_THREAD) +@@ -1111,7 +1213,9 @@ + return (&xmlGetGlobalState()->xmlParserInputBufferCreateFilenameValue); + } + ++#if !defined IN_LIBTEXTSTYLE + #undef xmlOutputBufferCreateFilenameValue ++#endif + xmlOutputBufferCreateFilenameFunc * + __xmlOutputBufferCreateFilenameValue(void) { + if (IS_MAIN_THREAD) +@@ -1119,3 +1223,6 @@ + else + return (&xmlGetGlobalState()->xmlOutputBufferCreateFilenameValue); + } ++ ++#define bottom_globals ++#include "elfgcchack.h" diff --git a/steps/gettext-0.26/pass1.sh b/steps/gettext-0.26/pass1.sh new file mode 100755 index 00000000..98ed3152 --- /dev/null +++ b/steps/gettext-0.26/pass1.sh @@ -0,0 +1,147 @@ +# SPDX-FileCopyrightText: 2021-22 Samuel Tyler +# SPDX-FileCopyrightText: 2021 Andrius Štikonas +# +# SPDX-License-Identifier: GPL-3.0-or-later + +src_prepare() { + default + + find . \( -name '*.info*' \ + -o -name '*.gmo' \ + -o -name '*.mo' \) -delete + find . \( -name '*.html*' -o -name '*.1*' \) \ + -not -path "./gettext-runtime/intl-csharp/doc/*" \ + -not -path "./gettext-tools/doc/tutorial.html" \ + -not -path "./gettext-tools/doc/FAQ.html" \ + -delete \ + -exec touch {} + + + # bison + rm gettext-runtime/intl/plural.{c,h} \ + gettext-tools/src/{read-po-gram,cldr-plural}.{c,h} + + # Misc files + find . -name "*.class" -delete -exec touch {} + + touch gettext-tools/gnulib-lib/javaversion.class + rm gettext-tools/m4/csharpexec-test.exe + touch gettext-tools/m4/csharpexec-test.exe + rm -r gettext-tools/tests/testdata/repo.tar.gz \ + gettext-tools/tests/testdata/dprog.*.d \ + gettext-tools/tests/mm-viet.comp.po \ + gettext-tools/tests/qttest*.qm \ + libtextstyle/{,gnulib-local}/tests/test-term-ostream-xterm-xf86-v32.out + touch libtextstyle/{,gnulib-local}/tests/test-term-ostream-xterm-xf86-v32.out + + # gnulib-local/lib/libxml + local libxml2 + libxml2=$(realpath ../libxml2-v2.9.9) + mv post-global-regen.patch "$libxml2" + pushd "$libxml2" + for i in include/libxml/globals.h globals.c; do + sed "/Everything starting from the line below/q" $i > $i.top + mv $i.top $i + done + rm include/libxml/xmlunicode.h xmlunicode.c \ + include/libxml/chvalid.h chvalid.c + mv ../*-4.0.1.txt . + python2.3 genUnicode.py + python2.3 genChRanges.py + python2.3 build_glob.py + patch -Np1 -i post-global-regen.patch + popd + + pushd gnulib-local/lib/libxml + for f in xmlunicode chvalid globals; do + cp "$libxml2/$f.c" "$f.c" + cp "$libxml2/include/libxml/$f.h" "$f.in.h" + done + popd + + # Regenerate gnulib files + rm {gettext-runtime,gettext-runtime/intl,gettext-runtime/libasprintf,gettext-tools}/gnulib-lib/uniwidth/width*.h \ + {gettext-runtime,gettext-runtime/intl,gettext-runtime/libasprintf,gettext-tools}/gnulib-lib/unictype/ctype*.h \ + {gettext-runtime,gettext-runtime/intl,gettext-runtime/libasprintf,gettext-tools}/gnulib-lib/unicase/tolower.h \ + gettext-tools/libgettextpo/uniwidth/width*.h \ + gettext-tools/libgettextpo/unictype/ctype*.h \ + gettext-tools/libgettextpo/unicase/tolower.h \ + gettext-tools/gnulib-lib/unicase/{tocasefold,ignorable,cased}.h \ + gettext-tools/gnulib-lib/unicase/special-casing-table.* \ + gettext-tools/gnulib-lib/unictype/combiningclass.h \ + gettext-tools/{gnulib-lib,libgettextpo}/unictype/pr_*.h \ + gettext-tools/{gnulib-lib,libgettextpo}/unilbrk/{lbrktables.c,lbrkprop*.h} \ + gettext-tools/gnulib-lib/uniname/{uninames.h,gen-uninames.lisp} \ + gettext-tools/gnulib-lib/uninorm/{de,}composition-table* \ + gettext-tools/gnulib-tests/unicase/test-{uc_tolower,ignorable,cased}.c \ + gettext-tools/gnulib-tests/unictype/test-{ctype,pr,sy}_*.c + rm libtextstyle/lib/uniwidth/width*.h \ + libtextstyle/lib/unictype/ctype_*.h \ + libtextstyle/lib/unicase/tolower.h \ + libtextstyle/lib/*-ostream.{c,h} \ + libtextstyle/lib/*_ostream.* \ + libtextstyle/lib/ostream.{c,h,vt.h,priv.h} + rm -r gettext-tools/gnulib-lib/libxml libtextstyle/lib/libxml + + pushd ../gnulib-b5eb878 + rm lib/unictype/ctype*.h \ + lib/unicase/tolower.h \ + lib/uniwidth/width*.h + + pushd lib + gcc -Iunictype -o gen-uni-tables gen-uni-tables.c + mv ../../*-16.0.0.txt ../../PropList-3.0.1.txt . + ./gen-uni-tables UnicodeData-16.0.0.txt \ + PropList-16.0.0.txt \ + DerivedCoreProperties-16.0.0.txt \ + emoji-data-16.0.0.txt \ + ArabicShaping-16.0.0.txt \ + Scripts-16.0.0.txt \ + Blocks-16.0.0.txt \ + PropList-3.0.1.txt \ + BidiMirroring-16.0.0.txt \ + EastAsianWidth-16.0.0.txt \ + LineBreak-16.0.0.txt \ + WordBreakProperty-16.0.0.txt \ + GraphemeBreakProperty-16.0.0.txt \ + CompositionExclusions-16.0.0.txt \ + SpecialCasing-16.0.0.txt \ + CaseFolding-16.0.0.txt \ + 16.0.0 + popd + popd + + # gnulib + autotools + GNULIB_SRCDIR=$(realpath ../gnulib-b5eb878) ./autogen.sh + + # archive.dir.tar + local archive temp + archive="$(realpath gettext-tools/misc/archive.dir.tar)" + temp="$(mktemp -d)" + pushd "$temp" + tar -xf "$archive" + sed -i "s/%expect 10/%expect 7/" gettext-0.10.*/intl/plural.y + find . -path "*/intl/plural.c" | while read -r file; do + pushd "$(dirname "$file")" + rm plural.c + bison -o plural.c plural.y + popd + done + tar -cf "$archive" gettext-* + popd + rm -rf "$temp" +} + +src_configure() { + ./configure --prefix="${PREFIX}" \ + --libdir="${LIBDIR}" \ + --enable-static \ + --disable-shared \ + --disable-java +} + +src_compile() { + make "${MAKEJOBS}" MAKEINFO=true +} + +src_install() { + make MAKEINFO=true DESTDIR="${DESTDIR}" install +} diff --git a/steps/gettext-0.26/patches/build_glob.patch b/steps/gettext-0.26/patches/build_glob.patch new file mode 100644 index 00000000..6ca76a58 --- /dev/null +++ b/steps/gettext-0.26/patches/build_glob.patch @@ -0,0 +1,36 @@ +SPDX-FileCopyrightText: 2025 Samuel Tyler + +SPDX-License-Identifier: MIT + +For whatever reason, the regeneration script for globals.{c,h} does not match +what it should be. This is probably because the files were hand edited +afterward. We do the proper fix and update the generation script. + +--- libxml2-v2.9.9/build_glob.py 2019-01-04 05:14:17.000000000 +1100 ++++ libxml2-v2.9.9/build_glob.py 2025-12-31 10:30:55.384538752 +1100 +@@ -68,7 +68,7 @@ + fields = string.split(line, ",") + # Update the header file + writeline(global_functions_hdr) +- global_functions_hdr.write("extern "+fields[0]+" *") ++ global_functions_hdr.write("XMLPUBFUN "+fields[0]+" * XMLCALL ") + if fields[2]: + global_functions_hdr.write("(*") + global_functions_hdr.write("__"+fields[1]+"(void)") +@@ -80,13 +80,13 @@ + writeline(global_functions_hdr,"(*(__"+fields[1]+"()))") + writeline(global_functions_hdr,"#else") + if fields[2]: +- writeline(global_functions_hdr,"LIBXML_DLL_IMPORT extern "+fields[0]+" "+fields[1]+fields[2]+";") ++ writeline(global_functions_hdr,"XMLPUBVAR "+fields[0]+" "+fields[1]+fields[2]+";") + else: +- writeline(global_functions_hdr,"LIBXML_DLL_IMPORT extern "+fields[0]+" "+fields[1]+";") ++ writeline(global_functions_hdr,"XMLPUBVAR "+fields[0]+" "+fields[1]+";") + writeline(global_functions_hdr,"#endif") + # set/get for per-thread global defaults + if fields[3]: +- writeline(global_functions_hdr,fields[0]+" "+fields[1][:3]+"ThrDef"+fields[1][3:]+"("+fields[0]+" v);") ++ writeline(global_functions_hdr,"XMLPUBFUN "+fields[0]+" XMLCALL "+fields[1][:3]+"ThrDef"+fields[1][3:]+"("+fields[0]+" v);") + # Update the implementation file + writeline(global_functions_impl) + # writeline(global_functions_impl, "extern "+fields[0]+" "+fields[1]+";") diff --git a/steps/gettext-0.26/sources b/steps/gettext-0.26/sources new file mode 100644 index 00000000..09b246b8 --- /dev/null +++ b/steps/gettext-0.26/sources @@ -0,0 +1,21 @@ +f https://mirrors.kernel.org/gnu/gettext/gettext-0.26.tar.xz d1fb86e260cfe7da6031f94d2e44c0da55903dbae0a2fa0fae78c91ae1b56f00 +g https://https.git.savannah.gnu.org/git/gnulib.git~b5eb878 _ 02fa193c8b8242dcae324c9bb2d694633d891d32d50e5a8cf79f4053323aec70 gnulib-b5eb878.tar.gz +g https://gitlab.gnome.org/GNOME/libxml2.git~v2.9.9 https://gitlab.gnome.org/GNOME/libxml2/-/archive/v2.9.9/libxml2-v2.9.9.tar.gz d490df9133f8871d4678eb9e899313c3b238e455d45aaf64c9b10b76495b19e7 libxml2-v2.9.9.tar.gz +f http://ftp.unicode.org/Public/16.0.0/ucd/UnicodeData.txt ff58e5823bd095166564a006e47d111130813dcf8bf234ef79fa51a870edb48f UnicodeData-16.0.0.txt +f http://ftp.unicode.org/Public/16.0.0/ucd/PropList.txt 53d614508e2a0b2305a8aa21cd60d993de9326cdf65993660dfcce4503548583 PropList-16.0.0.txt +f http://ftp.unicode.org/Public/16.0.0/ucd/DerivedCoreProperties.txt 39d35161f2954497f69e08bdb9e701493f476a3d30222de20028feda36c1dabd DerivedCoreProperties-16.0.0.txt +f http://ftp.unicode.org/Public/16.0.0/ucd/emoji/emoji-data.txt f1365a5173eee18e1f98b240cdc492e84a25f1ce7e0c9d1094eb29c41a22696a emoji-data-16.0.0.txt +f http://ftp.unicode.org/Public/16.0.0/ucd/ArabicShaping.txt 764f420cedfc8b43d9fec251c957a5d55fc45d40f6573f162990ed1dce7e36e0 ArabicShaping-16.0.0.txt +f http://ftp.unicode.org/Public/16.0.0/ucd/Scripts.txt 9e88f0a677df47311106340be8ede2ecdacd9c1c931831218d2be6d5508e0039 Scripts-16.0.0.txt +f http://ftp.unicode.org/Public/16.0.0/ucd/Blocks.txt f3907b395d410f1b97342292ca6bc83dd12eb4b205f2a0c48efdef99e517d7b0 Blocks-16.0.0.txt +f http://ftp.unicode.org/Public/3.0-Update1/PropList-3.0.1.txt 909eef4adbeddbdddcd9487c856fe8cdbb8912aa8eb315ed7885b6ef65f4dc4c +f http://ftp.unicode.org/Public/16.0.0/ucd/BidiMirroring.txt d7afdadd1bbd66f5a663ac0e8f7958f18fd9491fc0bc59ec5877cb82db71db7d BidiMirroring-16.0.0.txt +f http://ftp.unicode.org/Public/16.0.0/ucd/EastAsianWidth.txt 43adc76c0686a42cb370764eb8cfe2b2a45b10b855e5572a2db4a0eecce15d5b EastAsianWidth-16.0.0.txt +f http://ftp.unicode.org/Public/16.0.0/ucd/LineBreak.txt e97e4259d0d20fab150b9c7b4b28abfae5cd78ca97e7f4ac6ed20d685d5f4a7c LineBreak-16.0.0.txt +f http://ftp.unicode.org/Public/16.0.0/ucd/auxiliary/WordBreakProperty.txt 476464e71a4b7b779b8ba7c5671f4338fea77da8e6b6b05fb82b3fdd14603779 WordBreakProperty-16.0.0.txt +f http://ftp.unicode.org/Public/16.0.0/ucd/auxiliary/GraphemeBreakProperty.txt c29360bd6f7132811d701d29069541e827eb44bfc4c8fbde8c370d6982689dc1 GraphemeBreakProperty-16.0.0.txt +f http://ftp.unicode.org/Public/16.0.0/ucd/CompositionExclusions.txt 89e83cf9cc8bef6c1f8bf77e42cf6f0341dfa42e66261f4dbe9b492e7a23c8ee CompositionExclusions-16.0.0.txt +f http://ftp.unicode.org/Public/16.0.0/ucd/SpecialCasing.txt 8d5de354eef79f2395a54c9c7dcebbaf3d30fc962d0f85611ea97aa973a0c451 SpecialCasing-16.0.0.txt +f http://ftp.unicode.org/Public/16.0.0/ucd/CaseFolding.txt 6f1f9c588eb4a5c718d9e8f93b782685e5c7fec872cf05e8e6878053599e09bb CaseFolding-16.0.0.txt +f http://ftp.unicode.org/Public/4.0-Update1/Blocks-4.0.1.txt c9dba71655b8787c381b3421ba2bf9a3df9e6168b5835f93fd3931c1eeff90cf Blocks-4.0.1.txt +f http://ftp.unicode.org/Public/4.0-Update1/UnicodeData-4.0.1.txt de54d68f2df927a20ea4a83dfd74a543ca7f3e3df2441576e7f6a185ec6fa217 UnicodeData-4.0.1.txt diff --git a/steps/gperf-3.1/pass1.sh b/steps/gperf-3.1/pass1.sh index 24144b59..a3d1a1ae 100755 --- a/steps/gperf-3.1/pass1.sh +++ b/steps/gperf-3.1/pass1.sh @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later src_prepare() { - find . -name '*.info*' -delete + find . -name '*.info*' -delete -exec touch {} + for d in doc tests lib src; do cd $d @@ -17,3 +17,11 @@ src_prepare() { src_configure() { ./configure --prefix="${PREFIX}" } + +src_compile() { + make "${MAKEJOBS}" MAKEINFO=true PREFIX="${PREFIX}" +} + +src_install() { + make MAKEINFO=true PREFIX="${PREFIX}" DESTDIR="${DESTDIR}" install +} diff --git a/steps/manifest b/steps/manifest index 1caa23dc..b7fa5793 100644 --- a/steps/manifest +++ b/steps/manifest @@ -190,11 +190,16 @@ build: openssl-3.6.0 build: ca-certificates-3.119.1 build: curl-8.17.0 build: patch-2.8 -build: gettext-0.21 -build: texinfo-6.7 build: gcc-4.7.4 build: binutils-2.41 +build: musl-1.2.5 +build: python-2.0.1 +build: python-2.0.1 +build: python-2.3.7 +build: python-2.3.7 build: gperf-3.1 +build: gettext-0.26 +build: texinfo-6.7 build: libunistring-0.9.10 build: libffi-3.3 build: libatomic_ops-7.6.10 @@ -204,11 +209,6 @@ build: which-2.21 build: grep-3.7 build: sed-4.8 build: autogen-5.18.16 -build: musl-1.2.5 -build: python-2.0.1 -build: python-2.0.1 -build: python-2.3.7 -build: python-2.3.7 build: python-2.5.6 build: python-3.1.5 build: python-3.1.5