diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-04 05:48:38 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-04 05:48:38 -0500 |
| commit | bfd9c39e4712ebdb442d4ca0673061faed1e70e1 (patch) | |
| tree | 0d7a74b4463ee387f9cf9368ceb1b757f694f72a /dev-build | |
| parent | f716a9fe6455d39eef01e718aae68dae61c19704 (diff) | |
| download | baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.gz baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.xz baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.zip | |
Revert "Adding metadata"
This reverts commit f716a9fe6455d39eef01e718aae68dae61c19704.
Diffstat (limited to 'dev-build')
372 files changed, 21590 insertions, 0 deletions
diff --git a/dev-build/autoconf-archive/Manifest b/dev-build/autoconf-archive/Manifest new file mode 100644 index 000000000000..b4fb9cc470fb --- /dev/null +++ b/dev-build/autoconf-archive/Manifest @@ -0,0 +1,3 @@ +DIST autoconf-archive-2023.02.20.tar.xz 678184 BLAKE2B a72469e61a6ef702cbf4e30712c7dbe36369da7dad6e2312eb7026af41a989a47ded0a27975349486b69155f9e8199f89720dc57f98440b2766294a0f8755ee6 SHA512 a744f5aa0c1a813b81ad1528aebf7511bde7f470f34626d2057ed6664127120182e031fec5d22027d4a204544266135f202b8ef453bff70a3b0315c506c82528 +DIST autoconf-archive-2024.10.16-patches.tar.xz 9604 BLAKE2B e180322ec49f39aa456756c5451b15c73485a8583b9a770be14f3940fa0c580db720a1d8ea1eef0f16071d4f77f0763a798ddd685ed213070d4ac609dd36c580 SHA512 d34459c4e9707163626368f612392552b0f5421d304a4a53b691ffd5e65378ed6b2a0dbfad70a7358f71da17f67240d95eee2311eb0f458b82e6f77df7066a64 +DIST autoconf-archive-2024.10.16.tar.xz 677768 BLAKE2B 64554b7258c527f2e6bb115bec08e358bd4f10b940cdbe58c073fb3bdeccab78897250766e600b7e5fd79a76d633135d1caf2c7e81893bd68cab704073cac2c5 SHA512 91140cb666447f12a1d39d7d42f5fe6ea3601bb586f466381c9e949087aafa06aed8d061a4f5d020a3d234eb710e4bb47cd25380bcffd8c423fa1a7af05e988b diff --git a/dev-build/autoconf-archive/autoconf-archive-2023.02.20.ebuild b/dev-build/autoconf-archive/autoconf-archive-2023.02.20.ebuild new file mode 100644 index 000000000000..a42e0793e7c6 --- /dev/null +++ b/dev-build/autoconf-archive/autoconf-archive-2023.02.20.ebuild @@ -0,0 +1,18 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="GNU Autoconf Macro Archive" +HOMEPAGE="https://www.gnu.org/software/autoconf-archive/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + +# File collisions, bug #540246 +RDEPEND=" + !=gnome-base/gnome-common-3.14.0-r0 + !>=gnome-base/gnome-common-3.14.0-r1[-autoconf-archive(+)] +" diff --git a/dev-build/autoconf-archive/autoconf-archive-2024.10.16-r1.ebuild b/dev-build/autoconf-archive/autoconf-archive-2024.10.16-r1.ebuild new file mode 100644 index 000000000000..8111545027f2 --- /dev/null +++ b/dev-build/autoconf-archive/autoconf-archive-2024.10.16-r1.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="GNU Autoconf Macro Archive" +HOMEPAGE="https://www.gnu.org/software/autoconf-archive/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" +# Temporary patchset for 2024.10.16 because a snapshot is too awkward to make +# Can be dropped on next release +SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-patches.tar.xz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + +# File collisions, bug #540246 +RDEPEND=" + !=gnome-base/gnome-common-3.14.0-r0 + !>=gnome-base/gnome-common-3.14.0-r1[-autoconf-archive(+)] +" + +PATCHES=( + "${WORKDIR}"/${P}-patches +) diff --git a/dev-build/autoconf-archive/autoconf-archive-2024.10.16-r2.ebuild b/dev-build/autoconf-archive/autoconf-archive-2024.10.16-r2.ebuild new file mode 100644 index 000000000000..14e86289e654 --- /dev/null +++ b/dev-build/autoconf-archive/autoconf-archive-2024.10.16-r2.ebuild @@ -0,0 +1,26 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="GNU Autoconf Macro Archive" +HOMEPAGE="https://www.gnu.org/software/autoconf-archive/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" +# Temporary patchset for 2024.10.16 because a snapshot is too awkward to make +# Can be dropped on next release +SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-patches.tar.xz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + +# File collisions, bug #540246 +RDEPEND=" + !=gnome-base/gnome-common-3.14.0-r0 + !>=gnome-base/gnome-common-3.14.0-r1[-autoconf-archive(+)] +" + +PATCHES=( + "${WORKDIR}"/${P}-patches + "${FILESDIR}"/${P}-lua.patch +) diff --git a/dev-build/autoconf-archive/files/autoconf-archive-2024.10.16-lua.patch b/dev-build/autoconf-archive/files/autoconf-archive-2024.10.16-lua.patch new file mode 100644 index 000000000000..dc65abc47075 --- /dev/null +++ b/dev-build/autoconf-archive/files/autoconf-archive-2024.10.16-lua.patch @@ -0,0 +1,209 @@ +https://github.com/autoconf-archive/autoconf-archive/pull/318 + +From 51056b0e139322d0377b0ecd30efd80ec1290dfe Mon Sep 17 00:00:00 2001 +From: Peter Simons <simons@cryp.to> +Date: Sat, 9 Nov 2024 09:22:08 +0100 +Subject: [PATCH] Revert "Add LuaJIT support to AX_PROG_LUA macro" + +--- + m4/ax_lua.m4 | 109 ++++++++++++++------------------------------------- + 1 file changed, 29 insertions(+), 80 deletions(-) + +diff --git a/m4/ax_lua.m4 b/m4/ax_lua.m4 +index 5f63cace..a2f2a2ce 100644 +--- a/m4/ax_lua.m4 ++++ b/m4/ax_lua.m4 +@@ -49,14 +49,6 @@ + # interpreter. If LUA is blank, the user's path is searched for an + # suitable interpreter. + # +-# Optionally a LUAJIT option may be set ahead of time to look for and +-# validate a LuaJIT install instead of PUC Lua. Usage might look like: +-# +-# AC_ARG_WITH(luajit, [AS_HELP_STRING([--with-luajit], +-# [Prefer LuaJIT over PUC Lua, even if the latter is newer. Default: no]) +-# ]) +-# AM_CONDITIONAL([LUAJIT], [test "x$with_luajit" != 'xno']) +-# + # If MINIMUM-VERSION is supplied, then only Lua interpreters with a + # version number greater or equal to MINIMUM-VERSION will be accepted. If + # TOO-BIG-VERSION is also supplied, then only Lua interpreters with a +@@ -160,7 +152,6 @@ + # + # LICENSE + # +-# Copyright (c) 2023 Caleb Maclennan <caleb@alerque.com> + # Copyright (c) 2015 Reuben Thomas <rrt@sc3d.org> + # Copyright (c) 2014 Tim Perkins <tprk77@gmail.com> + # +@@ -190,7 +181,7 @@ + # modified version of the Autoconf Macro, you may extend this special + # exception to the GPL to apply to your modified version as well. + +-#serial 47 ++#serial 48 + + dnl ========================================================================= + dnl AX_PROG_LUA([MINIMUM-VERSION], [TOO-BIG-VERSION], +@@ -206,14 +197,13 @@ AC_DEFUN([AX_PROG_LUA], + AC_ARG_VAR([LUA], [The Lua interpreter, e.g. /usr/bin/lua5.1]) + + dnl Find a Lua interpreter. +- AM_COND_IF([LUAJIT], +- [_ax_lua_interpreter_list='luajit luajit-2.1.0-beta3 luajit-2.0.5 luajit-2.0.4 luajit-2.0.3'], +- [_ax_lua_interpreter_list='lua lua5.4 lua54 lua5.3 lua53 lua5.2 lua52 lua5.1 lua51 lua5.0 lua50']) ++ m4_define_default([_AX_LUA_INTERPRETER_LIST], ++ [lua lua5.4 lua54 lua5.3 lua53 lua5.2 lua52 lua5.1 lua51 lua50]) + + m4_if([$1], [], + [ dnl No version check is needed. Find any Lua interpreter. + AS_IF([test "x$LUA" = 'x'], +- [AC_PATH_PROGS([LUA], [$_ax_lua_interpreter_list], [:])]) ++ [AC_PATH_PROGS([LUA], [_AX_LUA_INTERPRETER_LIST], [:])]) + ax_display_LUA='lua' + + AS_IF([test "x$LUA" != 'x:'], +@@ -252,7 +242,7 @@ AC_DEFUN([AX_PROG_LUA], + [_ax_check_text="for a Lua interpreter with version >= $1, < $2"]) + AC_CACHE_CHECK([$_ax_check_text], + [ax_cv_pathless_LUA], +- [ for ax_cv_pathless_LUA in $_ax_lua_interpreter_list none; do ++ [ for ax_cv_pathless_LUA in _AX_LUA_INTERPRETER_LIST none; do + test "x$ax_cv_pathless_LUA" = 'xnone' && break + _AX_LUA_CHK_IS_INTRP([$ax_cv_pathless_LUA], [], [continue]) + _AX_LUA_CHK_VER([$ax_cv_pathless_LUA], [$1], [$2], [break]) +@@ -285,18 +275,6 @@ AC_DEFUN([AX_PROG_LUA], + AC_SUBST([LUA_VERSION], [$ax_cv_lua_version]) + AC_SUBST([LUA_SHORT_VERSION], [`echo "$LUA_VERSION" | $SED 's|\.||'`]) + +- AM_COND_IF([LUAJIT], [ +- AC_CACHE_CHECK([for $ax_display_LUA jit version], [ax_cv_luajit_version], +- [ ax_cv_luajit_version=[`$LUA -e ' +- local _, _, ver = string.find(jit and jit.version, "(%d+%..+)") +- print(ver or "")'`] +- ]) +- AS_IF([test "x$ax_cv_luajit_version" = 'x'], +- [AC_MSG_ERROR([invalid Lua jit version number])]) +- AC_SUBST([LUAJIT_VERSION], [$ax_cv_luajit_version]) +- AC_SUBST([LUAJIT_SHORT_VERSION], [$(echo "$LUAJIT_VERSION" | $SED 's|\.|§|;s|\..*||;s|§|.|')]) +- ]) +- + dnl The following check is not supported: + dnl At times (like when building shared libraries) you may want to know + dnl which OS platform Lua thinks this is. +@@ -486,50 +464,33 @@ AC_DEFUN([AX_LUA_HEADERS], + AC_MSG_ERROR([cannot check Lua headers without knowing LUA_VERSION]) + ]) + +- AM_COND_IF([LUAJIT],[ +- dnl Check for LUAJIT_VERSION. +- AC_MSG_CHECKING([if LUAJIT_VERSION is defined]) +- AS_IF([test "x$LUAJIT_VERSION" != 'x'], +- [AC_MSG_RESULT([yes])], +- [ AC_MSG_RESULT([no]) +- AC_MSG_ERROR([cannot check Lua jit headers without knowing LUAJIT_VERSION]) +- ]) +- ]) +- + dnl Make LUA_INCLUDE a precious variable. + AC_ARG_VAR([LUA_INCLUDE], [The Lua includes, e.g. -I/usr/include/lua5.1]) + +- dnl Some default directories to search. +- AM_COND_IF([LUAJIT], +- [_ax_lua_include_list=" +- /usr/include/luajit-$LUAJIT_VERSION +- /usr/include/luajit-$LUAJIT_SHORT_VERSION +- /usr/local/include/luajit-$LUAJIT_VERSION +- /usr/local/include/luajit-$LUAJIT_SHORT_VERSION"], +- [_ax_lua_include_list=" +- /usr/include/lua$LUA_VERSION +- /usr/include/lua-$LUA_VERSION +- /usr/include/lua/$LUA_VERSION +- /usr/include/lua$LUA_SHORT_VERSION +- /usr/local/include/lua$LUA_VERSION +- /usr/local/include/lua-$LUA_VERSION +- /usr/local/include/lua/$LUA_VERSION +- /usr/local/include/lua$LUA_SHORT_VERSION"]) ++ dnl Some default directories to search. ++ LUA_SHORT_VERSION=`echo "$LUA_VERSION" | $SED 's|\.||'` ++ m4_define_default([_AX_LUA_INCLUDE_LIST], ++ [ /usr/include/lua$LUA_VERSION \ ++ /usr/include/lua-$LUA_VERSION \ ++ /usr/include/lua/$LUA_VERSION \ ++ /usr/include/lua$LUA_SHORT_VERSION \ ++ /usr/local/include/lua$LUA_VERSION \ ++ /usr/local/include/lua-$LUA_VERSION \ ++ /usr/local/include/lua/$LUA_VERSION \ ++ /usr/local/include/lua$LUA_SHORT_VERSION \ ++ ]) + + dnl Try to find the headers. + _ax_lua_saved_cppflags=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $LUA_INCLUDE" + AC_CHECK_HEADERS([lua.h lualib.h lauxlib.h luaconf.h]) +- AM_COND_IF([LUAJIT], [AC_CHECK_HEADERS([luajit.h])]) + CPPFLAGS=$_ax_lua_saved_cppflags + + dnl Try some other directories if LUA_INCLUDE was not set. + AS_IF([test "x$LUA_INCLUDE" = 'x' && +- test "x$ac_cv_header_lua_h" != 'xyes' || +- test "x$with_luajit" != 'xno' && +- test "x$ac_cv_header_luajit_h" != 'xyes'], ++ test "x$ac_cv_header_lua_h" != 'xyes'], + [ dnl Try some common include paths. +- for _ax_include_path in $_ax_lua_include_list; do ++ for _ax_include_path in _AX_LUA_INCLUDE_LIST; do + test ! -d "$_ax_include_path" && continue + + AC_MSG_CHECKING([for Lua headers in]) +@@ -539,12 +500,10 @@ AC_DEFUN([AX_LUA_HEADERS], + AS_UNSET([ac_cv_header_lualib_h]) + AS_UNSET([ac_cv_header_lauxlib_h]) + AS_UNSET([ac_cv_header_luaconf_h]) +- AS_UNSET([ac_cv_header_luajit_h]) + + _ax_lua_saved_cppflags=$CPPFLAGS + CPPFLAGS="$CPPFLAGS -I$_ax_include_path" + AC_CHECK_HEADERS([lua.h lualib.h lauxlib.h luaconf.h]) +- AM_COND_IF([LUAJIT], [AC_CHECK_HEADERS([luajit.h])]) + CPPFLAGS=$_ax_lua_saved_cppflags + + AS_IF([test "x$ac_cv_header_lua_h" = 'xyes'], +@@ -662,26 +621,16 @@ AC_DEFUN([AX_LUA_LIBS], + dnl Try to find the Lua libs. + _ax_lua_saved_libs=$LIBS + LIBS="$LIBS $LUA_LIB" +- AM_COND_IF([LUAJIT], +- [AC_SEARCH_LIBS([lua_load], +- [ luajit$LUA_VERSION \ +- luajit$LUA_SHORT_VERSION \ +- luajit-$LUA_VERSION \ +- luajit-$LUA_SHORT_VERSION \ +- luajit], +- [_ax_found_lua_libs='yes'], +- [_ax_found_lua_libs='no'], +- [$_ax_lua_extra_libs])], +- [AC_SEARCH_LIBS([lua_load], +- [ lua$LUA_VERSION \ +- lua$LUA_SHORT_VERSION \ +- lua-$LUA_VERSION \ +- lua-$LUA_SHORT_VERSION \ +- lua \ +- ], +- [_ax_found_lua_libs='yes'], +- [_ax_found_lua_libs='no'], +- [$_ax_lua_extra_libs])]) ++ AC_SEARCH_LIBS([lua_load], ++ [ lua$LUA_VERSION \ ++ lua$LUA_SHORT_VERSION \ ++ lua-$LUA_VERSION \ ++ lua-$LUA_SHORT_VERSION \ ++ lua \ ++ ], ++ [_ax_found_lua_libs='yes'], ++ [_ax_found_lua_libs='no'], ++ [$_ax_lua_extra_libs]) + LIBS=$_ax_lua_saved_libs + + AS_IF([test "x$ac_cv_search_lua_load" != 'xno' && + diff --git a/dev-build/autoconf-archive/metadata.xml b/dev-build/autoconf-archive/metadata.xml new file mode 100644 index 000000000000..9eca8509dc82 --- /dev/null +++ b/dev-build/autoconf-archive/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <stabilize-allarches/> + <upstream> + <remote-id type="github">autoconf-archive/autoconf-archive</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/autoconf-dickey/Manifest b/dev-build/autoconf-dickey/Manifest new file mode 100644 index 000000000000..30238c6c9c6c --- /dev/null +++ b/dev-build/autoconf-dickey/Manifest @@ -0,0 +1,4 @@ +DIST autoconf-2.52-20250126.tgz 870349 BLAKE2B 22e339cdd2187b84ab3260c2596899a2ab3278e097527257568d87714655fc94a38961134b9c73a7f9f13179eb46592cc8672b10dea41cf3c260d4b66f3b0e93 SHA512 a0d93311bc49580d6ee26434a033ddc0a7d66e9ec52f91f990dc5bd86193737dc59ef9bdfee1cd1357750969a92254cf01a051bcf412fc9e0162025e922cb9a0 +DIST autoconf-2.52-20250126.tgz.asc 729 BLAKE2B 00b1edcc8442a7c9ced194038e7aedf616e4caadb1a8a59b2688d7cc45cf735c8cdf03e7ef9def8898baa7aad2b3a78f98f063eeaff0b88b5783a464e76b1d65 SHA512 633d435cbc557067216d34106a41c62a9e8cf19b2e1ac4acc8d46d63cd32ebb6ea8b888f9ca43bee47590f315577cdd41a72a733f84ff860b981b3362e5f251e +DIST autoconf-2.52-20260412.tgz 873792 BLAKE2B 6232b9489bd616cbccf6044ac26246bd250d9dc0cec0d3b271b1dac6c5f2e78a346844d193cfda66a4689b56f49daedf835257213986c7c909498337718f384d SHA512 7cc9be0a8655f0acea60b0b31d10b6c0160747fdb8b4e8777d1796a0be15c34f40a2aefd8a3b0ed3364ea3cd5cccfe42865988592e44eef567bc8b84c11b691f +DIST autoconf-2.52-20260412.tgz.asc 729 BLAKE2B 0815087c35e64649dd50dcf80d379c447e3685a26d7ba407d20038fde3f59ba255e1a9dc7f050b54b102f8848ab48c5dac7135c27af522c385c086ff505c47ea SHA512 273bb77f4a5f1060eccebc9d76bf2c50a64b47aca82d514cc2e898e7a44e614fc188b932abe8e28c769dab50cb792a8b1a7a91c259750436bd17f6f747560848 diff --git a/dev-build/autoconf-dickey/autoconf-dickey-2.52_p20250126.ebuild b/dev-build/autoconf-dickey/autoconf-dickey-2.52_p20250126.ebuild new file mode 100644 index 000000000000..41020e9d5bc6 --- /dev/null +++ b/dev-build/autoconf-dickey/autoconf-dickey-2.52_p20250126.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# TODO: adapt toolchain-autoconf to take econf args? +# TODO: review our old autoconf-2.52 patches? + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomasdickey.asc +inherit verify-sig + +MY_P=${PN/-dickey}-${PV/_p/-} +DESCRIPTION="Fork of dev-build/autoconf for Thomas Dickey's packages" +HOMEPAGE="https://invisible-island.net/autoconf/autoconf.html" +SRC_URI="https://invisible-island.net/archives/autoconf/${MY_P}.tgz" +SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/autoconf/${MY_P}.tgz.asc )" +S="${WORKDIR}"/${MY_P} + +LICENSE="GPL-2" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris" + +RDEPEND=" + >=sys-devel/m4-1.4.16 + >=dev-lang/perl-5.6 +" +BDEPEND=" + ${RDEPEND} + verify-sig? ( sec-keys/openpgp-keys-thomasdickey ) +" + +src_prepare() { + # usr/bin/libtool is provided by binutils-apple, need gnu libtool + #if [[ ${CHOST} == *-darwin* ]] ; then + # PATCHES+=( "${FILESDIR}"/${PN}-2.61-darwin.patch ) + #fi + + default +} + +src_configure() { + local myeconfargs=( + --datadir="${EPREFIX}"/usr/share/${PN} + --program-suffix=-dickey + ) + + econf "${myeconfargs[@]}" +} + +src_test() { + # -j1 for bug #869278 + emake -j1 check +} diff --git a/dev-build/autoconf-dickey/autoconf-dickey-2.52_p20260412.ebuild b/dev-build/autoconf-dickey/autoconf-dickey-2.52_p20260412.ebuild new file mode 100644 index 000000000000..41a057a3193e --- /dev/null +++ b/dev-build/autoconf-dickey/autoconf-dickey-2.52_p20260412.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# TODO: adapt toolchain-autoconf to take econf args? +# TODO: review our old autoconf-2.52 patches? + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomasdickey.asc +inherit verify-sig + +MY_P=${PN/-dickey}-${PV/_p/-} +DESCRIPTION="Fork of dev-build/autoconf for Thomas Dickey's packages" +HOMEPAGE="https://invisible-island.net/autoconf/autoconf.html" +SRC_URI="https://invisible-island.net/archives/autoconf/${MY_P}.tgz" +SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/autoconf/${MY_P}.tgz.asc )" +S="${WORKDIR}"/${MY_P} + +LICENSE="GPL-2" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris" + +RDEPEND=" + >=sys-devel/m4-1.4.16 + >=dev-lang/perl-5.6 +" +BDEPEND=" + ${RDEPEND} + verify-sig? ( sec-keys/openpgp-keys-thomasdickey ) +" + +src_prepare() { + # usr/bin/libtool is provided by binutils-apple, need gnu libtool + #if [[ ${CHOST} == *-darwin* ]] ; then + # PATCHES+=( "${FILESDIR}"/${PN}-2.61-darwin.patch ) + #fi + + default +} + +src_configure() { + local myeconfargs=( + --datadir="${EPREFIX}"/usr/share/${PN} + --program-suffix=-dickey + ) + + econf "${myeconfargs[@]}" +} + +src_test() { + # -j1 for bug #869278 + emake -j1 check +} diff --git a/dev-build/autoconf-dickey/metadata.xml b/dev-build/autoconf-dickey/metadata.xml new file mode 100644 index 000000000000..af5286fc415a --- /dev/null +++ b/dev-build/autoconf-dickey/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <upstream> + <changelog>https://invisible-island.net/autoconf/autoconf-252/ChangeLog</changelog> + <remote-id type="github">ThomasDickey/my-autoconf-snapshots</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/autoconf-vanilla/Manifest b/dev-build/autoconf-vanilla/Manifest new file mode 100644 index 000000000000..c21b71925bb7 --- /dev/null +++ b/dev-build/autoconf-vanilla/Manifest @@ -0,0 +1,7 @@ +DIST autoconf-2.13.tar.gz 443844 BLAKE2B ade10f9d4a0b1a0e8b752eee817cfe100d77b074192b9892330402ddc5b62dda1a3485ce0c36e72191daa9fd49382b99851cb6aa3a13aca8cf2ae6e884638fb6 SHA512 602584f4c77b7a554aaa068eda5409b68eb0b3229e9c224bffb91c83c4314d25de15bd560a323626ff78f6df339c79e1ef8938c54b78ecadf4dc75c5241290ad +DIST autoconf-2.69-runstatedir_patches.tar.xz 257096 BLAKE2B ae765e0ca7fe8261117f6f6b75611c232fc3d4016c22c86346afa72f2b7e6c3b7ccc1f9dfe134b2443f8bde6d578b503d79cf88472f76ce75b6c2e843ef55b8e SHA512 55f93299fe5243151f6bb782986a7935270f06d5065929f4d365a37aba05703e3ce66ecf7981d30413db50ee6b4f77d81d10a71b539c8a366c5c5a156c5443da +DIST autoconf-2.69.tar.xz 1214744 BLAKE2B 71d33d72a06e9a05fbed0eda73bc9d8a3805c7c90bf082959862f93f3c5f01192114176e84d84ecb58fa99512eafbc0ab21ad1407be18c8c63bb3dc1117c482d SHA512 995d3e5a8eb1eb37e2b7fae53c6ec7a9b4df997286b7d643344818f94636756b1bf5ff5ea9155e755cb9461149a853dfbf2886fc6bd7132e5afa9c168e306e9b +DIST autoconf-2.69.tar.xz.sig 556 BLAKE2B 07eaae3429f4bbd3ea40b4b366db383d9e322b03def7956f8961a20a6759072e8c327d4723313097f75caba0513928c37270beda8f8b491888fdd47a2ee80ad6 SHA512 e54082e00522463ba7d6b6ea6d700b8799a41177b34e057dd72abbe46219f0ce58674575d60fb106e37deeee8871d4ccfd85746c2d0e096a71eb096ffdb3020c +DIST autoconf-2.71.tar.xz 1292296 BLAKE2B 7fd4b98b4cfff10720e8da6ee91045637991643b50fcb3e47a0ecfcc01600f7b7b36fd1c0a5f08b68a418f1bdbd8d5a98de1008157595dd37cc3a31facb61416 SHA512 73d32b4adcbe24e3bafa9f43f59ed3b6efbd3de0f194e5ec90375f35da1199c583f5d3e89139b7edbad35171403709270e339ffa56a2ecb9b3123e9285021ff0 +DIST autoconf-2.72.tar.xz 1389680 BLAKE2B 01caeced9e53d8bd39fb0cf4929322f0d463971b0a96368aa55892026897a9e98c2ca84a77db1b3c6c4483aea54b96da16a7bc00b7ac15e23c6b0471438012db SHA512 c4e9fbd858666d3e5c3b4fe7f89aa3e8e3a0a00dc7e166f8147d937d911b77ba3ac6a016f9d223ccdd830bc8960b3e60397c0607cc6a1fd2c50c7492839ddd17 +DIST autoconf-2.72.tar.xz.sig 833 BLAKE2B cc33101c5d2bd28f233e54a2843d3c81dc9729238b0900a8f23ef17b982aa0e0194892c07b1365246b6c9c0ea74becd288ae581ee34d593131b83538c69a6204 SHA512 7a0d350b23cf47c45811ae35928a4fec67ce1f3adb1965904fe6d9a0fad68139df4902662bcf4731a2f809381cae0b265a8f1f57d0a9a39777250a97a3c481d9 diff --git a/dev-build/autoconf-vanilla/autoconf-vanilla-2.13-r1.ebuild b/dev-build/autoconf-vanilla/autoconf-vanilla-2.13-r1.ebuild new file mode 100644 index 000000000000..7c7ecd771344 --- /dev/null +++ b/dev-build/autoconf-vanilla/autoconf-vanilla-2.13-r1.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please do not apply any patches which affect the generated output from +# `autoconf`, as this package is used to submit patches upstream. + +inherit toolchain-autoconf + +MY_PN=${PN/-vanilla} +MY_P=${MY_PN}-${PV} + +DESCRIPTION="Used to create autoconfiguration files" +HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" +SRC_URI="mirror://gnu/${MY_PN}/${MY_P}.tar.gz" +S="${WORKDIR}"/${MY_P} + +LICENSE="GPL-2" +SLOT="${PV:0:3}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + dev-lang/perl + sys-devel/m4 + test? ( dev-util/dejagnu ) +" +RDEPEND=" + ${BDEPEND} + sys-apps/texinfo + >=dev-build/autoconf-wrapper-13 +" + +PATCHES=( + "${FILESDIR}"/${MY_P}-gentoo.patch + "${FILESDIR}"/${MY_P}-destdir.patch + "${FILESDIR}"/${MY_P}-test-fixes.patch #146592 + "${FILESDIR}"/${MY_P}-perl-5.26.patch +) + +src_configure() { + # need to include --exec-prefix and --bindir or our + # DESTDIR patch will trigger sandbox hate :( + # + # need to force locale to C to avoid bugs in the old + # configure script breaking the install paths #351982 + # + # force to `awk` so that we don't encode another awk that + # happens to currently be installed, but might later be + # uninstalled (like mawk). same for m4. + export ac_cv_path_M4="m4" ac_cv_prog_AWK="awk" + export LC_ALL=C + + toolchain-autoconf_src_configure \ + --exec-prefix="${EPREFIX}"/usr \ + --bindir="${EPREFIX}"/usr/bin \ + --datadir="${EPREFIX}"/usr/share/"${P}" \ + --infodir="${TC_AUTOCONF_INFOPATH}" +} + +src_install() { + toolchain-autoconf_src_install + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir +} diff --git a/dev-build/autoconf-vanilla/autoconf-vanilla-2.69-r2.ebuild b/dev-build/autoconf-vanilla/autoconf-vanilla-2.69-r2.ebuild new file mode 100644 index 000000000000..f53aab4834fd --- /dev/null +++ b/dev-build/autoconf-vanilla/autoconf-vanilla-2.69-r2.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please do not apply any patches which affect the generated output from +# `autoconf`, as this package is used to submit patches upstream. + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" + inherit git-r3 +else + MY_PN=${PN/-vanilla} + MY_P=${MY_PN}-${PV} + + # Eric Blake signed 2.69 so use sec-keys/openpgp-keys-m4 + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/m4.asc + inherit verify-sig + + SRC_URI=" + mirror://gnu/${MY_PN}/${MY_P}.tar.xz + https://dev.gentoo.org/~polynomial-c/dist/${MY_P}-runstatedir_patches.tar.xz + verify-sig? ( mirror://gnu/${MY_PN}/${MY_P}.tar.xz.sig ) + " + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-m4 )" +fi + +S="${WORKDIR}"/${MY_P} + +inherit toolchain-autoconf + +DESCRIPTION="Used to create autoconfiguration files" +HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" + +LICENSE="GPL-3+" +SLOT="${PV}" + +BDEPEND+=" + >=sys-devel/m4-1.4.16 + >=dev-lang/perl-5.6 +" +RDEPEND=" + ${BDEPEND} + >=dev-build/autoconf-wrapper-13 + !~dev-build/${P}:2.5 +" + +[[ ${PV} == 9999 ]] && BDEPEND+=" >=sys-apps/texinfo-4.3" + +PATCHES=( + "${FILESDIR}"/${MY_PN}-2.69-perl-5.26.patch + "${FILESDIR}"/${MY_P}-fix-libtool-test.patch + "${FILESDIR}"/${MY_PN}-2.69-perl-5.26-2.patch + "${FILESDIR}"/${MY_P}-make-tests-bash5-compatible.patch + + "${WORKDIR}"/patches/${MY_P}-texinfo.patch +) + +TC_AUTOCONF_ENVPREFIX=07 + +src_unpack() { + if use verify-sig ; then + # Needed for downloaded patch (which is unsigned, which is fine) + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sig} + fi + + default +} + +src_prepare() { + # usr/bin/libtool is provided by binutils-apple, need gnu libtool + if [[ ${CHOST} == *-darwin* ]] ; then + PATCHES+=( "${FILESDIR}"/${MY_PN}-2.61-darwin.patch ) + fi + + # Save timestamp to avoid later makeinfo call + touch -r doc/{,old_}autoconf.texi || die + + toolchain-autoconf_src_prepare + + # Restore timestamp to avoid makeinfo call + # We already have an up to date autoconf.info page at this point. + touch -r doc/{old_,}autoconf.texi || die + + # This version uses recursive makefiles. As this code is dead by + # now, and this 'fix' is getting hacked in from the future back into + # the past, I doubt that the sins committed below will have a wide + # impact. Don't copy this code. + find . \ + -name Makefile.in \ + -execdir sed -i '/^pkgdatadir/s/@PACKAGE@/&-vanilla/g' {} + \ + || die +} + +src_install() { + toolchain-autoconf_src_install + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir +} diff --git a/dev-build/autoconf-vanilla/autoconf-vanilla-2.71-r2.ebuild b/dev-build/autoconf-vanilla/autoconf-vanilla-2.71-r2.ebuild new file mode 100644 index 000000000000..c23552cdcafa --- /dev/null +++ b/dev-build/autoconf-vanilla/autoconf-vanilla-2.71-r2.ebuild @@ -0,0 +1,93 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please do not apply any patches which affect the generated output from +# `autoconf`, as this package is used to submit patches upstream. + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" + inherit git-r3 +else + MY_PN=${PN/-vanilla} + MY_P=${MY_PN}-${PV} + + SRC_URI=" + mirror://gnu/${MY_PN}/${MY_P}.tar.xz + https://alpha.gnu.org/pub/gnu/${MY_PN}/${MY_P}.tar.xz + " + + if ! [[ ${PV} == *_beta* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain-autoconf + +DESCRIPTION="Used to create autoconfiguration files" +HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" + +LICENSE="GPL-3+" +SLOT="${PV/_*}" + +# for 2.71, our Perl time resolution patch changes our min Perl from 5.6 +# (vanilla upstream for 2.71) to 5.8. +BDEPEND=">=sys-devel/m4-1.4.16 + >=dev-lang/perl-5.8" +RDEPEND="${BDEPEND} + >=dev-build/autoconf-wrapper-15 + sys-devel/gnuconfig + !~dev-build/${P}:2.5" +[[ ${PV} == 9999 ]] && BDEPEND+=" >=sys-apps/texinfo-4.3" + +PATCHES=( + "${FILESDIR}"/${MY_P}-AC_LANG_CALL_C_cxx.patch + "${FILESDIR}"/${MY_P}-time.patch + "${FILESDIR}"/${MY_P}-make-4.4.patch + "${FILESDIR}"/"${MY_P}"-conflicts.patch +) + +TC_AUTOCONF_ENVPREFIX=07 + +src_prepare() { + # usr/bin/libtool is provided by binutils-apple, need gnu libtool + if [[ ${CHOST} == *-darwin* ]] ; then + PATCHES+=( "${FILESDIR}"/${MY_PN}-2.71-darwin.patch ) + fi + + # Save timestamp to avoid later makeinfo call + touch -r doc/{,old_}autoconf.texi || die + + local pdir + for pdir in "${WORKDIR}"/{upstream_,}patches ; do + if [[ -d "${pdir}" ]] ; then + eapply ${pdir} + fi + done + + toolchain-autoconf_src_prepare + + # Restore timestamp to avoid makeinfo call + # We already have an up to date autoconf.info page at this point. + touch -r doc/{old_,}autoconf.texi || die +} + +src_test() { + emake check +} + +src_install() { + toolchain-autoconf_src_install + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + local f + for f in config.{guess,sub} ; do + ln -fs ../../gnuconfig/${f} \ + "${ED}"/usr/share/autoconf-*/build-aux/${f} || die + done +} diff --git a/dev-build/autoconf-vanilla/autoconf-vanilla-2.72-r2.ebuild b/dev-build/autoconf-vanilla/autoconf-vanilla-2.72-r2.ebuild new file mode 100644 index 000000000000..9dfa46167aa1 --- /dev/null +++ b/dev-build/autoconf-vanilla/autoconf-vanilla-2.72-r2.ebuild @@ -0,0 +1,104 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please do not apply any patches which affect the generated output from +# `autoconf`, as this package is used to submit patches upstream. + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" + inherit git-r3 +else + MY_PN=${PN/-vanilla} + # For _beta handling replace with real version number + MY_PV="${PV}" + MY_P="${MY_PN}-${MY_PV}" + #PATCH_TARBALL_NAME="${MY_PN}-2.70-patches-01" + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/zackweinberg.asc + inherit verify-sig + + SRC_URI=" + mirror://gnu/${MY_PN}/${MY_P}.tar.xz + https://alpha.gnu.org/pub/gnu/${MY_PN}/${MY_P}.tar.xz + https://meyering.net/ac/${MY_P}.tar.xz + verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.xz.sig ) + " + S="${WORKDIR}"/${MY_P} + + if [[ ${PV} != *_beta* ]] && ! [[ $(ver_cut 3) =~ [a-z] ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-zackweinberg )" +fi + +inherit toolchain-autoconf + +DESCRIPTION="Used to create autoconfiguration files" +HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" + +LICENSE="GPL-3+" +SLOT="$(ver_cut 1-2)" + +BDEPEND+=" + >=dev-lang/perl-5.10 + >=sys-devel/m4-1.4.16 +" +RDEPEND=" + ${BDEPEND} + >=dev-build/autoconf-wrapper-15 + !~dev-build/${P}:2.5 + sys-devel/gnuconfig +" +[[ ${PV} == 9999 ]] && BDEPEND+=" >=sys-apps/texinfo-4.3" + +PATCHES=( + "${FILESDIR}"/"${MY_P}"-conflicts.patch +) + +TC_AUTOCONF_ENVPREFIX=07 + +src_prepare() { + if [[ ${PV} == *9999 ]] ; then + # Avoid the "dirty" suffix in the git version by generating it + # before we run later stages which might modify source files. + local ver=$(./build-aux/git-version-gen .tarball-version) + echo "${ver}" > .tarball-version || die + + autoreconf -f -i || die + fi + + # usr/bin/libtool is provided by binutils-apple, need gnu libtool + if [[ ${CHOST} == *-darwin* ]] ; then + PATCHES+=( "${FILESDIR}"/${MY_PN}-2.71-darwin.patch ) + fi + + # Save timestamp to avoid later makeinfo call + touch -r doc/{,old_}autoconf.texi || die + + toolchain-autoconf_src_prepare + + # Restore timestamp to avoid makeinfo call + # We already have an up to date autoconf.info page at this point. + touch -r doc/{old_,}autoconf.texi || die +} + +src_test() { + emake check +} + +src_install() { + toolchain-autoconf_src_install + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + local f + for f in config.{guess,sub} ; do + ln -fs ../../gnuconfig/${f} \ + "${ED}"/usr/share/autoconf-*/build-aux/${f} || die + done +} diff --git a/dev-build/autoconf-vanilla/autoconf-vanilla-9999.ebuild b/dev-build/autoconf-vanilla/autoconf-vanilla-9999.ebuild new file mode 100644 index 000000000000..19b1e94896b0 --- /dev/null +++ b/dev-build/autoconf-vanilla/autoconf-vanilla-9999.ebuild @@ -0,0 +1,104 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please do not apply any patches which affect the generated output from +# `autoconf`, as this package is used to submit patches upstream. + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" + inherit git-r3 +else + MY_PN=${PN/-vanilla} + # For _beta handling replace with real version number + MY_PV="${PV}" + MY_P="${MY_PN}-${MY_PV}" + #PATCH_TARBALL_NAME="${MY_PN}-2.70-patches-01" + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/zackweinberg.asc + inherit verify-sig + + SRC_URI=" + mirror://gnu/${MY_PN}/${MY_P}.tar.xz + https://alpha.gnu.org/pub/gnu/${MY_PN}/${MY_P}.tar.xz + https://meyering.net/ac/${MY_P}.tar.xz + verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.xz.sig ) + " + S="${WORKDIR}"/${MY_P} + + if [[ ${PV} != *_beta* ]] && ! [[ $(ver_cut 3) =~ [a-z] ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-zackweinberg )" +fi + +inherit toolchain-autoconf + +DESCRIPTION="Used to create autoconfiguration files" +HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" + +LICENSE="GPL-3+" +SLOT="$(ver_cut 1-2)" + +BDEPEND+=" + >=dev-lang/perl-5.10 + >=sys-devel/m4-1.4.16 +" +RDEPEND=" + ${BDEPEND} + >=dev-build/autoconf-wrapper-15 + sys-devel/gnuconfig + !~dev-build/${P}:2.5 +" +[[ ${PV} == 9999 ]] && BDEPEND+=" >=sys-apps/texinfo-4.3" + +PATCHES=( + "${FILESDIR}"/"${MY_P}"-conflicts.patch +) + +TC_AUTOCONF_ENVPREFIX=07 + +src_prepare() { + if [[ ${PV} == *9999 ]] ; then + # Avoid the "dirty" suffix in the git version by generating it + # before we run later stages which might modify source files. + local ver=$(./build-aux/git-version-gen .tarball-version) + echo "${ver}" > .tarball-version || die + + autoreconf -f -i || die + fi + + # usr/bin/libtool is provided by binutils-apple, need gnu libtool + if [[ ${CHOST} == *-darwin* ]] ; then + PATCHES+=( "${FILESDIR}"/${MY_PN}-2.71-darwin.patch ) + fi + + # Save timestamp to avoid later makeinfo call + touch -r doc/{,old_}autoconf.texi || die + + toolchain-autoconf_src_prepare + + # Restore timestamp to avoid makeinfo call + # We already have an up to date autoconf.info page at this point. + touch -r doc/{old_,}autoconf.texi || die +} + +src_test() { + emake check +} + +src_install() { + toolchain-autoconf_src_install + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + local f + for f in config.{guess,sub} ; do + ln -fs ../../gnuconfig/${f} \ + "${ED}"/usr/share/autoconf-*/build-aux/${f} || die + done +} diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.13-destdir.patch b/dev-build/autoconf-vanilla/files/autoconf-2.13-destdir.patch new file mode 100644 index 000000000000..47605af5f59c --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.13-destdir.patch @@ -0,0 +1,26 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -41,18 +41,18 @@ + + transform=@program_transform_name@ + +-prefix = @prefix@ ++prefix = $(DESTDIR)@prefix@ +-exec_prefix = @exec_prefix@ ++exec_prefix = $(DESTDIR)@exec_prefix@ + + # Directory in which to install scripts. +-bindir = @bindir@ ++bindir = $(DESTDIR)@bindir@ + + # Directory in which to install library files. +-datadir = @datadir@ ++datadir = $(DESTDIR)@datadir@ + acdatadir = $(datadir)/autoconf + + # Directory in which to install documentation info files. +-infodir = @infodir@ ++infodir = $(DESTDIR)@infodir@ + + #### End of system configuration section. #### + diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.13-gentoo.patch b/dev-build/autoconf-vanilla/files/autoconf-2.13-gentoo.patch new file mode 100644 index 000000000000..44f09cba92f0 --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.13-gentoo.patch @@ -0,0 +1,36 @@ +--- a/configure ++++ b/configure +@@ -654,12 +654,10 @@ + echo "$ac_t""no" 1>&6 + fi + +-if test "$PERL" != no; then +- SCRIPTS=autoscan +-else +- echo "configure: warning: autoscan will not be built since perl is not found" 1>&2 ++if test "$PERL" = no; then ++ PERL=/usr/bin/perl + fi +- ++SCRIPTS=autoscan + ac_aux_dir= + for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do + if test -f $ac_dir/install-sh; then +--- a/configure.in ++++ b/configure.in +@@ -14,12 +14,10 @@ + AC_PATH_PROG(PERL, perl, no) + AC_SUBST(PERL)dnl + AC_SUBST(SCRIPTS)dnl +-if test "$PERL" != no; then +- SCRIPTS=autoscan +-else +- AC_MSG_WARN(autoscan will not be built since perl is not found) ++if test "$PERL" = no; then ++ PERL=/usr/bin/perl + fi +- ++SCRIPTS=autoscan + AC_PROG_INSTALL + + # Work with the GNU or Cygnus source tree layout. diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.13-perl-5.26.patch b/dev-build/autoconf-vanilla/files/autoconf-2.13-perl-5.26.patch new file mode 100644 index 000000000000..6fbc0cd1bc89 --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.13-perl-5.26.patch @@ -0,0 +1,12 @@ +diff -ruN autoconf-2.13.orig/autoscan.pl autoconf-2.13/autoscan.pl +--- autoconf-2.13.orig/autoscan.pl 1999-01-05 14:28:42.000000000 +0100 ++++ autoconf-2.13/autoscan.pl 2018-12-22 19:55:10.986732296 +0100 +@@ -232,7 +232,7 @@ + # Strip out comments and variable references. + s/#.*//; + s/\$\([^\)]*\)//g; +- s/\${[^\}]*}//g; ++ s/\$\{[^\}]*}//g; + s/@[^@]*@//g; + + # Variable assignments. diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.13-test-fixes.patch b/dev-build/autoconf-vanilla/files/autoconf-2.13-test-fixes.patch new file mode 100644 index 000000000000..b8a7e3b8ce99 --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.13-test-fixes.patch @@ -0,0 +1,18 @@ +newer gcc versions don't provide g77, so if it doesn't exist, +don't bother trying to test it (and failing) + +http://bugs.gentoo.org/146592 + +--- autoconf-2.13/testsuite/autoconf.s/syntax.exp ++++ autoconf-2.13/testsuite/autoconf.s/syntax.exp +@@ -5,6 +5,10 @@ + set macros [exec sed -n $script $srcdir/../acspecific.m4] + + foreach mac $macros { ++ if { [string match "*F77*" "$mac"] && [catch {exec which g77} ignore_output] } then { ++ send_user "XFAIL: $mac\n" ++ continue ++ } + send_user "$mac\n" + autoconf_test $mac $mac + } diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.61-darwin.patch b/dev-build/autoconf-vanilla/files/autoconf-2.61-darwin.patch new file mode 100644 index 000000000000..83f450e6f5af --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.61-darwin.patch @@ -0,0 +1,11 @@ +--- a/bin/autoreconf.in ++++ b/bin/autoreconf.in +@@ -110,7 +110,7 @@ + my $autoheader = $ENV{'AUTOHEADER'} || '@bindir@/@autoheader-name@'; + my $automake = $ENV{'AUTOMAKE'} || 'automake'; + my $aclocal = $ENV{'ACLOCAL'} || 'aclocal'; +-my $libtoolize = $ENV{'LIBTOOLIZE'} || 'libtoolize'; ++my $libtoolize = $ENV{'LIBTOOLIZE'} || 'glibtoolize'; + my $autopoint = $ENV{'AUTOPOINT'} || 'autopoint'; + + # --install -- as --add-missing in other tools. diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.69-fix-libtool-test.patch b/dev-build/autoconf-vanilla/files/autoconf-2.69-fix-libtool-test.patch new file mode 100644 index 000000000000..e75eba621606 --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.69-fix-libtool-test.patch @@ -0,0 +1,31 @@ +From 247b02e5a5bb79ca6666e91de02ae2d3cb0cd325 Mon Sep 17 00:00:00 2001 +From: "Gary V. Vaughan" <gary@gnu.org> +Date: Mon, 3 Nov 2014 07:25:03 +0100 +Subject: tests: avoid spurious test failure with libtool 2.4.3 + +Based on a report by Bruce Dubbs. + +* tests/foreign.at (Libtool): Be tolerant of 'quote' replacing the +older `quote'. + +Signed-off-by: Eric Blake <eblake@redhat.com> +--- + tests/foreign.at | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/foreign.at b/tests/foreign.at +index a9dc33c..d4702cd 100644 +--- a/tests/foreign.at ++++ b/tests/foreign.at +@@ -57,7 +57,7 @@ AT_CHECK([./config.guess || exit 77], [], [ignore], [ignore]) + # Make sure at-path contains something valid, and let the test suite + # display it when verbose. And fail, skipping would too easily hide + # problems. +-AT_CHECK([sed -n ["s,^.*\`\\(/[^']*\\)'.*,\\1,p"] stdout], [0], [stdout]) ++AT_CHECK([sed -n ["s,^[^']*[\`']\\(/[^']*\\)'.*,\\1,p"] stdout], [0], [stdout]) + AT_CHECK([test -f "`sed -n 1p stdout`"]) + + # Older libtoolize installed everything but install-sh... +-- +cgit v1.0-41-gc330 + diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.69-make-tests-bash5-compatible.patch b/dev-build/autoconf-vanilla/files/autoconf-2.69-make-tests-bash5-compatible.patch new file mode 100644 index 000000000000..1afcec15bb4f --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.69-make-tests-bash5-compatible.patch @@ -0,0 +1,63 @@ +From 5b9db67786a428164abafe626ab11a2754aad528 Mon Sep 17 00:00:00 2001 +From: Ondrej Dubaj <odubaj@redhat.com> +Date: Wed, 28 Aug 2019 07:39:50 +0200 +Subject: Port tests to Bash 5 + +* tests/local.at (AT_CHECK_ENV, AT_CONFIG_CMP): +Add BASH_ARGC, BASH_ARGV to list of variables to be ignored when +comparing variable space dumps. +(AT_CONFIG_CMP): Also ignore LINENO. +* tests/m4sh.at: Also unset LINENO in 'reference' and 'test/test-1'. +--- + tests/local.at | 5 ++++- + tests/m4sh.at | 4 ++-- + 2 files changed, 6 insertions(+), 3 deletions(-) + +diff --git a/tests/local.at b/tests/local.at +index a22958c0..852be285 100644 +--- a/tests/local.at ++++ b/tests/local.at +@@ -325,7 +325,7 @@ if test -f state-env.before && test -f state-env.after; then + [AWK|LEX|LEXLIB|LEX_OUTPUT_ROOT|LN_S|M4|MKDIR_P|RANLIB|SET_MAKE|YACC], + [GREP|[EF]GREP|SED], + [[_@]|.[*#?$].], +- [argv|ARGC|LINENO|OLDPWD|PIPESTATUS|RANDOM|SECONDS]))=' \ ++ [argv|ARGC|LINENO|BASH_ARGC|BASH_ARGV|OLDPWD|PIPESTATUS|RANDOM|SECONDS]))=' \ + $act_file || + test $? -eq 1 || echo failed >&2 + ) 2>stderr-$act_file | +@@ -382,6 +382,9 @@ do + /'\'\\\$\''=/ d + /^argv=/ d + /^ARGC=/ d ++ /^BASH_ARGC=/ d ++ /^BASH_ARGV=/ d ++ /^LINENO=/ d + ' $act_file >at_config_vars-$act_file + done + AT_CMP([at_config_vars-$1], [at_config_vars-$2])[]dnl +diff --git a/tests/m4sh.at b/tests/m4sh.at +index e9d70b02..cbdfcb62 100644 +--- a/tests/m4sh.at ++++ b/tests/m4sh.at +@@ -254,7 +254,7 @@ AT_CHECK([autom4te -l m4sh $1.as -o $1]) + # `_oline_', once processed and ran, produces our reference. + # We check that we find ourselves by looking at a string which is + # available only in the original script: `_oline_'. +-AT_DATA_LINENO([reference], [false], [__OLINE__], [_oline__]) ++AT_DATA_LINENO([reference], [true], [__OLINE__], [_oline__]) + AT_CHECK([./reference], 0, [stdout]) + + # The reference: +@@ -264,7 +264,7 @@ mv stdout expout + # Be sure to be out of the PATH. + AT_CHECK([mkdir test || exit 77]) + +-AT_DATA_LINENO([test/test-1], [false], [__LINENO__], [LINENO]) ++AT_DATA_LINENO([test/test-1], [true], [__LINENO__], [LINENO]) + AT_CHECK([./test/test-1], 0, [expout]) + AT_CHECK([(PATH=test$PATH_SEPARATOR$PATH; export PATH; exec test-1)], + 0, [expout]) +-- +cgit v1.2.1 + diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.69-perl-5.26-2.patch b/dev-build/autoconf-vanilla/files/autoconf-2.69-perl-5.26-2.patch new file mode 100644 index 000000000000..6becf807c43e --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.69-perl-5.26-2.patch @@ -0,0 +1,30 @@ +https://bugs.gentoo.org/625576 + +--- autoconf-2.69/bin/autoheader.in ++++ autoconf-2.69/bin/autoheader.in +@@ -173,6 +173,12 @@ + # Source what the traces are trying to tell us. + verb "$me: running $autoconf to trace from $ARGV[0]"; + my $quoted_tmp = shell_quote ($tmp); ++my $perl_tmp; ++if ( $tmp =~ /^\// ) { ++ $perl_tmp=$tmp; ++} else { ++ $perl_tmp="./".$tmp; ++} + xsystem ("$autoconf" + # If you change this list, update the + # `Autoheader-preselections' section of autom4te.in. +@@ -182,9 +188,9 @@ + . " " . shell_quote ($ARGV[0]) . " >$quoted_tmp/traces.pl"); + + local (%verbatim, %symbol); +-debug "$me: \`do'ing $tmp/traces.pl:\n" . `sed 's/^/| /' $quoted_tmp/traces.pl`; +-do "$tmp/traces.pl"; +-warn "couldn't parse $tmp/traces.pl: $@" if $@; ++debug "$me: \`do'ing $perl_tmp/traces.pl:\n" . `sed 's/^/| /' $quoted_tmp/traces.pl`; ++do "$perl_tmp/traces.pl"; ++warn "couldn't parse $perl_tmp/traces.pl: $@" if $@; + unless ($config_h) + { + error "error: AC_CONFIG_HEADERS not found in $ARGV[0]"; diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.69-perl-5.26.patch b/dev-build/autoconf-vanilla/files/autoconf-2.69-perl-5.26.patch new file mode 100644 index 000000000000..b3d7888ca722 --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.69-perl-5.26.patch @@ -0,0 +1,28 @@ +From e5654a5591884b92633c7785f325626711e7f7aa Mon Sep 17 00:00:00 2001 +From: Paul Eggert <eggert@cs.ucla.edu> +Date: Tue, 29 Jan 2013 13:46:48 -0800 +Subject: [PATCH] autoscan: port to perl 5.17 + +* bin/autoscan.in (scan_sh_file): Escape '{'. This avoids a +feature that is deprecated in Perl 5.17. Reported by Ray Lauff in +<http://lists.gnu.org/archive/html/bug-autoconf/2013-01/msg00059.html>. +--- + bin/autoscan.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/bin/autoscan.in b/bin/autoscan.in +index 993a750..db1df79 100644 +--- a/bin/autoscan.in ++++ b/bin/autoscan.in +@@ -358,7 +358,7 @@ sub scan_sh_file ($) + { + # Strip out comments and variable references. + s/#.*//; +- s/\${[^\}]*}//g; ++ s/\$\{[^\}]*}//g; + s/@[^@]*@//g; + + # Tokens in the code. +-- +1.9.1 + diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.71-AC_LANG_CALL_C_cxx.patch b/dev-build/autoconf-vanilla/files/autoconf-2.71-AC_LANG_CALL_C_cxx.patch new file mode 100644 index 000000000000..5b53d17135bc --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.71-AC_LANG_CALL_C_cxx.patch @@ -0,0 +1,35 @@ +https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=b27bc3e230bb12fdd9a813e38e82bc4c3e22b4cc + +Note: we drop the comma from the comment because some packages +have bad quoting, and while that will need to be sorted when/if +autoconf 2.72 is released, we've got our hands full with the +Clang situation right now (bug #871753). + +From b27bc3e230bb12fdd9a813e38e82bc4c3e22b4cc Mon Sep 17 00:00:00 2001 +From: Paul Eggert <eggert@cs.ucla.edu> +Date: Tue, 31 Aug 2021 16:30:46 -0700 +Subject: Port AC_LANG_CALL(C) to C++ +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +* lib/autoconf/c.m4 (AC_LANG_CALL(C)): Add an extern "C" if C++. +Problem reported by Vincent Lefèvre (sr #110532). +--- a/lib/autoconf/c.m4 ++++ b/lib/autoconf/c.m4 +@@ -126,7 +126,13 @@ m4_define([AC_LANG_CALL(C)], + m4_if([$2], [main], , + [/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC +- builtin and then its argument prototype would still apply. */ ++ builtin and then its argument prototype would still apply. ++ The 'extern "C"' is for builds by C++ compilers; ++ although this is not generally supported in C code supporting it here ++ has little cost and some practical benefit (sr 110532). */ ++#ifdef __cplusplus ++extern "C" ++#endif + char $2 ();])], [return $2 ();])]) + + +cgit v1.1 diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.71-conflicts.patch b/dev-build/autoconf-vanilla/files/autoconf-2.71-conflicts.patch new file mode 100644 index 000000000000..879664f4096e --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.71-conflicts.patch @@ -0,0 +1,47 @@ +From 0d784a60bb65eb730a1b5f2b24887192d058629b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@gentoo.org> +Date: Sat, 4 Nov 2023 00:32:48 +0100 +Subject: [PATCH] Append '-vanilla' to pkgdatadir + +--- + Makefile.am | 3 +++ + Makefile.in | 2 +- + 2 files changed, 4 insertions(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index 17e1f8f..73d2ea7 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -18,6 +18,9 @@ + + ACLOCAL_AMFLAGS = -I m4 + ++# Work around file conflicts against dev-build/autoconf -- Arsen ++pkgdatadir = $(datadir)/@PACKAGE@-vanilla-@VERSION@ ++ + ## All of these will be incrementally updated later, here or in included + ## makefile fragments. + ETAGS_ARGS = +diff --git a/Makefile.in b/Makefile.in +index dcd27f7..704248f 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -195,7 +195,6 @@ am__make_running_with_option = \ + test $$has_opt = yes + am__make_dryrun = (target_option=n; $(am__make_running_with_option)) + am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +-pkgdatadir = $(datadir)/@PACKAGE@-@VERSION@ + pkgincludedir = $(includedir)/@PACKAGE@ + pkglibdir = $(libdir)/@PACKAGE@ + pkglibexecdir = $(libexecdir)/@PACKAGE@ +@@ -401,6 +400,7 @@ distuninstallcheck_listfiles = find . -type f -print + am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ + | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' + distcleancheck_listfiles = find . -type f -print ++pkgdatadir = $(datadir)/@PACKAGE@-vanilla-@VERSION@ + ACLOCAL = @ACLOCAL@ + AMTAR = @AMTAR@ + AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +-- +2.42.0 + diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.71-darwin.patch b/dev-build/autoconf-vanilla/files/autoconf-2.71-darwin.patch new file mode 100644 index 000000000000..c122aee4b22d --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.71-darwin.patch @@ -0,0 +1,11 @@ +--- a/bin/autoreconf.in ++++ b/bin/autoreconf.in +@@ -122,7 +122,7 @@ + my $autom4te = $ENV{'AUTOM4TE'} || '@bindir@/@autom4te-name@'; + my $automake = $ENV{'AUTOMAKE'} || 'automake'; + my $aclocal = $ENV{'ACLOCAL'} || 'aclocal'; +-my $libtoolize = $ENV{'LIBTOOLIZE'} || 'libtoolize'; ++my $libtoolize = $ENV{'LIBTOOLIZE'} || 'glibtoolize'; + my $intltoolize = $ENV{'INTLTOOLIZE'} || 'intltoolize'; + my $gtkdocize = $ENV{'GTKDOCIZE'} || 'gtkdocize'; + my $autopoint = $ENV{'AUTOPOINT'} || 'autopoint'; diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.71-make-4.4.patch b/dev-build/autoconf-vanilla/files/autoconf-2.71-make-4.4.patch new file mode 100644 index 000000000000..4dcf05996180 --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.71-make-4.4.patch @@ -0,0 +1,25 @@ +https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=31f673434ee402258b45e958c88acc8725d82b1a +https://savannah.gnu.org/bugs/?63040 +https://bugs.gentoo.org/869257 + +From 31f673434ee402258b45e958c88acc8725d82b1a Mon Sep 17 00:00:00 2001 +From: Paul Eggert <eggert@cs.ucla.edu> +Date: Fri, 9 Sep 2022 16:54:11 -0500 +Subject: Port to GNU make 4.4 + +* cfg.mk (PATH): Assign eagerly, and simplify shell use, avoiding +use of the shell entirely if PWD is set, as it should be. +Problem reported by Sergei Trofimovich in: +https://lists.gnu.org/r/autoconf-patches/2022-09/msg00007.html +--- a/cfg.mk ++++ b/cfg.mk +@@ -18,7 +18,7 @@ + # This file is '-include'd into GNUmakefile. + + # Build with our own versions of these tools, when possible. +-export PATH = $(shell echo "`pwd`/tests:$$PATH") ++export PATH := $(or $(PWD),$(shell pwd))/tests:$(PATH) + + # Remove the autoreconf-provided INSTALL, so that we regenerate it. + _autoreconf = autoreconf -i -v && rm -f INSTALL +cgit v1.1 diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.71-time.patch b/dev-build/autoconf-vanilla/files/autoconf-2.71-time.patch new file mode 100644 index 000000000000..8ecfe10f40a3 --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.71-time.patch @@ -0,0 +1,49 @@ +From e194b3c7e00429612a9d40e78ea571687fd25b91 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20K=2E=20H=C3=BCttel?= <dilfridge@gentoo.org> +Date: Sun, 1 Aug 2021 19:07:48 +0200 +Subject: [PATCH] Use stat from Time::HiRes (instead of File::stat) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org> +--- + lib/Autom4te/FileUtils.pm | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) + +diff --git a/lib/Autom4te/FileUtils.pm b/lib/Autom4te/FileUtils.pm +index a182031b..27a5fd91 100644 +--- a/lib/Autom4te/FileUtils.pm ++++ b/lib/Autom4te/FileUtils.pm +@@ -34,12 +34,12 @@ This perl module provides various general purpose file handling functions. + + =cut + +-use 5.006; ++use 5.008; + use strict; + use warnings FATAL => 'all'; + + use Exporter; +-use File::stat; ++use Time::HiRes qw(stat); + use IO::File; + + use Autom4te::Channels; +@@ -115,10 +115,11 @@ sub mtime ($) + return 0 + if $file eq '-' || ! -f $file; + +- my $stat = stat ($file) ++ my ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size, ++ $atime,$mtime,$ctime,$blksize,$blocks) = stat ($file) + or fatal "cannot stat $file: $!"; + +- return $stat->mtime; ++ return $mtime; + } + + +-- +2.31.1 + diff --git a/dev-build/autoconf-vanilla/files/autoconf-2.72-conflicts.patch b/dev-build/autoconf-vanilla/files/autoconf-2.72-conflicts.patch new file mode 100644 index 000000000000..b15b0267f140 --- /dev/null +++ b/dev-build/autoconf-vanilla/files/autoconf-2.72-conflicts.patch @@ -0,0 +1,49 @@ +From ca78a8d7d653ac8199fa0346a814289ed7aef960 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@gentoo.org> +Date: Sat, 4 Nov 2023 00:32:48 +0100 +Subject: [PATCH] Append '-vanilla' to pkgdatadir + +--- + Makefile.am | 3 +++ + Makefile.in | 4 +++- + 2 files changed, 6 insertions(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index 1db714b..cb0650a 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -18,6 +18,9 @@ + + ACLOCAL_AMFLAGS = -I m4 + ++# Work around file conflicts against dev-build/autoconf -- Arsen ++pkgdatadir = $(datadir)/@PACKAGE@-vanilla-@VERSION@ ++ + ## All of these will be incrementally updated later, here or in included + ## makefile fragments. + ETAGS_ARGS = +diff --git a/Makefile.in b/Makefile.in +index e5b3da5..04a3732 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -195,7 +195,6 @@ am__make_running_with_option = \ + test $$has_opt = yes + am__make_dryrun = (target_option=n; $(am__make_running_with_option)) + am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +-pkgdatadir = $(datadir)/@PACKAGE@-@VERSION@ + pkgincludedir = $(includedir)/@PACKAGE@ + pkglibdir = $(libdir)/@PACKAGE@ + pkglibexecdir = $(libexecdir)/@PACKAGE@ +@@ -398,6 +397,9 @@ distuninstallcheck_listfiles = find . -type f -print + am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ + | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' + distcleancheck_listfiles = find . -type f -print ++ ++# Work around file conflicts against dev-build/autoconf -- Arsen ++pkgdatadir = $(datadir)/@PACKAGE@-vanilla-@VERSION@ + ACLOCAL = @ACLOCAL@ + AMTAR = @AMTAR@ + AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +-- +2.43.0 + diff --git a/dev-build/autoconf-vanilla/metadata.xml b/dev-build/autoconf-vanilla/metadata.xml new file mode 100644 index 000000000000..4ff4a48125bc --- /dev/null +++ b/dev-build/autoconf-vanilla/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <upstream> + <remote-id type="savannah">autoconf</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/autoconf-wrapper/Manifest b/dev-build/autoconf-wrapper/Manifest new file mode 100644 index 000000000000..a7b5745a9235 --- /dev/null +++ b/dev-build/autoconf-wrapper/Manifest @@ -0,0 +1,2 @@ +DIST autotools-wrappers-at-20231224.tar.gz 3645 BLAKE2B fbf414240fe3a4b5d2c24ea649cc347df46bf7f0297bc0d27f98265f57753a596929277403496d76d6249f878bffa8be3e77b62ce9138df6920dd9a5216b300a SHA512 a3cc51e1eb1d055a8161b86bc3497a9bea3cb972d8d22b2f9fc712ca5ecb7809e84083a5754705911f2d037cbff83747476e96b412bfe11183273764de0d5331 +DIST autotools-wrappers-at-20260320.tar.gz 3644 BLAKE2B 6f28eab0182ed4029de7bdbe4ec91b228a3a9015acb25fd33626f50103b0a6f9e70bd6a187a60a2cf85cc620276594f74a0c1457aefcf5123cf48cda229b1ca6 SHA512 500893c108c6947fab30c47b82a0147c6702abf49b0b5c4a3c4d9451e1e430e44c4f137ec18ac18024dde5d261f30392f86f89526bd1adf806e492951587d788 diff --git a/dev-build/autoconf-wrapper/autoconf-wrapper-20231224.ebuild b/dev-build/autoconf-wrapper/autoconf-wrapper-20231224.ebuild new file mode 100644 index 000000000000..3acaa4308269 --- /dev/null +++ b/dev-build/autoconf-wrapper/autoconf-wrapper-20231224.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_P="autotools-wrappers-at-${PV}" + +# Remember to modify LAST_KNOWN_VER 'upstream' on new autoconf releases! + +DESCRIPTION="Wrapper for autoconf to manage multiple autoconf versions" +HOMEPAGE="https://gitweb.gentoo.org/proj/autotools-wrappers.git" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/autotools-wrappers.git + https://github.com/gentoo/autotools-wrappers + " + inherit git-r3 +else + SRC_URI="https://gitweb.gentoo.org/proj/autotools-wrappers.git/snapshot/${MY_P}.tar.gz" + S="${WORKDIR}/${MY_P}" + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-2" +SLOT="0" + +src_prepare() { + default + + # usr/bin/aclocal: bad substitution -> /bin/sh != POSIX shell + if use prefix ; then + sed -i -e '1c\#!'"${EPREFIX}"'/bin/sh' ac-wrapper.sh || die + fi +} + +src_install() { + exeinto /usr/$(get_libdir)/misc + doexe ac-wrapper.sh + + dodir /usr/bin + local x= + for x in auto{conf,header,m4te,reconf,scan,update} ifnames ; do + dosym -r /usr/$(get_libdir)/misc/ac-wrapper.sh /usr/bin/${x} + done +} diff --git a/dev-build/autoconf-wrapper/autoconf-wrapper-20260320.ebuild b/dev-build/autoconf-wrapper/autoconf-wrapper-20260320.ebuild new file mode 100644 index 000000000000..5a2de4e38414 --- /dev/null +++ b/dev-build/autoconf-wrapper/autoconf-wrapper-20260320.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_P="autotools-wrappers-at-${PV}" + +# Remember to modify LAST_KNOWN_VER 'upstream' on new autoconf releases! + +DESCRIPTION="Wrapper for autoconf to manage multiple autoconf versions" +HOMEPAGE="https://gitweb.gentoo.org/proj/autotools-wrappers.git" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/autotools-wrappers.git + https://github.com/gentoo/autotools-wrappers + " + inherit git-r3 +else + SRC_URI="https://gitweb.gentoo.org/proj/autotools-wrappers.git/snapshot/${MY_P}.tar.gz" + S="${WORKDIR}/${MY_P}" + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-2" +SLOT="0" + +src_prepare() { + default + + # usr/bin/aclocal: bad substitution -> /bin/sh != POSIX shell + if use prefix ; then + sed -i -e '1c\#!'"${EPREFIX}"'/bin/sh' ac-wrapper.sh || die + fi +} + +src_install() { + exeinto /usr/$(get_libdir)/misc + doexe ac-wrapper.sh + + dodir /usr/bin + local x= + for x in auto{conf,header,m4te,reconf,scan,update} ifnames ; do + dosym -r /usr/$(get_libdir)/misc/ac-wrapper.sh /usr/bin/${x} + done +} diff --git a/dev-build/autoconf-wrapper/autoconf-wrapper-99999999.ebuild b/dev-build/autoconf-wrapper/autoconf-wrapper-99999999.ebuild new file mode 100644 index 000000000000..c9a396206d4f --- /dev/null +++ b/dev-build/autoconf-wrapper/autoconf-wrapper-99999999.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_P="autotools-wrappers-at-${PV}" + +# Remember to modify LAST_KNOWN_VER 'upstream' on new autoconf releases! + +DESCRIPTION="Wrapper for autoconf to manage multiple autoconf versions" +HOMEPAGE="https://gitweb.gentoo.org/proj/autotools-wrappers.git" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/autotools-wrappers.git + https://github.com/gentoo/autotools-wrappers + " + inherit git-r3 +else + SRC_URI="https://gitweb.gentoo.org/proj/autotools-wrappers.git/snapshot/${MY_P}.tar.gz" + S="${WORKDIR}/${MY_P}" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-2" +SLOT="0" + +src_prepare() { + default + + # usr/bin/aclocal: bad substitution -> /bin/sh != POSIX shell + if use prefix ; then + sed -i -e '1c\#!'"${EPREFIX}"'/bin/sh' ac-wrapper.sh || die + fi +} + +src_install() { + exeinto /usr/$(get_libdir)/misc + doexe ac-wrapper.sh + + dodir /usr/bin + local x= + for x in auto{conf,header,m4te,reconf,scan,update} ifnames ; do + dosym -r /usr/$(get_libdir)/misc/ac-wrapper.sh /usr/bin/${x} + done +} diff --git a/dev-build/autoconf-wrapper/metadata.xml b/dev-build/autoconf-wrapper/metadata.xml new file mode 100644 index 000000000000..2847c0b0420f --- /dev/null +++ b/dev-build/autoconf-wrapper/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <stabilize-allarches/> + <upstream> + <remote-id type="gentoo">proj/autotools-wrappers</remote-id> + <remote-id type="github">gentoo/autotools-wrappers</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/autoconf/Manifest b/dev-build/autoconf/Manifest new file mode 100644 index 000000000000..7670062a50f7 --- /dev/null +++ b/dev-build/autoconf/Manifest @@ -0,0 +1,10 @@ +DIST autoconf-2.13.tar.gz 443844 BLAKE2B ade10f9d4a0b1a0e8b752eee817cfe100d77b074192b9892330402ddc5b62dda1a3485ce0c36e72191daa9fd49382b99851cb6aa3a13aca8cf2ae6e884638fb6 SHA512 602584f4c77b7a554aaa068eda5409b68eb0b3229e9c224bffb91c83c4314d25de15bd560a323626ff78f6df339c79e1ef8938c54b78ecadf4dc75c5241290ad +DIST autoconf-2.69-runstatedir_patches.tar.xz 257096 BLAKE2B ae765e0ca7fe8261117f6f6b75611c232fc3d4016c22c86346afa72f2b7e6c3b7ccc1f9dfe134b2443f8bde6d578b503d79cf88472f76ce75b6c2e843ef55b8e SHA512 55f93299fe5243151f6bb782986a7935270f06d5065929f4d365a37aba05703e3ce66ecf7981d30413db50ee6b4f77d81d10a71b539c8a366c5c5a156c5443da +DIST autoconf-2.69.tar.xz 1214744 BLAKE2B 71d33d72a06e9a05fbed0eda73bc9d8a3805c7c90bf082959862f93f3c5f01192114176e84d84ecb58fa99512eafbc0ab21ad1407be18c8c63bb3dc1117c482d SHA512 995d3e5a8eb1eb37e2b7fae53c6ec7a9b4df997286b7d643344818f94636756b1bf5ff5ea9155e755cb9461149a853dfbf2886fc6bd7132e5afa9c168e306e9b +DIST autoconf-2.69.tar.xz.sig 556 BLAKE2B 07eaae3429f4bbd3ea40b4b366db383d9e322b03def7956f8961a20a6759072e8c327d4723313097f75caba0513928c37270beda8f8b491888fdd47a2ee80ad6 SHA512 e54082e00522463ba7d6b6ea6d700b8799a41177b34e057dd72abbe46219f0ce58674575d60fb106e37deeee8871d4ccfd85746c2d0e096a71eb096ffdb3020c +DIST autoconf-2.71.tar.xz 1292296 BLAKE2B 7fd4b98b4cfff10720e8da6ee91045637991643b50fcb3e47a0ecfcc01600f7b7b36fd1c0a5f08b68a418f1bdbd8d5a98de1008157595dd37cc3a31facb61416 SHA512 73d32b4adcbe24e3bafa9f43f59ed3b6efbd3de0f194e5ec90375f35da1199c583f5d3e89139b7edbad35171403709270e339ffa56a2ecb9b3123e9285021ff0 +DIST autoconf-2.71.tar.xz.sig 833 BLAKE2B a2641a0bec3b475874811dd21dc32d34672f4f084ea16d48bd0655df37251be810026c20e35869503e664701edcb64f260b142db671e160a554c2ee982838355 SHA512 83e6bf4504f5d188cad1387ce1f1ce4b14f5ee4961bbfd5c83dd281d724392a95b394079bfaa093eb81129873e668b6ca1eee013a60cfb76edf34454756f6667 +DIST autoconf-2.72.tar.xz 1389680 BLAKE2B 01caeced9e53d8bd39fb0cf4929322f0d463971b0a96368aa55892026897a9e98c2ca84a77db1b3c6c4483aea54b96da16a7bc00b7ac15e23c6b0471438012db SHA512 c4e9fbd858666d3e5c3b4fe7f89aa3e8e3a0a00dc7e166f8147d937d911b77ba3ac6a016f9d223ccdd830bc8960b3e60397c0607cc6a1fd2c50c7492839ddd17 +DIST autoconf-2.72.tar.xz.sig 833 BLAKE2B cc33101c5d2bd28f233e54a2843d3c81dc9729238b0900a8f23ef17b982aa0e0194892c07b1365246b6c9c0ea74becd288ae581ee34d593131b83538c69a6204 SHA512 7a0d350b23cf47c45811ae35928a4fec67ce1f3adb1965904fe6d9a0fad68139df4902662bcf4731a2f809381cae0b265a8f1f57d0a9a39777250a97a3c481d9 +DIST autoconf-2.73.tar.xz 1417428 BLAKE2B b5f0b9d3baf883148de8f1d7ae102b8742c0bf57b9ae44286f0da1fef82d7ea8dd1117f04cc85f52254e282f886780165b9773953b3d8ed89130b8419cd288f7 SHA512 be051d542f9bd93752eccbdc9b1f3cf1fa4069a153ef34edd5303bfdf162e24d56e33e70df1b978cebb8d1139a82417bb8299cfe6c38cff8613040a829cc624f +DIST autoconf-2.73.tar.xz.sig 870 BLAKE2B 6f29c0a5168d5d86929d079f0423121e5e9e724378d335ca65e215be7effac7423c2c40e0d25b13a533f4309afd7fa86e2c8457bcefce7a79e5a2029863fa33f SHA512 6ed4bf2cba7d106248d44cbc38ab84e9be427540ca76df40b16ee02128dbc076f8f2b6f9a92d5965956ad9cf38d90789ba81bf543d4b276c0c8cb03670248862 diff --git a/dev-build/autoconf/autoconf-2.13-r9.ebuild b/dev-build/autoconf/autoconf-2.13-r9.ebuild new file mode 100644 index 000000000000..ea6f5f056da1 --- /dev/null +++ b/dev-build/autoconf/autoconf-2.13-r9.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-autoconf + +DESCRIPTION="Used to create autoconfiguration files" +HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" +SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="${PV:0:3}" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + dev-lang/perl + sys-devel/m4 + test? ( dev-util/dejagnu ) +" +RDEPEND=" + ${BDEPEND} + sys-apps/texinfo + >=dev-build/autoconf-wrapper-13 +" + +PATCHES=( + "${FILESDIR}"/${P}-gentoo.patch + "${FILESDIR}"/${P}-destdir.patch + "${FILESDIR}"/${P}-test-fixes.patch #146592 + "${FILESDIR}"/${P}-perl-5.26.patch + "${FILESDIR}"/${P}-K-R-decls-clang.patch + "${FILESDIR}"/${P}-Clang-16-fixes-for-various-tests.patch + "${FILESDIR}"/${P}-skip-AC_FUNC_GETLOADAVG-test.patch +) + +src_configure() { + # make sure configure is newer than configure.in + touch configure || die + + # need to include --exec-prefix and --bindir or our + # DESTDIR patch will trigger sandbox hate :( + # + # need to force locale to C to avoid bugs in the old + # configure script breaking the install paths #351982 + # + # force to `awk` so that we don't encode another awk that + # happens to currently be installed, but might later be + # uninstalled (like mawk). same for m4. + ac_cv_path_M4="m4" \ + ac_cv_prog_AWK="awk" \ + LC_ALL=C \ + econf \ + --exec-prefix="${EPREFIX}"/usr \ + --bindir="${EPREFIX}"/usr/bin \ + --program-suffix="-${PV}" \ + --infodir="${TC_AUTOCONF_INFOPATH}" +} + +src_install() { + toolchain-autoconf_src_install + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir +} diff --git a/dev-build/autoconf/autoconf-2.69-r11.ebuild b/dev-build/autoconf/autoconf-2.69-r11.ebuild new file mode 100644 index 000000000000..539ff2e40731 --- /dev/null +++ b/dev-build/autoconf/autoconf-2.69-r11.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" + inherit git-r3 +else + # Eric Blake signed 2.69 so use sec-keys/openpgp-keys-m4 + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/m4.asc + inherit verify-sig + + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.xz + https://alpha.gnu.org/pub/gnu/${PN}/${P}.tar.xz + https://dev.gentoo.org/~polynomial-c/dist/${P}-runstatedir_patches.tar.xz + verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) + " + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-m4 )" +fi + +inherit toolchain-autoconf multiprocessing + +DESCRIPTION="Used to create autoconfiguration files" +HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" + +LICENSE="GPL-3+" +SLOT="${PV}" + +BDEPEND+=" + >=sys-devel/m4-1.4.16 + >=dev-lang/perl-5.6 +" +RDEPEND=" + ${BDEPEND} + >=dev-build/autoconf-wrapper-13 + !~${CATEGORY}/${P}:2.5 +" + +[[ ${PV} == 9999 ]] && BDEPEND+=" >=sys-apps/texinfo-4.3" + +PATCHES=( + "${FILESDIR}"/${PN}-2.69-perl-5.26.patch + "${FILESDIR}"/${P}-fix-libtool-test.patch + "${FILESDIR}"/${PN}-2.69-perl-5.26-2.patch + "${FILESDIR}"/${P}-make-tests-bash5-compatible.patch + "${FILESDIR}"/${P}-K-R-decls-clang.patch + + "${WORKDIR}"/patches/${P}-texinfo.patch +) + +src_unpack() { + if use verify-sig ; then + # Needed for downloaded patch (which is unsigned, which is fine) + verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig} + fi + + default +} + +src_prepare() { + # usr/bin/libtool is provided by binutils-apple, need gnu libtool + if [[ ${CHOST} == *-darwin* ]] ; then + PATCHES+=( "${FILESDIR}"/${PN}-2.61-darwin.patch ) + fi + + # Save timestamp to avoid later makeinfo call + touch -r doc/{,old_}autoconf.texi || die + + toolchain-autoconf_src_prepare + + # Restore timestamp to avoid makeinfo call + # We already have an up to date autoconf.info page at this point. + touch -r doc/{old_,}autoconf.texi || die +} + +src_test() { + emake check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" +} + +src_install() { + toolchain-autoconf_src_install + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir +} diff --git a/dev-build/autoconf/autoconf-2.71-r9.ebuild b/dev-build/autoconf/autoconf-2.71-r9.ebuild new file mode 100644 index 000000000000..c235544d188d --- /dev/null +++ b/dev-build/autoconf/autoconf-2.71-r9.ebuild @@ -0,0 +1,105 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" + inherit git-r3 +else + # For _beta handling replace with real version number + MY_PV="${PV}" + MY_P="${PN}-${MY_PV}" + #PATCH_TARBALL_NAME="${PN}-2.70-patches-01" + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/zackweinberg.asc + inherit verify-sig + + SRC_URI=" + mirror://gnu/${PN}/${MY_P}.tar.xz + https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz + verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.xz.sig ) + " + #SRC_URI+=" https://dev.gentoo.org/~polynomial-c/${PATCH_TARBALL_NAME}.tar.xz" + S="${WORKDIR}"/${MY_P} + + if ! [[ ${PV} == *_beta* ]] ; then + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-zackweinberg )" +fi + +inherit toolchain-autoconf multiprocessing + +DESCRIPTION="Used to create autoconfiguration files" +HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" + +LICENSE="GPL-3+" +SLOT="${PV/_*}" + +# for 2.71, our Perl time resolution patch changes our min Perl from 5.6 +# (vanilla upstream for 2.71) to 5.8. +BDEPEND+=" + >=sys-devel/m4-1.4.16 + >=dev-lang/perl-5.8 +" +RDEPEND=" + ${BDEPEND} + >=dev-build/autoconf-wrapper-15 + sys-devel/gnuconfig + !~${CATEGORY}/${P}:2.5 +" +[[ ${PV} == 9999 ]] && BDEPEND+=" >=sys-apps/texinfo-4.3" + +PATCHES=( + "${FILESDIR}"/${P}-AC_LANG_CALL_C_cxx.patch + "${FILESDIR}"/${P}-time.patch + "${FILESDIR}"/${P}-AC_C_BIGENDIAN-lto.patch + "${FILESDIR}"/${P}-K-R-decls-clang.patch + "${FILESDIR}"/${P}-make-4.4.patch + "${FILESDIR}"/${P}-K-R-decls-clang-deux.patch + "${FILESDIR}"/${P}-cxx11typo.patch + "${FILESDIR}"/${P}-bash52.patch +) + +src_prepare() { + # usr/bin/libtool is provided by binutils-apple, need gnu libtool + if [[ ${CHOST} == *-darwin* ]] ; then + PATCHES+=( "${FILESDIR}"/${PN}-2.71-darwin.patch ) + fi + + # Save timestamp to avoid later makeinfo call + touch -r doc/{,old_}autoconf.texi || die + + local pdir + for pdir in "${WORKDIR}"/{upstream_,}patches ; do + if [[ -d "${pdir}" ]] ; then + eapply ${pdir} + fi + done + + toolchain-autoconf_src_prepare + + # Restore timestamp to avoid makeinfo call + # We already have an up to date autoconf.info page at this point. + touch -r doc/{old_,}autoconf.texi || die +} + +src_test() { + emake check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" +} + +src_install() { + toolchain-autoconf_src_install + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + local f + for f in config.{guess,sub} ; do + ln -fs ../../gnuconfig/${f} \ + "${ED}"/usr/share/autoconf-*/build-aux/${f} || die + done +} diff --git a/dev-build/autoconf/autoconf-2.72-r7.ebuild b/dev-build/autoconf/autoconf-2.72-r7.ebuild new file mode 100644 index 000000000000..d3eb39206896 --- /dev/null +++ b/dev-build/autoconf/autoconf-2.72-r7.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Bumping notes: +# * Remember to modify LAST_KNOWN_VER 'upstream' in dev-build/autoconf-wrapper +# on new autoconf releases, as well as the dependency in RDEPEND below too. +# * Update _WANT_AUTOCONF and _autoconf_atom case statement in autotools.eclass. + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" + inherit git-r3 +else + # For _beta handling replace with real version number + MY_PV="${PV}" + MY_P="${PN}-${MY_PV}" + #PATCH_TARBALL_NAME="${PN}-2.70-patches-01" + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/zackweinberg.asc + inherit verify-sig + + SRC_URI=" + mirror://gnu/${PN}/${MY_P}.tar.xz + https://alpha.gnu.org/pub/gnu/${PN}/${MY_P}.tar.xz + https://meyering.net/ac/${P}.tar.xz + verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.xz.sig ) + " + S="${WORKDIR}"/${MY_P} + + if [[ ${PV} != *_beta* ]] && ! [[ $(ver_cut 3) =~ [a-z] ]] ; then + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-zackweinberg )" +fi + +inherit toolchain-autoconf multiprocessing + +DESCRIPTION="Used to create autoconfiguration files" +HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" + +LICENSE="GPL-3+" +SLOT="$(ver_cut 1-2)" + +BDEPEND+=" + >=dev-lang/perl-5.10 + >=sys-devel/m4-1.4.16 +" +RDEPEND=" + ${BDEPEND} + >=dev-build/autoconf-wrapper-20231224 + sys-devel/gnuconfig + !~${CATEGORY}/${P}:2.5 +" +[[ ${PV} == 9999 ]] && BDEPEND+=" >=sys-apps/texinfo-4.3" + +PATCHES=( + "${FILESDIR}"/${PN}-2.72-gettext-0.25-autoreconf-Invoke-autopoint-in-more-situations.patch + "${FILESDIR}"/${PN}-2.72-gettext-0.25-autoreconf-Adapt-to-the-on-disk-situation-after-auto.patch + "${FILESDIR}"/${PN}-2.72-Port-C11-test-to-C-20.patch + "${FILESDIR}"/${PN}-2.72-Port-AC_SYS_LARGEFILE-to-CXX.patch +) + +src_prepare() { + if [[ ${PV} == *9999 ]] ; then + # Avoid the "dirty" suffix in the git version by generating it + # before we run later stages which might modify source files. + local ver=$(./build-aux/git-version-gen .tarball-version) + echo "${ver}" > .tarball-version || die + + autoreconf -f -i || die + fi + + # usr/bin/libtool is provided by binutils-apple, need gnu libtool + if [[ ${CHOST} == *-darwin* ]] ; then + PATCHES+=( "${FILESDIR}"/${PN}-2.71-darwin.patch ) + fi + + # Save timestamp to avoid later makeinfo call + touch -r doc/{,old_}autoconf.texi || die + + toolchain-autoconf_src_prepare + + # Restore timestamp to avoid makeinfo call + # We already have an up to date autoconf.info page at this point. + touch -r doc/{old_,}autoconf.texi || die +} + +src_test() { + emake check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" +} + +src_install() { + toolchain-autoconf_src_install + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + local f + for f in config.{guess,sub} ; do + ln -fs ../../gnuconfig/${f} \ + "${ED}"/usr/share/autoconf-*/build-aux/${f} || die + done +} diff --git a/dev-build/autoconf/autoconf-2.73-r2.ebuild b/dev-build/autoconf/autoconf-2.73-r2.ebuild new file mode 100644 index 000000000000..9170a04e78bd --- /dev/null +++ b/dev-build/autoconf/autoconf-2.73-r2.ebuild @@ -0,0 +1,113 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Bumping notes: +# * Remember to modify LAST_KNOWN_VER 'upstream' in dev-build/autoconf-wrapper +# on new autoconf releases, as well as the dependency in RDEPEND below too. +# * Update _WANT_AUTOCONF and _autoconf_atom case statement in autotools.eclass. + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" + inherit git-r3 + AUTOCONF_SLOT="9999" +else + #PATCH_TARBALL_NAME="${PN}-2.70-patches-01" + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/zackweinberg.asc + inherit verify-sig + + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.xz + https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz + https://meyering.net/ac/${P}.tar.xz + verify-sig? ( + https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz.sig + mirror://gnu/${PN}/${P}.tar.xz.sig + ) + " + + AUTOCONF_EXTRA_VER=$(ver_cut 3) + if [[ ${AUTOCONF_EXTRA_VER} -ge 90 ]] ; then + # Prereleases get no keywords and their slot bumped up + # e.g. SLOT for 2.72(.90) -> 2.73 + AUTOCONF_SLOT=$(ver_cut 1).$((($(ver_cut 2) + 1))) + else + AUTOCONF_SLOT=$(ver_cut 1-2) + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-zackweinberg )" +fi + +inherit toolchain-autoconf multiprocessing + +DESCRIPTION="Used to create autoconfiguration files" +HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" + +LICENSE="GPL-3+" +SLOT="${AUTOCONF_SLOT}" + +BDEPEND+=" + >=dev-lang/perl-5.10 + >=sys-devel/m4-1.4.16 +" +RDEPEND=" + ${BDEPEND} + >=dev-build/autoconf-wrapper-20260320 + sys-devel/gnuconfig + !~${CATEGORY}/${P}:2.5 +" +[[ ${PV} == 9999 ]] && BDEPEND+=" >=sys-apps/texinfo-4.3" + +PATCHES=( + "${FILESDIR}"/${PN}-2.73-maintainer-mode-autoheader.patch +) + +src_prepare() { + if [[ ${PV} == *9999 ]] ; then + # Avoid the "dirty" suffix in the git version by generating it + # before we run later stages which might modify source files. + local ver=$(./build-aux/git-version-gen .tarball-version) + echo "${ver}" > .tarball-version || die + + export WANT_AUTOCONF=2.5 + export WANT_AUTOMAKE=1.17 + # Don't try wrapping the autotools - this thing runs as it tends + # to be a bit esoteric, and the script does `set -e` itself. + ./bootstrap || die + fi + + # usr/bin/libtool is provided by binutils-apple, need gnu libtool + if [[ ${CHOST} == *-darwin* ]] ; then + PATCHES+=( "${FILESDIR}"/${PN}-2.73-darwin.patch ) + fi + + # Save timestamp to avoid later makeinfo call + touch -r doc/{,old_}autoconf.texi || die + + toolchain-autoconf_src_prepare + + # Restore timestamp to avoid makeinfo call + # We already have an up to date autoconf.info page at this point. + touch -r doc/{old_,}autoconf.texi || die +} + +src_test() { + emake check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" +} + +src_install() { + toolchain-autoconf_src_install + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + local f + for f in config.{guess,sub} ; do + ln -fs ../../gnuconfig/${f} \ + "${ED}"/usr/share/autoconf-*/build-aux/${f} || die + done +} diff --git a/dev-build/autoconf/autoconf-2.73.ebuild b/dev-build/autoconf/autoconf-2.73.ebuild new file mode 100644 index 000000000000..06adef2d8a42 --- /dev/null +++ b/dev-build/autoconf/autoconf-2.73.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Bumping notes: +# * Remember to modify LAST_KNOWN_VER 'upstream' in dev-build/autoconf-wrapper +# on new autoconf releases, as well as the dependency in RDEPEND below too. +# * Update _WANT_AUTOCONF and _autoconf_atom case statement in autotools.eclass. + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" + inherit git-r3 + AUTOCONF_SLOT="9999" +else + #PATCH_TARBALL_NAME="${PN}-2.70-patches-01" + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/zackweinberg.asc + inherit verify-sig + + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.xz + https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz + https://meyering.net/ac/${P}.tar.xz + verify-sig? ( + https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz.sig + mirror://gnu/${PN}/${P}.tar.xz.sig + ) + " + + AUTOCONF_EXTRA_VER=$(ver_cut 3) + if [[ ${AUTOCONF_EXTRA_VER} -ge 90 ]] ; then + # Prereleases get no keywords and their slot bumped up + # e.g. SLOT for 2.72(.90) -> 2.73 + AUTOCONF_SLOT=$(ver_cut 1).$((($(ver_cut 2) + 1))) + else + AUTOCONF_SLOT=$(ver_cut 1-2) + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-zackweinberg )" +fi + +inherit toolchain-autoconf multiprocessing + +DESCRIPTION="Used to create autoconfiguration files" +HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" + +LICENSE="GPL-3+" +SLOT="${AUTOCONF_SLOT}" + +BDEPEND+=" + >=dev-lang/perl-5.10 + >=sys-devel/m4-1.4.16 +" +RDEPEND=" + ${BDEPEND} + >=dev-build/autoconf-wrapper-20260320 + sys-devel/gnuconfig + !~${CATEGORY}/${P}:2.5 +" +[[ ${PV} == 9999 ]] && BDEPEND+=" >=sys-apps/texinfo-4.3" + +src_prepare() { + if [[ ${PV} == *9999 ]] ; then + # Avoid the "dirty" suffix in the git version by generating it + # before we run later stages which might modify source files. + local ver=$(./build-aux/git-version-gen .tarball-version) + echo "${ver}" > .tarball-version || die + + export WANT_AUTOCONF=2.5 + export WANT_AUTOMAKE=1.17 + # Don't try wrapping the autotools - this thing runs as it tends + # to be a bit esoteric, and the script does `set -e` itself. + ./bootstrap || die + fi + + # usr/bin/libtool is provided by binutils-apple, need gnu libtool + if [[ ${CHOST} == *-darwin* ]] ; then + PATCHES+=( "${FILESDIR}"/${PN}-2.71-darwin.patch ) + fi + + # Save timestamp to avoid later makeinfo call + touch -r doc/{,old_}autoconf.texi || die + + toolchain-autoconf_src_prepare + + # Restore timestamp to avoid makeinfo call + # We already have an up to date autoconf.info page at this point. + touch -r doc/{old_,}autoconf.texi || die +} + +src_test() { + emake check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" +} + +src_install() { + toolchain-autoconf_src_install + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + + local f + for f in config.{guess,sub} ; do + ln -fs ../../gnuconfig/${f} \ + "${ED}"/usr/share/autoconf-*/build-aux/${f} || die + done +} diff --git a/dev-build/autoconf/autoconf-9999.ebuild b/dev-build/autoconf/autoconf-9999.ebuild new file mode 100644 index 000000000000..9170a04e78bd --- /dev/null +++ b/dev-build/autoconf/autoconf-9999.ebuild @@ -0,0 +1,113 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Bumping notes: +# * Remember to modify LAST_KNOWN_VER 'upstream' in dev-build/autoconf-wrapper +# on new autoconf releases, as well as the dependency in RDEPEND below too. +# * Update _WANT_AUTOCONF and _autoconf_atom case statement in autotools.eclass. + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/autoconf.git" + inherit git-r3 + AUTOCONF_SLOT="9999" +else + #PATCH_TARBALL_NAME="${PN}-2.70-patches-01" + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/zackweinberg.asc + inherit verify-sig + + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.xz + https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz + https://meyering.net/ac/${P}.tar.xz + verify-sig? ( + https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz.sig + mirror://gnu/${PN}/${P}.tar.xz.sig + ) + " + + AUTOCONF_EXTRA_VER=$(ver_cut 3) + if [[ ${AUTOCONF_EXTRA_VER} -ge 90 ]] ; then + # Prereleases get no keywords and their slot bumped up + # e.g. SLOT for 2.72(.90) -> 2.73 + AUTOCONF_SLOT=$(ver_cut 1).$((($(ver_cut 2) + 1))) + else + AUTOCONF_SLOT=$(ver_cut 1-2) + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-zackweinberg )" +fi + +inherit toolchain-autoconf multiprocessing + +DESCRIPTION="Used to create autoconfiguration files" +HOMEPAGE="https://www.gnu.org/software/autoconf/autoconf.html" + +LICENSE="GPL-3+" +SLOT="${AUTOCONF_SLOT}" + +BDEPEND+=" + >=dev-lang/perl-5.10 + >=sys-devel/m4-1.4.16 +" +RDEPEND=" + ${BDEPEND} + >=dev-build/autoconf-wrapper-20260320 + sys-devel/gnuconfig + !~${CATEGORY}/${P}:2.5 +" +[[ ${PV} == 9999 ]] && BDEPEND+=" >=sys-apps/texinfo-4.3" + +PATCHES=( + "${FILESDIR}"/${PN}-2.73-maintainer-mode-autoheader.patch +) + +src_prepare() { + if [[ ${PV} == *9999 ]] ; then + # Avoid the "dirty" suffix in the git version by generating it + # before we run later stages which might modify source files. + local ver=$(./build-aux/git-version-gen .tarball-version) + echo "${ver}" > .tarball-version || die + + export WANT_AUTOCONF=2.5 + export WANT_AUTOMAKE=1.17 + # Don't try wrapping the autotools - this thing runs as it tends + # to be a bit esoteric, and the script does `set -e` itself. + ./bootstrap || die + fi + + # usr/bin/libtool is provided by binutils-apple, need gnu libtool + if [[ ${CHOST} == *-darwin* ]] ; then + PATCHES+=( "${FILESDIR}"/${PN}-2.73-darwin.patch ) + fi + + # Save timestamp to avoid later makeinfo call + touch -r doc/{,old_}autoconf.texi || die + + toolchain-autoconf_src_prepare + + # Restore timestamp to avoid makeinfo call + # We already have an up to date autoconf.info page at this point. + touch -r doc/{old_,}autoconf.texi || die +} + +src_test() { + emake check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" +} + +src_install() { + toolchain-autoconf_src_install + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + local f + for f in config.{guess,sub} ; do + ln -fs ../../gnuconfig/${f} \ + "${ED}"/usr/share/autoconf-*/build-aux/${f} || die + done +} diff --git a/dev-build/autoconf/files/autoconf-2.13-Clang-16-fixes-for-various-tests.patch b/dev-build/autoconf/files/autoconf-2.13-Clang-16-fixes-for-various-tests.patch new file mode 100644 index 000000000000..d158f7974e81 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.13-Clang-16-fixes-for-various-tests.patch @@ -0,0 +1,331 @@ +From cb92e8110d1f274b28d5c156a93c525d2b748644 Mon Sep 17 00:00:00 2001 +From: Sam James <sam@gentoo.org> +Date: Wed, 9 Nov 2022 08:27:53 +0000 +Subject: [PATCH] Clang 16 fixes for various tests + +Fixes -Wimplicit-int and -Wimplicit-function-declaration +issues in various built-in tests. + +Noticed when building XEmacs 21.4 (thanks to matsl for reporting). + +Bug: https://bugs.gentoo.org/874366 +Signed-off-by: Sam James <sam@gentoo.org> +--- a/acgeneral.m4 ++++ b/acgeneral.m4 +@@ -1988,7 +1988,8 @@ changequote([, ])dnl + AC_MSG_CHECKING(size of $1) + AC_CACHE_VAL(AC_CV_NAME, + [AC_TRY_RUN([#include <stdio.h> +-main(void) ++#include <stdlib.h> ++int main(void) + { + FILE *f=fopen("conftestval", "w"); + if (!f) exit(1); +--- a/acspecific.m4 ++++ b/acspecific.m4 +@@ -371,7 +371,7 @@ changequote(, )dnl + sed -e 's/[^a-zA-Z0-9_]/_/g' -e 's/^[0-9]/_/'`" + changequote([, ])dnl + AC_CACHE_VAL(ac_cv_prog_cc_${ac_cc}_c_o, +-[echo 'foo(void){}' > conftest.c ++[echo 'int foo(void){}' > conftest.c + # Make sure it works both with $CC and with simple cc. + # We do the test twice because some compilers refuse to overwrite an + # existing .o file with -o, though they will create one. +@@ -706,6 +706,7 @@ fi + if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + AC_TRY_RUN([#include <ctype.h> ++#include <stdlib.h> + #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') + #define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) + #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +@@ -819,6 +820,7 @@ esac + + AC_CACHE_CHECK(whether closedir returns void, ac_cv_func_closedir_void, + [AC_TRY_RUN([#include <sys/types.h> ++#include <stdlib.h> + #include <$ac_header_dirent> + int closedir(...); int main(void) { exit(closedir(opendir(".")) != 0); }], + ac_cv_func_closedir_void=no, ac_cv_func_closedir_void=yes, ac_cv_func_closedir_void=yes)]) +@@ -907,6 +909,8 @@ AC_CACHE_CHECK(type of array argument to getgroups, ac_cv_type_getgroups, + changequote(<<, >>)dnl + << + /* Thanks to Mike Rendell for this test. */ ++#include <stdlib.h> ++#include <unistd.h> + #include <sys/types.h> + #define NGID 256 + #undef MAX +@@ -988,6 +992,7 @@ AC_DEFUN(AC_FUNC_CLOSEDIR_VOID, + [AC_REQUIRE([AC_HEADER_DIRENT])dnl + AC_CACHE_CHECK(whether closedir returns void, ac_cv_func_closedir_void, + [AC_TRY_RUN([#include <sys/types.h> ++#include <stdlib.h> + #include <$ac_header_dirent> + int closedir(...); int main(void) { exit(closedir(opendir(".")) != 0); }], + ac_cv_func_closedir_void=no, ac_cv_func_closedir_void=yes, ac_cv_func_closedir_void=yes)]) +@@ -1001,7 +1006,9 @@ AC_DEFUN(AC_FUNC_FNMATCH, + # Some versions of Solaris or SCO have a broken fnmatch function. + # So we run a test program. If we are cross-compiling, take no chance. + # Thanks to John Oleynick and Franc,ois Pinard for this test. +-[AC_TRY_RUN([int main(void) { exit (fnmatch ("a*", "abc", 0) != 0); }], ++[AC_TRY_RUN([#include <stdlib.h> ++#include <fnmatch.h> ++int main(void) { exit (fnmatch ("a*", "abc", 0) != 0); }], + ac_cv_func_fnmatch_works=yes, ac_cv_func_fnmatch_works=no, + ac_cv_func_fnmatch_works=no)]) + if test $ac_cv_func_fnmatch_works = yes; then +@@ -1038,6 +1045,7 @@ AC_CACHE_CHECK(for working mmap, ac_cv_func_mmap_fixed_mapped, + #include <sys/types.h> + #include <fcntl.h> + #include <sys/mman.h> ++#include <stdlib.h> + + /* This mess was copied from the GNU getpagesize.h. */ + #ifndef HAVE_GETPAGESIZE +@@ -1165,49 +1173,17 @@ AC_DEFUN(AC_FUNC_GETPGRP, + * + * Snarfed from Chet Ramey's bash pgrp.c test program + */ +-#include <stdio.h> +-#include <sys/types.h> +- +-int pid; +-int pg1, pg2, pg3, pg4; +-int ng, np, s, child; ++#include <stdlib.h> + + int main(void) + { +- pid = getpid(); +- pg1 = getpgrp(0); +- pg2 = getpgrp(); +- pg3 = getpgrp(pid); +- pg4 = getpgrp(1); +- +- /* +- * If all of these values are the same, it's pretty sure that +- * we're on a system that ignores getpgrp's first argument. +- */ +- if (pg2 == pg4 && pg1 == pg3 && pg2 == pg3) +- exit(0); +- +- child = fork(); +- if (child < 0) +- exit(1); +- else if (child == 0) { +- np = getpid(); +- /* +- * If this is Sys V, this will not work; pgrp will be +- * set to np because setpgrp just changes a pgrp to be +- * the same as the pid. +- */ +- setpgrp(np, pg1); +- ng = getpgrp(0); /* Same result for Sys V and BSD */ +- if (ng == pg1) { +- exit(1); +- } else { +- exit(0); +- } +- } else { +- wait(&s); +- exit(s>>8); +- } ++ /* XXX: Gentoo: This function used to check for ++ BSD vs POSIX getpgrp but the test fails to compile ++ on modern POSIX systems when not relying on implicit ++ function declarations. It has no value anyway on such ++ systems and it's been removed in newer autoconf. ++ */ ++ exit(0); + } + ], ac_cv_func_getpgrp_void=yes, ac_cv_func_getpgrp_void=no, + AC_MSG_ERROR(cannot check getpgrp if cross compiling)) +@@ -1220,9 +1196,7 @@ fi + AC_DEFUN(AC_FUNC_SETPGRP, + [AC_CACHE_CHECK(whether setpgrp takes no argument, ac_cv_func_setpgrp_void, + AC_TRY_RUN([ +-#ifdef HAVE_UNISTD_H +-#include <unistd.h> +-#endif ++#include <stdlib.h> + + /* + * If this system has a BSD-style setpgrp, which takes arguments, exit +@@ -1230,10 +1204,13 @@ AC_TRY_RUN([ + */ + int main(void) + { +- if (setpgrp(1,1) == -1) +- exit(0); +- else +- exit(1); ++ /* XXX: Gentoo: This function used to check for ++ BSD vs POSIX gsetpgrp but the test fails to compile ++ on modern POSIX systems when not relying on implicit ++ function declarations. It has no value anyway on such ++ systems and it's been removed in newer autoconf. ++ */ ++ exit(1); + } + ], ac_cv_func_setpgrp_void=no, ac_cv_func_setpgrp_void=yes, + AC_MSG_ERROR(cannot check setpgrp if cross compiling)) +@@ -1255,9 +1232,11 @@ AC_DEFUN(AC_FUNC_VFORK, + AC_CHECK_HEADER(vfork.h, AC_DEFINE(HAVE_VFORK_H)) + AC_CACHE_CHECK(for working vfork, ac_cv_func_vfork_works, + [AC_TRY_RUN([/* Thanks to Paul Eggert for this test. */ ++#include <stdlib.h> + #include <stdio.h> + #include <sys/types.h> + #include <sys/stat.h> ++#include <sys/wait.h> + #ifdef HAVE_UNISTD_H + #include <unistd.h> + #endif +@@ -1270,11 +1249,11 @@ AC_CACHE_CHECK(for working vfork, ac_cv_func_vfork_works, + but some compilers (e.g. gcc -O) don't grok <vfork.h>. + Test for this by using a static variable whose address + is put into a register that is clobbered by the vfork. */ +-static ++static void + #ifdef __cplusplus + sparc_address_test (int arg) + #else +-sparc_address_test (arg) int arg; ++sparc_address_test (int arg) + #endif + { + static pid_t child; +@@ -1359,6 +1338,8 @@ AC_DEFUN(AC_FUNC_WAIT3, + #include <sys/time.h> + #include <sys/resource.h> + #include <stdio.h> ++#include <stdlib.h> ++#include <unistd.h> + /* HP-UX has wait3 but does not fill in rusage at all. */ + int main(void) { + struct rusage r; +@@ -1452,7 +1433,8 @@ done + fi + + AC_CACHE_CHECK(stack direction for C alloca, ac_cv_c_stack_direction, +-[AC_TRY_RUN([find_stack_direction () ++[AC_TRY_RUN([#include <stdlib.h> ++int find_stack_direction () + { + static char *addr = 0; + auto char dummy; +@@ -1582,6 +1564,8 @@ AC_DEFUN(AC_FUNC_UTIME_NULL, + # Sequent interprets utime(file, 0) to mean use start of epoch. Wrong. + AC_TRY_RUN([#include <sys/types.h> + #include <sys/stat.h> ++#include <stdlib.h> ++#include <utime.h> + int main(void) { + struct stat s, t; + exit(!(stat ("conftestdata", &s) == 0 && utime("conftestdata", (long *)0) == 0 +@@ -1598,6 +1582,7 @@ fi + AC_DEFUN(AC_FUNC_STRCOLL, + [AC_CACHE_CHECK(for working strcoll, ac_cv_func_strcoll_works, + [AC_TRY_RUN([#include <string.h> ++#include <stdlib.h> + int main (void) + { + exit (strcoll ("abc", "def") >= 0 || +@@ -1614,6 +1599,7 @@ AC_DEFUN(AC_FUNC_SETVBUF_REVERSED, + [AC_CACHE_CHECK(whether setvbuf arguments are reversed, + ac_cv_func_setvbuf_reversed, + [AC_TRY_RUN([#include <stdio.h> ++#include <stdlib.h> + /* If setvbuf has the reversed format, exit 0. */ + int main (void) { + /* This call has the arguments reversed. +@@ -1646,7 +1632,8 @@ LIBS="-lintl $LIBS"])])]) + + AC_DEFUN(AC_FUNC_MEMCMP, + [AC_CACHE_CHECK(for 8-bit clean memcmp, ac_cv_func_memcmp_clean, +-[AC_TRY_RUN([ ++[AC_TRY_RUN([#include <stdlib.h> ++#include <string.h> + int main(void) + { + char c0 = 0x40, c1 = 0x80, c2 = 0x81; +@@ -1805,6 +1792,7 @@ AC_TRY_RUN( + #if !defined(__STDC__) || __STDC__ != 1 + #define volatile + #endif ++#include <stdlib.h> + int main(void) { + volatile char c = 255; exit(c < 0); + }], ac_cv_c_char_unsigned=yes, ac_cv_c_char_unsigned=no) +@@ -1819,7 +1807,8 @@ AC_DEFUN(AC_C_LONG_DOUBLE, + [if test "$GCC" = yes; then + ac_cv_c_long_double=yes + else +-AC_TRY_RUN([int main(void) { ++AC_TRY_RUN([#include <stdlib.h> ++int main(void) { + /* The Stardent Vistra knows sizeof(long double), but does not support it. */ + long double foo = 0.0; + /* On Ultrix 4.3 cc, long double is 4 and double is 8. */ +@@ -1834,7 +1823,8 @@ fi + AC_DEFUN(AC_INT_16_BITS, + [AC_OBSOLETE([$0], [; instead use AC_CHECK_SIZEOF(int)])dnl + AC_MSG_CHECKING(whether int is 16 bits) +-AC_TRY_RUN([int main(void) { exit(sizeof(int) != 2); }], ++AC_TRY_RUN([#include <stdlib.h> ++int main(void) { exit(sizeof(int) != 2); }], + [AC_MSG_RESULT(yes) + AC_DEFINE(INT_16_BITS)], AC_MSG_RESULT(no)) + ]) +@@ -1842,7 +1832,8 @@ AC_TRY_RUN([int main(void) { exit(sizeof(int) != 2); }], + AC_DEFUN(AC_LONG_64_BITS, + [AC_OBSOLETE([$0], [; instead use AC_CHECK_SIZEOF(long)])dnl + AC_MSG_CHECKING(whether long int is 64 bits) +-AC_TRY_RUN([int main(void) { exit(sizeof(long int) != 8); }], ++AC_TRY_RUN([#include <stdlib.h> ++int main(void) { exit(sizeof(long int) != 8); }], + [AC_MSG_RESULT(yes) + AC_DEFINE(LONG_64_BITS)], AC_MSG_RESULT(no)) + ]) +@@ -1862,7 +1853,8 @@ AC_TRY_COMPILE([#include <sys/types.h> + not big endian + #endif], ac_cv_c_bigendian=yes, ac_cv_c_bigendian=no)]) + if test $ac_cv_c_bigendian = unknown; then +-AC_TRY_RUN([int main (void) { ++AC_TRY_RUN([#include <stdlib.h> ++int main (void) { + /* Are we little or big endian? From Harbison&Steele. */ + union + { +@@ -1885,7 +1877,7 @@ AC_DEFUN(AC_C_INLINE, + [AC_CACHE_CHECK([for inline], ac_cv_c_inline, + [ac_cv_c_inline=no + for ac_kw in inline __inline__ __inline; do +- AC_TRY_COMPILE(, [} $ac_kw foo(void) {], [ac_cv_c_inline=$ac_kw; break]) ++ AC_TRY_COMPILE(, [} $ac_kw int foo(void) {], [ac_cv_c_inline=$ac_kw; break]) + done + ]) + case "$ac_cv_c_inline" in +@@ -2275,7 +2267,10 @@ AC_DEFUN(AC_SYS_RESTARTABLE_SYSCALLS, + i.e. the pid of the child, which means that wait was restarted + after getting the signal. */ + #include <sys/types.h> ++#include <sys/wait.h> + #include <signal.h> ++#include <stdlib.h> ++#include <unistd.h> + ucatch (isig) { } + int main (void) { + int i = fork (), status; +@@ -2444,7 +2439,7 @@ if test "$ac_x_libraries" = NO; then + # Don't add to $LIBS permanently. + ac_save_LIBS="$LIBS" + LIBS="-l$x_direct_test_library $LIBS" +-AC_TRY_LINK(, [${x_direct_test_function}()], ++AC_TRY_LINK([#include <X11/Intrinsic.h>], [${x_direct_test_function}(0)], + [LIBS="$ac_save_LIBS" + # We can link X programs with no special library path. + ac_x_libraries=], diff --git a/dev-build/autoconf/files/autoconf-2.13-K-R-decls-clang.patch b/dev-build/autoconf/files/autoconf-2.13-K-R-decls-clang.patch new file mode 100644 index 000000000000..42c3018aea8c --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.13-K-R-decls-clang.patch @@ -0,0 +1,346 @@ +https://bugs.gentoo.org/870412 +https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=8b5e2016c7ed2d67f31b03a3d2e361858ff5299b + +Backport the K&R decls fix to 2.13 to avoid configure tests +failing (often "silently", i.e. doesn't fail the build of +the package overall, just leads to wrong results) with +newer compilers like the upcoming Clang 16. + +From d8ad1096be4352c588b9bc1e16b6758f4f32b96a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me> +Date: Mon, 19 Sep 2022 01:38:29 +0200 +Subject: [PATCH] ac{general,specific}: declare void param lists, where apt + +--- a/acgeneral.m4 ++++ b/acgeneral.m4 +@@ -1542,7 +1542,7 @@ extern "C" + ])dnl + [/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +-char $1(); ++char $1(void); + ]), + [$1()], + [$2], +@@ -1597,7 +1597,7 @@ extern "C" + ])dnl + [/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +-char $2(); ++char $2(void); + ])), + [$2()], + eval "ac_cv_lib_$ac_lib_var=yes", +@@ -1733,7 +1733,7 @@ dnl [#]line __oline__ "[$]0" + [#]line __oline__ "configure" + #include "confdefs.h" + [$1] +-int main() { ++int main(void) { + [$2] + ; return 0; } + ])EOF +@@ -1777,7 +1777,7 @@ dnl [#]line __oline__ "[$]0" + [#]line __oline__ "configure" + #include "confdefs.h" + [$1] +-int main() { ++int main(void) { + [$2] + ; return 0; } + ])EOF +@@ -1934,7 +1934,7 @@ extern "C" + ])dnl + [/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +-char $1(); ++char $1(void); + ], [ + /* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named +@@ -1988,7 +1988,7 @@ changequote([, ])dnl + AC_MSG_CHECKING(size of $1) + AC_CACHE_VAL(AC_CV_NAME, + [AC_TRY_RUN([#include <stdio.h> +-main() ++main(void) + { + FILE *f=fopen("conftestval", "w"); + if (!f) exit(1); +--- a/acspecific.m4 ++++ b/acspecific.m4 +@@ -202,7 +202,7 @@ AC_DEFUN(AC_PROG_CC_WORKS, + [AC_MSG_CHECKING([whether the C compiler ($CC $CFLAGS $LDFLAGS) works]) + AC_LANG_SAVE + AC_LANG_C +-AC_TRY_COMPILER([main(){return(0);}], ac_cv_prog_cc_works, ac_cv_prog_cc_cross) ++AC_TRY_COMPILER([int main(void){return(0);}], ac_cv_prog_cc_works, ac_cv_prog_cc_cross) + AC_LANG_RESTORE + AC_MSG_RESULT($ac_cv_prog_cc_works) + if test $ac_cv_prog_cc_works = no; then +@@ -217,7 +217,7 @@ AC_DEFUN(AC_PROG_CXX_WORKS, + [AC_MSG_CHECKING([whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works]) + AC_LANG_SAVE + AC_LANG_CPLUSPLUS +-AC_TRY_COMPILER([int main(){return(0);}], ac_cv_prog_cxx_works, ac_cv_prog_cxx_cross) ++AC_TRY_COMPILER([int main(void){return(0);}], ac_cv_prog_cxx_works, ac_cv_prog_cxx_cross) + AC_LANG_RESTORE + AC_MSG_RESULT($ac_cv_prog_cxx_works) + if test $ac_cv_prog_cxx_works = no; then +@@ -300,7 +300,7 @@ fi])]) + + AC_DEFUN(AC_PROG_CC_G, + [AC_CACHE_CHECK(whether ${CC-cc} accepts -g, ac_cv_prog_cc_g, +-[echo 'void f(){}' > conftest.c ++[echo 'void f(void){}' > conftest.c + if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then + ac_cv_prog_cc_g=yes + else +@@ -311,7 +311,7 @@ rm -f conftest* + + AC_DEFUN(AC_PROG_CXX_G, + [AC_CACHE_CHECK(whether ${CXX-g++} accepts -g, ac_cv_prog_cxx_g, +-[echo 'void f(){}' > conftest.cc ++[echo 'void f(void){}' > conftest.cc + if test -z "`${CXX-g++} -g -c conftest.cc 2>&1`"; then + ac_cv_prog_cxx_g=yes + else +@@ -371,7 +371,7 @@ changequote(, )dnl + sed -e 's/[^a-zA-Z0-9_]/_/g' -e 's/^[0-9]/_/'`" + changequote([, ])dnl + AC_CACHE_VAL(ac_cv_prog_cc_${ac_cc}_c_o, +-[echo 'foo(){}' > conftest.c ++[echo 'foo(void){}' > conftest.c + # Make sure it works both with $CC and with simple cc. + # We do the test twice because some compilers refuse to overwrite an + # existing .o file with -o, though they will create one. +@@ -709,7 +709,7 @@ AC_TRY_RUN([#include <ctype.h> + #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') + #define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) + #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +-int main () { int i; for (i = 0; i < 256; i++) ++int main (void) { int i; for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); + exit (0); } + ], , ac_cv_header_stdc=no, :) +@@ -820,7 +820,7 @@ esac + AC_CACHE_CHECK(whether closedir returns void, ac_cv_func_closedir_void, + [AC_TRY_RUN([#include <sys/types.h> + #include <$ac_header_dirent> +-int closedir(); main() { exit(closedir(opendir(".")) != 0); }], ++int closedir(...); int main(void) { exit(closedir(opendir(".")) != 0); }], + ac_cv_func_closedir_void=no, ac_cv_func_closedir_void=yes, ac_cv_func_closedir_void=yes)]) + if test $ac_cv_func_closedir_void = yes; then + AC_DEFINE(VOID_CLOSEDIR) +@@ -911,7 +911,7 @@ changequote(<<, >>)dnl + #define NGID 256 + #undef MAX + #define MAX(x, y) ((x) > (y) ? (x) : (y)) +-main() ++int main(void) + { + gid_t gidset[NGID]; + int i, n; +@@ -973,7 +973,7 @@ AC_DEFUN(AC_TYPE_SIGNAL, + #ifdef __cplusplus + extern "C" void (*signal (int, void (*)(int)))(int); + #else +-void (*signal ()) (); ++void (*signal (void)) (void); + #endif + ], + [int i;], ac_cv_type_signal=void, ac_cv_type_signal=int)]) +@@ -989,7 +989,7 @@ AC_DEFUN(AC_FUNC_CLOSEDIR_VOID, + AC_CACHE_CHECK(whether closedir returns void, ac_cv_func_closedir_void, + [AC_TRY_RUN([#include <sys/types.h> + #include <$ac_header_dirent> +-int closedir(); main() { exit(closedir(opendir(".")) != 0); }], ++int closedir(...); int main(void) { exit(closedir(opendir(".")) != 0); }], + ac_cv_func_closedir_void=no, ac_cv_func_closedir_void=yes, ac_cv_func_closedir_void=yes)]) + if test $ac_cv_func_closedir_void = yes; then + AC_DEFINE(CLOSEDIR_VOID) +@@ -1001,7 +1001,7 @@ AC_DEFUN(AC_FUNC_FNMATCH, + # Some versions of Solaris or SCO have a broken fnmatch function. + # So we run a test program. If we are cross-compiling, take no chance. + # Thanks to John Oleynick and Franc,ois Pinard for this test. +-[AC_TRY_RUN([main() { exit (fnmatch ("a*", "abc", 0) != 0); }], ++[AC_TRY_RUN([int main(void) { exit (fnmatch ("a*", "abc", 0) != 0); }], + ac_cv_func_fnmatch_works=yes, ac_cv_func_fnmatch_works=no, + ac_cv_func_fnmatch_works=no)]) + if test $ac_cv_func_fnmatch_works = yes; then +@@ -1083,11 +1083,11 @@ AC_CACHE_CHECK(for working mmap, ac_cv_func_mmap_fixed_mapped, + #ifdef __cplusplus + extern "C" { void *malloc(unsigned); } + #else +-char *malloc(); ++char *malloc(...); + #endif + + int +-main() ++main(void) + { + char *data, *data2, *data3; + int i, pagesize; +@@ -1172,7 +1172,7 @@ int pid; + int pg1, pg2, pg3, pg4; + int ng, np, s, child; + +-main() ++int main(void) + { + pid = getpid(); + pg1 = getpgrp(0); +@@ -1228,7 +1228,7 @@ AC_TRY_RUN([ + * If this system has a BSD-style setpgrp, which takes arguments, exit + * successfully. + */ +-main() ++int main(void) + { + if (setpgrp(1,1) == -1) + exit(0); +@@ -1291,7 +1291,7 @@ sparc_address_test (arg) int arg; + } + } + } +-main() { ++int main(void) { + pid_t parent = getpid (); + pid_t child; + +@@ -1360,7 +1360,7 @@ AC_DEFUN(AC_FUNC_WAIT3, + #include <sys/resource.h> + #include <stdio.h> + /* HP-UX has wait3 but does not fill in rusage at all. */ +-main() { ++int main(void) { + struct rusage r; + int i; + /* Use a field that we can force nonzero -- +@@ -1416,7 +1416,7 @@ AC_CACHE_CHECK([for alloca], ac_cv_func_alloca_works, + #pragma alloca + # else + # ifndef alloca /* predefined by HP cc +Olibcalls */ +-char *alloca (); ++char *alloca (...); + # endif + # endif + # endif +@@ -1464,7 +1464,7 @@ AC_CACHE_CHECK(stack direction for C alloca, ac_cv_c_stack_direction, + else + return (&dummy > addr) ? 1 : -1; + } +-main () ++int main (void) + { + exit (find_stack_direction() < 0); + }], ac_cv_c_stack_direction=1, ac_cv_c_stack_direction=-1, +@@ -1582,7 +1582,7 @@ AC_DEFUN(AC_FUNC_UTIME_NULL, + # Sequent interprets utime(file, 0) to mean use start of epoch. Wrong. + AC_TRY_RUN([#include <sys/types.h> + #include <sys/stat.h> +-main() { ++int main(void) { + struct stat s, t; + exit(!(stat ("conftestdata", &s) == 0 && utime("conftestdata", (long *)0) == 0 + && stat("conftestdata", &t) == 0 && t.st_mtime >= s.st_mtime +@@ -1598,7 +1598,7 @@ fi + AC_DEFUN(AC_FUNC_STRCOLL, + [AC_CACHE_CHECK(for working strcoll, ac_cv_func_strcoll_works, + [AC_TRY_RUN([#include <string.h> +-main () ++int main (void) + { + exit (strcoll ("abc", "def") >= 0 || + strcoll ("ABC", "DEF") >= 0 || +@@ -1615,7 +1615,7 @@ AC_DEFUN(AC_FUNC_SETVBUF_REVERSED, + ac_cv_func_setvbuf_reversed, + [AC_TRY_RUN([#include <stdio.h> + /* If setvbuf has the reversed format, exit 0. */ +-main () { ++int main (void) { + /* This call has the arguments reversed. + A reversed system may check and see that the address of main + is not _IOLBF, _IONBF, or _IOFBF, and return nonzero. */ +@@ -1647,7 +1647,7 @@ LIBS="-lintl $LIBS"])])]) + AC_DEFUN(AC_FUNC_MEMCMP, + [AC_CACHE_CHECK(for 8-bit clean memcmp, ac_cv_func_memcmp_clean, + [AC_TRY_RUN([ +-main() ++int main(void) + { + char c0 = 0x40, c1 = 0x80, c2 = 0x81; + exit(memcmp(&c0, &c2, 1) < 0 && memcmp(&c1, &c2, 1) < 0 ? 0 : 1); +@@ -1805,7 +1805,7 @@ AC_TRY_RUN( + #if !defined(__STDC__) || __STDC__ != 1 + #define volatile + #endif +-main() { ++int main(void) { + volatile char c = 255; exit(c < 0); + }], ac_cv_c_char_unsigned=yes, ac_cv_c_char_unsigned=no) + fi]) +@@ -1819,7 +1819,7 @@ AC_DEFUN(AC_C_LONG_DOUBLE, + [if test "$GCC" = yes; then + ac_cv_c_long_double=yes + else +-AC_TRY_RUN([int main() { ++AC_TRY_RUN([int main(void) { + /* The Stardent Vistra knows sizeof(long double), but does not support it. */ + long double foo = 0.0; + /* On Ultrix 4.3 cc, long double is 4 and double is 8. */ +@@ -1834,7 +1834,7 @@ fi + AC_DEFUN(AC_INT_16_BITS, + [AC_OBSOLETE([$0], [; instead use AC_CHECK_SIZEOF(int)])dnl + AC_MSG_CHECKING(whether int is 16 bits) +-AC_TRY_RUN([main() { exit(sizeof(int) != 2); }], ++AC_TRY_RUN([int main(void) { exit(sizeof(int) != 2); }], + [AC_MSG_RESULT(yes) + AC_DEFINE(INT_16_BITS)], AC_MSG_RESULT(no)) + ]) +@@ -1842,7 +1842,7 @@ AC_TRY_RUN([main() { exit(sizeof(int) != 2); }], + AC_DEFUN(AC_LONG_64_BITS, + [AC_OBSOLETE([$0], [; instead use AC_CHECK_SIZEOF(long)])dnl + AC_MSG_CHECKING(whether long int is 64 bits) +-AC_TRY_RUN([main() { exit(sizeof(long int) != 8); }], ++AC_TRY_RUN([int main(void) { exit(sizeof(long int) != 8); }], + [AC_MSG_RESULT(yes) + AC_DEFINE(LONG_64_BITS)], AC_MSG_RESULT(no)) + ]) +@@ -1862,7 +1862,7 @@ AC_TRY_COMPILE([#include <sys/types.h> + not big endian + #endif], ac_cv_c_bigendian=yes, ac_cv_c_bigendian=no)]) + if test $ac_cv_c_bigendian = unknown; then +-AC_TRY_RUN([main () { ++AC_TRY_RUN([int main (void) { + /* Are we little or big endian? From Harbison&Steele. */ + union + { +@@ -1885,7 +1885,7 @@ AC_DEFUN(AC_C_INLINE, + [AC_CACHE_CHECK([for inline], ac_cv_c_inline, + [ac_cv_c_inline=no + for ac_kw in inline __inline__ __inline; do +- AC_TRY_COMPILE(, [} $ac_kw foo() {], [ac_cv_c_inline=$ac_kw; break]) ++ AC_TRY_COMPILE(, [} $ac_kw foo(void) {], [ac_cv_c_inline=$ac_kw; break]) + done + ]) + case "$ac_cv_c_inline" in +@@ -2277,7 +2277,7 @@ AC_DEFUN(AC_SYS_RESTARTABLE_SYSCALLS, + #include <sys/types.h> + #include <signal.h> + ucatch (isig) { } +-main () { ++int main (void) { + int i = fork (), status; + if (i == 0) { sleep (3); kill (getppid (), SIGINT); sleep (3); exit (0); } + signal (SIGINT, ucatch); +@@ -2654,7 +2654,7 @@ AC_CACHE_VAL(ac_cv_exeext, + ac_cv_exeext=.exe + else + rm -f conftest* +- echo 'int main () { return 0; }' > conftest.$ac_ext ++ echo 'int main (void) { return 0; }' > conftest.$ac_ext + ac_cv_exeext= + if AC_TRY_EVAL(ac_link); then + for file in conftest.*; do diff --git a/dev-build/autoconf/files/autoconf-2.13-destdir.patch b/dev-build/autoconf/files/autoconf-2.13-destdir.patch new file mode 100644 index 000000000000..47605af5f59c --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.13-destdir.patch @@ -0,0 +1,26 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -41,18 +41,18 @@ + + transform=@program_transform_name@ + +-prefix = @prefix@ ++prefix = $(DESTDIR)@prefix@ +-exec_prefix = @exec_prefix@ ++exec_prefix = $(DESTDIR)@exec_prefix@ + + # Directory in which to install scripts. +-bindir = @bindir@ ++bindir = $(DESTDIR)@bindir@ + + # Directory in which to install library files. +-datadir = @datadir@ ++datadir = $(DESTDIR)@datadir@ + acdatadir = $(datadir)/autoconf + + # Directory in which to install documentation info files. +-infodir = @infodir@ ++infodir = $(DESTDIR)@infodir@ + + #### End of system configuration section. #### + diff --git a/dev-build/autoconf/files/autoconf-2.13-gentoo.patch b/dev-build/autoconf/files/autoconf-2.13-gentoo.patch new file mode 100644 index 000000000000..44f09cba92f0 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.13-gentoo.patch @@ -0,0 +1,36 @@ +--- a/configure ++++ b/configure +@@ -654,12 +654,10 @@ + echo "$ac_t""no" 1>&6 + fi + +-if test "$PERL" != no; then +- SCRIPTS=autoscan +-else +- echo "configure: warning: autoscan will not be built since perl is not found" 1>&2 ++if test "$PERL" = no; then ++ PERL=/usr/bin/perl + fi +- ++SCRIPTS=autoscan + ac_aux_dir= + for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do + if test -f $ac_dir/install-sh; then +--- a/configure.in ++++ b/configure.in +@@ -14,12 +14,10 @@ + AC_PATH_PROG(PERL, perl, no) + AC_SUBST(PERL)dnl + AC_SUBST(SCRIPTS)dnl +-if test "$PERL" != no; then +- SCRIPTS=autoscan +-else +- AC_MSG_WARN(autoscan will not be built since perl is not found) ++if test "$PERL" = no; then ++ PERL=/usr/bin/perl + fi +- ++SCRIPTS=autoscan + AC_PROG_INSTALL + + # Work with the GNU or Cygnus source tree layout. diff --git a/dev-build/autoconf/files/autoconf-2.13-perl-5.26.patch b/dev-build/autoconf/files/autoconf-2.13-perl-5.26.patch new file mode 100644 index 000000000000..6fbc0cd1bc89 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.13-perl-5.26.patch @@ -0,0 +1,12 @@ +diff -ruN autoconf-2.13.orig/autoscan.pl autoconf-2.13/autoscan.pl +--- autoconf-2.13.orig/autoscan.pl 1999-01-05 14:28:42.000000000 +0100 ++++ autoconf-2.13/autoscan.pl 2018-12-22 19:55:10.986732296 +0100 +@@ -232,7 +232,7 @@ + # Strip out comments and variable references. + s/#.*//; + s/\$\([^\)]*\)//g; +- s/\${[^\}]*}//g; ++ s/\$\{[^\}]*}//g; + s/@[^@]*@//g; + + # Variable assignments. diff --git a/dev-build/autoconf/files/autoconf-2.13-skip-AC_FUNC_GETLOADAVG-test.patch b/dev-build/autoconf/files/autoconf-2.13-skip-AC_FUNC_GETLOADAVG-test.patch new file mode 100644 index 000000000000..280578ac6b0a --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.13-skip-AC_FUNC_GETLOADAVG-test.patch @@ -0,0 +1,20 @@ +The macro itself is broken in autoconf-2.13 but this is caused by newer kernels +etc rather than anything else. Very, very few packages use autoconf-2.13, let +alone AC_FUNC_GETLOADAVG, so not going to worry about it much. + +Do as Fedora and Debian do and skip the test for it. + +https://bugs.gentoo.org/406723 +https://bugs.gentoo.org/677926 +--- a/testsuite/autoconf.s/syntax.exp ++++ b/testsuite/autoconf.s/syntax.exp +@@ -2,7 +2,8 @@ + + send_user "Checking for syntax errors in the specific tests...\n" + set script {s/^AC_DEFUN(\([^,]*\).*/\1/p} +-set macros [exec sed -n $script $srcdir/../acspecific.m4] ++# XXX: AC_FUNC_GETLOADAVG skipped for bug #406723, bug #677926 ++set macros [exec sed -n $script $srcdir/../acspecific.m4 | grep -v AC_FUNC_GETLOADAVG] + + foreach mac $macros { + if { [string match "*F77*" "$mac"] && [catch {exec which g77} ignore_output] } then { diff --git a/dev-build/autoconf/files/autoconf-2.13-test-fixes.patch b/dev-build/autoconf/files/autoconf-2.13-test-fixes.patch new file mode 100644 index 000000000000..b8a7e3b8ce99 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.13-test-fixes.patch @@ -0,0 +1,18 @@ +newer gcc versions don't provide g77, so if it doesn't exist, +don't bother trying to test it (and failing) + +http://bugs.gentoo.org/146592 + +--- autoconf-2.13/testsuite/autoconf.s/syntax.exp ++++ autoconf-2.13/testsuite/autoconf.s/syntax.exp +@@ -5,6 +5,10 @@ + set macros [exec sed -n $script $srcdir/../acspecific.m4] + + foreach mac $macros { ++ if { [string match "*F77*" "$mac"] && [catch {exec which g77} ignore_output] } then { ++ send_user "XFAIL: $mac\n" ++ continue ++ } + send_user "$mac\n" + autoconf_test $mac $mac + } diff --git a/dev-build/autoconf/files/autoconf-2.61-darwin.patch b/dev-build/autoconf/files/autoconf-2.61-darwin.patch new file mode 100644 index 000000000000..83f450e6f5af --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.61-darwin.patch @@ -0,0 +1,11 @@ +--- a/bin/autoreconf.in ++++ b/bin/autoreconf.in +@@ -110,7 +110,7 @@ + my $autoheader = $ENV{'AUTOHEADER'} || '@bindir@/@autoheader-name@'; + my $automake = $ENV{'AUTOMAKE'} || 'automake'; + my $aclocal = $ENV{'ACLOCAL'} || 'aclocal'; +-my $libtoolize = $ENV{'LIBTOOLIZE'} || 'libtoolize'; ++my $libtoolize = $ENV{'LIBTOOLIZE'} || 'glibtoolize'; + my $autopoint = $ENV{'AUTOPOINT'} || 'autopoint'; + + # --install -- as --add-missing in other tools. diff --git a/dev-build/autoconf/files/autoconf-2.69-K-R-decls-clang.patch b/dev-build/autoconf/files/autoconf-2.69-K-R-decls-clang.patch new file mode 100644 index 000000000000..77444ebc5be6 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.69-K-R-decls-clang.patch @@ -0,0 +1,394 @@ +https://bugs.gentoo.org/870412 +https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=8b5e2016c7ed2d67f31b03a3d2e361858ff5299b +(and contains a backport of https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=bf5a75953b6d504f0405b1ca33b039b8dd39eef4) + +Backport the K&R decls fix to 2.69 to avoid configure tests +failing (often "silently", i.e. doesn't fail the build of +the package overall, just leads to wrong results) with +newer compilers like the upcoming Clang 16. + +From e6f401b94b58bb9bb58cd668a996e27663d3e6c7 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me> +Date: Mon, 19 Sep 2022 12:11:24 +0200 +Subject: [PATCH] backport K&R decl fixes + +--- a/lib/autoconf/c.m4 ++++ b/lib/autoconf/c.m4 +@@ -97,7 +97,7 @@ m4_define([AC_LANG_PROGRAM(C)], + m4_ifdef([_AC_LANG_PROGRAM_C_F77_HOOKS], [_AC_LANG_PROGRAM_C_F77_HOOKS])[]dnl + m4_ifdef([_AC_LANG_PROGRAM_C_FC_HOOKS], [_AC_LANG_PROGRAM_C_FC_HOOKS])[]dnl + int +-main () ++main (void) + { + dnl Do *not* indent the following line: there may be CPP directives. + dnl Don't move the `;' right after for the same reason. +@@ -130,7 +130,7 @@ m4_if([$2], [main], , + #ifdef __cplusplus + extern "C" + #endif +-char $2 ();])], [return $2 ();])]) ++char $2 (void);])], [return $2 ();])]) + + + # AC_LANG_FUNC_LINK_TRY(C)(FUNCTION) +@@ -154,7 +154,7 @@ m4_define([AC_LANG_FUNC_LINK_TRY(C)], + #define $1 innocuous_$1 + + /* System header to define __stub macros and hopefully few prototypes, +- which can conflict with char $1 (); below. ++ which can conflict with char $1 (void); below. + Prefer <limits.h> to <assert.h> if __STDC__ is defined, since + <limits.h> exists even on freestanding compilers. */ + +@@ -172,7 +172,7 @@ m4_define([AC_LANG_FUNC_LINK_TRY(C)], + #ifdef __cplusplus + extern "C" + #endif +-char $1 (); ++char $1 (void); + /* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +@@ -201,8 +201,8 @@ return test_array @<:@0@:>@; + # But we include them only after the EXPRESSION has been evaluated. + m4_define([AC_LANG_INT_SAVE(C)], + [AC_LANG_PROGRAM([$1 +-static long int longval () { return $2; } +-static unsigned long int ulongval () { return $2; } ++static long int longval (void) { return $2; } ++static unsigned long int ulongval (void) { return $2; } + @%:@include <stdio.h> + @%:@include <stdlib.h>], + [ +@@ -1625,8 +1625,8 @@ for ac_kw in inline __inline__ __inline; do + AC_COMPILE_IFELSE([AC_LANG_SOURCE( + [#ifndef __cplusplus + typedef int foo_t; +-static $ac_kw foo_t static_foo () {return 0; } +-$ac_kw foo_t foo () {return 0; } ++static $ac_kw foo_t static_foo (void) {return 0; } ++$ac_kw foo_t foo (void) {return 0; } + #endif + ])], + [ac_cv_c_inline=$ac_kw]) +@@ -1949,7 +1949,7 @@ m4_define([_AC_LANG_OPENMP(C)], + choke me + #endif + #include <omp.h> +-int main () { return omp_get_num_threads (); } ++int main (void) { return omp_get_num_threads (); } + ]) + + # _AC_LANG_OPENMP(C++) +--- a/lib/autoconf/functions.m4 ++++ b/lib/autoconf/functions.m4 +@@ -463,9 +463,6 @@ AC_CACHE_CHECK([whether closedir returns void], + [ac_cv_func_closedir_void], + [AC_RUN_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT + #include <$ac_header_dirent> +-#ifndef __cplusplus +-int closedir (); +-#endif + ], + [[return closedir (opendir (".")) != 0;]])], + [ac_cv_func_closedir_void=no], +@@ -893,7 +890,7 @@ AC_CACHE_CHECK([for GNU libc compatible malloc], ac_cv_func_malloc_0_nonnull, + [[#if defined STDC_HEADERS || defined HAVE_STDLIB_H + # include <stdlib.h> + #else +-char *malloc (); ++char *malloc (long); + #endif + ]], + [return ! malloc (0);])], +@@ -1029,7 +1026,7 @@ static const char *tz_strings[] = { + /* Return 0 if mktime fails to convert a date in the spring-forward gap. + Based on a problem report from Andreas Jaeger. */ + static int +-spring_forward_gap () ++spring_forward_gap (void) + { + /* glibc (up to about 1998-10-07) failed this test. */ + struct tm tm; +@@ -1066,7 +1063,7 @@ mktime_test (time_t now) + } + + static int +-irix_6_4_bug () ++irix_6_4_bug (void) + { + /* Based on code from Ariel Faigon. */ + struct tm tm; +@@ -1108,7 +1105,7 @@ bigtime_test (int j) + } + + static int +-year_2050_test () ++year_2050_test (void) + { + /* The correct answer for 2050-02-01 00:00:00 in Pacific time, + ignoring leap seconds. */ +@@ -1138,7 +1135,7 @@ year_2050_test () + } + + int +-main () ++main (void) + { + time_t t, delta; + int i, j; +@@ -1232,7 +1229,7 @@ AC_CACHE_CHECK([for working mmap], [ac_cv_func_mmap_fixed_mapped], + #include <sys/mman.h> + + #if !defined STDC_HEADERS && !defined HAVE_STDLIB_H +-char *malloc (); ++char *malloc (void *, long); + #endif + + /* This mess was copied from the GNU getpagesize.h. */ +@@ -1268,7 +1265,7 @@ char *malloc (); + #endif /* no HAVE_GETPAGESIZE */ + + int +-main () ++main (void) + { + char *data, *data2, *data3; + const char *cdata2; +@@ -1398,7 +1395,7 @@ AC_CACHE_CHECK([for GNU libc compatible realloc], ac_cv_func_realloc_0_nonnull, + [[#if defined STDC_HEADERS || defined HAVE_STDLIB_H + # include <stdlib.h> + #else +-char *realloc (); ++char *realloc (void *, long); + #endif + ]], + [return ! realloc (0, 0);])], +@@ -1547,11 +1544,8 @@ AC_DEFUN([AC_FUNC_STRTOD], + AC_CACHE_CHECK(for working strtod, ac_cv_func_strtod, + [AC_RUN_IFELSE([AC_LANG_SOURCE([[ + ]AC_INCLUDES_DEFAULT[ +-#ifndef strtod +-double strtod (); +-#endif + int +-main() ++main(void) + { + { + /* Some versions of Linux strtod mis-parse strings with leading '+'. */ +@@ -1645,8 +1639,7 @@ AC_CACHE_CHECK([whether strerror_r returns char *], + # former has a strerror_r that returns char*, while the latter + # has a strerror_r that returns `int'. + # This test should segfault on the DEC system. +- AC_RUN_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT +- extern char *strerror_r ();], ++ AC_RUN_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT], + [[char buf[100]; + char x = *strerror_r (0, buf, sizeof buf); + return ! isalpha (x);]])], +@@ -1879,7 +1872,7 @@ sparc_address_test (arg) int arg; + } + + int +-main () ++main (void) + { + pid_t parent = getpid (); + pid_t child; +@@ -1985,7 +1978,7 @@ AC_CACHE_CHECK([for wait3 that fills in rusage], + #include <sys/wait.h> + /* HP-UX has wait3 but does not fill in rusage at all. */ + int +-main () ++main (void) + { + struct rusage r; + int i; +--- a/lib/autoconf/headers.m4 ++++ b/lib/autoconf/headers.m4 +@@ -712,7 +712,7 @@ if test $ac_cv_header_stdc = yes; then + + #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) + int +-main () ++main (void) + { + int i; + for (i = 0; i < 256; i++) +--- a/lib/autoconf/specific.m4 ++++ b/lib/autoconf/specific.m4 +@@ -257,7 +257,7 @@ void ucatch (dummy) int dummy; { } + #endif + + int +-main () ++main (void) + { + int i = fork (), status; + +--- a/lib/autoconf/types.m4 ++++ b/lib/autoconf/types.m4 +@@ -267,7 +267,7 @@ AC_CACHE_CHECK(type of array argument to getgroups, ac_cv_type_getgroups, + #define MAX(x, y) ((x) > (y) ? (x) : (y)) + + int +-main () ++main (void) + { + gid_t gidset[NGID]; + int i, n; +--- a/tests/c.at ++++ b/tests/c.at +@@ -354,7 +354,7 @@ AT_DATA([foo.c], + #endif + #include <stdio.h> + +-int main () ++int main (void) + { + #ifdef _OPENMP + #pragma omp parallel +@@ -404,7 +404,7 @@ foo.@OBJEXT@: foo.cpp + ]]) + + AT_DATA([foo.cpp], +-[[int main () ++[[int main (void) + { + return 0; + } +--- a/tests/compile.at ++++ b/tests/compile.at +@@ -124,7 +124,7 @@ AC_PROG_CC + AC_COMPILE_IFELSE([AC_LANG_SOURCE([[#ifndef PACKAGE_NAME + choke me + #endif +-int main () ++int main (void) + { + return 0; + } +@@ -150,7 +150,7 @@ AC_LANG([C++]) + AC_COMPILE_IFELSE([AC_LANG_SOURCE([[#ifndef PACKAGE_NAME + choke me + #endif +-int main () ++int main (void) + { + return 0; + } +@@ -249,7 +249,7 @@ AT_CHECK([sed -n 's/ *$//; /#define PACKAGE/,$p' stdout], [], + + const char hw[] = "Hello, World\n"; + int +-main () ++main (void) + { + fputs (hw, stdout); + ; +@@ -269,7 +269,7 @@ AT_KEYWORDS([AC_LANG_DEFINES_PROVIDED]) + + AT_DATA([configure.ac], + [[AC_INIT +-AC_COMPILE_IFELSE([int main () { return 0; }], [], ++AC_COMPILE_IFELSE([int main (void) { return 0; }], [], + [AC_MSG_ERROR([compiling trivial program failed])]) + ]]) + +@@ -280,7 +280,7 @@ AT_CHECK_CONFIGURE([-q]) + + AT_DATA([configure.ac], + [[AC_INIT +-AC_COMPILE_IFELSE([AC_LANG_DEFINES_PROVIDED()int main () { return 0; }], [], ++AC_COMPILE_IFELSE([AC_LANG_DEFINES_PROVIDED()int main (void) { return 0; }], [], + [AC_MSG_ERROR([compiling trivial program failed])]) + ]]) + +@@ -324,7 +324,7 @@ test $estatus != 2 && + AC_MSG_ERROR([did not get as 2 exit status: $estatus])]) + + # The old stinky one. +-AC_TRY_RUN([int main () { return 3; }], ++AC_TRY_RUN([int main (void) { return 3; }], + [AC_MSG_ERROR([saw `return 3' as a success])], + [estatus=$? + test $estatus != 3 && +--- a/tests/fortran.at ++++ b/tests/fortran.at +@@ -223,7 +223,7 @@ void FOOBAR_F77 (double *x, double *y); + # ifdef __cplusplus + extern "C" + # endif +- int F77_DUMMY_MAIN () { return 1; } ++ int F77_DUMMY_MAIN (void) { return 1; } + #endif + + int main(int argc, char *argv[]) +@@ -301,7 +301,7 @@ void FOOBAR_FC(double *x, double *y); + # ifdef __cplusplus + extern "C" + # endif +- int FC_DUMMY_MAIN () { return 1; } ++ int FC_DUMMY_MAIN (void) { return 1; } + #endif + + int main (int argc, char *argv[]) +@@ -533,7 +533,7 @@ void @foobar@ (int *x); + # ifdef __cplusplus + extern "C" + # endif +- int F77_DUMMY_MAIN () { return 1; } ++ int F77_DUMMY_MAIN (void) { return 1; } + #endif + + int main(int argc, char *argv[]) +@@ -607,7 +607,7 @@ void @foobar@ (int *x); + # ifdef __cplusplus + extern "C" + # endif +- int FC_DUMMY_MAIN () { return 1; } ++ int FC_DUMMY_MAIN (void) { return 1; } + #endif + + int main(int argc, char *argv[]) +--- a/tests/semantics.at ++++ b/tests/semantics.at +@@ -107,7 +107,7 @@ AT_CHECK_MACRO([AC_CHECK_DECLS], + [[int yes = 1; + enum { myenum }; + struct { int x[20]; } mystruct; +- extern int myfunc(); ++ extern int myfunc (void); + #define mymacro1(arg) arg + #define mymacro2]]) + # The difference in space-before-open-paren is intentional. +--- a/lib/autoconf/c.m4 ++++ b/lib/autoconf/c.m4 +@@ -1106,9 +1106,7 @@ struct stat; + /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ + struct buf { int x; }; + FILE * (*rcsopen) (struct buf *, struct stat *, int); +-static char *e (p, i) +- char **p; +- int i; ++static char *e (char **p, int i) + { + return p[i]; + } +--- a/lib/autoconf/specific.m4 ++++ b/lib/autoconf/specific.m4 +@@ -251,10 +251,9 @@ AC_INCLUDES_DEFAULT + /* Some platforms explicitly require an extern "C" signal handler + when using C++. */ + #ifdef __cplusplus +-extern "C" void ucatch (int dummy) { } +-#else +-void ucatch (dummy) int dummy; { } ++extern "C" + #endif ++void ucatch (int dummy) { } + + int + main (void) diff --git a/dev-build/autoconf/files/autoconf-2.69-fix-libtool-test.patch b/dev-build/autoconf/files/autoconf-2.69-fix-libtool-test.patch new file mode 100644 index 000000000000..e75eba621606 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.69-fix-libtool-test.patch @@ -0,0 +1,31 @@ +From 247b02e5a5bb79ca6666e91de02ae2d3cb0cd325 Mon Sep 17 00:00:00 2001 +From: "Gary V. Vaughan" <gary@gnu.org> +Date: Mon, 3 Nov 2014 07:25:03 +0100 +Subject: tests: avoid spurious test failure with libtool 2.4.3 + +Based on a report by Bruce Dubbs. + +* tests/foreign.at (Libtool): Be tolerant of 'quote' replacing the +older `quote'. + +Signed-off-by: Eric Blake <eblake@redhat.com> +--- + tests/foreign.at | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/foreign.at b/tests/foreign.at +index a9dc33c..d4702cd 100644 +--- a/tests/foreign.at ++++ b/tests/foreign.at +@@ -57,7 +57,7 @@ AT_CHECK([./config.guess || exit 77], [], [ignore], [ignore]) + # Make sure at-path contains something valid, and let the test suite + # display it when verbose. And fail, skipping would too easily hide + # problems. +-AT_CHECK([sed -n ["s,^.*\`\\(/[^']*\\)'.*,\\1,p"] stdout], [0], [stdout]) ++AT_CHECK([sed -n ["s,^[^']*[\`']\\(/[^']*\\)'.*,\\1,p"] stdout], [0], [stdout]) + AT_CHECK([test -f "`sed -n 1p stdout`"]) + + # Older libtoolize installed everything but install-sh... +-- +cgit v1.0-41-gc330 + diff --git a/dev-build/autoconf/files/autoconf-2.69-make-tests-bash5-compatible.patch b/dev-build/autoconf/files/autoconf-2.69-make-tests-bash5-compatible.patch new file mode 100644 index 000000000000..1afcec15bb4f --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.69-make-tests-bash5-compatible.patch @@ -0,0 +1,63 @@ +From 5b9db67786a428164abafe626ab11a2754aad528 Mon Sep 17 00:00:00 2001 +From: Ondrej Dubaj <odubaj@redhat.com> +Date: Wed, 28 Aug 2019 07:39:50 +0200 +Subject: Port tests to Bash 5 + +* tests/local.at (AT_CHECK_ENV, AT_CONFIG_CMP): +Add BASH_ARGC, BASH_ARGV to list of variables to be ignored when +comparing variable space dumps. +(AT_CONFIG_CMP): Also ignore LINENO. +* tests/m4sh.at: Also unset LINENO in 'reference' and 'test/test-1'. +--- + tests/local.at | 5 ++++- + tests/m4sh.at | 4 ++-- + 2 files changed, 6 insertions(+), 3 deletions(-) + +diff --git a/tests/local.at b/tests/local.at +index a22958c0..852be285 100644 +--- a/tests/local.at ++++ b/tests/local.at +@@ -325,7 +325,7 @@ if test -f state-env.before && test -f state-env.after; then + [AWK|LEX|LEXLIB|LEX_OUTPUT_ROOT|LN_S|M4|MKDIR_P|RANLIB|SET_MAKE|YACC], + [GREP|[EF]GREP|SED], + [[_@]|.[*#?$].], +- [argv|ARGC|LINENO|OLDPWD|PIPESTATUS|RANDOM|SECONDS]))=' \ ++ [argv|ARGC|LINENO|BASH_ARGC|BASH_ARGV|OLDPWD|PIPESTATUS|RANDOM|SECONDS]))=' \ + $act_file || + test $? -eq 1 || echo failed >&2 + ) 2>stderr-$act_file | +@@ -382,6 +382,9 @@ do + /'\'\\\$\''=/ d + /^argv=/ d + /^ARGC=/ d ++ /^BASH_ARGC=/ d ++ /^BASH_ARGV=/ d ++ /^LINENO=/ d + ' $act_file >at_config_vars-$act_file + done + AT_CMP([at_config_vars-$1], [at_config_vars-$2])[]dnl +diff --git a/tests/m4sh.at b/tests/m4sh.at +index e9d70b02..cbdfcb62 100644 +--- a/tests/m4sh.at ++++ b/tests/m4sh.at +@@ -254,7 +254,7 @@ AT_CHECK([autom4te -l m4sh $1.as -o $1]) + # `_oline_', once processed and ran, produces our reference. + # We check that we find ourselves by looking at a string which is + # available only in the original script: `_oline_'. +-AT_DATA_LINENO([reference], [false], [__OLINE__], [_oline__]) ++AT_DATA_LINENO([reference], [true], [__OLINE__], [_oline__]) + AT_CHECK([./reference], 0, [stdout]) + + # The reference: +@@ -264,7 +264,7 @@ mv stdout expout + # Be sure to be out of the PATH. + AT_CHECK([mkdir test || exit 77]) + +-AT_DATA_LINENO([test/test-1], [false], [__LINENO__], [LINENO]) ++AT_DATA_LINENO([test/test-1], [true], [__LINENO__], [LINENO]) + AT_CHECK([./test/test-1], 0, [expout]) + AT_CHECK([(PATH=test$PATH_SEPARATOR$PATH; export PATH; exec test-1)], + 0, [expout]) +-- +cgit v1.2.1 + diff --git a/dev-build/autoconf/files/autoconf-2.69-perl-5.26-2.patch b/dev-build/autoconf/files/autoconf-2.69-perl-5.26-2.patch new file mode 100644 index 000000000000..6becf807c43e --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.69-perl-5.26-2.patch @@ -0,0 +1,30 @@ +https://bugs.gentoo.org/625576 + +--- autoconf-2.69/bin/autoheader.in ++++ autoconf-2.69/bin/autoheader.in +@@ -173,6 +173,12 @@ + # Source what the traces are trying to tell us. + verb "$me: running $autoconf to trace from $ARGV[0]"; + my $quoted_tmp = shell_quote ($tmp); ++my $perl_tmp; ++if ( $tmp =~ /^\// ) { ++ $perl_tmp=$tmp; ++} else { ++ $perl_tmp="./".$tmp; ++} + xsystem ("$autoconf" + # If you change this list, update the + # `Autoheader-preselections' section of autom4te.in. +@@ -182,9 +188,9 @@ + . " " . shell_quote ($ARGV[0]) . " >$quoted_tmp/traces.pl"); + + local (%verbatim, %symbol); +-debug "$me: \`do'ing $tmp/traces.pl:\n" . `sed 's/^/| /' $quoted_tmp/traces.pl`; +-do "$tmp/traces.pl"; +-warn "couldn't parse $tmp/traces.pl: $@" if $@; ++debug "$me: \`do'ing $perl_tmp/traces.pl:\n" . `sed 's/^/| /' $quoted_tmp/traces.pl`; ++do "$perl_tmp/traces.pl"; ++warn "couldn't parse $perl_tmp/traces.pl: $@" if $@; + unless ($config_h) + { + error "error: AC_CONFIG_HEADERS not found in $ARGV[0]"; diff --git a/dev-build/autoconf/files/autoconf-2.69-perl-5.26.patch b/dev-build/autoconf/files/autoconf-2.69-perl-5.26.patch new file mode 100644 index 000000000000..b3d7888ca722 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.69-perl-5.26.patch @@ -0,0 +1,28 @@ +From e5654a5591884b92633c7785f325626711e7f7aa Mon Sep 17 00:00:00 2001 +From: Paul Eggert <eggert@cs.ucla.edu> +Date: Tue, 29 Jan 2013 13:46:48 -0800 +Subject: [PATCH] autoscan: port to perl 5.17 + +* bin/autoscan.in (scan_sh_file): Escape '{'. This avoids a +feature that is deprecated in Perl 5.17. Reported by Ray Lauff in +<http://lists.gnu.org/archive/html/bug-autoconf/2013-01/msg00059.html>. +--- + bin/autoscan.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/bin/autoscan.in b/bin/autoscan.in +index 993a750..db1df79 100644 +--- a/bin/autoscan.in ++++ b/bin/autoscan.in +@@ -358,7 +358,7 @@ sub scan_sh_file ($) + { + # Strip out comments and variable references. + s/#.*//; +- s/\${[^\}]*}//g; ++ s/\$\{[^\}]*}//g; + s/@[^@]*@//g; + + # Tokens in the code. +-- +1.9.1 + diff --git a/dev-build/autoconf/files/autoconf-2.71-AC_C_BIGENDIAN-lto.patch b/dev-build/autoconf/files/autoconf-2.71-AC_C_BIGENDIAN-lto.patch new file mode 100644 index 000000000000..48fbdc6f544b --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.71-AC_C_BIGENDIAN-lto.patch @@ -0,0 +1,50 @@ +https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=234fc6c86613ed3f366dd1d88996e4d5d85ee222 + +From 234fc6c86613ed3f366dd1d88996e4d5d85ee222 Mon Sep 17 00:00:00 2001 +From: Paul Eggert <eggert@cs.ucla.edu> +Date: Wed, 27 Jul 2022 08:53:35 -0700 +Subject: Port AC_C_BIGENDIAN to cross gcc -std=c11 -flto + +* lib/autoconf/c.m4 (AC_C_BIGENDIAN): Improve the +inherently-unportable grep trick well enough to survive gcc +-std=c11 -flto when cross-compiling (sr#110687). +--- a/lib/autoconf/c.m4 ++++ b/lib/autoconf/c.m4 +@@ -1838,8 +1838,8 @@ AC_DEFUN([AC_C_BIGENDIAN], + [ac_cv_c_bigendian=no], + [ac_cv_c_bigendian=yes], + [# Try to guess by grepping values from an object file. +- AC_COMPILE_IFELSE( +- [AC_LANG_PROGRAM( ++ AC_LINK_IFELSE( ++ [AC_LANG_SOURCE( + [[unsigned short int ascii_mm[] = + { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; + unsigned short int ascii_ii[] = +@@ -1854,13 +1854,20 @@ AC_DEFUN([AC_C_BIGENDIAN], + int use_ebcdic (int i) { + return ebcdic_mm[i] + ebcdic_ii[i]; + } +- extern int foo; +- ]], +- [[return use_ascii (foo) == use_ebcdic (foo);]])], +- [if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then ++ int ++ main (int argc, char **argv) ++ { ++ /* Intimidate the compiler so that it does not ++ optimize the arrays away. */ ++ char *p = argv[0]; ++ ascii_mm[1] = *p++; ebcdic_mm[1] = *p++; ++ ascii_ii[1] = *p++; ebcdic_ii[1] = *p++; ++ return use_ascii (argc) == use_ebcdic (*p); ++ }]])], ++ [if grep BIGenDianSyS conftest$ac_exeext >/dev/null; then + ac_cv_c_bigendian=yes + fi +- if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then ++ if grep LiTTleEnDian conftest$ac_exeext >/dev/null ; then + if test "$ac_cv_c_bigendian" = unknown; then + ac_cv_c_bigendian=no + else +cgit v1.1 diff --git a/dev-build/autoconf/files/autoconf-2.71-AC_LANG_CALL_C_cxx.patch b/dev-build/autoconf/files/autoconf-2.71-AC_LANG_CALL_C_cxx.patch new file mode 100644 index 000000000000..5b53d17135bc --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.71-AC_LANG_CALL_C_cxx.patch @@ -0,0 +1,35 @@ +https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=b27bc3e230bb12fdd9a813e38e82bc4c3e22b4cc + +Note: we drop the comma from the comment because some packages +have bad quoting, and while that will need to be sorted when/if +autoconf 2.72 is released, we've got our hands full with the +Clang situation right now (bug #871753). + +From b27bc3e230bb12fdd9a813e38e82bc4c3e22b4cc Mon Sep 17 00:00:00 2001 +From: Paul Eggert <eggert@cs.ucla.edu> +Date: Tue, 31 Aug 2021 16:30:46 -0700 +Subject: Port AC_LANG_CALL(C) to C++ +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +* lib/autoconf/c.m4 (AC_LANG_CALL(C)): Add an extern "C" if C++. +Problem reported by Vincent Lefèvre (sr #110532). +--- a/lib/autoconf/c.m4 ++++ b/lib/autoconf/c.m4 +@@ -126,7 +126,13 @@ m4_define([AC_LANG_CALL(C)], + m4_if([$2], [main], , + [/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC +- builtin and then its argument prototype would still apply. */ ++ builtin and then its argument prototype would still apply. ++ The 'extern "C"' is for builds by C++ compilers; ++ although this is not generally supported in C code supporting it here ++ has little cost and some practical benefit (sr 110532). */ ++#ifdef __cplusplus ++extern "C" ++#endif + char $2 ();])], [return $2 ();])]) + + +cgit v1.1 diff --git a/dev-build/autoconf/files/autoconf-2.71-K-R-decls-clang-deux.patch b/dev-build/autoconf/files/autoconf-2.71-K-R-decls-clang-deux.patch new file mode 100644 index 000000000000..6a3d6580a3f6 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.71-K-R-decls-clang-deux.patch @@ -0,0 +1,94 @@ +https://bugs.gentoo.org/870412 +https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=bf5a75953b6d504f0405b1ca33b039b8dd39eef4 + +Backport the K&R decls fix to 2.71 to avoid configure tests +failing (often "silently", i.e. doesn't fail the build of +the package overall, just leads to wrong results) with +newer compilers like the upcoming Clang 16. + +From bf5a75953b6d504f0405b1ca33b039b8dd39eef4 Mon Sep 17 00:00:00 2001 +From: Zack Weinberg <zackw@panix.com> +Date: Thu, 10 Nov 2022 12:05:30 -0500 +Subject: More fixes for compilers that reject K&R function definitions. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This fixes all of the remaining failures exposed by running the +testsuite with GCC 12 and +CC='cc -Wimplicit-function-declaration -Wold-style-definition + -Wimplicit-int -Werror' +. + +* lib/autoconf/c.m4 (_AC_C_C89_TEST_GLOBALS): Don’t use K&R function + definitions. +* lib/autoconf/specific.m4 (AC_SYS_RESTARTABLE_SYSCALLS): Likewise. + (AC_FUNC_MKTIME): Declare functions taking no arguments as ‘fn (void)’ + not ‘fn ()’. +* lib/autoconf/c.m4 (_AC_C_C99_TEST_GLOBALS): Declare free(). +--- a/lib/autoconf/c.m4 ++++ b/lib/autoconf/c.m4 +@@ -1153,9 +1153,7 @@ struct stat; + /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ + struct buf { int x; }; + struct buf * (*rcsopen) (struct buf *, struct stat *, int); +-static char *e (p, i) +- char **p; +- int i; ++static char *e (char **p, int i) + { + return p[i]; + } +@@ -1212,6 +1210,7 @@ extern int puts (const char *); + extern int printf (const char *, ...); + extern int dprintf (int, const char *, ...); + extern void *malloc (size_t); ++extern void free (void *); + + // Check varargs macros. These examples are taken from C99 6.10.3.5. + // dprintf is used instead of fprintf to avoid needing to declare +--- a/lib/autoconf/functions.m4 ++++ b/lib/autoconf/functions.m4 +@@ -1091,7 +1091,7 @@ static const char *tz_strings[] = { + /* Return 0 if mktime fails to convert a date in the spring-forward gap. + Based on a problem report from Andreas Jaeger. */ + static int +-spring_forward_gap () ++spring_forward_gap (void) + { + /* glibc (up to about 1998-10-07) failed this test. */ + struct tm tm; +@@ -1128,7 +1128,7 @@ mktime_test (time_t now) + } + + static int +-irix_6_4_bug () ++irix_6_4_bug (void) + { + /* Based on code from Ariel Faigon. */ + struct tm tm; +@@ -1170,7 +1170,7 @@ bigtime_test (int j) + } + + static int +-year_2050_test () ++year_2050_test (void) + { + /* The correct answer for 2050-02-01 00:00:00 in Pacific time, + ignoring leap seconds. */ +--- a/lib/autoconf/specific.m4 ++++ b/lib/autoconf/specific.m4 +@@ -361,10 +361,9 @@ AC_INCLUDES_DEFAULT + /* Some platforms explicitly require an extern "C" signal handler + when using C++. */ + #ifdef __cplusplus +-extern "C" void ucatch (int dummy) { } +-#else +-void ucatch (dummy) int dummy; { } ++extern "C" + #endif ++void ucatch (int dummy) { } + + int + main (void) +cgit v1.1 diff --git a/dev-build/autoconf/files/autoconf-2.71-K-R-decls-clang.patch b/dev-build/autoconf/files/autoconf-2.71-K-R-decls-clang.patch new file mode 100644 index 000000000000..e2e451e86920 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.71-K-R-decls-clang.patch @@ -0,0 +1,114 @@ +https://bugs.gentoo.org/870412 +https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=8b5e2016c7ed2d67f31b03a3d2e361858ff5299b + +Backport the K&R decls fix to 2.71 to avoid configure tests +failing (often "silently", i.e. doesn't fail the build of +the package overall, just leads to wrong results) with +newer compilers like the upcoming Clang 16. + +From 8b5e2016c7ed2d67f31b03a3d2e361858ff5299b Mon Sep 17 00:00:00 2001 +From: Paul Eggert <eggert@cs.ucla.edu> +Date: Thu, 1 Sep 2022 16:19:50 -0500 +Subject: Port to compilers that moan about K&R func decls +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +* lib/autoconf/c.m4 (AC_LANG_CALL, AC_LANG_FUNC_LINK_TRY): +Use '(void)' rather than '()' in function prototypes, as the latter +provokes fatal errors in some compilers nowadays. +* lib/autoconf/functions.m4 (AC_FUNC_STRTOD): +* tests/fortran.at (AC_F77_DUMMY_MAIN usage): +* tests/semantics.at (AC_CHECK_DECLS): +Don’t use () in a function decl. +--- a/lib/autoconf/c.m4 ++++ b/lib/autoconf/c.m4 +@@ -133,7 +133,7 @@ m4_if([$2], [main], , + #ifdef __cplusplus + extern "C" + #endif +-char $2 ();])], [return $2 ();])]) ++char $2 (void);])], [return $2 ();])]) + + + # AC_LANG_FUNC_LINK_TRY(C)(FUNCTION) +@@ -157,7 +157,7 @@ m4_define([AC_LANG_FUNC_LINK_TRY(C)], + #define $1 innocuous_$1 + + /* System header to define __stub macros and hopefully few prototypes, +- which can conflict with char $1 (); below. */ ++ which can conflict with char $1 (void); below. */ + + #include <limits.h> + #undef $1 +@@ -168,7 +168,7 @@ m4_define([AC_LANG_FUNC_LINK_TRY(C)], + #ifdef __cplusplus + extern "C" + #endif +-char $1 (); ++char $1 (void); + /* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +--- a/lib/autoconf/functions.m4 ++++ b/lib/autoconf/functions.m4 +@@ -1613,9 +1613,6 @@ AC_DEFUN([AC_FUNC_STRTOD], + AC_CACHE_CHECK(for working strtod, ac_cv_func_strtod, + [AC_RUN_IFELSE([AC_LANG_SOURCE([[ + ]AC_INCLUDES_DEFAULT[ +-#ifndef strtod +-double strtod (); +-#endif + int + main (void) + { +--- a/tests/fortran.at ++++ b/tests/fortran.at +@@ -233,7 +233,7 @@ void FOOBAR_F77 (double *x, double *y); + # ifdef __cplusplus + extern "C" + # endif +- int F77_DUMMY_MAIN () { return 1; } ++ int F77_DUMMY_MAIN (void) { return 1; } + #endif + + int main(int argc, char *argv[]) +@@ -315,7 +315,7 @@ void FOOBAR_FC(double *x, double *y); + # ifdef __cplusplus + extern "C" + # endif +- int FC_DUMMY_MAIN () { return 1; } ++ int FC_DUMMY_MAIN (void) { return 1; } + #endif + + int main (int argc, char *argv[]) +@@ -561,7 +561,7 @@ void @foobar@ (int *x); + # ifdef __cplusplus + extern "C" + # endif +- int F77_DUMMY_MAIN () { return 1; } ++ int F77_DUMMY_MAIN (void) { return 1; } + #endif + + int main(int argc, char *argv[]) +@@ -637,7 +637,7 @@ void @foobar@ (int *x); + # ifdef __cplusplus + extern "C" + # endif +- int FC_DUMMY_MAIN () { return 1; } ++ int FC_DUMMY_MAIN (void) { return 1; } + #endif + + int main(int argc, char *argv[]) +--- a/tests/semantics.at ++++ b/tests/semantics.at +@@ -207,7 +207,7 @@ AT_CHECK_MACRO([AC_CHECK_DECLS], + [[extern int yes; + enum { myenum }; + extern struct mystruct_s { int x[20]; } mystruct; +- extern int myfunc(); ++ extern int myfunc (int); + #define mymacro1(arg) arg + #define mymacro2]]) + # Ensure we can detect missing declarations of functions whose +cgit v1.1 diff --git a/dev-build/autoconf/files/autoconf-2.71-bash52.patch b/dev-build/autoconf/files/autoconf-2.71-bash52.patch new file mode 100644 index 000000000000..1c3c91db1d4f --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.71-bash52.patch @@ -0,0 +1,65 @@ +From 412166e185c00d6eacbe67dfcb0326f622ec4020 Mon Sep 17 00:00:00 2001 +From: Xi Ruoyao <xry111@xry111.site> +Date: Fri, 30 Sep 2022 11:36:03 -0400 +Subject: [PATCH] Fix testsuite failures with bash 5.2. + +Bash v5.2 includes several new optimizations to the number of +subshells used for various constructs; as a side effect, the value of +SHLVL is less stable than it used to be. Add SHLVL to the list of +built-in shell variables with unstable values, to be ignored when +checking for inappropriate differences to the shell environment +before and after a macro invocation / between two configure runs. + +Problem and solution reported by Xi Ruoyao in +https://lists.gnu.org/archive/html/autoconf/2022-09/msg00015.html +Problem also reported by Bruce Dubbs in +https://lists.gnu.org/archive/html/bug-autoconf/2022-09/msg00010.html + +* tests/local.at (_AT_CHECK_ENV, AT_CONFIG_CMP): Ignore changes in + value of SHLVL. +Copyright-paperwork-exempt: yes +--- + tests/local.at | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/tests/local.at b/tests/local.at +index 193fd118..a9cf4050 100644 +--- a/tests/local.at ++++ b/tests/local.at +@@ -352,7 +352,7 @@ m4_define([AT_CHECK_CONFIGURE], + # - AC_SUBST'ed variables + # (FIXME: Generate a list of these automatically.) + # - _|@|.[*#?$].|argv|ARGC|LINENO|OLDPWD|PIPESTATUS|RANDOM|SECONDS +-# |START_TIME|ToD|_AST_FEATURES ++# |SHLVL|START_TIME|ToD|_AST_FEATURES + # Some variables some shells use and change. + # '.[*#?$].' catches '$#' etc. which are displayed like this: + # | '!'=18186 +@@ -404,7 +404,7 @@ if test -f state-env.before && test -f state-env.after; then + [GREP|[EF]GREP|SED], + [[_@]|.[*@%:@?$].], + [argv|ARGC|LINENO|BASH_ARGC|BASH_ARGV|OLDPWD|PIPESTATUS|RANDOM], +- [SECONDS|START_TIME|ToD|_AST_FEATURES]))=' \ ++ [SECONDS|SHLVL|START_TIME|ToD|_AST_FEATURES]))=' \ + $act_file || + test $? -eq 1 || echo failed >&2 + ) 2>stderr-$act_file | +@@ -435,6 +435,7 @@ fi + # - PPID [bash, zsh] + # - RANDOM [bash, zsh] + # - SECONDS [bash, zsh] ++# - SHLVL [bash] + # - START_TIME [NetBSD sh] + # - ToD [NetBSD sh] + # - '$' [zsh] +@@ -483,6 +484,7 @@ do + /^PPID=/ d + /^RANDOM=/ d + /^SECONDS=/ d ++ /^SHLVL=/ d + /^START_TIME=/ d + /^ToD=/ d + /'\'\\\$\''=/ d +-- +2.39.3 + diff --git a/dev-build/autoconf/files/autoconf-2.71-cxx11typo.patch b/dev-build/autoconf/files/autoconf-2.71-cxx11typo.patch new file mode 100644 index 000000000000..ed3f68ea2b9e --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.71-cxx11typo.patch @@ -0,0 +1,31 @@ +From f460883035ef849a2248b1713f711292ec19f4f0 Mon Sep 17 00:00:00 2001 +From: Emanuele Giaquinta <emanuele.giaquinta@gmail.com> +Date: Fri, 14 May 2021 09:06:20 +0300 +Subject: [PATCH] _AC_PROG_CXX_STDCXX_EDITION_TRY: fix typo in variable name + +The typo causes "ac_prog_cxx_stdcxx" to be always set to "cxx11", +regardless of whether the C++ compiler supports C++11. +Message-Id: <YJ4TXAeJcvU0oSec@FSAPPLE2215.fi.f-secure.com> +(tiny change) +--- + lib/autoconf/c.m4 | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lib/autoconf/c.m4 b/lib/autoconf/c.m4 +index 9f881f0b..47434c89 100644 +--- a/lib/autoconf/c.m4 ++++ b/lib/autoconf/c.m4 +@@ -2749,8 +2749,8 @@ AC_DEFUN([_AC_PROG_CXX_STDCXX_EDITION_TRY], + [AC_REQUIRE([_AC_CXX_CXX$1_TEST_PROGRAM])]dnl + [AS_IF([test x$ac_prog_cxx_stdcxx = xno], + [AC_MSG_CHECKING([for $CXX option to enable C++$1 features]) +-AC_CACHE_VAL(ac_cv_prog_cxx_$1, +-[ac_cv_prog_cxx_$1=no ++AC_CACHE_VAL(ac_cv_prog_cxx_cxx$1, ++[ac_cv_prog_cxx_cxx$1=no + ac_save_CXX=$CXX + AC_LANG_CONFTEST([AC_LANG_DEFINES_PROVIDED][$][ac_cxx_conftest_cxx$1_program]) + for ac_arg in '' m4_normalize(m4_defn([_AC_CXX_CXX$1_OPTIONS])) +-- +2.39.3 + diff --git a/dev-build/autoconf/files/autoconf-2.71-darwin.patch b/dev-build/autoconf/files/autoconf-2.71-darwin.patch new file mode 100644 index 000000000000..c122aee4b22d --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.71-darwin.patch @@ -0,0 +1,11 @@ +--- a/bin/autoreconf.in ++++ b/bin/autoreconf.in +@@ -122,7 +122,7 @@ + my $autom4te = $ENV{'AUTOM4TE'} || '@bindir@/@autom4te-name@'; + my $automake = $ENV{'AUTOMAKE'} || 'automake'; + my $aclocal = $ENV{'ACLOCAL'} || 'aclocal'; +-my $libtoolize = $ENV{'LIBTOOLIZE'} || 'libtoolize'; ++my $libtoolize = $ENV{'LIBTOOLIZE'} || 'glibtoolize'; + my $intltoolize = $ENV{'INTLTOOLIZE'} || 'intltoolize'; + my $gtkdocize = $ENV{'GTKDOCIZE'} || 'gtkdocize'; + my $autopoint = $ENV{'AUTOPOINT'} || 'autopoint'; diff --git a/dev-build/autoconf/files/autoconf-2.71-make-4.4.patch b/dev-build/autoconf/files/autoconf-2.71-make-4.4.patch new file mode 100644 index 000000000000..4dcf05996180 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.71-make-4.4.patch @@ -0,0 +1,25 @@ +https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=31f673434ee402258b45e958c88acc8725d82b1a +https://savannah.gnu.org/bugs/?63040 +https://bugs.gentoo.org/869257 + +From 31f673434ee402258b45e958c88acc8725d82b1a Mon Sep 17 00:00:00 2001 +From: Paul Eggert <eggert@cs.ucla.edu> +Date: Fri, 9 Sep 2022 16:54:11 -0500 +Subject: Port to GNU make 4.4 + +* cfg.mk (PATH): Assign eagerly, and simplify shell use, avoiding +use of the shell entirely if PWD is set, as it should be. +Problem reported by Sergei Trofimovich in: +https://lists.gnu.org/r/autoconf-patches/2022-09/msg00007.html +--- a/cfg.mk ++++ b/cfg.mk +@@ -18,7 +18,7 @@ + # This file is '-include'd into GNUmakefile. + + # Build with our own versions of these tools, when possible. +-export PATH = $(shell echo "`pwd`/tests:$$PATH") ++export PATH := $(or $(PWD),$(shell pwd))/tests:$(PATH) + + # Remove the autoreconf-provided INSTALL, so that we regenerate it. + _autoreconf = autoreconf -i -v && rm -f INSTALL +cgit v1.1 diff --git a/dev-build/autoconf/files/autoconf-2.71-time.patch b/dev-build/autoconf/files/autoconf-2.71-time.patch new file mode 100644 index 000000000000..8ecfe10f40a3 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.71-time.patch @@ -0,0 +1,49 @@ +From e194b3c7e00429612a9d40e78ea571687fd25b91 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20K=2E=20H=C3=BCttel?= <dilfridge@gentoo.org> +Date: Sun, 1 Aug 2021 19:07:48 +0200 +Subject: [PATCH] Use stat from Time::HiRes (instead of File::stat) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org> +--- + lib/Autom4te/FileUtils.pm | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) + +diff --git a/lib/Autom4te/FileUtils.pm b/lib/Autom4te/FileUtils.pm +index a182031b..27a5fd91 100644 +--- a/lib/Autom4te/FileUtils.pm ++++ b/lib/Autom4te/FileUtils.pm +@@ -34,12 +34,12 @@ This perl module provides various general purpose file handling functions. + + =cut + +-use 5.006; ++use 5.008; + use strict; + use warnings FATAL => 'all'; + + use Exporter; +-use File::stat; ++use Time::HiRes qw(stat); + use IO::File; + + use Autom4te::Channels; +@@ -115,10 +115,11 @@ sub mtime ($) + return 0 + if $file eq '-' || ! -f $file; + +- my $stat = stat ($file) ++ my ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size, ++ $atime,$mtime,$ctime,$blksize,$blocks) = stat ($file) + or fatal "cannot stat $file: $!"; + +- return $stat->mtime; ++ return $mtime; + } + + +-- +2.31.1 + diff --git a/dev-build/autoconf/files/autoconf-2.72-Port-AC_SYS_LARGEFILE-to-CXX.patch b/dev-build/autoconf/files/autoconf-2.72-Port-AC_SYS_LARGEFILE-to-CXX.patch new file mode 100644 index 000000000000..438c032dbc03 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.72-Port-AC_SYS_LARGEFILE-to-CXX.patch @@ -0,0 +1,87 @@ +From b71143738516017f0e0d347a4025301c06c40254 Mon Sep 17 00:00:00 2001 +From: Paul Eggert <eggert@cs.ucla.edu> +Date: Wed, 24 Apr 2024 14:47:56 -0700 +Subject: Port AC_SYS_LARGEFILE to C++ +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Problem reported by Zack Weinberg +<https://savannah.gnu.org/support/?110983>. +* lib/autoconf/specific.m4 (_AC_SYS_YEAR2038_PROBE) +(_AC_SYS_LARGEFILE_PROBE): +In chatter, say it’s a CPPFLAGS option, not a CC option. +(_AC_SYS_LARGEFILE_OPTIONS): Omit -n32, as we no longer +need to worry about IRIX. +(_AC_SYS_LARGEFILE_PROBE): Fiddle with CPPFLAGS, not CC, +and don’t worry about -n32. +--- + lib/autoconf/specific.m4 | 18 +++++++----------- + 1 file changed, 7 insertions(+), 11 deletions(-) + +diff --git a/lib/autoconf/specific.m4 b/lib/autoconf/specific.m4 +index a0e1fa8d..0d0191a8 100644 +--- a/lib/autoconf/specific.m4 ++++ b/lib/autoconf/specific.m4 +@@ -132,7 +132,7 @@ m4_define([_AC_SYS_YEAR2038_OPTIONS], m4_normalize( + # If you change this macro you may also need to change + # _AC_SYS_YEAR2038_OPTIONS. + AC_DEFUN([_AC_SYS_YEAR2038_PROBE], +-[AC_CACHE_CHECK([for $CC option for timestamps after 2038], ++[AC_CACHE_CHECK([for $CPPFLAGS option for timestamps after 2038], + [ac_cv_sys_year2038_opts], + [ac_save_CPPFLAGS="$CPPFLAGS" + ac_opt_found=no +@@ -262,7 +262,6 @@ m4_define([_AC_SYS_LARGEFILE_OPTIONS], m4_normalize( + ["none needed"] dnl Most current systems + ["-D_FILE_OFFSET_BITS=64"] dnl X/Open LFS spec + ["-D_LARGE_FILES=1"] dnl 32-bit AIX 4.2.1+, 32-bit z/OS +- ["-n32"] dnl 32-bit IRIX 6, SGI cc (obsolete) + )) + + # _AC_SYS_LARGEFILE_PROBE +@@ -279,25 +278,25 @@ m4_define([_AC_SYS_LARGEFILE_OPTIONS], m4_normalize( + # If you change this macro you may also need to change + # _AC_SYS_LARGEFILE_OPTIONS. + AC_DEFUN([_AC_SYS_LARGEFILE_PROBE], +-[AC_CACHE_CHECK([for $CC option to enable large file support], ++[AC_CACHE_CHECK([for $CPPFLAGS option for large files], + [ac_cv_sys_largefile_opts], +- [ac_save_CC="$CC" ++ [ac_save_CPPFLAGS=$CPPFLAGS + ac_opt_found=no + for ac_opt in _AC_SYS_LARGEFILE_OPTIONS; do + AS_IF([test x"$ac_opt" != x"none needed"], +- [CC="$ac_save_CC $ac_opt"]) ++ [CPPFLAGS="$ac_save_CPPFLAGS $ac_opt"]) + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([_AC_SYS_LARGEFILE_TEST_CODE])], + [AS_IF([test x"$ac_opt" = x"none needed"], + [# GNU/Linux s390x and alpha need _FILE_OFFSET_BITS=64 for wide ino_t. +- CC="$CC -DFTYPE=ino_t" ++ CPPFLAGS="$CPPFLAGS -DFTYPE=ino_t" + AC_COMPILE_IFELSE([], [], +- [CC="$CC -D_FILE_OFFSET_BITS=64" ++ [CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=64" + AC_COMPILE_IFELSE([], [ac_opt='-D_FILE_OFFSET_BITS=64'])])]) + ac_cv_sys_largefile_opts=$ac_opt + ac_opt_found=yes]) + test $ac_opt_found = no || break + done +- CC="$ac_save_CC" ++ CPPFLAGS=$ac_save_CPPFLAGS + dnl Gnulib implements large file support for native Windows, based on the + dnl variables WINDOWS_64_BIT_OFF_T, WINDOWS_64_BIT_ST_SIZE. + m4_ifdef([gl_LARGEFILE], [ +@@ -327,9 +326,6 @@ AS_CASE([$ac_cv_sys_largefile_opts], + [AC_DEFINE([_LARGE_FILES], [1], + [Define to 1 on platforms where this makes off_t a 64-bit type.])], + +- ["-n32"], +- [CC="$CC -n32"], +- + [AC_MSG_ERROR( + [internal error: bad value for \$ac_cv_sys_largefile_opts])]) + +-- +cgit v1.2.3 + diff --git a/dev-build/autoconf/files/autoconf-2.72-Port-C11-test-to-C-20.patch b/dev-build/autoconf/files/autoconf-2.72-Port-C11-test-to-C-20.patch new file mode 100644 index 000000000000..798e2936e4d0 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.72-Port-C11-test-to-C-20.patch @@ -0,0 +1,28 @@ +From e6c9cb69c8c0a4ef9ce0538d7b4106dad3d7ad47 Mon Sep 17 00:00:00 2001 +From: Paul Eggert <eggert@cs.ucla.edu> +Date: Sun, 26 May 2024 07:04:19 -0700 +Subject: [PATCH] Port C11 test to C++20 + +Trivial fix suggested by Peter Johansson in: +https://lists.gnu.org/r/autoconf/2024-05/msg00004.html +* lib/autoconf/c.m4 (_AC_CXX_CXX11_TEST_MAIN): +Do not test assigning u8"..." to char const *, as this +runs afoul of C++20. +--- + lib/autoconf/c.m4 | 3 +-- + 1 files changed, 1 insertions(+), 2 deletions(-) + +diff --git a/lib/autoconf/c.m4 b/lib/autoconf/c.m4 +index d4f7fbe..673d62e 100644 +--- a/lib/autoconf/c.m4 ++++ b/lib/autoconf/c.m4 +@@ -2638,8 +2638,7 @@ ac_cxx_conftest_cxx11_main=' + test_template<::test_template<int>> v(test_template<int>(12)); + } + { +- // Unicode literals +- char const *utf8 = u8"UTF-8 string \u2500"; ++ // Unicode literals. Do not test u8"..." as C++20 would reject it. + char16_t const *utf16 = u"UTF-8 string \u2500"; + char32_t const *utf32 = U"UTF-32 string \u2500"; + } diff --git a/dev-build/autoconf/files/autoconf-2.72-gettext-0.25-autoreconf-Adapt-to-the-on-disk-situation-after-auto.patch b/dev-build/autoconf/files/autoconf-2.72-gettext-0.25-autoreconf-Adapt-to-the-on-disk-situation-after-auto.patch new file mode 100644 index 000000000000..d9ca338b2e96 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.72-gettext-0.25-autoreconf-Adapt-to-the-on-disk-situation-after-auto.patch @@ -0,0 +1,104 @@ +https://savannah.gnu.org/support/?111273 +https://file.savannah.gnu.org/file/0001-autoreconf-Adapt-to-the-on-disk-situation-after-auto.patch?file_id=57364 + +From d75171fdf8d03d2e070fcc3dbb5afb942dbd7828 Mon Sep 17 00:00:00 2001 +From: Bruno Haible <bruno@clisp.org> +Date: Sat, 5 Jul 2025 17:20:11 +0200 +Subject: [PATCH] autoreconf: Adapt to the on-disk situation after autopoint + has run. + +Reported in <https://savannah.gnu.org/support/?111273>. + +* bin/autoreconf.in (autoreconf_current_directory): After invoking autopoint, +rerun aclocal. When doing so, pass extra options "-I m4" if the configure.ac +does not specify a macro dir. +--- + bin/autoreconf.in | 24 ++++++++++++++++++++++++ + 1 file changed, 24 insertions(+) + +diff --git a/bin/autoreconf.in b/bin/autoreconf.in +index 3f6a74fe..eb0d96a9 100644 +--- a/bin/autoreconf.in ++++ b/bin/autoreconf.in +@@ -489,6 +489,7 @@ sub autoreconf_current_directory ($) + # Actually, it is even more restrictive, as it greps for + # '^AM_GNU_GETTEXT_(REQUIRE_)?VERSION('. We did this above, while + # scanning configure.ac. ++ my $invoked_autopoint; + if (!$uses_liblink && !$uses_iconv && !$uses_gettext) + { + verb "$configure_ac: not using Gettext"; +@@ -514,6 +515,7 @@ sub autoreconf_current_directory ($) + xsystem_hint ("autopoint is needed because this package uses AC_LIB_LINKFLAGS", + $autopoint); + } ++ $invoked_autopoint = 1; + } + + +@@ -593,6 +595,7 @@ sub autoreconf_current_directory ($) + # from the final autoconf invocation. + my $aux_dir; + my @aux_files; ++ my @macro_dirs; + my $uses_liblink_via_traces; + my $uses_iconv_via_traces; + my $uses_gettext_via_traces; +@@ -616,6 +619,8 @@ sub autoreconf_current_directory ($) + 'AC_CONFIG_AUX_DIR', + 'AC_CONFIG_HEADERS', + 'AC_CONFIG_SUBDIRS', ++ 'AC_CONFIG_MACRO_DIR_TRACE', ++ 'AC_CONFIG_MACRO_DIR', + 'AC_INIT', + 'AC_REQUIRE_AUX_FILE', + 'AC_PROG_LIBTOOL', +@@ -640,6 +645,8 @@ sub autoreconf_current_directory ($) + my ($macro, @args) = split (/::/); + $aux_dir = $args[0] if $macro eq "AC_CONFIG_AUX_DIR"; + push @aux_files, $args[0] if $macro eq "AC_REQUIRE_AUX_FILE"; ++ push @macro_dirs, $args[0] if $macro eq "AC_CONFIG_MACRO_DIR_TRACE" ++ || $macro eq "AC_CONFIG_MACRO_DIR"; + $uses_autoconf = 1 if $macro eq "AC_INIT"; + # Here we need to explicitly test for GUILE_FLAGS, because in the + # typical situation where configure.ac invokes GUILE_FLAGS, +@@ -679,6 +686,15 @@ sub autoreconf_current_directory ($) + } + } + ++ # When configure.ac does not specify a macro dir, autopoint has ++ # created a directory named 'm4' and copied its *.m4 files into it. ++ # In this case, we need to rerun 'aclocal', in order to pass it the ++ # options "-I m4" this time. ++ if ($invoked_autopoint && !@macro_dirs) ++ { ++ $rerun_aclocal = 1; ++ } ++ + # Gettext consistency checks. + # Some projects intentionally don't call AM_GNU_GETTEXT_(REQUIRE_)VERSION + # because they have all of the gettext infrastructure checked into version +@@ -807,6 +823,8 @@ sub autoreconf_current_directory ($) + xsystem_hint ("autopoint is needed because this package uses AC_LIB_LINKFLAGS", + $autopoint); + } ++ $invoked_autopoint = 1; ++ $rerun_aclocal = 1; + } + + +@@ -824,6 +842,12 @@ sub autoreconf_current_directory ($) + } + else + { ++ # When configure.ac does not specify a macro dir, autopoint has ++ # created a directory named 'm4' and copied its *.m4 files into it. ++ if ($invoked_autopoint && !@macro_dirs) ++ { ++ $aclocal_flags .= " -I m4"; ++ } + xsystem ("$aclocal $aclocal_flags"); + } + } +-- +2.43.0 diff --git a/dev-build/autoconf/files/autoconf-2.72-gettext-0.25-autoreconf-Invoke-autopoint-in-more-situations.patch b/dev-build/autoconf/files/autoconf-2.72-gettext-0.25-autoreconf-Invoke-autopoint-in-more-situations.patch new file mode 100644 index 000000000000..33d5cfd0a6b5 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.72-gettext-0.25-autoreconf-Invoke-autopoint-in-more-situations.patch @@ -0,0 +1,161 @@ +https://savannah.gnu.org/support/?111272 +https://file.savannah.gnu.org/file/0001-autoreconf-Invoke-autopoint-in-more-situations.patch?file_id=57421 + +From e2a4935b45f273410e975ecf56ab26ad72855df0 Mon Sep 17 00:00:00 2001 +From: Bruno Haible <bruno@clisp.org> +Date: Wed, 2 Jul 2025 02:43:41 +0200 +Subject: [PATCH 1/2] autoreconf: Invoke autopoint in more situations. + +Reported in <https://savannah.gnu.org/support/?111272>. + +* bin/autoreconf.in (autoreconf_current_directory): Invoke autopoint also when +the package uses AM_GNU_GETTEXT (without AM_GNU_GETTEXT_VERSION), AM_PO_SUBDIRS, +AM_ICONV, AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS, AC_LIB_LINKFLAGS_FROM_LIBS, +or GUILE_FLAGS. +--- + bin/autoreconf.in | 80 ++++++++++++++++++++++++++++++++++++++++++++--- + 1 file changed, 76 insertions(+), 4 deletions(-) + +diff --git a/bin/autoreconf.in b/bin/autoreconf.in +index a5ffc6fa..207900df 100644 +--- a/bin/autoreconf.in ++++ b/bin/autoreconf.in +@@ -440,6 +440,8 @@ sub autoreconf_current_directory ($) + # ---------------------- # + + my $uses_autoconf; ++ my $uses_liblink; ++ my $uses_iconv; + my $uses_gettext; + if (-f $configure_ac) + { +@@ -449,8 +451,13 @@ sub autoreconf_current_directory ($) + s/#.*//; + s/dnl.*//; + $uses_autoconf = 1 if /AC_INIT/; ++ $uses_liblink = 1 if /AC_LIB_HAVE_LINKFLAGS/; ++ $uses_liblink = 1 if /AC_LIB_LINKFLAGS/; ++ $uses_liblink = 1 if /AC_LIB_LINKFLAGS_FROM_LIBS/; ++ $uses_iconv = 1 if /AM_ICONV/; + # See below for why we look for gettext here. +- $uses_gettext = 1 if /^AM_GNU_GETTEXT_(?:REQUIRE_)?VERSION/; ++ $uses_gettext = 1 if /AM_GNU_GETTEXT/; ++ $uses_gettext = 1 if /AM_PO_SUBDIRS/; + } + if (!$uses_autoconf) + { +@@ -485,7 +492,7 @@ sub autoreconf_current_directory ($) + # Actually, it is even more restrictive, as it greps for + # '^AM_GNU_GETTEXT_(REQUIRE_)?VERSION('. We did this above, while + # scanning configure.ac. +- if (!$uses_gettext) ++ if (!$uses_liblink && !$uses_iconv && !$uses_gettext) + { + verb "$configure_ac: not using Gettext"; + } +@@ -495,8 +502,21 @@ sub autoreconf_current_directory ($) + } + else + { +- xsystem_hint ("autopoint is needed because this package uses Gettext", +- $autopoint); ++ if ($uses_gettext) ++ { ++ xsystem_hint ("autopoint is needed because this package uses Gettext", ++ $autopoint); ++ } ++ elsif ($uses_iconv) ++ { ++ xsystem_hint ("autopoint is needed because this package uses AM_ICONV", ++ $autopoint); ++ } ++ elsif ($uses_liblink) ++ { ++ xsystem_hint ("autopoint is needed because this package uses AC_LIB_LINKFLAGS", ++ $autopoint); ++ } + } + + +@@ -576,6 +596,8 @@ sub autoreconf_current_directory ($) + # from the final autoconf invocation. + my $aux_dir; + my @aux_files; ++ my $uses_liblink_via_traces; ++ my $uses_iconv_via_traces; + my $uses_gettext_via_traces; + my $uses_libtool; + my $uses_intltool; +@@ -603,6 +625,11 @@ sub autoreconf_current_directory ($) + 'AM_PROG_LIBTOOL', + 'LT_INIT', + 'LT_CONFIG_LTDL_DIR', ++ 'AC_LIB_LINKFLAGS', ++ 'AC_LIB_HAVE_LINKFLAGS', ++ 'AC_LIB_LINKFLAGS_FROM_LIBS', ++ 'GUILE_FLAGS', ++ 'AM_ICONV', + 'AM_GNU_GETTEXT', + 'AM_INIT_AUTOMAKE', + 'GTK_DOC_CHECK', +@@ -617,6 +644,15 @@ sub autoreconf_current_directory ($) + $aux_dir = $args[0] if $macro eq "AC_CONFIG_AUX_DIR"; + push @aux_files, $args[0] if $macro eq "AC_REQUIRE_AUX_FILE"; + $uses_autoconf = 1 if $macro eq "AC_INIT"; ++ # Here we need to explicitly test for GUILE_FLAGS, because in the ++ # typical situation where configure.ac invokes GUILE_FLAGS, ++ # guile.m4 defines GUILE_FLAGS and uses AC_LIB_LINKFLAGS_FROM_LIBS, ++ # the traces still for AC_LIB_LINKFLAGS_FROM_LIBS are empty. ++ $uses_liblink_via_traces = 1 if $macro eq "AC_LIB_LINKFLAGS" ++ || $macro eq "AC_LIB_HAVE_LINKFLAGS" ++ || $macro eq "AC_LIB_LINKFLAGS_FROM_LIBS" ++ || $macro eq "GUILE_FLAGS"; ++ $uses_iconv_via_traces = 1 if $macro eq "AM_ICONV"; + $uses_gettext_via_traces = 1 if $macro eq "AM_GNU_GETTEXT"; + $uses_libtool = 1 if $macro eq "AC_PROG_LIBTOOL" + || $macro eq "AM_PROG_LIBTOOL" +@@ -741,6 +777,42 @@ sub autoreconf_current_directory ($) + } + + ++ # --------------------------------------------- # ++ # Running autopoint, if not already run above. # ++ # --------------------------------------------- # ++ ++ if (!$uses_liblink_via_traces && !$uses_iconv_via_traces && !$uses_gettext_via_traces) ++ { ++ verb "$configure_ac: not needing autopoint"; ++ } ++ elsif (!$install) ++ { ++ verb "$configure_ac: not running autopoint: --install not given"; ++ } ++ elsif ($uses_liblink || $uses_iconv || $uses_gettext) ++ { ++ verb "$configure_ac: not running autopoint a second time"; ++ } ++ else ++ { ++ if ($uses_gettext_via_traces) ++ { ++ xsystem_hint ("autopoint is needed because this package uses Gettext", ++ $autopoint); ++ } ++ elsif ($uses_iconv_via_traces) ++ { ++ xsystem_hint ("autopoint is needed because this package uses AM_ICONV", ++ $autopoint); ++ } ++ elsif ($uses_liblink_via_traces) ++ { ++ xsystem_hint ("autopoint is needed because this package uses AC_LIB_LINKFLAGS", ++ $autopoint); ++ } ++ } ++ ++ + # ------------------- # + # Rerunning aclocal. # + # ------------------- # +-- +2.43.0 diff --git a/dev-build/autoconf/files/autoconf-2.73-darwin.patch b/dev-build/autoconf/files/autoconf-2.73-darwin.patch new file mode 100644 index 000000000000..94007e9ad455 --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.73-darwin.patch @@ -0,0 +1,13 @@ +We rename libtoolize -> glibtoolize on macOS to avoid conflicting with +the system tool. +--- a/bin/autoreconf.in ++++ b/bin/autoreconf.in +@@ -130,7 +130,7 @@ my %C = ( + autom4te => $ENV{'AUTOM4TE'} || '@bindir@/@autom4te-name@', + automake => $ENV{'AUTOMAKE'} || 'automake', + aclocal => $ENV{'ACLOCAL'} || 'aclocal', +- libtoolize => $ENV{'LIBTOOLIZE'} || 'libtoolize', ++ libtoolize => $ENV{'LIBTOOLIZE'} || 'glibtoolize', + intltoolize => $ENV{'INTLTOOLIZE'} || 'intltoolize', + gtkdocize => $ENV{'GTKDOCIZE'} || 'gtkdocize', + autopoint => $ENV{'AUTOPOINT'} || 'autopoint', diff --git a/dev-build/autoconf/files/autoconf-2.73-maintainer-mode-autoheader.patch b/dev-build/autoconf/files/autoconf-2.73-maintainer-mode-autoheader.patch new file mode 100644 index 000000000000..4fce66d9490b --- /dev/null +++ b/dev-build/autoconf/files/autoconf-2.73-maintainer-mode-autoheader.patch @@ -0,0 +1,12 @@ +https://savannah.gnu.org/support/index.php?111396 +--- a/bin/autoheader.in ++++ b/bin/autoheader.in +@@ -232,7 +232,7 @@ if (open (my $fh, "<", $config_h_in)) + # If the file is empty, $firstline will be undef. We _do_ want to + # go ahead and update it in that case. + if (defined $firstline +- && $firstline !~ /^\/\* .*\. Generated from .* by autoheader\. \*\// ++ && $firstline !~ /^\/\* .*\. Generated( automatically)? from .* by autoheader\. \*\// + && !$replace_handwritten) + { + msg 'override', "${config_h_in} was not generated by autoheader"; diff --git a/dev-build/autoconf/metadata.xml b/dev-build/autoconf/metadata.xml new file mode 100644 index 000000000000..4ff4a48125bc --- /dev/null +++ b/dev-build/autoconf/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <upstream> + <remote-id type="savannah">autoconf</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/automake-vanilla/Manifest b/dev-build/automake-vanilla/Manifest new file mode 100644 index 000000000000..9b0a9548bcb7 --- /dev/null +++ b/dev-build/automake-vanilla/Manifest @@ -0,0 +1,7 @@ +DIST automake-1.11.6.tar.xz 1092908 BLAKE2B 17254d81d6920c32aa877b6c892025de8e4060b8bcbe50fff841ada513dd462ddde8fc6838b4976098a812f8fda047e7186cb62cea8175df615dde75a9959144 SHA512 6e4cdf69f07734954f770fd4a7211a8c9dc69fe25a7746bd3c1e01d3139c94cab2900399e87371548833e99687e0d2b59c5e746ab2fdfbc7d47f2c1d439137ba +DIST automake-1.15.1.tar.xz 1509496 BLAKE2B e6ade31089f969140472004cd9854318470228c64e4f8e829d48c5379f62d2c5f8ef9509131c577653e81868d94544ecf6520f86b5d582ebb6ed65c832039f30 SHA512 02f661b2676f1d44334ce1c7188f9913a6874bf46ba487708ad8090ad57905f14aead80fefed815e21effacfbb925e23b944ea7dd32563dca39c1a4174eda688 +DIST automake-1.16.5-tests-c99.patch.xz 7176 BLAKE2B 1fa1d3a499bacc5da9ee9d8ea6cb63d9ab91646a708a53d9bb08eef65fe02a6ab34ff95737042348ea7572bd70c6c7467e260d9441239a00c3571d25d73085f0 SHA512 0065b809219257cbce3c6f6f88459b91a5a29272e0027698e06246181357ffe8d5d40057086438f891d821836441a5a96f2568d52dcd3b5acb80e4d4968cbaf9 +DIST automake-1.16.5.tar.xz 1601740 BLAKE2B 87408abc57e1d4317a2b518fb3606d0f6d156522e7333016dd84747cd8922f27ef7fcc93220b11f794ce52bf8fd9a788d0166a4d1964d7c283905f269977ac7c SHA512 3084ae543aa3fb5a05104ffb2e66cfa9a53080f2343c44809707fd648516869511500dba50dae67ff10f92a1bf3b5a92b2a0fa01cda30adb69b9da03994d9d88 +DIST automake-1.17.tar.xz 1652632 BLAKE2B 53c24c138faf3d2be4e30ababcccd4d157c03e815fc4b7f3e3063b6648cf254dfa63afe6e3285b21309dbf260335c3e67991db3825e7532b158b25ccaead83f5 SHA512 46aba1c9d64a6368b326020803a2999831c1deaf31eaa1c1dfdcfa5138a7f755643294e82a08b6daab3983b31eee725bdb7b9edc4e9a558374c7d1f1b8e854a7 +DIST automake-1.18.1.tar.xz 1652392 BLAKE2B 4461062a4d596dd87caec7d388449f5f8fe7a4faede8fd0d77d1fb3bb5d23caabb3b715fbb9f29f33326bec527f3d8da6251d9282d4007cef9af146d28fe96cf SHA512 8baa16831416a953a743f4e3c0f55cea5ebefe0f5a7a0e390581981d4461d02dc9038415124e974b2ec390c40daaa241802cd7d42c6fafb793f87cf355db2a61 +DIST automake-1.18.tar.xz 1652364 BLAKE2B 45456d6d0fdcd1222c79980ede1df16dfbf18fa4d4698289dbef7c9e24ae8877881678974c5defcce0a9f46b72882b4603e457e8142722174ccf0e495f941550 SHA512 3488d9188a9e11a3e7f911f429ef49d2d92c5ea42262e3e288e1d4de39217facd5a7b7c7ccac06e6fd78a661985af1fe5638353575ebadffb36fc22553e5f782 diff --git a/dev-build/automake-vanilla/automake-vanilla-1.11.6-r1.ebuild b/dev-build/automake-vanilla/automake-vanilla-1.11.6-r1.ebuild new file mode 100644 index 000000000000..ecd2dcbf47f4 --- /dev/null +++ b/dev-build/automake-vanilla/automake-vanilla-1.11.6-r1.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please do not apply any patches which affect the generated output from +# `automake`, as this package is used to submit patches upstream. + +MY_PN=${PN/-vanilla} +MY_P=${MY_PN}-${PV} + +DESCRIPTION="Used to generate Makefile.in from Makefile.am" +HOMEPAGE="https://www.gnu.org/software/automake/" +SRC_URI="mirror://gnu/${MY_PN}/${MY_P}.tar.xz" +S="${WORKDIR}"/${MY_P} + +LICENSE="GPL-2+ FSFAP" +# Use Gentoo versioning for slotting. +SLOT="${PV:0:4}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" +IUSE="test" +RESTRICT="test !test? ( test )" + +RDEPEND=" + >=dev-lang/perl-5.6 + >=dev-build/automake-wrapper-10 + >=dev-build/autoconf-2.69:* + sys-devel/gnuconfig +" +DEPEND=" + ${RDEPEND} + sys-apps/help2man +" +BDEPEND=" + app-arch/gzip + test? ( dev-util/dejagnu ) +" + +PATCHES=( + "${FILESDIR}"/${MY_P}-perl-5.16.patch #424453 + "${FILESDIR}"/${MY_P}-install-sh-avoid-low-risk-race-in-tmp.patch + "${FILESDIR}"/${MY_P}-perl-escape-curly-bracket-r1.patch +) + +src_prepare() { + default + export WANT_AUTOCONF=2.5 + export HELP2MAN=true + sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die + export TZ="UTC" #589138 +} + +src_configure() { + # Also used in install. + MY_INFODIR="${EPREFIX}/usr/share/${P}/info" + econf \ + --datadir="${EPREFIX}"/usr/share/automake-vanilla-${PV} \ + --program-suffix="-vanilla" \ + --infodir="${MY_INFODIR}" +} + +src_compile() { + :; + + # TODO: This was missing a || die originally and fails now... + #local x + #for x in aclocal automake; do + # help2man "perl -Ilib ${x}" > doc/${x}-${SLOT}.1 || die + #done +} + +src_install() { + default + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + rm \ + "${ED}"/usr/bin/{aclocal,automake}-vanilla \ + "${ED}"/usr/share/man/man1/{aclocal,automake}-vanilla.1 || die + + # remove all config.guess and config.sub files replacing them + # w/a symlink to a specific gnuconfig version + local x + for x in guess sub ; do + dosym ../gnuconfig/config.${x} \ + /usr/share/${PN}-${SLOT}/config.${x} + done + + # Avoid QA message about pre-compressed file in docs + local tarfile="${ED}/usr/share/doc/automake-vanilla-${PVR}/amhello-1.0.tar.gz" + if [[ -f "${tarfile}" ]] ; then + gunzip "${tarfile}" || die + fi + + pushd "${D}/${MY_INFODIR}" >/dev/null || die + for f in *.info*; do + # Install convenience aliases for versioned Automake pages. + ln -s "$f" "${f/./-vanilla-${PV}.}" || die + done + popd >/dev/null || die + + local major="$(ver_cut 1)" + local minor="$(ver_cut 2)" + local idx="$((99999-(major*1000+minor)))" + newenvd - "07automake${idx}" <<-EOF + INFOPATH="${MY_INFODIR}" + EOF + + docompress "${MY_INFODIR}" +} diff --git a/dev-build/automake-vanilla/automake-vanilla-1.15.1-r1.ebuild b/dev-build/automake-vanilla/automake-vanilla-1.15.1-r1.ebuild new file mode 100644 index 000000000000..3c419f41942a --- /dev/null +++ b/dev-build/automake-vanilla/automake-vanilla-1.15.1-r1.ebuild @@ -0,0 +1,127 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please do not apply any patches which affect the generated output from +# `automake`, as this package is used to submit patches upstream. + +inherit flag-o-matic toolchain-funcs + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/r/${MY_PN}.git" + inherit git-r3 +else + MY_PN=${PN/-vanilla} + MY_P=${MY_PN}-${PV} + + SRC_URI="mirror://gnu/${MY_PN}/${MY_P}.tar.xz" + + S="${WORKDIR}/${MY_P}" +fi + +DESCRIPTION="Used to generate Makefile.in from Makefile.am" +HOMEPAGE="https://www.gnu.org/software/automake/" + +LICENSE="GPL-2+ FSFAP" +# Use Gentoo versioning for slotting. +SLOT="${PV:0:4}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" +IUSE="test" +# Failures w/ newer dejagnu, not worth backporting the fixes +RESTRICT="!test? ( test ) test" + +RDEPEND=" + >=dev-lang/perl-5.6 + >=dev-build/automake-wrapper-11 + >=dev-build/autoconf-2.69:* + sys-devel/gnuconfig +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-alternatives/gzip + dev-build/autoconf-vanilla:2.69 + sys-apps/help2man + test? ( + dev-util/dejagnu + ) +" + +src_prepare() { + default + + export WANT_AUTOCONF=vanilla-2.69 + # Don't try wrapping the autotools - this thing runs as it tends + # to be a bit esoteric, and the script does `set -e` itself. + ./bootstrap || die + sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die + + # bug #628912 + if ! has_version -b sys-apps/texinfo ; then + touch doc/{stamp-vti,version.texi,automake.info} || die + fi +} + +src_configure() { + # Old lex tests fail w/ modern C + export CC="$(tc-getCC) $(test-flags-CC -fpermissive)" + + # Also used in install. + MY_INFODIR="${EPREFIX}/usr/share/${P}/info" + econf \ + --datadir="${EPREFIX}"/usr/share/automake-vanilla-${PV} \ + --program-suffix="-vanilla" \ + --infodir="${MY_INFODIR}" +} + +src_test() { + # Can't cope with newer Python versions, so pretend we don't + # have it installed. + local -x PYTHON=false + + default +} + +src_install() { + default + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + #rm "${ED}"/usr/share/aclocal/README || die + #rmdir "${ED}"/usr/share/aclocal || die + rm \ + "${ED}"/usr/bin/{aclocal,automake}-vanilla \ + "${ED}"/usr/share/man/man1/{aclocal,automake}-vanilla.1 || die + + # remove all config.guess and config.sub files replacing them + # w/a symlink to a specific gnuconfig version + local x + for x in guess sub ; do + dosym ../gnuconfig/config.${x} \ + /usr/share/${PN}-${SLOT}/config.${x} + done + + # Avoid QA message about pre-compressed file in docs + local tarfile="${ED}/usr/share/doc/automake-vanilla-${PVR}/amhello-1.0.tar.gz" + if [[ -f "${tarfile}" ]] ; then + gunzip "${tarfile}" || die + fi + + pushd "${D}/${MY_INFODIR}" >/dev/null || die + for f in *.info*; do + # Install convenience aliases for versioned Automake pages. + ln -s "$f" "${f/./-vanilla-${PV}.}" || die + done + popd >/dev/null || die + + local major="$(ver_cut 1)" + local minor="$(ver_cut 2)" + local idx="$((99999-(major*1000+minor)))" + newenvd - "07automake${idx}" <<-EOF + INFOPATH="${MY_INFODIR}" + EOF + + docompress "${MY_INFODIR}" +} diff --git a/dev-build/automake-vanilla/automake-vanilla-1.16.5-r1.ebuild b/dev-build/automake-vanilla/automake-vanilla-1.16.5-r1.ebuild new file mode 100644 index 000000000000..fe36bd21e6a1 --- /dev/null +++ b/dev-build/automake-vanilla/automake-vanilla-1.16.5-r1.ebuild @@ -0,0 +1,137 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please do not apply any patches which affect the generated output from +# `automake`, as this package is used to submit patches upstream. + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/r/${MY_PN}.git" + inherit git-r3 +else + MY_PN=${PN/-vanilla} + MY_P=${MY_PN}-${PV} + + SRC_URI=" + mirror://gnu/${MY_PN}/${MY_P}.tar.xz + https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN/-vanilla}/${PN/-vanilla}-1.16.5-tests-c99.patch.xz + " + + S="${WORKDIR}/${MY_P}" +fi + +DESCRIPTION="Used to generate Makefile.in from Makefile.am" +HOMEPAGE="https://www.gnu.org/software/automake/" + +LICENSE="GPL-2+ FSFAP" +# Use Gentoo versioning for slotting. +SLOT="${PV:0:4}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" +IUSE="test" +# Failures w/ newer dejagnu, not worth backporting the fixes +RESTRICT="!test? ( test ) test" + +RDEPEND=" + >=dev-lang/perl-5.6 + >=dev-build/automake-wrapper-11 + >=dev-build/autoconf-2.69:* + sys-devel/gnuconfig +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-alternatives/gzip + sys-apps/help2man + test? ( + dev-util/dejagnu + sys-devel/bison + sys-devel/flex + ) +" + +PATCHES=( + "${FILESDIR}"/${MY_PN}-1.16.5-py3-compile.patch + "${FILESDIR}"/${MY_PN}-1.16.5-fix-instmany-python.sh-test.patch + "${FILESDIR}"/${MY_PN}-1.16.5-fix-py-compile-basedir.sh-test.patch + # upstreamed + "${FILESDIR}"/${MY_PN}-1.16.5-apostrophe-in-tests.patch + "${WORKDIR}"/${PN/-vanilla}-1.16.5-tests-c99.patch +) + +src_prepare() { + default + + export WANT_AUTOCONF=2.5 + # Don't try wrapping the autotools - this thing runs as it tends + # to be a bit esoteric, and the script does `set -e` itself. + ./bootstrap || die + sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die + + # bug #628912 + if ! has_version -b sys-apps/texinfo ; then + touch doc/{stamp-vti,version.texi,automake.info} || die + fi +} + +src_configure() { + # Also used in install. + MY_INFODIR="${EPREFIX}/usr/share/${P}/info" + econf \ + --datadir="${EPREFIX}"/usr/share/automake-vanilla-${PV} \ + --program-suffix="-vanilla" \ + --infodir="${MY_INFODIR}" +} + +src_test() { + # Can't cope with newer Python versions, so pretend we don't + # have it installed. + local -x PYTHON=false + + # Fails with byacc/flex and t/dist-auxdir-many-subdirs.sh doesn't + # like our Python hack. + emake YACC="bison -y" LEX="flex" XFAIL_TESTS="t/dist-auxdir-many-subdirs.sh" check +} + +src_install() { + default + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + #rm "${ED}"/usr/share/aclocal/README || die + #rmdir "${ED}"/usr/share/aclocal || die + rm \ + "${ED}"/usr/bin/{aclocal,automake}-vanilla \ + "${ED}"/usr/share/man/man1/{aclocal,automake}-vanilla.1 || die + + # remove all config.guess and config.sub files replacing them + # w/a symlink to a specific gnuconfig version + local x + for x in guess sub ; do + dosym ../gnuconfig/config.${x} \ + /usr/share/${PN}-${SLOT}/config.${x} + done + + # Avoid QA message about pre-compressed file in docs + local tarfile="${ED}/usr/share/doc/automake-vanilla-${PVR}/amhello-1.0.tar.gz" + if [[ -f "${tarfile}" ]] ; then + gunzip "${tarfile}" || die + fi + + pushd "${D}/${MY_INFODIR}" >/dev/null || die + for f in *.info*; do + # Install convenience aliases for versioned Automake pages. + ln -s "$f" "${f/./-vanilla-${PV}.}" || die + done + popd >/dev/null || die + + local major="$(ver_cut 1)" + local minor="$(ver_cut 2)" + local idx="$((99999-(major*1000+minor)))" + newenvd - "07automake${idx}" <<-EOF + INFOPATH="${MY_INFODIR}" + EOF + + docompress "${MY_INFODIR}" +} diff --git a/dev-build/automake-vanilla/automake-vanilla-1.17-r1.ebuild b/dev-build/automake-vanilla/automake-vanilla-1.17-r1.ebuild new file mode 100644 index 000000000000..043f1022b2ac --- /dev/null +++ b/dev-build/automake-vanilla/automake-vanilla-1.17-r1.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please do not apply any patches which affect the generated output from +# `automake`, as this package is used to submit patches upstream. + +MY_PN=${PN/-vanilla} +MY_P=${MY_PN}-${PV} + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/r/${MY_PN}.git" + inherit git-r3 +else + SRC_URI="mirror://gnu/${MY_PN}/${MY_P}.tar.xz" + + S="${WORKDIR}/${MY_P}" +fi + +DESCRIPTION="Used to generate Makefile.in from Makefile.am" +HOMEPAGE="https://www.gnu.org/software/automake/" + +LICENSE="GPL-2+ FSFAP" +# Use Gentoo versioning for slotting. +SLOT="${PV:0:4}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-lang/perl-5.6 + >=dev-build/automake-wrapper-11 + >=dev-build/autoconf-2.69:* + sys-devel/gnuconfig +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-alternatives/gzip + sys-apps/help2man + test? ( + dev-util/dejagnu + sys-devel/bison + sys-devel/flex + ) +" + +src_prepare() { + default + + export WANT_AUTOCONF=2.5 + # Don't try wrapping the autotools - this thing runs as it tends + # to be a bit esoteric, and the script does `set -e` itself. + ./bootstrap || die + sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die + + # bug #628912 + if ! has_version -b sys-apps/texinfo ; then + touch doc/{stamp-vti,version.texi,automake.info} || die + fi +} + +src_configure() { + # Also used in install. + MY_INFODIR="${EPREFIX}/usr/share/${P}/info" + econf \ + --datadir="${EPREFIX}"/usr/share/automake-vanilla-${PV} \ + --program-suffix="-vanilla" \ + --infodir="${MY_INFODIR}" +} + +src_test() { + # Fails with byacc/flex + emake YACC="bison -y" LEX="flex" check +} + +src_install() { + default + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + #rm "${ED}"/usr/share/aclocal/README || die + #rmdir "${ED}"/usr/share/aclocal || die + rm \ + "${ED}"/usr/bin/{aclocal,automake}-vanilla \ + "${ED}"/usr/share/man/man1/{aclocal,automake}-vanilla.1 || die + + # remove all config.guess and config.sub files replacing them + # w/a symlink to a specific gnuconfig version + local x + for x in guess sub ; do + dosym ../gnuconfig/config.${x} \ + /usr/share/${PN}-${SLOT}/config.${x} + done + + # Avoid QA message about pre-compressed file in docs + local tarfile="${ED}/usr/share/doc/automake-vanilla-${PVR}/amhello-1.0.tar.gz" + if [[ -f "${tarfile}" ]] ; then + gunzip "${tarfile}" || die + fi + + pushd "${D}/${MY_INFODIR}" >/dev/null || die + for f in *.info*; do + # Install convenience aliases for versioned Automake pages. + ln -s "$f" "${f/./-vanilla-${PV}.}" || die + done + popd >/dev/null || die + + if [[ ${PV} == 9999 ]]; then + local major="89" + local minor="999" + else + local major="$(ver_cut 1)" + local minor="$(ver_cut 2)" + fi + local idx="$((99999-(major*1000+minor)))" + newenvd - "07automake${idx}" <<-EOF + INFOPATH="${MY_INFODIR}" + EOF + + docompress "${MY_INFODIR}" +} diff --git a/dev-build/automake-vanilla/automake-vanilla-1.18.1-r1.ebuild b/dev-build/automake-vanilla/automake-vanilla-1.18.1-r1.ebuild new file mode 100644 index 000000000000..e93f665bb434 --- /dev/null +++ b/dev-build/automake-vanilla/automake-vanilla-1.18.1-r1.ebuild @@ -0,0 +1,135 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please do not apply any patches which affect the generated output from +# `automake`, as this package is used to submit patches upstream. + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit python-any-r1 + +MY_PN=${PN/-vanilla} +MY_P=${MY_PN}-${PV} + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/r/${MY_PN}.git" + inherit git-r3 +else + SRC_URI="mirror://gnu/${MY_PN}/${MY_P}.tar.xz" + + S="${WORKDIR}/${MY_P}" +fi + +DESCRIPTION="Used to generate Makefile.in from Makefile.am" +HOMEPAGE="https://www.gnu.org/software/automake/" + +LICENSE="GPL-2+ FSFAP" +# Use Gentoo versioning for slotting. +SLOT="${PV:0:4}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-lang/perl-5.6 + >=dev-build/automake-wrapper-11 + >=dev-build/autoconf-2.69:* + sys-devel/gnuconfig +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-alternatives/gzip + sys-apps/help2man + test? ( + ${PYTHON_DEPS} + dev-util/dejagnu + sys-devel/bison + sys-devel/flex + ) +" + +pkg_setup() { + # Avoid python-any-r1_pkg_setup + : +} + +src_prepare() { + default + + export WANT_AUTOCONF=2.5 + # Don't try wrapping the autotools - this thing runs as it tends + # to be a bit esoteric, and the script does `set -e` itself. + ./bootstrap || die + sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die + + # bug #628912 + if ! has_version -b sys-apps/texinfo ; then + touch doc/{stamp-vti,version.texi,automake.info} || die + fi +} + +src_configure() { + use test && python_setup + # Also used in install. + MY_INFODIR="${EPREFIX}/usr/share/${P}/info" + econf \ + --datadir="${EPREFIX}"/usr/share/automake-vanilla-${PV} \ + --program-suffix="-vanilla" \ + --infodir="${MY_INFODIR}" +} + +src_test() { + # Fails with byacc/flex + emake YACC="bison -y" LEX="flex" check +} + +src_install() { + default + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + #rm "${ED}"/usr/share/aclocal/README || die + #rmdir "${ED}"/usr/share/aclocal || die + rm \ + "${ED}"/usr/bin/{aclocal,automake}-vanilla \ + "${ED}"/usr/share/man/man1/{aclocal,automake}-vanilla.1 || die + + # remove all config.guess and config.sub files replacing them + # w/a symlink to a specific gnuconfig version + local x + for x in guess sub ; do + dosym ../gnuconfig/config.${x} \ + /usr/share/${PN}-${SLOT}/config.${x} + done + + # Avoid QA message about pre-compressed file in docs + local tarfile="${ED}/usr/share/doc/automake-vanilla-${PVR}/amhello-1.0.tar.gz" + if [[ -f "${tarfile}" ]] ; then + gunzip "${tarfile}" || die + fi + + pushd "${D}/${MY_INFODIR}" >/dev/null || die + for f in *.info*; do + # Install convenience aliases for versioned Automake pages. + ln -s "$f" "${f/./-vanilla-${PV}.}" || die + done + popd >/dev/null || die + + if [[ ${PV} == 9999 ]]; then + local major="89" + local minor="999" + else + local major="$(ver_cut 1)" + local minor="$(ver_cut 2)" + fi + local idx="$((99999-(major*1000+minor)))" + newenvd - "07automake${idx}" <<-EOF + INFOPATH="${MY_INFODIR}" + EOF + + docompress "${MY_INFODIR}" +} diff --git a/dev-build/automake-vanilla/automake-vanilla-1.18.ebuild b/dev-build/automake-vanilla/automake-vanilla-1.18.ebuild new file mode 100644 index 000000000000..edf09c982bbd --- /dev/null +++ b/dev-build/automake-vanilla/automake-vanilla-1.18.ebuild @@ -0,0 +1,134 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please do not apply any patches which affect the generated output from +# `automake`, as this package is used to submit patches upstream. + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit python-any-r1 + +MY_PN=${PN/-vanilla} +MY_P=${MY_PN}-${PV} + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/r/${MY_PN}.git" + inherit git-r3 +else + SRC_URI="mirror://gnu/${MY_PN}/${MY_P}.tar.xz" + + S="${WORKDIR}/${MY_P}" +fi + +DESCRIPTION="Used to generate Makefile.in from Makefile.am" +HOMEPAGE="https://www.gnu.org/software/automake/" + +LICENSE="GPL-2+ FSFAP" +# Use Gentoo versioning for slotting. +SLOT="${PV:0:4}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-lang/perl-5.6 + >=dev-build/automake-wrapper-11 + >=dev-build/autoconf-2.69:* + sys-devel/gnuconfig +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-alternatives/gzip + sys-apps/help2man + test? ( + ${PYTHON_DEPS} + dev-util/dejagnu + sys-devel/bison + sys-devel/flex + ) +" + +pkg_setup() { + # Avoid python-any-r1_pkg_setup + : +} + +src_prepare() { + default + + export WANT_AUTOCONF=2.5 + # Don't try wrapping the autotools - this thing runs as it tends + # to be a bit esoteric, and the script does `set -e` itself. + ./bootstrap || die + sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die + + # bug #628912 + if ! has_version -b sys-apps/texinfo ; then + touch doc/{stamp-vti,version.texi,automake.info} || die + fi +} + +src_configure() { + use test && python_setup + # Also used in install. + MY_INFODIR="${EPREFIX}/usr/share/${P}/info" + econf \ + --datadir="${EPREFIX}"/usr/share/automake-vanilla-${PV} \ + --program-suffix="-vanilla" \ + --infodir="${MY_INFODIR}" +} + +src_test() { + # Fails with byacc/flex + emake YACC="bison -y" LEX="flex" check +} + +src_install() { + default + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + + #rm "${ED}"/usr/share/aclocal/README || die + #rmdir "${ED}"/usr/share/aclocal || die + rm \ + "${ED}"/usr/bin/{aclocal,automake}-vanilla \ + "${ED}"/usr/share/man/man1/{aclocal,automake}-vanilla.1 || die + + # remove all config.guess and config.sub files replacing them + # w/a symlink to a specific gnuconfig version + local x + for x in guess sub ; do + dosym ../gnuconfig/config.${x} \ + /usr/share/${PN}-${SLOT}/config.${x} + done + + # Avoid QA message about pre-compressed file in docs + local tarfile="${ED}/usr/share/doc/automake-vanilla-${PVR}/amhello-1.0.tar.gz" + if [[ -f "${tarfile}" ]] ; then + gunzip "${tarfile}" || die + fi + + pushd "${D}/${MY_INFODIR}" >/dev/null || die + for f in *.info*; do + # Install convenience aliases for versioned Automake pages. + ln -s "$f" "${f/./-vanilla-${PV}.}" || die + done + popd >/dev/null || die + + if [[ ${PV} == 9999 ]]; then + local major="89" + local minor="999" + else + local major="$(ver_cut 1)" + local minor="$(ver_cut 2)" + fi + local idx="$((99999-(major*1000+minor)))" + newenvd - "07automake${idx}" <<-EOF + INFOPATH="${MY_INFODIR}" + EOF + + docompress "${MY_INFODIR}" +} diff --git a/dev-build/automake-vanilla/automake-vanilla-9999.ebuild b/dev-build/automake-vanilla/automake-vanilla-9999.ebuild new file mode 100644 index 000000000000..14beba3c6811 --- /dev/null +++ b/dev-build/automake-vanilla/automake-vanilla-9999.ebuild @@ -0,0 +1,134 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please do not apply any patches which affect the generated output from +# `automake`, as this package is used to submit patches upstream. + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit python-any-r1 + +MY_PN=${PN/-vanilla} +MY_P=${MY_PN}-${PV} + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/r/${MY_PN}.git" + inherit git-r3 +else + SRC_URI="mirror://gnu/${MY_PN}/${MY_P}.tar.xz" + + S="${WORKDIR}/${MY_P}" +fi + +DESCRIPTION="Used to generate Makefile.in from Makefile.am" +HOMEPAGE="https://www.gnu.org/software/automake/" + +LICENSE="GPL-2+ FSFAP" +# Use Gentoo versioning for slotting. +SLOT="${PV:0:4}" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-lang/perl-5.6 + >=dev-build/automake-wrapper-11 + >=dev-build/autoconf-2.69:* + sys-devel/gnuconfig +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-alternatives/gzip + sys-apps/help2man + test? ( + ${PYTHON_DEPS} + dev-util/dejagnu + sys-devel/bison + sys-devel/flex + ) +" + +pkg_setup() { + # Avoid python-any-r1_pkg_setup + : +} + +src_prepare() { + default + + export WANT_AUTOCONF=2.5 + # Don't try wrapping the autotools - this thing runs as it tends + # to be a bit esoteric, and the script does `set -e` itself. + ./bootstrap || die + sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die + + # bug #628912 + if ! has_version -b sys-apps/texinfo ; then + touch doc/{stamp-vti,version.texi,automake.info} || die + fi +} + +src_configure() { + use test && python_setup + # Also used in install. + MY_INFODIR="${EPREFIX}/usr/share/${P}/info" + econf \ + --datadir="${EPREFIX}"/usr/share/automake-vanilla-${PV} \ + --program-suffix="-vanilla" \ + --infodir="${MY_INFODIR}" +} + +src_test() { + # Fails with byacc/flex + emake YACC="bison -y" LEX="flex" check +} + +src_install() { + default + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + #rm "${ED}"/usr/share/aclocal/README || die + #rmdir "${ED}"/usr/share/aclocal || die + rm \ + "${ED}"/usr/bin/{aclocal,automake}-vanilla \ + "${ED}"/usr/share/man/man1/{aclocal,automake}-vanilla.1 || die + + # remove all config.guess and config.sub files replacing them + # w/a symlink to a specific gnuconfig version + local x + for x in guess sub ; do + dosym ../gnuconfig/config.${x} \ + /usr/share/${PN}-${SLOT}/config.${x} + done + + # Avoid QA message about pre-compressed file in docs + local tarfile="${ED}/usr/share/doc/automake-vanilla-${PVR}/amhello-1.0.tar.gz" + if [[ -f "${tarfile}" ]] ; then + gunzip "${tarfile}" || die + fi + + pushd "${D}/${MY_INFODIR}" >/dev/null || die + for f in *.info*; do + # Install convenience aliases for versioned Automake pages. + ln -s "$f" "${f/./-vanilla-${PV}.}" || die + done + popd >/dev/null || die + + if [[ ${PV} == 9999 ]]; then + local major="89" + local minor="999" + else + local major="$(ver_cut 1)" + local minor="$(ver_cut 2)" + fi + local idx="$((99999-(major*1000+minor)))" + newenvd - "07automake${idx}" <<-EOF + INFOPATH="${MY_INFODIR}" + EOF + + docompress "${MY_INFODIR}" +} diff --git a/dev-build/automake-vanilla/files/automake-1.11.6-install-sh-avoid-low-risk-race-in-tmp.patch b/dev-build/automake-vanilla/files/automake-1.11.6-install-sh-avoid-low-risk-race-in-tmp.patch new file mode 100644 index 000000000000..c435b9004f8d --- /dev/null +++ b/dev-build/automake-vanilla/files/automake-1.11.6-install-sh-avoid-low-risk-race-in-tmp.patch @@ -0,0 +1,77 @@ +From: Pavel Raiskup <praiskup@redhat.com> +Date: Sat, 15 Aug 2015 04:40:57 -0400 +Subject: install-sh: avoid (low risk) race in /tmp + +Ensure that nobody can cross privilege boundaries by pre-creating +symlink on '$tmpdir' path. + +Just testing 'mkdir -p' by creating '/tmp/ins$RANDOM-$$/d' is not +safe because '/tmp' directory is usually world-writeable and +'/tmp/ins$RANDOM-$$' content could be pretty easily guessed by +attacker (at least for shells where $RANDOM is not supported). +So, as the first step, create the '/tmp/ins$RANDOM-$$' without -p. +This step would fail early if somebody wanted catch us. + +Note that systems that implement (and have enabled) +fs.protected_symlinks kernel feature are not affected even without +this commit. + +References: +https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=760455 +https://bugzilla.redhat.com/show_bug.cgi?id=1140725 + +* lib/install-sh: Implement safer 'mkdir -p' test by running +'$mkdirprog $mkdir_mode "$tmpdir"' first. +(scriptversion): Bump. + +--- a/lib/install-sh ++++ b/lib/install-sh +@@ -345,34 +345,41 @@ do + # is incompatible with FreeBSD 'install' when (umask & 300) != 0. + ;; + *) ++ # $RANDOM is not portable (e.g. dash); use it when possible to ++ # lower collision chance + tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ +- trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 ++ trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0 + ++ # As "mkdir -p" follows symlinks and we work in /tmp possibly; so ++ # create the $tmpdir first (and fail if unsuccessful) to make sure ++ # that nobody tries to guess the $tmpdir name. + if (umask $mkdir_umask && +- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 ++ $mkdirprog $mkdir_mode "$tmpdir" && ++ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 + then + if test -z "$dir_arg" || { + # Check for POSIX incompatibilities with -m. + # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or + # other-writeable bit of parent directory when it shouldn't. + # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. +- ls_ld_tmpdir=`ls -ld "$tmpdir"` ++ test_tmpdir="$tmpdir/a" ++ ls_ld_tmpdir=`ls -ld "$test_tmpdir"` + case $ls_ld_tmpdir in + d????-?r-*) different_mode=700;; + d????-?--*) different_mode=755;; + *) false;; + esac && +- $mkdirprog -m$different_mode -p -- "$tmpdir" && { +- ls_ld_tmpdir_1=`ls -ld "$tmpdir"` ++ $mkdirprog -m$different_mode -p -- "$test_tmpdir" && { ++ ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"` + test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" + } + } + then posix_mkdir=: + fi +- rmdir "$tmpdir/d" "$tmpdir" ++ rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" + else + # Remove any dirs left behind by ancient mkdir implementations. +- rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null ++ rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null + fi + trap '' 0;; + esac;; diff --git a/dev-build/automake-vanilla/files/automake-1.11.6-perl-5.16.patch b/dev-build/automake-vanilla/files/automake-1.11.6-perl-5.16.patch new file mode 100644 index 000000000000..19fe249e0c00 --- /dev/null +++ b/dev-build/automake-vanilla/files/automake-1.11.6-perl-5.16.patch @@ -0,0 +1,128 @@ +https://bugs.gentoo.org/424453 + +From 6bf58a59a1f3803e57e3f0378aa9344686707b75 Mon Sep 17 00:00:00 2001 +From: Stefano Lattarini <stefano.lattarini@gmail.com> +Date: Mon, 28 May 2012 13:32:03 +0200 +Subject: [PATCH] aclocal: declare function prototypes, do not use '&' in + function calls + +This change will also fix automake bug#11543 (from a report by Matt +Burgess). + +* aclocal.in: Declare prototypes for almost all functions early, before +any actual function definition (but omit the prototype for the dynamically +generated '&search' function). Add prototypes to any function definition. +Remove '&' from function invocations (i.e., simply use "func(ARGS..)" +instead of "&func(ARGS...)"). +* THANKS, NEWS: Update. + +Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com> +--- + NEWS | 4 ++++ + THANKS | 1 + + aclocal.in | 42 ++++++++++++++++++++++++++++++++++-------- + 3 files changed, 39 insertions(+), 8 deletions(-) + +diff --git a/aclocal.in b/aclocal.in +index dfb851b..e8855d5 100644 +--- a/aclocal.in ++++ b/aclocal.in +@@ -152,8 +152,34 @@ my $erase_me; + + ################################################################ + ++# Prototypes for all subroutines. ++ ++sub unlink_tmp (;$); ++sub xmkdir_p ($); ++sub check_acinclude (); ++sub reset_maps (); ++sub install_file ($$); ++sub list_compare (\@\@); ++sub scan_m4_dirs ($@); ++sub scan_m4_files (); ++sub add_macro ($); ++sub scan_configure_dep ($); ++sub add_file ($); ++sub scan_file ($$$); ++sub strip_redundant_includes (%); ++sub trace_used_macros (); ++sub scan_configure (); ++sub write_aclocal ($@); ++sub usage ($); ++sub version (); ++sub handle_acdir_option ($$); ++sub parse_arguments (); ++sub parse_ACLOCAL_PATH (); ++ ++################################################################ ++ + # Erase temporary file ERASE_ME. Handle signals. +-sub unlink_tmp ++sub unlink_tmp (;$) + { + my ($sig) = @_; + +@@ -350,7 +376,7 @@ sub scan_m4_dirs ($@) + next if $file eq 'aclocal.m4'; + + my $fullfile = File::Spec->canonpath ("$m4dir/$file"); +- &scan_file ($type, $fullfile, 'aclocal'); ++ scan_file ($type, $fullfile, 'aclocal'); + } + closedir (DIR); + } +@@ -361,12 +387,12 @@ sub scan_m4_files () + { + # First, scan configure.ac. It may contain macro definitions, + # or may include other files that define macros. +- &scan_file (FT_USER, $configure_ac, 'aclocal'); ++ scan_file (FT_USER, $configure_ac, 'aclocal'); + + # Then, scan acinclude.m4 if it exists. + if (-f 'acinclude.m4') + { +- &scan_file (FT_USER, 'acinclude.m4', 'aclocal'); ++ scan_file (FT_USER, 'acinclude.m4', 'aclocal'); + } + + # Finally, scan all files in our search paths. +@@ -380,7 +406,7 @@ sub scan_m4_files () + my $search = "sub search {\nmy \$found = 0;\n"; + foreach my $key (reverse sort keys %map) + { +- $search .= ('if (/\b\Q' . $key . '\E(?!\w)/) { & add_macro ("' . $key ++ $search .= ('if (/\b\Q' . $key . '\E(?!\w)/) { add_macro ("' . $key + . '"); $found = 1; }' . "\n"); + } + $search .= "return \$found;\n};\n"; +@@ -403,7 +429,7 @@ sub add_macro ($) + + verb "saw macro $macro"; + $macro_seen{$macro} = 1; +- &add_file ($map{$macro}); ++ add_file ($map{$macro}); + } + + # scan_configure_dep ($file) +@@ -465,7 +491,7 @@ sub scan_configure_dep ($) + } + + add_macro ($_) foreach (@rlist); +- &scan_configure_dep ($_) foreach @ilist; ++ scan_configure_dep ($_) foreach @ilist; + } + + # add_file ($FILE) +@@ -931,7 +957,7 @@ EOF + } + + # Print version and exit. +-sub version() ++sub version () + { + print <<EOF; + aclocal (GNU $PACKAGE) $VERSION +-- +2.1.3 + diff --git a/dev-build/automake-vanilla/files/automake-1.11.6-perl-escape-curly-bracket-r1.patch b/dev-build/automake-vanilla/files/automake-1.11.6-perl-escape-curly-bracket-r1.patch new file mode 100644 index 000000000000..bf8819adcf4c --- /dev/null +++ b/dev-build/automake-vanilla/files/automake-1.11.6-perl-escape-curly-bracket-r1.patch @@ -0,0 +1,37 @@ +http://debbugs.gnu.org/cgi/bugreport.cgi?bug=21001 + +From 34163794a58b5bd91c5d6bd9adf5437571c7a479 Mon Sep 17 00:00:00 2001 +From: Pavel Raiskup <praiskup@redhat.com> +Date: Tue, 7 Jul 2015 10:54:24 +0200 +Subject: [PATCH] bin/automake: escape '{' in regexp pattern + +Based on perlre(1) documentation: +.. in Perl v5.26, literal uses of a curly bracket will be required +to be escaped, say by preceding them with a backslash ("\{" ) or +enclosing them within square brackets ("[{]") .. + +References: +https://bugzilla.redhat.com/1239379 + +* bin/automake.in (substitute_ac_subst_variables): Escape the +occurrence of '{' character. +--- + bin/automake.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/bin/automake.in b/bin/automake.in +index 0c29184..c294ced 100644 +--- a/automake.in ++++ b/automake.in +@@ -3898,7 +3898,7 @@ sub substitute_ac_subst_variables_worker + sub substitute_ac_subst_variables ($) + { + my ($text) = @_; +- $text =~ s/\${([^ \t=:+{}]+)}/&substitute_ac_subst_variables_worker ($1)/ge; ++ $text =~ s/\$\{([^ \t=:+{}]+)}/&substitute_ac_subst_variables_worker ($1)/ge; + return $text; + } + +-- +2.1.0 + diff --git a/dev-build/automake-vanilla/files/automake-1.16.5-apostrophe-in-tests.patch b/dev-build/automake-vanilla/files/automake-1.16.5-apostrophe-in-tests.patch new file mode 100644 index 000000000000..866284dfd185 --- /dev/null +++ b/dev-build/automake-vanilla/files/automake-1.16.5-apostrophe-in-tests.patch @@ -0,0 +1,51 @@ +From ed1368e8803e8934a8bbab52a38753484dba2a37 Mon Sep 17 00:00:00 2001 +From: Karl Berry <karl@freefriends.org> +Date: Mon, 12 Dec 2022 14:50:33 -0800 +Subject: test: avoid apostrophe in test document. + +From automake patch https://bugs.gnu.org/59989 +(though a different solution), suggestion by Frederic Berat. + +* t/txinfo-include.sh: avoid apostrophes in test document, +since Texinfo 7.0 turns them into UTF-8 by default. +--- + t/txinfo-include.sh | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) + +diff --git a/t/txinfo-include.sh b/t/txinfo-include.sh +index 8a15f01..10fff07 100644 +--- a/t/txinfo-include.sh ++++ b/t/txinfo-include.sh +@@ -28,6 +28,9 @@ main_TEXINFOS = one.texi two.texi three.texi + sub_more_TEXINFOS = sub/desc.texi sub/hist.texi + END + ++# We avoid apostrophes in the test document since Texinfo ++# turns them into UTF-8, which is not easy to grep. ++# + cat > main.texi << 'END' + \input texinfo + @setfilename main.info +@@ -61,8 +64,8 @@ END + + cat > three.texi << 'END' + @node three +-@chapter Chapter two +-GNU's Not Unix. ++@chapter Chapter three ++Quux quux quux. + END + + mkdir sub +@@ -106,7 +109,7 @@ check_info_contents () + srcdir=${1-.} + $FGREP "Foo bar, baz." $srcdir/main.info + $FGREP "Blah Blah Blah." $srcdir/main.info +- $FGREP "GNU's Not Unix." $srcdir/main.info ++ $FGREP "Quux quux quux." $srcdir/main.info + $FGREP 'It does something, really.' $srcdir/sub/more.info + $FGREP 'It was written somehow.' $srcdir/sub/more.info + } +-- +cgit v1.1 + diff --git a/dev-build/automake-vanilla/files/automake-1.16.5-fix-instmany-python.sh-test.patch b/dev-build/automake-vanilla/files/automake-1.16.5-fix-instmany-python.sh-test.patch new file mode 100644 index 000000000000..5cddb4cfb83f --- /dev/null +++ b/dev-build/automake-vanilla/files/automake-1.16.5-fix-instmany-python.sh-test.patch @@ -0,0 +1,26 @@ +From 50daac4f15d207b6b69011b9cdde62b56c1c8b10 Mon Sep 17 00:00:00 2001 +From: Thomas Deutschmann <whissi@gentoo.org> +Date: Fri, 20 Nov 2020 02:17:31 +0100 +Subject: [PATCH 2/2] tests: fix instmany-python.sh: increase limit + +Still failing with 4500 on Gentoo. Passing with 7000... +--- + t/instmany-python.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/t/instmany-python.sh b/t/instmany-python.sh +index dce3594b5..1c482520d 100644 +--- a/t/instmany-python.sh ++++ b/t/instmany-python.sh +@@ -21,7 +21,7 @@ + required='python' + . test-init.sh + +-limit=4500 ++limit=7000 + subdir=long_subdir_name_with_many_characters + nfiles=81 + list=$(seq_ 1 $nfiles) +-- +2.29.2 + diff --git a/dev-build/automake-vanilla/files/automake-1.16.5-fix-py-compile-basedir.sh-test.patch b/dev-build/automake-vanilla/files/automake-1.16.5-fix-py-compile-basedir.sh-test.patch new file mode 100644 index 000000000000..f49dd253c2d6 --- /dev/null +++ b/dev-build/automake-vanilla/files/automake-1.16.5-fix-py-compile-basedir.sh-test.patch @@ -0,0 +1,26 @@ +From e3db5b8038a902501a354b6921dcebcb4180f50a Mon Sep 17 00:00:00 2001 +From: Thomas Deutschmann <whissi@gentoo.org> +Date: Fri, 20 Nov 2020 02:13:56 +0100 +Subject: [PATCH 1/2] tests: fix py-compile-basedir.sh: add missing test call + +Fixes: b279a0d46 ("tests: in python tests, do not require .pyo files (for python3)") +--- + t/py-compile-basedir.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/t/py-compile-basedir.sh b/t/py-compile-basedir.sh +index 13a22ff1d..1a16ee2d7 100644 +--- a/t/py-compile-basedir.sh ++++ b/t/py-compile-basedir.sh +@@ -43,7 +43,7 @@ for d in foo foo/bar "$(pwd)/foo" . .. ../foo ''; do + py_installed "$d2/sub/$f.pyc" + files=$(find "$d2" | grep '\.py[co]$') + # with new-enough Python3, there are six files. +- test $(echo "$files" | wc -l) -eq 4 || $(echo "$files" | wc -l) -eq 6 ++ test $(echo "$files" | wc -l) -eq 4 || test $(echo "$files" | wc -l) -eq 6 + case $d2 in + .|..) rm -f $files;; + *) rm -rf "$d2";; +-- +2.29.2 + diff --git a/dev-build/automake-vanilla/files/automake-1.16.5-py3-compile.patch b/dev-build/automake-vanilla/files/automake-1.16.5-py3-compile.patch new file mode 100644 index 000000000000..5333520b5db1 --- /dev/null +++ b/dev-build/automake-vanilla/files/automake-1.16.5-py3-compile.patch @@ -0,0 +1,73 @@ +From aa449bd4c836abf0320033c5077259fc760b622d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Sun, 3 Nov 2019 11:51:19 +0100 +Subject: [PATCH] py-compile: Support -OO for py3.5+, and -O&-OO for pypy3 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Michał Górny <mgorny@gentoo.org> +--- + lib/py-compile | 29 +++++++++++++++++++++++++---- + 1 file changed, 25 insertions(+), 4 deletions(-) + +diff --git a/lib/py-compile b/lib/py-compile +index e56d98d6e..5b9ae5d5d 100755 +--- a/lib/py-compile ++++ b/lib/py-compile +@@ -126,12 +126,10 @@ if test "$python_major" -le 2; then + import_lib=imp + import_test="hasattr(imp, 'get_tag')" + import_call=imp.cache_from_source +- import_arg2=', False' # needed in one call and not the other + else + import_lib=importlib + import_test="hasattr(sys.implementation, 'cache_tag')" + import_call=importlib.util.cache_from_source +- import_arg2= + fi + + $PYTHON -c " +@@ -159,7 +157,7 @@ $PYTHON -O -c " + import sys, os, py_compile, $import_lib + + # pypy does not use .pyo optimization +-if hasattr(sys, 'pypy_translation_info'): ++if hasattr(sys, 'pypy_translation_info') and sys.hexversion < 0x03050000: + sys.exit(0) + + files = '''$files''' +@@ -173,7 +171,30 @@ for file in files.split(): + sys.stdout.write(file) + sys.stdout.flush() + if $import_test: +- py_compile.compile(filepath, $import_call(filepath$import_arg2), path) ++ py_compile.compile(filepath, $import_call(filepath), path) ++ else: ++ py_compile.compile(filepath, filepath + 'o', path) ++sys.stdout.write('\n')" 2>/dev/null || : ++ ++$PYTHON -OO -c " ++import sys, os, py_compile, $import_lib ++ ++# python<3.5 does not have split files for -O and -OO ++if sys.hexversion < 0x03050000: ++ sys.exit(0) ++ ++files = '''$files''' ++sys.stdout.write('Byte-compiling python modules (optimized versions) ...\n') ++for file in files.split(): ++ $pathtrans ++ $filetrans ++ if not os.path.exists(filepath) or not (len(filepath) >= 3 ++ and filepath[-3:] == '.py'): ++ continue ++ sys.stdout.write(file) ++ sys.stdout.flush() ++ if $import_test: ++ py_compile.compile(filepath, $import_call(filepath), path) + else: + py_compile.compile(filepath, filepath + 'o', path) + sys.stdout.write('\n')" 2>/dev/null || exit $? +-- +2.25.2 diff --git a/dev-build/automake-vanilla/metadata.xml b/dev-build/automake-vanilla/metadata.xml new file mode 100644 index 000000000000..6e5b45d8c011 --- /dev/null +++ b/dev-build/automake-vanilla/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <stabilize-allarches/> + <upstream> + <remote-id type="cpe">cpe:/a:gnu:automake</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/automake-wrapper/Manifest b/dev-build/automake-wrapper/Manifest new file mode 100644 index 000000000000..2efef9f78fbe --- /dev/null +++ b/dev-build/automake-wrapper/Manifest @@ -0,0 +1,2 @@ +DIST autotools-wrappers-at-20240607.tar.gz 3648 BLAKE2B 2b63c6b71b0a1eff801d011ed0829b42944dd5fa409464644036b4b312f2fd27862fa169c8d915db7daf1fb9862d52bbf9e606b274e82dfda3395e568120e6a4 SHA512 3754c34520109e4f2d2cbf45fe24cfc788c61210864a1199c7cc208e91c400d45533fb02934c61a5662f1402ba8464a0aa4ef16de17460646c8c176ab09df0af +DIST autotools-wrappers-at-20250528.tar.gz 3642 BLAKE2B 74747a89ec1177fc8020f5318c7f9e5fd15ca66e0ee5018722fdd12341ed4393962d558aaaaec270f727280d225125fd933cea49a47792b7bc75f88da70ced9e SHA512 6d17649977278e2f094e8d9f941916d498292c001080cddb78367c61e4da5c221501382b1eb4f2b6e8c5b2101ce9cb2bbc4063f87e23eb1f8c99361764157b54 diff --git a/dev-build/automake-wrapper/automake-wrapper-20240607.ebuild b/dev-build/automake-wrapper/automake-wrapper-20240607.ebuild new file mode 100644 index 000000000000..808a95e7c34e --- /dev/null +++ b/dev-build/automake-wrapper/automake-wrapper-20240607.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Remember to modify LAST_KNOWN_AUTOMAKE_VER 'upstream' on new automake (major) releases! + +MY_P="autotools-wrappers-at-${PV}" + +DESCRIPTION="Wrapper for automake to manage multiple automake versions" +HOMEPAGE="https://gitweb.gentoo.org/proj/autotools-wrappers.git" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/autotools-wrappers.git + https://github.com/gentoo/autotools-wrappers + " + inherit git-r3 +else + SRC_URI="https://gitweb.gentoo.org/proj/autotools-wrappers.git/snapshot/${MY_P}.tar.gz" + S="${WORKDIR}"/${MY_P} + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-2" +SLOT="0" + +src_prepare() { + default + + # usr/bin/aclocal: bad substitution -> /bin/sh != POSIX shell + if use prefix ; then + sed -i -e '1c\#!'"${EPREFIX}"'/bin/sh' am-wrapper.sh || die + fi +} + +src_install() { + exeinto /usr/$(get_libdir)/misc + doexe am-wrapper.sh + + local x= + for x in automake aclocal ; do + dosym -r /usr/$(get_libdir)/misc/am-wrapper.sh /usr/bin/${x} + done + + keepdir /usr/share/aclocal +} diff --git a/dev-build/automake-wrapper/automake-wrapper-20250528.ebuild b/dev-build/automake-wrapper/automake-wrapper-20250528.ebuild new file mode 100644 index 000000000000..808a95e7c34e --- /dev/null +++ b/dev-build/automake-wrapper/automake-wrapper-20250528.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Remember to modify LAST_KNOWN_AUTOMAKE_VER 'upstream' on new automake (major) releases! + +MY_P="autotools-wrappers-at-${PV}" + +DESCRIPTION="Wrapper for automake to manage multiple automake versions" +HOMEPAGE="https://gitweb.gentoo.org/proj/autotools-wrappers.git" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/autotools-wrappers.git + https://github.com/gentoo/autotools-wrappers + " + inherit git-r3 +else + SRC_URI="https://gitweb.gentoo.org/proj/autotools-wrappers.git/snapshot/${MY_P}.tar.gz" + S="${WORKDIR}"/${MY_P} + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-2" +SLOT="0" + +src_prepare() { + default + + # usr/bin/aclocal: bad substitution -> /bin/sh != POSIX shell + if use prefix ; then + sed -i -e '1c\#!'"${EPREFIX}"'/bin/sh' am-wrapper.sh || die + fi +} + +src_install() { + exeinto /usr/$(get_libdir)/misc + doexe am-wrapper.sh + + local x= + for x in automake aclocal ; do + dosym -r /usr/$(get_libdir)/misc/am-wrapper.sh /usr/bin/${x} + done + + keepdir /usr/share/aclocal +} diff --git a/dev-build/automake-wrapper/automake-wrapper-99999999.ebuild b/dev-build/automake-wrapper/automake-wrapper-99999999.ebuild new file mode 100644 index 000000000000..c965d04d8ff0 --- /dev/null +++ b/dev-build/automake-wrapper/automake-wrapper-99999999.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Remember to modify LAST_KNOWN_AUTOMAKE_VER 'upstream' on new automake (major) releases! + +MY_P="autotools-wrappers-at-${PV}" + +DESCRIPTION="Wrapper for automake to manage multiple automake versions" +HOMEPAGE="https://gitweb.gentoo.org/proj/autotools-wrappers.git" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/autotools-wrappers.git + https://github.com/gentoo/autotools-wrappers + " + inherit git-r3 +else + SRC_URI="https://gitweb.gentoo.org/proj/autotools-wrappers.git/snapshot/${MY_P}.tar.gz" + S="${WORKDIR}"/${MY_P} + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-2" +SLOT="0" + +src_prepare() { + default + + # usr/bin/aclocal: bad substitution -> /bin/sh != POSIX shell + if use prefix ; then + sed -i -e '1c\#!'"${EPREFIX}"'/bin/sh' am-wrapper.sh || die + fi +} + +src_install() { + exeinto /usr/$(get_libdir)/misc + doexe am-wrapper.sh + + local x= + for x in automake aclocal ; do + dosym -r /usr/$(get_libdir)/misc/am-wrapper.sh /usr/bin/${x} + done + + keepdir /usr/share/aclocal +} diff --git a/dev-build/automake-wrapper/metadata.xml b/dev-build/automake-wrapper/metadata.xml new file mode 100644 index 000000000000..2847c0b0420f --- /dev/null +++ b/dev-build/automake-wrapper/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <stabilize-allarches/> + <upstream> + <remote-id type="gentoo">proj/autotools-wrappers</remote-id> + <remote-id type="github">gentoo/autotools-wrappers</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/automake/Manifest b/dev-build/automake/Manifest new file mode 100644 index 000000000000..0be9664106fd --- /dev/null +++ b/dev-build/automake/Manifest @@ -0,0 +1,5 @@ +DIST automake-1.11.6.tar.xz 1092908 BLAKE2B 17254d81d6920c32aa877b6c892025de8e4060b8bcbe50fff841ada513dd462ddde8fc6838b4976098a812f8fda047e7186cb62cea8175df615dde75a9959144 SHA512 6e4cdf69f07734954f770fd4a7211a8c9dc69fe25a7746bd3c1e01d3139c94cab2900399e87371548833e99687e0d2b59c5e746ab2fdfbc7d47f2c1d439137ba +DIST automake-1.17.tar.xz 1652632 BLAKE2B 53c24c138faf3d2be4e30ababcccd4d157c03e815fc4b7f3e3063b6648cf254dfa63afe6e3285b21309dbf260335c3e67991db3825e7532b158b25ccaead83f5 SHA512 46aba1c9d64a6368b326020803a2999831c1deaf31eaa1c1dfdcfa5138a7f755643294e82a08b6daab3983b31eee725bdb7b9edc4e9a558374c7d1f1b8e854a7 +DIST automake-1.17.tar.xz.sig 833 BLAKE2B 4564c7189360c61bde7e16a7c3a52b86084fb16b7f4625969fc588a6aa0da687c7b27acf7247822ec0e09e59336acf0ef69784032f255190a070081f6d9da5cc SHA512 180dde452ec097a9267c334044a9ec16bb65cc6ccbc000b7eca0af81ed7ece6f4ce6f6c2be8a2cabca9d48fd46085c81f0ee5d020967104bc25f37f52927829a +DIST automake-1.18.1.tar.xz 1652392 BLAKE2B 4461062a4d596dd87caec7d388449f5f8fe7a4faede8fd0d77d1fb3bb5d23caabb3b715fbb9f29f33326bec527f3d8da6251d9282d4007cef9af146d28fe96cf SHA512 8baa16831416a953a743f4e3c0f55cea5ebefe0f5a7a0e390581981d4461d02dc9038415124e974b2ec390c40daaa241802cd7d42c6fafb793f87cf355db2a61 +DIST automake-1.18.1.tar.xz.sig 488 BLAKE2B c8efc6847f83d3c1565783ce9d1c22924ca5e409894f7d9f28b2b492b3c2cb6e937fa85f6c36a67fd484fffd0b89cdae0a09239ab71e6da8d01015528a78c9ed SHA512 5a1f0e89a8f3826c766aa98617765f4a576dc278abb7a0a4c0fa04d27d15bf670b79853642914db58731eb4dc737f0b9ad65ba9a07b7bb227e763e90e2e54349 diff --git a/dev-build/automake/automake-1.11.6-r5.ebuild b/dev-build/automake/automake-1.11.6-r5.ebuild new file mode 100644 index 000000000000..01ed2336b210 --- /dev/null +++ b/dev-build/automake/automake-1.11.6-r5.ebuild @@ -0,0 +1,97 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DESCRIPTION="Used to generate Makefile.in from Makefile.am" +HOMEPAGE="https://www.gnu.org/software/automake/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" + +LICENSE="GPL-2+ FSFAP" +# Use Gentoo versioning for slotting. +SLOT="${PV:0:4}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" +IUSE="test" +RESTRICT="test !test? ( test )" + +RDEPEND=" + >=dev-lang/perl-5.6 + >=dev-build/automake-wrapper-10 + >=dev-build/autoconf-2.69:* + sys-devel/gnuconfig +" +DEPEND=" + ${RDEPEND} + sys-apps/help2man +" +BDEPEND=" + app-arch/gzip + test? ( dev-util/dejagnu ) +" + +PATCHES=( + "${FILESDIR}"/${P}-perl-5.16.patch #424453 + "${FILESDIR}"/${P}-install-sh-avoid-low-risk-race-in-tmp.patch + "${FILESDIR}"/${P}-perl-escape-curly-bracket-r1.patch +) + +src_prepare() { + default + export WANT_AUTOCONF=2.5 + export HELP2MAN=true + sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die + export TZ="UTC" #589138 +} + +src_compile() { + # Also used in install. + MY_INFODIR="${EPREFIX}/usr/share/automake-${PV}/info" + econf --infodir="${MY_INFODIR}" + + local x + for x in aclocal automake; do + help2man "perl -Ilib ${x}" > doc/${x}-${SLOT}.1 + done +} + +src_install() { + default + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + rm \ + "${ED}"/usr/bin/{aclocal,automake} \ + "${ED}"/usr/share/man/man1/{aclocal,automake}.1 || die + + # remove all config.guess and config.sub files replacing them + # w/a symlink to a specific gnuconfig version + local x + for x in guess sub ; do + dosym ../gnuconfig/config.${x} \ + /usr/share/${PN}-${SLOT}/config.${x} + done + + # Avoid QA message about pre-compressed file in docs + local tarfile="${ED}/usr/share/doc/${PF}/amhello-1.0.tar.gz" + if [[ -f "${tarfile}" ]] ; then + gunzip "${tarfile}" || die + fi + + pushd "${D}/${MY_INFODIR}" >/dev/null || die + for f in *.info*; do + # Install convenience aliases for versioned Automake pages. + ln -s "$f" "${f/./-${PV}.}" || die + done + popd >/dev/null || die + + local major="$(ver_cut 1)" + local minor="$(ver_cut 2)" + local idx="$((99999-(major*1000+minor)))" + newenvd - "06automake${idx}" <<-EOF + INFOPATH="${MY_INFODIR}" + EOF + + docompress "${MY_INFODIR}" +} diff --git a/dev-build/automake/automake-1.17-r3.ebuild b/dev-build/automake/automake-1.17-r3.ebuild new file mode 100644 index 000000000000..c8f541bb6d49 --- /dev/null +++ b/dev-build/automake/automake-1.17-r3.ebuild @@ -0,0 +1,157 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Bumping notes: +# * Remember to modify LAST_KNOWN_AUTOMAKE_VER 'upstream' in dev-build/automake-wrapper +# on new automake (major) releases, as well as the dependency in RDEPEND below too. +# * Update _WANT_AUTOMAKE and _automake_atom case statement in autotools.eclass. + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit python-any-r1 verify-sig + +MANGLED_SLOT=${PV:0:4} + +if [[ ${PV} == 9999 ]] ; then + EGIT_MIN_CLONE_TYPE=single + EGIT_REPO_URI="https://git.savannah.gnu.org/r/${PN}.git" + inherit git-r3 +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jimmeyering.asc + if [[ $(ver_cut 3) -ge 90 ]] ; then + MANGLED_SLOT=$(ver_cut 1).$(($(ver_cut 2) + 1)) + SRC_URI=" + https://alpha.gnu.org/pub/gnu/${PN}/${P}.tar.xz + verify-sig? ( + https://alpha.gnu.org/pub/gnu/${PN}/${P}.tar.xz.sig + ) + " + else + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.xz + verify-sig? ( + mirror://gnu/${PN}/${P}.tar.xz.sig + ) + " + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi +fi + +DESCRIPTION="Used to generate Makefile.in from Makefile.am" +HOMEPAGE="https://www.gnu.org/software/automake/" + +LICENSE="GPL-2+ FSFAP" +# Use Gentoo versioning for slotting. +SLOT="${MANGLED_SLOT}" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-lang/perl-5.6 + >=dev-build/automake-wrapper-20240607 + >=dev-build/autoconf-2.69:* + sys-devel/gnuconfig +" +BDEPEND=" + app-alternatives/gzip + sys-apps/help2man + dev-build/autoconf-wrapper + dev-build/autoconf + test? ( + ${PYTHON_DEPS} + dev-util/dejagnu + sys-devel/bison + sys-devel/flex + ) + verify-sig? ( sec-keys/openpgp-keys-jimmeyering ) +" + +PATCHES=( + "${FILESDIR}"/${P}-perl-5.41.patch + "${FILESDIR}"/${P}-perl-no-werror.patch +) + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_prepare() { + default + + export WANT_AUTOCONF=2.5 + # Don't try wrapping the autotools - this thing runs as it tends + # to be a bit esoteric, and the script does `set -e` itself. + ./bootstrap || die + sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die + + # bug #628912 + if ! has_version -b sys-apps/texinfo ; then + touch doc/{stamp-vti,version.texi,automake.info} || die + fi +} + +src_configure() { + # Also used in install. + infopath="${EPREFIX}/usr/share/automake-${PV}/info" + econf --infodir="${infopath}" +} + +src_test() { + # Fails with byacc/flex + emake YACC="bison -y" LEX="flex" check +} + +src_install() { + default + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + rm "${ED}"/usr/share/aclocal/README || die + rmdir "${ED}"/usr/share/aclocal || die + rm \ + "${ED}"/usr/bin/{aclocal,automake} \ + "${ED}"/usr/share/man/man1/{aclocal,automake}.1 || die + + # remove all config.guess and config.sub files replacing them + # w/a symlink to a specific gnuconfig version + local x + for x in guess sub ; do + dosym ../gnuconfig/config.${x} \ + /usr/share/${PN}-${SLOT}/config.${x} + done + + # Avoid QA message about pre-compressed file in docs + local tarfile="${ED}/usr/share/doc/${PF}/amhello-1.0.tar.gz" + if [[ -f "${tarfile}" ]] ; then + gunzip "${tarfile}" || die + fi + + pushd "${D}/${infopath}" >/dev/null || die + for f in *.info*; do + # Install convenience aliases for versioned Automake pages. + ln -s "$f" "${f/./-${PV}.}" || die + done + popd >/dev/null || die + + if [[ ${PV} == 9999 ]]; then + local major="89" + local minor="999" + else + local major="$(ver_cut 1)" + if [[ $(ver_cut 3) -ge 90 ]] ; then + local minor=$(($(ver_cut 2) + 1)) + else + local minor="$(ver_cut 2)" + fi + fi + local idx="$((99999-(major*1000+minor)))" + newenvd - "06automake${idx}" <<-EOF + INFOPATH="${infopath}" + EOF + + docompress "${infopath}" +} diff --git a/dev-build/automake/automake-1.18.1-r1.ebuild b/dev-build/automake/automake-1.18.1-r1.ebuild new file mode 100644 index 000000000000..190934a67fb8 --- /dev/null +++ b/dev-build/automake/automake-1.18.1-r1.ebuild @@ -0,0 +1,152 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Bumping notes: +# * Remember to modify LAST_KNOWN_AUTOMAKE_VER 'upstream' in dev-build/automake-wrapper +# on new automake (major) releases, as well as the dependency in RDEPEND below too. +# * Update _WANT_AUTOMAKE and _automake_atom case statement in autotools.eclass. + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit python-any-r1 verify-sig + +MANGLED_SLOT=${PV:0:4} + +if [[ ${PV} == 9999 ]] ; then + EGIT_MIN_CLONE_TYPE=single + EGIT_REPO_URI="https://git.savannah.gnu.org/r/${PN}.git" + inherit git-r3 +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/karlberry.asc + if [[ $(ver_cut 3) -ge 90 ]] ; then + MANGLED_SLOT=$(ver_cut 1).$(($(ver_cut 2) + 1)) + SRC_URI=" + https://alpha.gnu.org/pub/gnu/${PN}/${P}.tar.xz + verify-sig? ( + https://alpha.gnu.org/pub/gnu/${PN}/${P}.tar.xz.sig + ) + " + else + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.xz + verify-sig? ( + mirror://gnu/${PN}/${P}.tar.xz.sig + ) + " + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi +fi + +DESCRIPTION="Used to generate Makefile.in from Makefile.am" +HOMEPAGE="https://www.gnu.org/software/automake/" + +LICENSE="GPL-2+ FSFAP" +# Use Gentoo versioning for slotting. +SLOT="${MANGLED_SLOT}" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-lang/perl-5.6 + >=dev-build/automake-wrapper-20250528 + >=dev-build/autoconf-2.69:* + sys-devel/gnuconfig +" +BDEPEND=" + app-alternatives/gzip + sys-apps/help2man + dev-build/autoconf-wrapper + dev-build/autoconf + test? ( + ${PYTHON_DEPS} + dev-util/dejagnu + sys-devel/bison + sys-devel/flex + ) + verify-sig? ( sec-keys/openpgp-keys-karlberry ) +" + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_prepare() { + default + + export WANT_AUTOCONF=2.5 + # Don't try wrapping the autotools - this thing runs as it tends + # to be a bit esoteric, and the script does `set -e` itself. + ./bootstrap || die + sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die + + # bug #628912 + if ! has_version -b sys-apps/texinfo ; then + touch doc/{stamp-vti,version.texi,automake.info} || die + fi +} + +src_configure() { + # Also used in install. + infopath="${EPREFIX}/usr/share/automake-${PV}/info" + econf --infodir="${infopath}" +} + +src_test() { + # Fails with byacc/flex + emake YACC="bison -y" LEX="flex" check +} + +src_install() { + default + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + rm "${ED}"/usr/share/aclocal/README || die + rmdir "${ED}"/usr/share/aclocal || die + rm \ + "${ED}"/usr/bin/{aclocal,automake} \ + "${ED}"/usr/share/man/man1/{aclocal,automake}.1 || die + + # remove all config.guess and config.sub files replacing them + # w/a symlink to a specific gnuconfig version + local x + for x in guess sub ; do + dosym ../gnuconfig/config.${x} \ + /usr/share/${PN}-${SLOT}/config.${x} + done + + # Avoid QA message about pre-compressed file in docs + local tarfile="${ED}/usr/share/doc/${PF}/amhello-1.0.tar.gz" + if [[ -f "${tarfile}" ]] ; then + gunzip "${tarfile}" || die + fi + + pushd "${D}/${infopath}" >/dev/null || die + for f in *.info*; do + # Install convenience aliases for versioned Automake pages. + ln -s "$f" "${f/./-${PV}.}" || die + done + popd >/dev/null || die + + if [[ ${PV} == 9999 ]]; then + local major="89" + local minor="999" + else + local major="$(ver_cut 1)" + if [[ $(ver_cut 3) -ge 90 ]] ; then + local minor=$(($(ver_cut 2) + 1)) + else + local minor="$(ver_cut 2)" + fi + fi + local idx="$((99999-(major*1000+minor)))" + newenvd - "06automake${idx}" <<-EOF + INFOPATH="${infopath}" + EOF + + docompress "${infopath}" +} diff --git a/dev-build/automake/automake-9999.ebuild b/dev-build/automake/automake-9999.ebuild new file mode 100644 index 000000000000..1129bacf1eaf --- /dev/null +++ b/dev-build/automake/automake-9999.ebuild @@ -0,0 +1,152 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Bumping notes: +# * Remember to modify LAST_KNOWN_AUTOMAKE_VER 'upstream' in dev-build/automake-wrapper +# on new automake (major) releases, as well as the dependency in RDEPEND below too. +# * Update _WANT_AUTOMAKE and _automake_atom case statement in autotools.eclass. + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit python-any-r1 verify-sig + +MANGLED_SLOT=${PV:0:4} + +if [[ ${PV} == 9999 ]] ; then + EGIT_MIN_CLONE_TYPE=single + EGIT_REPO_URI="https://git.savannah.gnu.org/r/${PN}.git" + inherit git-r3 +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/karlberry.asc + if [[ $(ver_cut 3) -ge 90 ]] ; then + MANGLED_SLOT=$(ver_cut 1).$(($(ver_cut 2) + 1)) + SRC_URI=" + https://alpha.gnu.org/pub/gnu/${PN}/${P}.tar.xz + verify-sig? ( + https://alpha.gnu.org/pub/gnu/${PN}/${P}.tar.xz.sig + ) + " + else + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.xz + verify-sig? ( + mirror://gnu/${PN}/${P}.tar.xz.sig + ) + " + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi +fi + +DESCRIPTION="Used to generate Makefile.in from Makefile.am" +HOMEPAGE="https://www.gnu.org/software/automake/" + +LICENSE="GPL-2+ FSFAP" +# Use Gentoo versioning for slotting. +SLOT="${MANGLED_SLOT}" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-lang/perl-5.6 + >=dev-build/automake-wrapper-20250528 + >=dev-build/autoconf-2.69:* + sys-devel/gnuconfig +" +BDEPEND=" + app-alternatives/gzip + sys-apps/help2man + dev-build/autoconf-wrapper + dev-build/autoconf + test? ( + ${PYTHON_DEPS} + dev-util/dejagnu + sys-devel/bison + sys-devel/flex + ) + verify-sig? ( sec-keys/openpgp-keys-karlberry ) +" + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_prepare() { + default + + export WANT_AUTOCONF=2.5 + # Don't try wrapping the autotools - this thing runs as it tends + # to be a bit esoteric, and the script does `set -e` itself. + ./bootstrap || die + sed -i -e "/APIVERSION=/s:=.*:=${SLOT}:" configure || die + + # bug #628912 + if ! has_version -b sys-apps/texinfo ; then + touch doc/{stamp-vti,version.texi,automake.info} || die + fi +} + +src_configure() { + # Also used in install. + infopath="${EPREFIX}/usr/share/automake-${PV}/info" + econf --infodir="${infopath}" +} + +src_test() { + # Fails with byacc/flex + emake YACC="bison -y" LEX="flex" check +} + +src_install() { + default + + # dissuade Portage from removing our dir file + touch "${ED}"/usr/share/${P}/info/.keepinfodir || die + docompress -x /usr/share/${P}/info/dir + + rm "${ED}"/usr/share/aclocal/README || die + rmdir "${ED}"/usr/share/aclocal || die + rm \ + "${ED}"/usr/bin/{aclocal,automake} \ + "${ED}"/usr/share/man/man1/{aclocal,automake}.1 || die + + # remove all config.guess and config.sub files replacing them + # w/a symlink to a specific gnuconfig version + local x + for x in guess sub ; do + dosym ../gnuconfig/config.${x} \ + /usr/share/${PN}-${SLOT}/config.${x} + done + + # Avoid QA message about pre-compressed file in docs + local tarfile="${ED}/usr/share/doc/${PF}/amhello-1.0.tar.gz" + if [[ -f "${tarfile}" ]] ; then + gunzip "${tarfile}" || die + fi + + pushd "${D}/${infopath}" >/dev/null || die + for f in *.info*; do + # Install convenience aliases for versioned Automake pages. + ln -s "$f" "${f/./-${PV}.}" || die + done + popd >/dev/null || die + + if [[ ${PV} == 9999 ]]; then + local major="89" + local minor="999" + else + local major="$(ver_cut 1)" + if [[ $(ver_cut 3) -ge 90 ]] ; then + local minor=$(($(ver_cut 2) + 1)) + else + local minor="$(ver_cut 2)" + fi + fi + local idx="$((99999-(major*1000+minor)))" + newenvd - "06automake${idx}" <<-EOF + INFOPATH="${infopath}" + EOF + + docompress "${infopath}" +} diff --git a/dev-build/automake/files/automake-1.11.6-install-sh-avoid-low-risk-race-in-tmp.patch b/dev-build/automake/files/automake-1.11.6-install-sh-avoid-low-risk-race-in-tmp.patch new file mode 100644 index 000000000000..c435b9004f8d --- /dev/null +++ b/dev-build/automake/files/automake-1.11.6-install-sh-avoid-low-risk-race-in-tmp.patch @@ -0,0 +1,77 @@ +From: Pavel Raiskup <praiskup@redhat.com> +Date: Sat, 15 Aug 2015 04:40:57 -0400 +Subject: install-sh: avoid (low risk) race in /tmp + +Ensure that nobody can cross privilege boundaries by pre-creating +symlink on '$tmpdir' path. + +Just testing 'mkdir -p' by creating '/tmp/ins$RANDOM-$$/d' is not +safe because '/tmp' directory is usually world-writeable and +'/tmp/ins$RANDOM-$$' content could be pretty easily guessed by +attacker (at least for shells where $RANDOM is not supported). +So, as the first step, create the '/tmp/ins$RANDOM-$$' without -p. +This step would fail early if somebody wanted catch us. + +Note that systems that implement (and have enabled) +fs.protected_symlinks kernel feature are not affected even without +this commit. + +References: +https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=760455 +https://bugzilla.redhat.com/show_bug.cgi?id=1140725 + +* lib/install-sh: Implement safer 'mkdir -p' test by running +'$mkdirprog $mkdir_mode "$tmpdir"' first. +(scriptversion): Bump. + +--- a/lib/install-sh ++++ b/lib/install-sh +@@ -345,34 +345,41 @@ do + # is incompatible with FreeBSD 'install' when (umask & 300) != 0. + ;; + *) ++ # $RANDOM is not portable (e.g. dash); use it when possible to ++ # lower collision chance + tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ +- trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 ++ trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0 + ++ # As "mkdir -p" follows symlinks and we work in /tmp possibly; so ++ # create the $tmpdir first (and fail if unsuccessful) to make sure ++ # that nobody tries to guess the $tmpdir name. + if (umask $mkdir_umask && +- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 ++ $mkdirprog $mkdir_mode "$tmpdir" && ++ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 + then + if test -z "$dir_arg" || { + # Check for POSIX incompatibilities with -m. + # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or + # other-writeable bit of parent directory when it shouldn't. + # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. +- ls_ld_tmpdir=`ls -ld "$tmpdir"` ++ test_tmpdir="$tmpdir/a" ++ ls_ld_tmpdir=`ls -ld "$test_tmpdir"` + case $ls_ld_tmpdir in + d????-?r-*) different_mode=700;; + d????-?--*) different_mode=755;; + *) false;; + esac && +- $mkdirprog -m$different_mode -p -- "$tmpdir" && { +- ls_ld_tmpdir_1=`ls -ld "$tmpdir"` ++ $mkdirprog -m$different_mode -p -- "$test_tmpdir" && { ++ ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"` + test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" + } + } + then posix_mkdir=: + fi +- rmdir "$tmpdir/d" "$tmpdir" ++ rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" + else + # Remove any dirs left behind by ancient mkdir implementations. +- rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null ++ rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null + fi + trap '' 0;; + esac;; diff --git a/dev-build/automake/files/automake-1.11.6-perl-5.16.patch b/dev-build/automake/files/automake-1.11.6-perl-5.16.patch new file mode 100644 index 000000000000..b35fb39a3fed --- /dev/null +++ b/dev-build/automake/files/automake-1.11.6-perl-5.16.patch @@ -0,0 +1,120 @@ +https://bugs.gentoo.org/424453 + +From 6bf58a59a1f3803e57e3f0378aa9344686707b75 Mon Sep 17 00:00:00 2001 +From: Stefano Lattarini <stefano.lattarini@gmail.com> +Date: Mon, 28 May 2012 13:32:03 +0200 +Subject: [PATCH] aclocal: declare function prototypes, do not use '&' in + function calls + +This change will also fix automake bug#11543 (from a report by Matt +Burgess). + +* aclocal.in: Declare prototypes for almost all functions early, before +any actual function definition (but omit the prototype for the dynamically +generated '&search' function). Add prototypes to any function definition. +Remove '&' from function invocations (i.e., simply use "func(ARGS..)" +instead of "&func(ARGS...)"). +* THANKS, NEWS: Update. + +Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com> +--- a/aclocal.in ++++ b/aclocal.in +@@ -152,8 +152,34 @@ my $erase_me; + + ################################################################ + ++# Prototypes for all subroutines. ++ ++sub unlink_tmp (;$); ++sub xmkdir_p ($); ++sub check_acinclude (); ++sub reset_maps (); ++sub install_file ($$); ++sub list_compare (\@\@); ++sub scan_m4_dirs ($@); ++sub scan_m4_files (); ++sub add_macro ($); ++sub scan_configure_dep ($); ++sub add_file ($); ++sub scan_file ($$$); ++sub strip_redundant_includes (%); ++sub trace_used_macros (); ++sub scan_configure (); ++sub write_aclocal ($@); ++sub usage ($); ++sub version (); ++sub handle_acdir_option ($$); ++sub parse_arguments (); ++sub parse_ACLOCAL_PATH (); ++ ++################################################################ ++ + # Erase temporary file ERASE_ME. Handle signals. +-sub unlink_tmp ++sub unlink_tmp (;$) + { + my ($sig) = @_; + +@@ -350,7 +376,7 @@ sub scan_m4_dirs ($@) + next if $file eq 'aclocal.m4'; + + my $fullfile = File::Spec->canonpath ("$m4dir/$file"); +- &scan_file ($type, $fullfile, 'aclocal'); ++ scan_file ($type, $fullfile, 'aclocal'); + } + closedir (DIR); + } +@@ -361,12 +387,12 @@ sub scan_m4_files () + { + # First, scan configure.ac. It may contain macro definitions, + # or may include other files that define macros. +- &scan_file (FT_USER, $configure_ac, 'aclocal'); ++ scan_file (FT_USER, $configure_ac, 'aclocal'); + + # Then, scan acinclude.m4 if it exists. + if (-f 'acinclude.m4') + { +- &scan_file (FT_USER, 'acinclude.m4', 'aclocal'); ++ scan_file (FT_USER, 'acinclude.m4', 'aclocal'); + } + + # Finally, scan all files in our search paths. +@@ -380,7 +406,7 @@ sub scan_m4_files () + my $search = "sub search {\nmy \$found = 0;\n"; + foreach my $key (reverse sort keys %map) + { +- $search .= ('if (/\b\Q' . $key . '\E(?!\w)/) { & add_macro ("' . $key ++ $search .= ('if (/\b\Q' . $key . '\E(?!\w)/) { add_macro ("' . $key + . '"); $found = 1; }' . "\n"); + } + $search .= "return \$found;\n};\n"; +@@ -403,7 +429,7 @@ sub add_macro ($) + + verb "saw macro $macro"; + $macro_seen{$macro} = 1; +- &add_file ($map{$macro}); ++ add_file ($map{$macro}); + } + + # scan_configure_dep ($file) +@@ -465,7 +491,7 @@ sub scan_configure_dep ($) + } + + add_macro ($_) foreach (@rlist); +- &scan_configure_dep ($_) foreach @ilist; ++ scan_configure_dep ($_) foreach @ilist; + } + + # add_file ($FILE) +@@ -931,7 +957,7 @@ EOF + } + + # Print version and exit. +-sub version() ++sub version () + { + print <<EOF; + aclocal (GNU $PACKAGE) $VERSION +-- +2.1.3 + diff --git a/dev-build/automake/files/automake-1.11.6-perl-escape-curly-bracket-r1.patch b/dev-build/automake/files/automake-1.11.6-perl-escape-curly-bracket-r1.patch new file mode 100644 index 000000000000..4bd7ab16fb33 --- /dev/null +++ b/dev-build/automake/files/automake-1.11.6-perl-escape-curly-bracket-r1.patch @@ -0,0 +1,31 @@ +http://debbugs.gnu.org/cgi/bugreport.cgi?bug=21001 + +From 34163794a58b5bd91c5d6bd9adf5437571c7a479 Mon Sep 17 00:00:00 2001 +From: Pavel Raiskup <praiskup@redhat.com> +Date: Tue, 7 Jul 2015 10:54:24 +0200 +Subject: [PATCH] bin/automake: escape '{' in regexp pattern + +Based on perlre(1) documentation: +.. in Perl v5.26, literal uses of a curly bracket will be required +to be escaped, say by preceding them with a backslash ("\{" ) or +enclosing them within square brackets ("[{]") .. + +References: +https://bugzilla.redhat.com/1239379 + +* bin/automake.in (substitute_ac_subst_variables): Escape the +occurrence of '{' character. +--- a/automake.in ++++ b/automake.in +@@ -3898,7 +3898,7 @@ sub substitute_ac_subst_variables_worker + sub substitute_ac_subst_variables ($) + { + my ($text) = @_; +- $text =~ s/\${([^ \t=:+{}]+)}/&substitute_ac_subst_variables_worker ($1)/ge; ++ $text =~ s/\$\{([^ \t=:+{}]+)}/&substitute_ac_subst_variables_worker ($1)/ge; + return $text; + } + +-- +2.1.0 + diff --git a/dev-build/automake/files/automake-1.17-perl-5.41.patch b/dev-build/automake/files/automake-1.17-perl-5.41.patch new file mode 100644 index 000000000000..425ce723e14d --- /dev/null +++ b/dev-build/automake/files/automake-1.17-perl-5.41.patch @@ -0,0 +1,25 @@ +https://git.savannah.gnu.org/cgit/automake.git/commit/?id=b5403ee7a035872a21135c2ee4871a6c284c91dd + +From b5403ee7a035872a21135c2ee4871a6c284c91dd Mon Sep 17 00:00:00 2001 +From: Collin Funk <collin.funk1@gmail.com> +Date: Thu, 30 Jan 2025 15:34:52 -0800 +Subject: automake: avoid precedence error when using Perl 5.41+. + +Reported by Igor Todorovski <itodorov@ca.ibm.com> in +<https://lists.gnu.org/archive/html/automake/2025-01/msg00000.html>. + +* bin/automake.in (transform): Parentheses the '!' operators so +Perl 5.41.8 doesn't warn about "possible precedence problem". +--- a/bin/automake.in ++++ b/bin/automake.in +@@ -6871,7 +6871,7 @@ sub transform ($\%) + { + my $neg = ($1 eq '!') ? 1 : 0; + my $val = transform_token ($token, %$transform, $2); +- return (!!$val == $neg) ? '##%' : ''; ++ return ((!!$val) == $neg) ? '##%' : ''; + } + else + { +-- +cgit v1.1 diff --git a/dev-build/automake/files/automake-1.17-perl-no-werror.patch b/dev-build/automake/files/automake-1.17-perl-no-werror.patch new file mode 100644 index 000000000000..ff0fb790144f --- /dev/null +++ b/dev-build/automake/files/automake-1.17-perl-no-werror.patch @@ -0,0 +1,460 @@ +https://git.savannah.gnu.org/cgit/automake.git/commit/?id=fc1c3f658517be4fe70bdf33bc6cd594d3faa0b2 + +From fc1c3f658517be4fe70bdf33bc6cd594d3faa0b2 Mon Sep 17 00:00:00 2001 +From: Karl Berry <karl@freefriends.org> +Date: Fri, 31 Jan 2025 09:20:47 -0800 +Subject: automake: just use warnings, with no => FATAL. + +Per Perl recommendation: + https://perldoc.perl.org/warnings#Fatal-Warnings +Suggested by Collin Funk: + https://lists.gnu.org/archive/html/automake/2025-01/msg00003.html +And in the Perl discussion: + https://github.com/Perl/perl5/issues/22954#issuecomment-2622966302 + +* bin/aclocal.in: just use warnings, not making them fatal. +* bin/automake.in: +* contrib/tap-driver.pl: +* gen-testsuite-part: +* lib/Automake/ChannelDefs.pm: +* lib/Automake/Channels.pm: +* lib/Automake/Condition.pm: +* lib/Automake/Config.in: +* lib/Automake/Configure_ac.pm: +* lib/Automake/DisjConditions.pm: +* lib/Automake/FileUtils.pm: +* lib/Automake/General.pm: +* lib/Automake/Getopt.pm: +* lib/Automake/Item.pm: +* lib/Automake/ItemDef.pm: +* lib/Automake/Language.pm: +* lib/Automake/Location.pm: +* lib/Automake/Options.pm: +* lib/Automake/Rule.pm: +* lib/Automake/RuleDef.pm: +* lib/Automake/VarDef.pm: +* lib/Automake/Variable.pm: +* lib/Automake/Version.pm: +* lib/Automake/Wrap.pm: +* lib/Automake/XFile.pm: +* t/ax/deltree.pl: +* t/ax/extract-testsuite-summary.pl: +* t/check-fd-redirect.sh: +* t/tap-signal.tap: +* t/tests-environment-fd-redirect.sh: +* t/testsuite-summary-count-many.sh: +--- a/bin/aclocal.in ++++ b/bin/aclocal.in +@@ -19,9 +19,7 @@ + # Written by Tom Tromey <tromey@redhat.com>, and + # Alexandre Duret-Lutz <adl@gnu.org>. + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; ++use 5.006; use strict; use warnings; + + BEGIN + { +--- a/bin/automake.in ++++ b/bin/automake.in +@@ -22,9 +22,7 @@ + + package Automake; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; ++use 5.006; use strict; use warnings; + + BEGIN + { +--- a/contrib/tap-driver.pl ++++ b/contrib/tap-driver.pl +@@ -27,12 +27,12 @@ + # Imports, static data, and setup. # + # ---------------------------------- # + +-use warnings FATAL => 'all'; +-use strict; ++use strict; use warnings; + use Getopt::Long (); ++ + use TAP::Parser; + +-my $VERSION = '2013-12-24.15'; # UTC ++my $VERSION = '2024-12-03.03'; # UTC + + my $ME = "tap-driver.pl"; + +--- a/gen-testsuite-part ++++ b/gen-testsuite-part +@@ -20,8 +20,8 @@ + + #-------------------------------------------------------------------------- + +-use warnings FATAL => "all"; + use strict; ++use warnings; + use File::Basename (); + use constant TRUE => 1; + use constant FALSE => 0; +--- a/lib/Automake/ChannelDefs.pm ++++ b/lib/Automake/ChannelDefs.pm +@@ -49,10 +49,7 @@ shorthand function to output on specific channels. + + =cut + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; +- ++use 5.006; use strict; use warnings; + use Exporter; + + use Automake::Channels; +--- a/lib/Automake/Channels.pm ++++ b/lib/Automake/Channels.pm +@@ -66,10 +66,7 @@ etc.) that can also be overridden on a per-message basis. + + =cut + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; +- ++use 5.006; use strict; use warnings; + use Carp; + use Exporter; + use File::Basename; +--- a/lib/Automake/Condition.pm ++++ b/lib/Automake/Condition.pm +@@ -15,10 +15,7 @@ + + package Automake::Condition; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; +- ++use 5.006; use strict; use warnings; + use Carp; + use Exporter; + +--- a/lib/Automake/Config.in ++++ b/lib/Automake/Config.in +@@ -17,9 +17,7 @@ + + package Automake::Config; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; ++use 5.006; use strict; use warnings; + + use Exporter; + +--- a/lib/Automake/Configure_ac.pm ++++ b/lib/Automake/Configure_ac.pm +@@ -20,9 +20,7 @@ + + package Automake::Configure_ac; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; ++use 5.006; use strict; use warnings; + + use Exporter; + +--- a/lib/Automake/DisjConditions.pm ++++ b/lib/Automake/DisjConditions.pm +@@ -15,9 +15,7 @@ + + package Automake::DisjConditions; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; ++use 5.006; use strict; use warnings; + + use Carp; + use Automake::Condition qw (TRUE FALSE); +--- a/lib/Automake/FileUtils.pm ++++ b/lib/Automake/FileUtils.pm +@@ -34,9 +34,7 @@ This perl module provides various general purpose file handling functions. + + =cut + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; ++use 5.006; use strict; use warnings; + + BEGIN + { +--- a/lib/Automake/General.pm ++++ b/lib/Automake/General.pm +@@ -15,9 +15,7 @@ + + package Automake::General; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; ++use 5.006; use strict; use warnings; + + use Exporter; + use File::Basename; +--- a/lib/Automake/Getopt.pm ++++ b/lib/Automake/Getopt.pm +@@ -35,9 +35,7 @@ line options in conformance to the GNU Coding standards. + + =cut + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; ++use 5.006; use strict; use warnings; + + use Carp qw (confess croak); + use Exporter (); +--- a/lib/Automake/Item.pm ++++ b/lib/Automake/Item.pm +@@ -15,9 +15,7 @@ + + package Automake::Item; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; ++use 5.006; use strict; use warnings; + + use Carp; + +--- a/lib/Automake/ItemDef.pm ++++ b/lib/Automake/ItemDef.pm +@@ -15,10 +15,7 @@ + + package Automake::ItemDef; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; +- ++use 5.006; use strict; use warnings; + use Carp; + + =head1 NAME +--- a/lib/Automake/Language.pm ++++ b/lib/Automake/Language.pm +@@ -15,9 +15,7 @@ + + package Automake::Language; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; ++use 5.006; use strict; use warnings; + + use Class::Struct (); + +--- a/lib/Automake/Location.pm ++++ b/lib/Automake/Location.pm +@@ -15,9 +15,7 @@ + + package Automake::Location; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; ++use 5.006; use strict; use warnings; + + =head1 NAME + +--- a/lib/Automake/Options.pm ++++ b/lib/Automake/Options.pm +@@ -15,10 +15,7 @@ + + package Automake::Options; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; +- ++use 5.006; use strict; use warnings; + use Exporter; + + use Automake::Config; +--- a/lib/Automake/Rule.pm ++++ b/lib/Automake/Rule.pm +@@ -15,10 +15,7 @@ + + package Automake::Rule; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; +- ++use 5.006; use strict; use warnings; + use Carp; + use Exporter; + +--- a/lib/Automake/RuleDef.pm ++++ b/lib/Automake/RuleDef.pm +@@ -15,10 +15,7 @@ + + package Automake::RuleDef; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; +- ++use 5.006; use strict; use warnings; + use Carp; + use Exporter; + +--- a/lib/Automake/VarDef.pm ++++ b/lib/Automake/VarDef.pm +@@ -15,10 +15,7 @@ + + package Automake::VarDef; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; +- ++use 5.006; use strict; use warnings; + use Carp; + use Exporter; + +--- a/lib/Automake/Variable.pm ++++ b/lib/Automake/Variable.pm +@@ -15,10 +15,7 @@ + + package Automake::Variable; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; +- ++use 5.006; use strict; use warnings; + use Carp; + use Exporter; + +--- a/lib/Automake/Version.pm ++++ b/lib/Automake/Version.pm +@@ -15,9 +15,7 @@ + + package Automake::Version; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; ++use 5.006; use strict; use warnings; + + use Automake::ChannelDefs; + +--- a/lib/Automake/Wrap.pm ++++ b/lib/Automake/Wrap.pm +@@ -15,10 +15,7 @@ + + package Automake::Wrap; + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; +- ++use 5.006; use strict; use warnings; + use Exporter; + + our @ISA = qw (Exporter); +--- a/lib/Automake/XFile.pm ++++ b/lib/Automake/XFile.pm +@@ -69,10 +69,7 @@ and C<getlines> methods to translate C<\r\n> to C<\n>. + + =cut + +-use 5.006; +-use strict; +-use warnings FATAL => 'all'; +- ++use 5.006; use strict; use warnings; + use Errno; + use Exporter; + use IO::File; +--- a/t/ax/deltree.pl ++++ b/t/ax/deltree.pl +@@ -17,8 +17,7 @@ + # You should have received a copy of the GNU General Public License + # along with this program. If not, see <https://www.gnu.org/licenses/>. + +-use strict; +-use warnings FATAL => 'all'; ++use strict; use warnings; + use File::Path qw/rmtree/; + + my $exit_status = 0; +--- a/t/ax/extract-testsuite-summary.pl ++++ b/t/ax/extract-testsuite-summary.pl +@@ -17,8 +17,7 @@ + # You should have received a copy of the GNU General Public License + # along with this program. If not, see <https://www.gnu.org/licenses/>. + +-use warnings FATAL => 'all'; +-use strict; ++use strict; use warnings; + + my $br = '=' x 76; + my @sections = (''); +--- a/t/check-fd-redirect.sh ++++ b/t/check-fd-redirect.sh +@@ -81,8 +81,7 @@ do_check + + echo "#! $PERL -w" > foo.test + cat >> foo.test <<'END' +-use warnings FATAL => 'all'; +-use strict; ++use strict; use warnings; + + open (FD3, "<&=3") or die "opening FD3: $!"; + open (FD4, ">&=4") or die "opening FD4: $!"; +--- a/t/tap-signal.tap ++++ b/t/tap-signal.tap +@@ -52,7 +52,7 @@ for sig in $all_signals; do + # We need autoflush to avoid losing output, which could cause spurious + # "no test plan seen" in the TAP driver. + BEGIN { $| = 1 } +- use warnings FATAL => "all"; ++ use warnings; + print "1..1\\n"; + print "ok 1\\n"; + kill $sig, \$\$; +--- a/t/tests-environment-fd-redirect.sh ++++ b/t/tests-environment-fd-redirect.sh +@@ -44,8 +44,8 @@ END + + echo "#! $PERL -w" > bar.test + cat >>bar.test <<'END' +-use warnings FATAL => 'all'; + use strict; ++use warnings; + open(FD8, ">&=8") or die "$!"; + open(FD9, ">&=9") or die "$!"; + print FD8 " $0: 8888\n"; +--- a/t/testsuite-summary-count-many.sh ++++ b/t/testsuite-summary-count-many.sh +@@ -52,8 +52,8 @@ END + chmod a+x all.test + + $PERL -w -e ' +- use warnings FATAL => "all"; + use strict; ++ use warnings; + + my $base = 1000; + my %count = ( +-- +cgit v1.1 + + diff --git a/dev-build/automake/metadata.xml b/dev-build/automake/metadata.xml new file mode 100644 index 000000000000..6e5b45d8c011 --- /dev/null +++ b/dev-build/automake/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <stabilize-allarches/> + <upstream> + <remote-id type="cpe">cpe:/a:gnu:automake</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/b2/Manifest b/dev-build/b2/Manifest new file mode 100644 index 000000000000..15ca52d2d1d7 --- /dev/null +++ b/dev-build/b2/Manifest @@ -0,0 +1 @@ +DIST b2-5.4.2.tar.gz 1201271 BLAKE2B 573a94ce0300fee53a161e1ba7838890e0a8ea074b568eb2df479f70639d05e28b6d2b4a301d82dddc58f26a83f8d2c41cac41272fe689d456007acb49d1ca6f SHA512 fd68cedc9936a463525df47b87b10c8fb72d9eec8355fd1b460ddf4a9c25369beb282a6a8229d54a01d56a82fcc5224af837fc8bc58042af02e688e9c0d4f4c6 diff --git a/dev-build/b2/b2-5.4.2.ebuild b/dev-build/b2/b2-5.4.2.ebuild new file mode 100644 index 000000000000..da63bf88a9ed --- /dev/null +++ b/dev-build/b2/b2-5.4.2.ebuild @@ -0,0 +1,72 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit edo flag-o-matic toolchain-funcs + +MY_PV="$(ver_rs 1- _)" + +DESCRIPTION="A system for large project software construction, simple to use and powerful" +HOMEPAGE="https://www.bfgroup.xyz/b2/" +SRC_URI="https://github.com/bfgroup/b2/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${P}/src" + +LICENSE="Boost-1.0" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="examples" +RESTRICT="test" + +RDEPEND="!dev-util/boost-build" + +PATCHES=( + "${FILESDIR}"/${PN}-4.9.2-disable_python_rpath.patch + "${FILESDIR}"/${PN}-4.9.2-darwin-gentoo-toolchain.patch + "${FILESDIR}"/${PN}-4.9.2-add-none-feature-options.patch + "${FILESDIR}"/${PN}-5.4.2-no-implicit-march-flags.patch +) + +src_configure() { + # need to enable LFS explicitly for 64-bit offsets on 32-bit hosts (#761100) + append-lfs-flags +} + +src_compile() { + cd engine || die + + # don't call windres since it leads to broken relocations + export B2_DONT_EMBED_MANIFEST=1 + + # upstream doesn't want separate flags for CPPFLAGS/LDFLAGS + # https://github.com/bfgroup/b2/pull/187#issuecomment-1335688424 + edo ${CONFIG_SHELL:-${BASH}} ./build.sh cxx \ + --cxx="$(tc-getCXX)" \ + --cxxflags="-pthread ${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS}" \ + -d+2 \ + --without-python +} + +src_test() { + # Forget tests, b2 is a lost cause + : +} + +src_install() { + dobin engine/b2 + + insinto /usr/share/b2/src + doins -r "${FILESDIR}/site-config.jam" \ + build-system.jam ../example/user-config.jam \ + build contrib options tools util + + find "${ED}"/usr/share/b2/src -iname '*.py' -delete || die + + dodoc ../notes/relative_source_paths.txt + + if use examples; then + docinto examples + dodoc -r ../example/. + docompress -x /usr/share/doc/${PF}/examples + fi +} diff --git a/dev-build/b2/files/b2-4.9.2-add-none-feature-options.patch b/dev-build/b2/files/b2-4.9.2-add-none-feature-options.patch new file mode 100644 index 000000000000..620dea0af51b --- /dev/null +++ b/dev-build/b2/files/b2-4.9.2-add-none-feature-options.patch @@ -0,0 +1,22 @@ +--- a/tools/features/debug-feature.jam ++++ b/tools/features/debug-feature.jam +@@ -18,7 +18,7 @@ common usage is to build release variant with debugging information. + |# # end::doc[] + + feature.feature debug-symbols +- : on off ++ : on off none + : propagated ; + + #| tag::prof-doc[] +--- a/tools/features/optimization-feature.jam ++++ b/tools/features/optimization-feature.jam +@@ -16,7 +16,7 @@ smaller binary. + |# # end::doc[] + + feature.feature optimization +- : off speed space minimal debug ++ : off none speed space minimal debug + : propagated ; + + #| tag::inline-doc[] diff --git a/dev-build/b2/files/b2-4.9.2-darwin-gentoo-toolchain.patch b/dev-build/b2/files/b2-4.9.2-darwin-gentoo-toolchain.patch new file mode 100644 index 000000000000..8de98014dbdc --- /dev/null +++ b/dev-build/b2/files/b2-4.9.2-darwin-gentoo-toolchain.patch @@ -0,0 +1,16 @@ +Avoid adding all kinds of things to the toolchain's flags that within +Gentoo (Prefix) we really shouldn't, such as sysroot, deployment target, +arch, etc. + +--- a/tools/darwin.jam ++++ b/tools/darwin.jam +@@ -240,6 +240,9 @@ + } + } + ++ # leave compiler flags etc. up to the toolchain ++ return $(version-feature) ; ++ + if $(version-feature) + { + if $(.debug-configuration) diff --git a/dev-build/b2/files/b2-4.9.2-disable_python_rpath.patch b/dev-build/b2/files/b2-4.9.2-disable_python_rpath.patch new file mode 100644 index 000000000000..b7b47cc93a47 --- /dev/null +++ b/dev-build/b2/files/b2-4.9.2-disable_python_rpath.patch @@ -0,0 +1,11 @@ +--- a/tools/python.jam ++++ b/tools/python.jam +@@ -1000,7 +1000,7 @@ + # linux). + : $(usage-requirements) + <testing.launcher>$(set-PYTHONPATH) +- <library-path>$(libraries) <dll-path>$(dll-path) <library>python.lib ++ <library-path>$(libraries) <library>python.lib + ; + } + diff --git a/dev-build/b2/files/b2-5.4.2-no-implicit-march-flags.patch b/dev-build/b2/files/b2-5.4.2-no-implicit-march-flags.patch new file mode 100644 index 000000000000..bd8f862fd0e9 --- /dev/null +++ b/dev-build/b2/files/b2-5.4.2-no-implicit-march-flags.patch @@ -0,0 +1,148 @@ +--- a/tools/gcc.jam ++++ b/tools/gcc.jam +@@ -1157,145 +1157,6 @@ + # x86 and compatible + # The 'native' option appeared in gcc 4.2 so we cannot safely use it as default. + # Use i686 instead for 32-bit. +-toolset.flags gcc OPTIONS <architecture>x86/<address-model>32/<instruction-set> : -march=i686 ; +-cpu-flags gcc OPTIONS : x86 : native : -march=native ; +-cpu-flags gcc OPTIONS : x86 : i486 : -march=i486 ; +-cpu-flags gcc OPTIONS : x86 : i586 : -march=i586 ; +-cpu-flags gcc OPTIONS : x86 : i686 : -march=i686 ; +-cpu-flags gcc OPTIONS : x86 : pentium : -march=pentium ; +-cpu-flags gcc OPTIONS : x86 : pentium-mmx : -march=pentium-mmx ; +-cpu-flags gcc OPTIONS : x86 : pentiumpro : -march=pentiumpro ; +-cpu-flags gcc OPTIONS : x86 : pentium2 : -march=pentium2 ; +-cpu-flags gcc OPTIONS : x86 : pentium3 : -march=pentium3 ; +-cpu-flags gcc OPTIONS : x86 : pentium3m : -march=pentium3m ; +-cpu-flags gcc OPTIONS : x86 : pentium-m : -march=pentium-m ; +-cpu-flags gcc OPTIONS : x86 : pentium4 : -march=pentium4 ; +-cpu-flags gcc OPTIONS : x86 : pentium4m : -march=pentium4m ; +-cpu-flags gcc OPTIONS : x86 : prescott : -march=prescott ; +-cpu-flags gcc OPTIONS : x86 : nocona : -march=nocona ; +-cpu-flags gcc OPTIONS : x86 : core2 : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : conroe : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : conroe-xe : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : conroe-l : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : allendale : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : wolfdale : -march=core2 -msse4.1 ; +-cpu-flags gcc OPTIONS : x86 : merom : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : merom-xe : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : kentsfield : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : kentsfield-xe : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : yorksfield : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : penryn : -march=core2 ; +-cpu-flags gcc OPTIONS : x86 : corei7 : -march=corei7 ; +-cpu-flags gcc OPTIONS : x86 : nehalem : -march=corei7 ; +-cpu-flags gcc OPTIONS : x86 : corei7-avx : -march=corei7-avx ; +-cpu-flags gcc OPTIONS : x86 : sandy-bridge : -march=corei7-avx ; +-cpu-flags gcc OPTIONS : x86 : core-avx-i : -march=core-avx-i ; +-cpu-flags gcc OPTIONS : x86 : ivy-bridge : -march=core-avx-i ; +-cpu-flags gcc OPTIONS : x86 : haswell : -march=core-avx-i -mavx2 -mfma -mbmi -mbmi2 -mlzcnt ; +-cpu-flags gcc OPTIONS : x86 : broadwell : -march=broadwell ; +-cpu-flags gcc OPTIONS : x86 : skylake : -march=skylake ; +-cpu-flags gcc OPTIONS : x86 : skylake-avx512 : -march=skylake-avx512 ; +-cpu-flags gcc OPTIONS : x86 : cannonlake : -march=skylake-avx512 -mavx512vbmi -mavx512ifma -msha ; +-cpu-flags gcc OPTIONS : x86 : icelake-client : -march=icelake-client ; +-cpu-flags gcc OPTIONS : x86 : icelake-server : -march=icelake-server ; +-cpu-flags gcc OPTIONS : x86 : cascadelake : -march=skylake-avx512 -mavx512vnni ; +-cpu-flags gcc OPTIONS : x86 : cooperlake : -march=cooperlake ; +-cpu-flags gcc OPTIONS : x86 : tigerlake : -march=tigerlake ; +-cpu-flags gcc OPTIONS : x86 : rocketlake : -march=rocketlake ; +-cpu-flags gcc OPTIONS : x86 : alderlake : -march=alderlake ; +-cpu-flags gcc OPTIONS : x86 : sapphirerapids : -march=sapphirerapids ; +-cpu-flags gcc OPTIONS : x86 : k6 : -march=k6 ; +-cpu-flags gcc OPTIONS : x86 : k6-2 : -march=k6-2 ; +-cpu-flags gcc OPTIONS : x86 : k6-3 : -march=k6-3 ; +-cpu-flags gcc OPTIONS : x86 : athlon : -march=athlon ; +-cpu-flags gcc OPTIONS : x86 : athlon-tbird : -march=athlon-tbird ; +-cpu-flags gcc OPTIONS : x86 : athlon-4 : -march=athlon-4 ; +-cpu-flags gcc OPTIONS : x86 : athlon-xp : -march=athlon-xp ; +-cpu-flags gcc OPTIONS : x86 : athlon-mp : -march=athlon-mp ; +-## +-cpu-flags gcc OPTIONS : x86 : k8 : -march=k8 ; +-cpu-flags gcc OPTIONS : x86 : opteron : -march=opteron ; +-cpu-flags gcc OPTIONS : x86 : athlon64 : -march=athlon64 ; +-cpu-flags gcc OPTIONS : x86 : athlon-fx : -march=athlon-fx ; +-cpu-flags gcc OPTIONS : x86 : k8-sse3 : -march=k8-sse3 ; +-cpu-flags gcc OPTIONS : x86 : opteron-sse3 : -march=opteron-sse3 ; +-cpu-flags gcc OPTIONS : x86 : athlon64-sse3 : -march=athlon64-sse3 ; +-cpu-flags gcc OPTIONS : x86 : amdfam10 : -march=amdfam10 ; +-cpu-flags gcc OPTIONS : x86 : barcelona : -march=barcelona ; +-cpu-flags gcc OPTIONS : x86 : bdver1 : -march=bdver1 ; +-cpu-flags gcc OPTIONS : x86 : bdver2 : -march=bdver2 ; +-cpu-flags gcc OPTIONS : x86 : bdver3 : -march=bdver3 ; +-cpu-flags gcc OPTIONS : x86 : bdver4 : -march=bdver4 ; +-cpu-flags gcc OPTIONS : x86 : btver1 : -march=btver1 ; +-cpu-flags gcc OPTIONS : x86 : btver2 : -march=btver2 ; +-cpu-flags gcc OPTIONS : x86 : znver1 : -march=znver1 ; +-cpu-flags gcc OPTIONS : x86 : znver2 : -march=znver2 ; +-cpu-flags gcc OPTIONS : x86 : znver3 : -march=znver3 ; +-cpu-flags gcc OPTIONS : x86 : winchip-c6 : -march=winchip-c6 ; +-cpu-flags gcc OPTIONS : x86 : winchip2 : -march=winchip2 ; +-cpu-flags gcc OPTIONS : x86 : c3 : -march=c3 ; +-cpu-flags gcc OPTIONS : x86 : c3-2 : -march=c3-2 ; +-cpu-flags gcc OPTIONS : x86 : c7 : -march=c7 ; +-## +-cpu-flags gcc OPTIONS : x86 : atom : -march=atom ; +-# Sparc +-cpu-flags gcc OPTIONS : sparc : v7 : -mcpu=v7 : default ; +-cpu-flags gcc OPTIONS : sparc : cypress : -mcpu=cypress ; +-cpu-flags gcc OPTIONS : sparc : v8 : -mcpu=v8 ; +-cpu-flags gcc OPTIONS : sparc : supersparc : -mcpu=supersparc ; +-cpu-flags gcc OPTIONS : sparc : sparclite : -mcpu=sparclite ; +-cpu-flags gcc OPTIONS : sparc : hypersparc : -mcpu=hypersparc ; +-cpu-flags gcc OPTIONS : sparc : sparclite86x : -mcpu=sparclite86x ; +-cpu-flags gcc OPTIONS : sparc : f930 : -mcpu=f930 ; +-cpu-flags gcc OPTIONS : sparc : f934 : -mcpu=f934 ; +-cpu-flags gcc OPTIONS : sparc : sparclet : -mcpu=sparclet ; +-cpu-flags gcc OPTIONS : sparc : tsc701 : -mcpu=tsc701 ; +-cpu-flags gcc OPTIONS : sparc : v9 : -mcpu=v9 ; +-cpu-flags gcc OPTIONS : sparc : ultrasparc : -mcpu=ultrasparc ; +-cpu-flags gcc OPTIONS : sparc : ultrasparc3 : -mcpu=ultrasparc3 ; +-# RS/6000 & PowerPC +-cpu-flags gcc OPTIONS : power : 403 : -mcpu=403 ; +-cpu-flags gcc OPTIONS : power : 505 : -mcpu=505 ; +-cpu-flags gcc OPTIONS : power : 601 : -mcpu=601 ; +-cpu-flags gcc OPTIONS : power : 602 : -mcpu=602 ; +-cpu-flags gcc OPTIONS : power : 603 : -mcpu=603 ; +-cpu-flags gcc OPTIONS : power : 603e : -mcpu=603e ; +-cpu-flags gcc OPTIONS : power : 604 : -mcpu=604 ; +-cpu-flags gcc OPTIONS : power : 604e : -mcpu=604e ; +-cpu-flags gcc OPTIONS : power : 620 : -mcpu=620 ; +-cpu-flags gcc OPTIONS : power : 630 : -mcpu=630 ; +-cpu-flags gcc OPTIONS : power : 740 : -mcpu=740 ; +-cpu-flags gcc OPTIONS : power : 7400 : -mcpu=7400 ; +-cpu-flags gcc OPTIONS : power : 7450 : -mcpu=7450 ; +-cpu-flags gcc OPTIONS : power : 750 : -mcpu=750 ; +-cpu-flags gcc OPTIONS : power : 801 : -mcpu=801 ; +-cpu-flags gcc OPTIONS : power : 821 : -mcpu=821 ; +-cpu-flags gcc OPTIONS : power : 823 : -mcpu=823 ; +-cpu-flags gcc OPTIONS : power : 860 : -mcpu=860 ; +-cpu-flags gcc OPTIONS : power : 970 : -mcpu=970 ; +-cpu-flags gcc OPTIONS : power : 8540 : -mcpu=8540 ; +-cpu-flags gcc OPTIONS : power : power : -mcpu=power ; +-cpu-flags gcc OPTIONS : power : power2 : -mcpu=power2 ; +-cpu-flags gcc OPTIONS : power : power3 : -mcpu=power3 ; +-cpu-flags gcc OPTIONS : power : power4 : -mcpu=power4 ; +-cpu-flags gcc OPTIONS : power : power5 : -mcpu=power5 ; +-cpu-flags gcc OPTIONS : power : powerpc : -mcpu=powerpc ; +-cpu-flags gcc OPTIONS : power : powerpc64 : -mcpu=powerpc64 ; +-cpu-flags gcc OPTIONS : power : rios : -mcpu=rios ; +-cpu-flags gcc OPTIONS : power : rios1 : -mcpu=rios1 ; +-cpu-flags gcc OPTIONS : power : rios2 : -mcpu=rios2 ; +-cpu-flags gcc OPTIONS : power : rsc : -mcpu=rsc ; +-cpu-flags gcc OPTIONS : power : rs64a : -mcpu=rs64 ; +-cpu-flags gcc OPTIONS : s390x : z196 : -march=z196 ; +-cpu-flags gcc OPTIONS : s390x : zEC12 : -march=zEC12 ; +-cpu-flags gcc OPTIONS : s390x : z13 : -march=z13 ; +-cpu-flags gcc OPTIONS : s390x : z14 : -march=z14 ; +-cpu-flags gcc OPTIONS : s390x : z15 : -march=z15 ; +-# ARM +-cpu-flags gcc OPTIONS : arm : cortex-a9+vfpv3 : -mcpu=cortex-a9 -mfpu=vfpv3 ; +-cpu-flags gcc OPTIONS : arm : cortex-a53 : -mcpu=cortex-a53 ; +-cpu-flags gcc OPTIONS : arm : cortex-r5 : -mcpu=cortex-r5 ; +-cpu-flags gcc OPTIONS : arm : cortex-r5+vfpv3-d16 : -mcpu=cortex-r5 -mfpu=vfpv3-d16 ; + # AIX variant of RS/6000 & PowerPC + toolset.flags gcc AROPTIONS <address-model>64/<target-os>aix : "-X64" ; + diff --git a/dev-build/b2/files/site-config.jam b/dev-build/b2/files/site-config.jam new file mode 100644 index 000000000000..cae7b3f98327 --- /dev/null +++ b/dev-build/b2/files/site-config.jam @@ -0,0 +1,11 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the Boost Software License, Version 1.0. +# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) + +# Define two new variants to be used when building boost (or separate boost-libs) +# on Gentoo. The two variants make use of Gentoo-specific optimization and debug-symbols +# values "none" which are not part of the official boost distribution. +# DO NOT RELY ON THE FOLLOWING VARIANTS TO BE PRESENT ON OTHER OS! +variant gentoorelease : release : <optimization>none <debug-symbols>none <runtime-link>shared ; +variant gentoodebug : debug : <optimization>none <debug-symbols>on <runtime-link>shared ; + diff --git a/dev-build/b2/metadata.xml b/dev-build/b2/metadata.xml new file mode 100644 index 000000000000..97a8de7cc239 --- /dev/null +++ b/dev-build/b2/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>soap@gentoo.org</email> + <name>David Seifert</name> + </maintainer> + <upstream> + <remote-id type="github">bfgroup/b2</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/bazel-buildtools/Manifest b/dev-build/bazel-buildtools/Manifest new file mode 100644 index 000000000000..516daaa59379 --- /dev/null +++ b/dev-build/bazel-buildtools/Manifest @@ -0,0 +1,3 @@ +DIST bazel-buildtools-8.2.0-deps.tar.xz 3588700 BLAKE2B 82fe1d797e440645547a4ae318bc0b0072dd5047d0072a80510378c5f874e0219c20c082519eb55c6d3e8cbf28e3ce78505fc84ff2893de9cac481ecd8637522 SHA512 8fb81400bbc8a2333c18942799882491057e385b19c4227e8873628d83f909c86d4a6aeb551c064282d8d57bc1323bf1d3a837a8d00026682b0dc3c353ad9c9e +DIST bazel-buildtools-8.2.1.gh.tar.gz 342493 BLAKE2B 7d321fc59a075b0835bff9e17f237decd701f9f93efe260b9f954c1583d11c5676ebd28cd782fac39bc6df3dbd7d2a85e33124ee73f692cc69a13bd41ad9bbca SHA512 54b02044ca8e68d07a45f3ed1c1eb0ae3c30e1477b8a0cfba90240fb49f97bf75ae8addfd2ab379ee4c77c1d63c60f2e04392fe1302b43c212fee9957a184479 +DIST bazel-buildtools-8.5.1.gh.tar.gz 350566 BLAKE2B 7cc6789c7cd78b20d786aa171f6fe7632367f132c8200ed11515e32b58ba3c5dfecf77c7a3b48619e6d1219c9a93fa62fafffc017de6d639c4d5aa13e1bf5dff SHA512 133e72c72f1913d1ca73be25ac6ca6ff170a7a5b98c5b5510811ff229cec06ed08fa02dfb061e31a7efae29080eee6753bb8e35b0691baebcbe3723ba77b4ec9 diff --git a/dev-build/bazel-buildtools/bazel-buildtools-8.2.1.ebuild b/dev-build/bazel-buildtools/bazel-buildtools-8.2.1.ebuild new file mode 100644 index 000000000000..76877eafb77e --- /dev/null +++ b/dev-build/bazel-buildtools/bazel-buildtools-8.2.1.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +REAL_PN="buildtools" + +inherit go-module + +DESCRIPTION="Tools for working with Google's Bazel BUILD files" +HOMEPAGE="https://github.com/bazelbuild/buildtools/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/bazelbuild/${REAL_PN}" +else + SRC_URI="https://github.com/bazelbuild/${REAL_PN}/archive/refs/tags/v${PV}.tar.gz + -> ${P}.gh.tar.gz" + S="${WORKDIR}/${REAL_PN}-${PV}" + + KEYWORDS="amd64 arm64 ~x86" +fi + +SRC_URI+=" + https://dev.gentoo.org/~xgqt/distfiles/deps/${PN}-8.2.0-deps.tar.xz +" + +LICENSE="Apache-2.0" +SLOT="0" + +DOCS=( README.md WARNINGS.md ) + +src_prepare() { + default + + rm ./warn/docs/docs.go || die +} + +src_compile() { + local go_ldopts=" + -X main.buildScmRevision=v${PV} + -X main.buildVersion=${PV} + " + local -a go_buildopts=( + -ldflags "${go_ldopts}" + -o ./bin/ + ) + ego build "${go_buildopts[@]}" ./... +} + +src_install() { + exeinto /usr/bin + doexe ./bin/{buildifier,buildozer} + newexe ./bin/generatetables bazel-generatetables + newexe ./bin/unused_deps bazel-unused_deps + + local app="" + for app in buildifier buildozer unused_deps ; do + newdoc "${S}/${app}/README.md" "${app}.md" + done + + einstalldocs +} + +pkg_postinst() { + einfo 'The "generatetables" binary is installed as "bazel-generatetables"' + einfo 'and the "unused_deps" binary is installed as "bazel-unused_deps"'. +} diff --git a/dev-build/bazel-buildtools/bazel-buildtools-8.5.1.ebuild b/dev-build/bazel-buildtools/bazel-buildtools-8.5.1.ebuild new file mode 100644 index 000000000000..76877eafb77e --- /dev/null +++ b/dev-build/bazel-buildtools/bazel-buildtools-8.5.1.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +REAL_PN="buildtools" + +inherit go-module + +DESCRIPTION="Tools for working with Google's Bazel BUILD files" +HOMEPAGE="https://github.com/bazelbuild/buildtools/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/bazelbuild/${REAL_PN}" +else + SRC_URI="https://github.com/bazelbuild/${REAL_PN}/archive/refs/tags/v${PV}.tar.gz + -> ${P}.gh.tar.gz" + S="${WORKDIR}/${REAL_PN}-${PV}" + + KEYWORDS="amd64 arm64 ~x86" +fi + +SRC_URI+=" + https://dev.gentoo.org/~xgqt/distfiles/deps/${PN}-8.2.0-deps.tar.xz +" + +LICENSE="Apache-2.0" +SLOT="0" + +DOCS=( README.md WARNINGS.md ) + +src_prepare() { + default + + rm ./warn/docs/docs.go || die +} + +src_compile() { + local go_ldopts=" + -X main.buildScmRevision=v${PV} + -X main.buildVersion=${PV} + " + local -a go_buildopts=( + -ldflags "${go_ldopts}" + -o ./bin/ + ) + ego build "${go_buildopts[@]}" ./... +} + +src_install() { + exeinto /usr/bin + doexe ./bin/{buildifier,buildozer} + newexe ./bin/generatetables bazel-generatetables + newexe ./bin/unused_deps bazel-unused_deps + + local app="" + for app in buildifier buildozer unused_deps ; do + newdoc "${S}/${app}/README.md" "${app}.md" + done + + einstalldocs +} + +pkg_postinst() { + einfo 'The "generatetables" binary is installed as "bazel-generatetables"' + einfo 'and the "unused_deps" binary is installed as "bazel-unused_deps"'. +} diff --git a/dev-build/bazel-buildtools/metadata.xml b/dev-build/bazel-buildtools/metadata.xml new file mode 100644 index 000000000000..ee281bf6fe20 --- /dev/null +++ b/dev-build/bazel-buildtools/metadata.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> + +<pkgmetadata> + <maintainer type="person"> + <email>xgqt@gentoo.org</email> + <name>Maciej Barć</name> + </maintainer> + <longdescription> + Bazel buildtools contain: 1. buildifier - for formatting BUILD, + BUILD.bazel and BUCK files in a standard way, 2. buildozer - for doing + command-line operations on these files, 3. unused_deps - for finding + unneeded dependencies in java_library rules. + </longdescription> + <upstream> + <bugs-to>https://github.com/bazelbuild/buildtools/issues/</bugs-to> + <remote-id type="github">bazelbuild/buildtools</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/bazelisk/Manifest b/dev-build/bazelisk/Manifest new file mode 100644 index 000000000000..5ffacbf81916 --- /dev/null +++ b/dev-build/bazelisk/Manifest @@ -0,0 +1,4 @@ +DIST bazelisk-1.28.1-deps.tar.xz 2578056 BLAKE2B ca076d248eb1655c62e345cd3cf45af20ee0564418ee6711879cf41a0584484bbc679baa238492a79720b2b9a91f74294d06be441974400ca011ef35970cb1aa SHA512 88a1c50e2db24f6037dbbddce72c9afd11435ddfbc7a2bf2b1352efcd9465856722609297c1169f00b10ae75647dd39566ddd1d5e4529606235fab0a03a8427b +DIST bazelisk-1.28.1.gh.tar.gz 160928 BLAKE2B f04ba2feca37ad9ad1114a79f6905cb0bf3c16dfec0c8d282b52d449296e184645e0cbdfd135e53c372cc51d78aca5d626fec31d4530f7294364f4747c7ff4f2 SHA512 5bbc97ea7f8d61be1b42e58b3318a15bf1a2766a9d956617fb0f36b360b5c99cb6ed956a6330709ac644538ff466b1b26a15b2f18c07cfd61489f0cc89765b62 +DIST bazelisk-1.29.0-deps.tar.xz 5921060 BLAKE2B 9df46219f9a632e97bd6df3ea0d82e86f34b1d3871b475a45d2248fb263f98e72d2540ab4ae73db5a510fc4b7f4939081b2b836e17a5958976f39f27733da8dd SHA512 047695e53cc4ace31a0531957acc72f9d077f0be2a663f3a2ed313a90068044eda6df3c5007cf00576832becf62f8aa3cffad8ef75743a637b7367f286a1e73b +DIST bazelisk-1.29.0.gh.tar.gz 167799 BLAKE2B 8fc513c6bd834969b0a30c2728a365605f2eac5a6cefc382e64364353fd1f42f52e018484790859623ff0e5c1521f2e29f0809ab4ec17d35ed3cf34b72fa7e17 SHA512 9335d062c46973265c87b6d4f02b05d7f2e69df2bcb109abe62bf611ed40c1ddd860405d8368ae110f413082cc1eac7210997b94002ecff704885f7803dfadae diff --git a/dev-build/bazelisk/bazelisk-1.28.1.ebuild b/dev-build/bazelisk/bazelisk-1.28.1.ebuild new file mode 100644 index 000000000000..8754369d252d --- /dev/null +++ b/dev-build/bazelisk/bazelisk-1.28.1.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit go-module + +DESCRIPTION="A user-friendly launcher for Bazel written in Go" +HOMEPAGE="https://github.com/bazelbuild/bazelisk/" +SRC_URI=" + https://github.com/bazelbuild/${PN}/archive/refs/tags/v${PV}.tar.gz + -> ${P}.gh.tar.gz + https://dev.gentoo.org/~xgqt/distfiles/deps/${P}-deps.tar.xz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="amd64 arm64" +IUSE="+bazel-symlink" + +DOCS=( CONTRIBUTING.md README.md ) + +src_compile() { + mkdir -p bin || die + + local go_ldflags="-X main.BazeliskVersion=${PV}" + local -a go_buildargs=( + -ldflags "${go_ldflags}" + -o bin + ) + ego build "${go_buildargs[@]}" +} + +src_install() { + exeinto /usr/bin + doexe "bin/${PN}" + + if use bazel-symlink ; then + dosym -r /usr/bin/bazelisk /usr/bin/bazel + fi + + einstalldocs +} diff --git a/dev-build/bazelisk/bazelisk-1.29.0.ebuild b/dev-build/bazelisk/bazelisk-1.29.0.ebuild new file mode 100644 index 000000000000..e3a64c3ca084 --- /dev/null +++ b/dev-build/bazelisk/bazelisk-1.29.0.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit go-module + +DESCRIPTION="A user-friendly launcher for Bazel written in Go" +HOMEPAGE="https://github.com/bazelbuild/bazelisk/" + +SRC_URI=" + https://github.com/bazelbuild/${PN}/archive/refs/tags/v${PV}.tar.gz + -> ${P}.gh.tar.gz + https://dev.gentoo.org/~xgqt/distfiles/deps/${P}-deps.tar.xz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64" +IUSE="+bazel-symlink" + +DOCS=( CONTRIBUTING.md README.md ) + +src_compile() { + mkdir -p bin || die + + local go_ldflags="-X main.BazeliskVersion=${PV}" + local -a go_buildargs=( + -ldflags "${go_ldflags}" + -o bin + ) + ego build "${go_buildargs[@]}" +} + +src_install() { + exeinto /usr/bin + doexe "bin/${PN}" + einstalldocs + + if use bazel-symlink ; then + dosym -r /usr/bin/bazelisk /usr/bin/bazel + fi +} diff --git a/dev-build/bazelisk/metadata.xml b/dev-build/bazelisk/metadata.xml new file mode 100644 index 000000000000..de81e5f355e3 --- /dev/null +++ b/dev-build/bazelisk/metadata.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> + +<pkgmetadata> + <maintainer type="person"> + <email>xgqt@gentoo.org</email> + <name>Maciej Barć</name> + </maintainer> + <longdescription> + Bazelisk is a wrapper for Bazel written in Go. It automatically picks a + good version of Bazel given your current working directory, downloads it + from the official server (if required) and then transparently passes + through all command-line arguments to the real Bazel binary. You can call + it just like you would call Bazel. + </longdescription> + <use> + <flag name="bazel-symlink">Install bazel symlink that points to bazelisk</flag> + </use> + <upstream> + <bugs-to>https://github.com/bazelbuild/bazelisk/issues/</bugs-to> + <remote-id type="github">bazelbuild/bazelisk</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/bmake/Manifest b/dev-build/bmake/Manifest new file mode 100644 index 000000000000..7e2c3065c3e1 --- /dev/null +++ b/dev-build/bmake/Manifest @@ -0,0 +1,4 @@ +DIST bmake-20251111.tar.gz 896003 BLAKE2B 787d05083273169d869d0184824a3f44acceef5d06e11d2a0dae1a5c9658c034aef4e3062d33d5f893f230fa6de13e54149a60c6a80e9cb24622f09e12583588 SHA512 dbea0379a3f081fee3d3eb009177076e6af13956d1104573179944f767c88981d76ef3186f9c396a2dd8686e03a340ba63a0f0a5bf310b59c343be85a5883580 +DIST bmake-20260406.tar.gz 900053 BLAKE2B d250dfd2872cf6c1b49b1771cf86dce991ddb97819dee5ae595f573f7aced7f05dbe8b7347952f4c49f73023b2f2f4279fad5976ff58333ed3b4f87061b00165 SHA512 ee5520e6aae47b1b94f707877b5a49c4db5defb6061e178fca18ec86e9b6be9728e1b9539a2e45ead57c9f57f21ea9dfbc7875c922f1ddf528707064a2895630 +DIST bmake-20260508.tar.gz 900460 BLAKE2B b78c7f73117b9ee8f1f9a282b7931f5ebf1b13c33ca355d4d76971d00cfcd4baf7b4e1f0c1b42e6abf55b0206c0216120a81b0878dd5f1eaa75675ed716b8491 SHA512 64b81f9d30c06e2cddbe61f0936a2ba1771d9fed391b671553375f6651288e52f9473aaf4d01e0e6e9d62de33cd00ad23711d79b580d867adb48dc1846768e99 +DIST mk-20210330.tar.gz 107380 BLAKE2B 9ac30a117d9ba31635cf8d8d29fdba76f148611f47628403ca8f807081c32509f10498d3c30fd24985e5420af4710fe59fc6315d71f2d0c1cfed93263a06553a SHA512 6acd3ee911442934082f4f877d795b07c5e23022eaa9c0874799d97e92a2f5a663cb45f94b7f9745c49cbbce6b7e755a29e381ccfb9e68a0be1eedbd22fd5d3b diff --git a/dev-build/bmake/bmake-20251111.ebuild b/dev-build/bmake/bmake-20251111.ebuild new file mode 100644 index 000000000000..7a2090a4b188 --- /dev/null +++ b/dev-build/bmake/bmake-20251111.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MK_VER=20210330 +LUA_COMPAT=( lua5-{1,3,4} luajit ) + +inherit lua-single + +DESCRIPTION="NetBSD's portable make" +HOMEPAGE="http://www.crufty.net/help/sjg/bmake.html" +SRC_URI=" + http://void.crufty.net/ftp/pub/sjg/${P}.tar.gz + http://void.crufty.net/ftp/pub/sjg/mk-${MK_VER}.tar.gz" +S="${WORKDIR}/${PN}" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" +IUSE="test" +RESTRICT="!test? ( test )" + +REQUIRED_USE="test? ( ${LUA_REQUIRED_USE} )" + +BDEPEND="test? ( ${LUA_DEPS} )" + +# Skip failing test (sandbox and csh) +PATCHES=( + "${FILESDIR}"/${PN}-20210206-tests.patch + "${FILESDIR}"/${PN}-20250618-lua-test.patch +) + +pkg_setup() { + use test && lua-single_pkg_setup +} + +src_prepare() { + default + cd "${WORKDIR}" || die + eapply "${FILESDIR}"/${PN}-20210314-mk-fixes.patch +} + +src_configure() { + econf \ + --with-mksrc=../mk \ + --with-default-sys-path="${EPREFIX}"/usr/share/mk/${PN} \ + --with-machine_arch=${ARCH} +} + +src_compile() { + sh make-bootstrap.sh || die "bootstrap failed" +} + +src_test() { + cd unit-tests || die + + # the 'ternary' test uses ${A} internally, which + # conflicts with Gentoo's ${A}, hence unset it for + # the tests temporarily. + env -u A MAKEFLAGS= \ + "${S}"/bmake -r -m / TEST_MAKE="${S}"/bmake test || die "tests compilation failed" +} + +src_install() { + dobin ${PN} + doman ${PN}.1 + FORCE_BSD_MK=1 SYS_MK_DIR=. \ + sh ../mk/install-mk -v -m 644 "${ED}"/usr/share/mk/${PN} \ + || die "failed to install mk files" +} diff --git a/dev-build/bmake/bmake-20260406.ebuild b/dev-build/bmake/bmake-20260406.ebuild new file mode 100644 index 000000000000..6a0f42c9bf36 --- /dev/null +++ b/dev-build/bmake/bmake-20260406.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MK_VER=20210330 +LUA_COMPAT=( lua5-{1,3,4} luajit ) + +inherit lua-single + +DESCRIPTION="NetBSD's portable make" +HOMEPAGE="http://www.crufty.net/help/sjg/bmake.html" +SRC_URI=" + http://void.crufty.net/ftp/pub/sjg/${P}.tar.gz + http://void.crufty.net/ftp/pub/sjg/mk-${MK_VER}.tar.gz" +S="${WORKDIR}/${PN}" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +REQUIRED_USE="test? ( ${LUA_REQUIRED_USE} )" + +BDEPEND=" + test? ( + ${LUA_DEPS} + app-alternatives/bc + )" + +# Skip failing test (sandbox and csh) +PATCHES=( + "${FILESDIR}"/${PN}-20210206-tests.patch + "${FILESDIR}"/${PN}-20250618-lua-test.patch +) + +pkg_setup() { + use test && lua-single_pkg_setup +} + +src_prepare() { + default + cd "${WORKDIR}" || die + eapply "${FILESDIR}"/${PN}-20210314-mk-fixes.patch +} + +src_configure() { + econf \ + --with-mksrc=../mk \ + --with-default-sys-path="${EPREFIX}"/usr/share/mk/${PN} \ + --with-machine_arch=${ARCH} +} + +src_compile() { + sh make-bootstrap.sh || die "bootstrap failed" +} + +src_test() { + cd unit-tests || die + + # the 'ternary' test uses ${A} internally, which + # conflicts with Gentoo's ${A}, hence unset it for + # the tests temporarily. + env -u A MAKEFLAGS= \ + "${S}"/bmake -r -m / TEST_MAKE="${S}"/bmake test || die "tests compilation failed" +} + +src_install() { + dobin ${PN} + doman ${PN}.1 + FORCE_BSD_MK=1 SYS_MK_DIR=. \ + sh ../mk/install-mk -v -m 644 "${ED}"/usr/share/mk/${PN} \ + || die "failed to install mk files" +} diff --git a/dev-build/bmake/bmake-20260508.ebuild b/dev-build/bmake/bmake-20260508.ebuild new file mode 100644 index 000000000000..6a0f42c9bf36 --- /dev/null +++ b/dev-build/bmake/bmake-20260508.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MK_VER=20210330 +LUA_COMPAT=( lua5-{1,3,4} luajit ) + +inherit lua-single + +DESCRIPTION="NetBSD's portable make" +HOMEPAGE="http://www.crufty.net/help/sjg/bmake.html" +SRC_URI=" + http://void.crufty.net/ftp/pub/sjg/${P}.tar.gz + http://void.crufty.net/ftp/pub/sjg/mk-${MK_VER}.tar.gz" +S="${WORKDIR}/${PN}" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +REQUIRED_USE="test? ( ${LUA_REQUIRED_USE} )" + +BDEPEND=" + test? ( + ${LUA_DEPS} + app-alternatives/bc + )" + +# Skip failing test (sandbox and csh) +PATCHES=( + "${FILESDIR}"/${PN}-20210206-tests.patch + "${FILESDIR}"/${PN}-20250618-lua-test.patch +) + +pkg_setup() { + use test && lua-single_pkg_setup +} + +src_prepare() { + default + cd "${WORKDIR}" || die + eapply "${FILESDIR}"/${PN}-20210314-mk-fixes.patch +} + +src_configure() { + econf \ + --with-mksrc=../mk \ + --with-default-sys-path="${EPREFIX}"/usr/share/mk/${PN} \ + --with-machine_arch=${ARCH} +} + +src_compile() { + sh make-bootstrap.sh || die "bootstrap failed" +} + +src_test() { + cd unit-tests || die + + # the 'ternary' test uses ${A} internally, which + # conflicts with Gentoo's ${A}, hence unset it for + # the tests temporarily. + env -u A MAKEFLAGS= \ + "${S}"/bmake -r -m / TEST_MAKE="${S}"/bmake test || die "tests compilation failed" +} + +src_install() { + dobin ${PN} + doman ${PN}.1 + FORCE_BSD_MK=1 SYS_MK_DIR=. \ + sh ../mk/install-mk -v -m 644 "${ED}"/usr/share/mk/${PN} \ + || die "failed to install mk files" +} diff --git a/dev-build/bmake/files/bmake-20210206-tests.patch b/dev-build/bmake/files/bmake-20210206-tests.patch new file mode 100644 index 000000000000..49e5f258e91a --- /dev/null +++ b/dev-build/bmake/files/bmake-20210206-tests.patch @@ -0,0 +1,18 @@ +--- a/unit-tests/Makefile ++++ b/unit-tests/Makefile +@@ -191,7 +191,6 @@ TESTS+= dotwait + TESTS+= envfirst + TESTS+= error + TESTS+= # escape # broken by reverting POSIX changes +-TESTS+= export + TESTS+= export-all + TESTS+= export-env + TESTS+= export-variants +@@ -290,7 +289,6 @@ TESTS+= sh-leading-plus + TESTS+= sh-meta-chars + TESTS+= sh-multi-line + TESTS+= sh-single-line +-TESTS+= shell-csh + TESTS+= shell-custom + .if exists(/bin/ksh) + TESTS+= shell-ksh diff --git a/dev-build/bmake/files/bmake-20210314-mk-fixes.patch b/dev-build/bmake/files/bmake-20210314-mk-fixes.patch new file mode 100644 index 000000000000..6dd935863be1 --- /dev/null +++ b/dev-build/bmake/files/bmake-20210314-mk-fixes.patch @@ -0,0 +1,66 @@ +# https://bugs.gentoo.org/779340 +# https://bugs.gentoo.org/778458 +# - Fix incorrect linking of shared libraries +# - Respect LDFLAGS +# - Do not strip prog binaries +--- a/mk/lib.mk ++++ b/mk/lib.mk +@@ -170,7 +170,7 @@ LD_solib= lib${LIB}_pic.a + .elif ${TARGET_OSNAME} == "Linux" + SHLIB_LD = ${CC} + # this is ambiguous of course +-LD_shared=-shared -Wl,"-soname lib${LIB}.so.${SHLIB_MAJOR}" ++LD_shared=-shared -Wl,-soname,lib${LIB}.so.${SHLIB_MAJOR} + LD_solib= -Wl,--whole-archive lib${LIB}_pic.a -Wl,--no-whole-archive + .if ${COMPILER_TYPE} == "gcc" + # Linux uses GNU ld, which is a multi-pass linker +@@ -455,11 +455,11 @@ lib${LIB}.${LD_so}: ${SOLIB} ${DPADD} + --whole-archive ${SOLIB} --no-whole-archive ${SHLIB_LDADD} \ + ${SHLIB_LDENDFILE} + .else +- ${SHLIB_LD} ${LD_x} ${LD_shared} \ ++ ${SHLIB_LD} ${LD_x} ${LD_shared} ${LDFLAGS} \ + -o ${.TARGET} ${SOLIB} ${SHLIB_LDADD} + .endif + .else +- ${SHLIB_LD} -o ${.TARGET} ${LD_shared} ${LD_solib} ${DLLIB} ${SHLIB_LDADD} ++ ${SHLIB_LD} -o ${.TARGET} ${LD_shared} ${LDFLAGS} ${LD_solib} ${DLLIB} ${SHLIB_LDADD} + .endif + .endif + .if !empty(SHLIB_LINKS) +--- a/mk/prog.mk ++++ b/mk/prog.mk +@@ -178,7 +178,7 @@ proginstall: + .if defined(PROG) + [ -d ${DESTDIR}${BINDIR} ] || \ + ${INSTALL} -d ${PROG_INSTALL_OWN} -m 775 ${DESTDIR}${BINDIR} +- ${INSTALL} ${COPY} ${STRIP_FLAG} ${PROG_INSTALL_OWN} -m ${BINMODE} \ ++ ${INSTALL} ${COPY} ${PROG_INSTALL_OWN} -m ${BINMODE} \ + ${PROG} ${DESTDIR}${BINDIR}/${PROG_NAME} + .endif + .if defined(HIDEGAME) +--- a/mk/sys/Linux.mk ++++ b/mk/sys/Linux.mk +@@ -19,12 +19,13 @@ NEED_SOLINKS ?=yes + AR ?= ar + ARFLAGS ?= rl + RANLIB ?= ranlib ++LDFLAGS ?= + + AS ?= as + AFLAGS= + COMPILE.s ?= ${AS} ${AFLAGS} + LINK.s ?= ${CC} ${AFLAGS} ${LDFLAGS} +-COMPILE.S ?= ${CC} ${AFLAGS} ${CPPFLAGS} -c ++COMPILE.S ?= ${CC} ${AFLAGS} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -c + LINK.S ?= ${CC} ${AFLAGS} ${CPPFLAGS} ${LDFLAGS} + .if exists(/usr/local/bin/gcc) + CC ?= gcc -pipe +@@ -65,7 +66,6 @@ LFLAGS= + LEX.l ?= ${LEX} ${LFLAGS} + + LD ?= ld +-LDFLAGS= + + LINT ?= lint + LINTFLAGS ?= -chapbx diff --git a/dev-build/bmake/files/bmake-20250618-lua-test.patch b/dev-build/bmake/files/bmake-20250618-lua-test.patch new file mode 100644 index 000000000000..ae1f2dd50409 --- /dev/null +++ b/dev-build/bmake/files/bmake-20250618-lua-test.patch @@ -0,0 +1,10 @@ +# https://bugs.gentoo.org/959269#c4 +# make the test compatible with lua-5.1 +--- a/unit-tests/check-expect.lua ++++ b/unit-tests/check-expect.lua +@@ -187,4 +187,4 @@ end + for _, fname in ipairs(arg) do + check_mk(fname) + end +-os.exit(not had_errors) ++os.exit((not had_errors) and 0 or 1) diff --git a/dev-build/bmake/metadata.xml b/dev-build/bmake/metadata.xml new file mode 100644 index 000000000000..fe8a3a5da516 --- /dev/null +++ b/dev-build/bmake/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>jsmolic@gentoo.org</email> + <name>Jakov Smolić</name> + </maintainer> + <maintainer type="person"> + <email>soap@gentoo.org</email> + <name>David Seifert</name> + </maintainer> +</pkgmetadata> diff --git a/dev-build/boost-m4/Manifest b/dev-build/boost-m4/Manifest new file mode 100644 index 000000000000..332259d46721 --- /dev/null +++ b/dev-build/boost-m4/Manifest @@ -0,0 +1,2 @@ +DIST boost-m4-0.4_p20221019.tar.gz 43301 BLAKE2B 8363b4e5406232050017c5272f5954509d784604485e9c5d485fbb360cebfa366bc0732886c13b54935deb6b1a85632c42282e3a51e92082ac3f40a78e43bbbb SHA512 43bf52054ad820d3da12dca38af7e71c80053a09c9dd06a9a5af87e87bafd69e36b891c179353e5c5e63970c38456264176769df6de8719fd6526116e9971dc6 +DIST boost-m4-0.4_p20250404.tar.gz 43328 BLAKE2B 1413ee95ac94e63dd592009101b0ebb2a1169ed856dfe588dcfb1ad836851dd99c5b9df4f6f0b4ce0e7590d54cd1e9f5f16b76f806aed1851330c7285d956f2a SHA512 554b5a8b5ca0334b8e9128bd19626e832041e45671f082c33d88ed49d019355e329a4473092927e7257b94926390bf00069eb5adecb751dbe0fb203d9e89da93 diff --git a/dev-build/boost-m4/boost-m4-0.4_p20221019-r1.ebuild b/dev-build/boost-m4/boost-m4-0.4_p20221019-r1.ebuild new file mode 100644 index 000000000000..13c9b6095b86 --- /dev/null +++ b/dev-build/boost-m4/boost-m4-0.4_p20221019-r1.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +BOOST_COMMIT="0c955e2c32804d6140676052a9e684ca84bf086d" + +DESCRIPTION="Another set of autoconf macros for compiling against boost" +HOMEPAGE="https://github.com/tsuna/boost.m4" +SRC_URI="https://github.com/tsuna/boost.m4/archive/${BOOST_COMMIT}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}"/${PN/-/.}-${BOOST_COMMIT} + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" + +PATCHES=( "${FILESDIR}/${P}-boost-1.70-system-header-only.patch" ) + +# boost.m4 has a buildsystem, but the distributer didn't use make dist +# so we'd have to eautoreconf to use it. Also, its ./configure script +# DEPENDs on boost. For installing one file, bootstrapping the +# buildsystem isn't worth it. +src_configure() { :; } + +src_compile() { :; } + +src_install() { + insinto /usr/share/aclocal + doins build-aux/boost.m4 + + dodoc AUTHORS NEWS README THANKS +} diff --git a/dev-build/boost-m4/boost-m4-0.4_p20250404.ebuild b/dev-build/boost-m4/boost-m4-0.4_p20250404.ebuild new file mode 100644 index 000000000000..ffd4d23d14fa --- /dev/null +++ b/dev-build/boost-m4/boost-m4-0.4_p20250404.ebuild @@ -0,0 +1,30 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +BOOST_COMMIT="c88f9d1d27707d85ba39fbaeedddddd505e76e6c" + +DESCRIPTION="Another set of autoconf macros for compiling against boost" +HOMEPAGE="https://github.com/tsuna/boost.m4" +SRC_URI="https://github.com/tsuna/boost.m4/archive/${BOOST_COMMIT}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}"/${PN/-/.}-${BOOST_COMMIT} + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + +# boost.m4 has a buildsystem, but the distributer didn't use make dist +# so we'd have to eautoreconf to use it. Also, its ./configure script +# DEPENDs on boost. For installing one file, bootstrapping the +# buildsystem isn't worth it. +src_configure() { :; } + +src_compile() { :; } + +src_install() { + insinto /usr/share/aclocal + doins build-aux/boost.m4 + + dodoc AUTHORS NEWS README THANKS +} diff --git a/dev-build/boost-m4/files/boost-m4-0.4_p20221019-boost-1.70-system-header-only.patch b/dev-build/boost-m4/files/boost-m4-0.4_p20221019-boost-1.70-system-header-only.patch new file mode 100644 index 000000000000..54fb7fc61075 --- /dev/null +++ b/dev-build/boost-m4/files/boost-m4-0.4_p20221019-boost-1.70-system-header-only.patch @@ -0,0 +1,26 @@ +Combination of: +https://github.com/tsuna/boost.m4/commit/8d9ceb2dc54587aa1cace4bc0932a804b0538d36 +https://github.com/tsuna/boost.m4/commit/c88f9d1d27707d85ba39fbaeedddddd505e76e6c + +diff -u a/build-aux/boost.m4 b/build-aux/boost.m4 +--- a/build-aux/boost.m4 ++++ b/build-aux/boost.m4 +@@ -1332,11 +1332,16 @@ + # -------------------------------- + # Look for Boost.System. For the documentation of PREFERRED-RT-OPT, see the + # documentation of BOOST_FIND_LIB above. This library was introduced in Boost +-# 1.35.0. ++# 1.35.0 and is header only since 1.70. + BOOST_DEFUN([System], +-[BOOST_FIND_LIB([system], [$1], ++[ ++if test $boost_major_version -ge 170; then ++ BOOST_FIND_HEADER([boost/system/error_code.hpp]) ++else ++ BOOST_FIND_LIB([system], [$1], + [boost/system/error_code.hpp], + [boost::system::error_code e; e.clear();], [], [], [$2]) ++fi + ])# BOOST_SYSTEM + + diff --git a/dev-build/boost-m4/metadata.xml b/dev-build/boost-m4/metadata.xml new file mode 100644 index 000000000000..573b19f74105 --- /dev/null +++ b/dev-build/boost-m4/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <!--maintainer-needed--> + <stabilize-allarches/> + <upstream> + <remote-id type="github">tsuna/boost.m4</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/cargo-make/Manifest b/dev-build/cargo-make/Manifest new file mode 100644 index 000000000000..02cc2567a3a4 --- /dev/null +++ b/dev-build/cargo-make/Manifest @@ -0,0 +1,238 @@ +DIST adler2-2.0.0.crate 13529 BLAKE2B ec575b0bf12e321399ac3a1d59fce4ddbeabcc60cb3d7c2f362cce23eb29b4ea836451372d6d88552a4435ae29bb41d6230d55f625a4359eace680b9b771d0ad SHA512 12d12579ad617cf1a94cf95ab9d3f5db566c3b2de4bd5735eccd83c668fdad0eff134c996b73c46cbb9f932837682043878b8cc4764191625e9f93ccffcce423 +DIST aho-corasick-1.1.3.crate 183311 BLAKE2B 8dfcbba0b9d94e55eae739b16f5c6474baa43ee7854c5ca792f426a9f46fb0eece79cd493b804e51449181bcad338b96819fe977c02c9907654d713e26b9f830 SHA512 ba422a54688c4678fcf16e34fdf3ed06c333e6e3fc8b75af9272a215add494d43ebaef319021134b61327fd5d3572aec0dc655b714ffb3bc71ba3c265c9ebb69 +DIST android-tzdata-0.1.1.crate 7674 BLAKE2B 4385a4875aadaacd5284a9ca7d1bf8a7bf14bf8925d1563d52fbabacc3af2c1ea08bfcf77106f3648f4fa052ac295158a21e7a0131d31eb9aecd99ea4ba20055 SHA512 4294024c21ddd0090c42c8eedf708d40d917f55ad5a4cb7aa3e64cfb6551b6df60f2e36bc08620c1d2fc8c7ba7207411518ee5c8635f60ed8ad9efdd458a2077 +DIST android_system_properties-0.1.5.crate 5243 BLAKE2B 86f68ec3bdabf8c6ec47881d794970f08a9eefc7417fc8a2bf4fe9faf9bdd2a2024a94adb0cbf96673409f5fbbd4d0111a1ac371339e7a90a277b6cd5003524e SHA512 b09f51339f9772c0e2e4241b36cf51573c6b96b19ffc1fbbc94b1c1d1d2fdfe8eac3134af54174a675ab05d18ef4f6bcb2c7fcc20114bbeef6e17e3692202191 +DIST arbitrary-1.4.1.crate 36816 BLAKE2B 86adbf1a2522e972bf4a7fc26e4d88ec45298dc2ce716a1fe30cd49bebf4d5a65af1f097f83be6ee8c554d4b392657efd32ffa1cb35704585a9816b6e234c067 SHA512 a3507aa0ab684464c3559376beabc0992bbb589ddc85d2426b26238d7c5d1d856df5d9226603fe7ad2b17ac6570d62e86ba4f5a2e65f3cbc9ad52bbe294f8123 +DIST attohttpc-0.28.2.crate 63013 BLAKE2B a7f38fc320bb40da15f7f85ac381347a0ca98fcc04a1c2c279e5449687bd44d41dd6d80611c42a0eaa891f2a063b7185a574f6eb2835e339006f4aedce0f4503 SHA512 570ad6af2c661ddbaf3a2b8f4b0c8a5b1d70762c46a1e9de8ba26f975dc32d5d2eca66b98f628c2dca880a0688f3751e19f46b80fc64d97c6b42fb4dc040ca14 +DIST autocfg-1.4.0.crate 17712 BLAKE2B 7f7300439899be03d001dd32b7e797bc4b9a58103081b6f7353c4b5897813cedf870b3fb1fa25d320a75326b334b44d8287e8603de34fc560d0b567143915cc6 SHA512 3b5e7c30bc73e105e4bfcab584c24fc4016db41fac9c356c6649fd841051704bbe8848e09546eb50d7c1f18ea8ce1cb72fbc268a620d5c609b3472114b5be73c +DIST base64-0.22.1.crate 81597 BLAKE2B 6f216a560bd36e6e6b74e908344b457594cc768d9763070e269b56a14b150cbfc4b7f599d4c2a0a5f783638170ee132f0796fefb14fcac7fd73c58db0791007a SHA512 91cf2e4e7fc8815f9b8a86a7fa722a20eee3dc1dd57111b29e420de87ce7836bcdb1db01d3cafb9a977710ef63e7cc41b7772762323e68e0e832156858aace20 +DIST bitflags-2.8.0.crate 47482 BLAKE2B cfa5dac5bb9fda57a5887773399d2507e83ed30fb0c5a332c48905f912c9b8d3c5e6493a9626a73459cb67d63973efff719ab4153a14e774ff4a632c96872ca2 SHA512 f1bc02c858432b0e1fc3b10f239c5886e51d620d55a75521bdf35c8e8f6b6cf8db97e90e08eb2e96715a2c5b28858af305eb266f1ce0c90f9d3945d6d9bdda8b +DIST block-buffer-0.10.4.crate 10538 BLAKE2B d819c4f9c4be85868e8b105fb7e479d2e58d3ed85c3339bd677a3e111f85cb1ff624a54d7802ab79a6e1d9221115f66388568340480fe83eae1cb448f19f5b11 SHA512 b7d436d8e627e16e6ddc300ee8f706a6cef28ff6f09eff848eedee46f84bdcd03601303c92ab8996042e55922866a59259948177c0a4496eed723523e77f6fdb +DIST bstr-1.11.3.crate 351536 BLAKE2B 72a4fcc236942d121f76f42135c332fda2b1ad778d993ee69855c4eb6f909c91491fe6aa68daa0e2d602aea1bce61b1fcf03d03787f84ebb4d63b2bd3f4295fd SHA512 f1082ac8f121c6f9eab4b41c5f60aafe4623696c9f800f9d59f6726efc74f86071910f7749fbcdc8f1c20c83416d58f3ff507978775f602e18ae3d1bb027944d +DIST bumpalo-3.16.0.crate 85677 BLAKE2B 08da17b757931d2910e0299df53eb62731aa8c4ebd8915859b81d1982b331e7455dfac977c754e500a35ee07ba8eff00a61d2f62be99744e2ddbba06c1268f49 SHA512 a51b75c36f6794db444cab20eeb24f42a319080ecb486a56d254d6f873f3d188b5ccba11db30c068bd0c52c4322d4a3f5f5195c81c94b0bc04387030418835b1 +DIST byteorder-1.5.0.crate 23288 BLAKE2B 7f85a7948406844070a2c8202e0bd52f73b3dfc7c666a97046128044eb9352195afb80e2bf894c0742ad109e4473339de1365d09591de70dfec6c8c02a8e1453 SHA512 96caf981177f6ded9f27f025922cb94eb0cd9de5303bd91680099912d922092e77b7361efa70011e84f1595e443193e4f1b354443b9980c123f6ae573b236f7f +DIST bytes-1.9.0.crate 67320 BLAKE2B d5a89fc1dced217bd78c6c50d0494308b69b0841506c4663b6df3755b91a9eedbd242ce1322a71b8a96847db7920b2b15744fb060aa2d69f5c8d9bcbf2745b9a SHA512 e6c0681c535db6035c1fb1c0481725bb8ab341b6324acde07ac4b60cc4f490ec6ff01478bc00fae00ade2bc5420f9d14cc44438e5d156bcce91cc0f06118296b +DIST bzip2-0.4.4.crate 34197 BLAKE2B b69f8ad38b44eb4912b33d53467492b0ebe6ed740451bdfe9133e71c47a8dbd85b1110a9607c4cc627fbabc44cd86fe0396bb545864632ffb6169f9cfa547b6c SHA512 9cd2b9159bd0b42ac908ecad41f0a737272af94ae0d6dcfe182d2f44bcea4632d32b0456f02322047ea9d6f46377db6cd083f468782bccd6126bcc75cb852555 +DIST bzip2-sys-0.1.11+1.0.8.crate 633444 BLAKE2B 01578c512443134fc786669bea4f2ec4b9c457b9936c907315299d8b67ed78045d458c83ccc119f0fad511529fb5af5feff5fa2d983fdae832d2fcc1b343e102 SHA512 d0a86b9f03acb1e4e309d5739dc2e88cab582757d467a433afe0017017f0e5d2c0282529e3a117160958ed170d8d695ecae739805888305df0e35e4dc440582b +DIST camino-1.1.9.crate 37552 BLAKE2B 28b21517730db408598f83e269ee8aa4dc5388c4b491779ebb6e76c478d407f929bda6906d88d429828d7f01be1762c72ecbb6d8c7aa4a1d1906109a17b45df1 SHA512 27a6a3cf72c46f15a6017aea44a048f2a8eb577aa9d2a088141b1cb7479106152ef0bc00a6cea9332c4df4d0c54aa6bd3dc21159f15640e347407c15a1bbf7ea +DIST cargo-make-0.37.24.tar.gz 2024611 BLAKE2B 7c2f9d2cb991015f6083da576e2860afdfe86ba8c893d673abe026c740322f252d7cec838cfc98bb13dae214cc69d73c9028e1103f83345aed40a1c138be5ed4 SHA512 2d7c169d65e3049cfe9212dbb578377bcda581d52a2e5543c1c178d6531f9f08c4d0336d2feb6e3889cb7b83891e4dd592c6e5147ef7c09ca3577440231408ba +DIST cargo-platform-0.1.9.crate 12010 BLAKE2B e178d5a444c6536f0c95f497bdfbb13cadd0d58d55bfae76008bcadc2a042044f432a232f657cb1fdc91b7af4d197cc44bc0cd7a41c9cca6c5da085409ab49d1 SHA512 05cf4c18ed6f3a1193a4567a48f1f3c832ae85faa7487a4e087e5dd8499eabd36c862d8e58af5443933b87aa8becc258011ebbecb2247f8a75067c8ac018676a +DIST cargo_metadata-0.19.1.crate 26131 BLAKE2B ab8114504cfd55a237893556f9d004a5dfa94fce89e5229dc7906bc76910df84cde89ce461519e49dcba9ef0dbe4c3b7975510544a58164d6478ff0d1d7fb9ba SHA512 5b4f69690a5852127ef505bb87d29cb16e6d6dd7c7b4fa6bc10f78bbbadb4e4bcb2e92ecfc46fbae4d905f83c55418be4d43202273aae44b384295870b509190 +DIST cc-1.2.10.crate 101251 BLAKE2B 12f708028bca112a91c5d00312c93b87b96f4d7f718c1c271cbf12b263148369e09d406cb8c5f250d69fb08b62eb87e7c2fff33f43bdb772fdebccf2927add0d SHA512 bbd8755d390ca8fd209fb22a6b998250bc4765bc8339281498f0170afac7b1112ac5843bc4c604785e734030e2681f58bc5233ebce85e1d1392e3bfc1e654e5f +DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff +DIST cfg_aliases-0.2.1.crate 6355 BLAKE2B a758d9c88527f0e6e7cfd6d4c83eda1bcb4d6e2438189fe08e8ecbcaa78d56afc5a4873f3b82bf7da96afd690b44cdf1e44466b6da0f37c358b340481017103e SHA512 74969d12d5d24002a29e08d52e30fbce014dd481a7c35ee0162e69333c5f2d7755f3b02439b31522e12444cf1ac8e65880ce33fe6778dac03757e362cbf8a72c +DIST chrono-0.4.39.crate 222248 BLAKE2B eeff1694a98e8775524c261c5c46ebf09bf1ffc6222a945576960e8153af99e4549d8c988bd086507fa430f9cb15a3159be85300247ab3c6f5e77ab515f0988b SHA512 5b258f76bea58ab9baa0fe8fb32c41928b8b655c76bb2fbaae9300ef8380cbb881296cee6b9e9886dce62b0759c73e84f6409e374a86cf0c80e3383512f98571 +DIST ci_info-0.14.14.crate 1138778 BLAKE2B 336a1a35e1f3df51cb64e8e406ebea30b25faf988cf6dbdded8bd500f8aa1cae954035cfdcbaeafdbaff457bd22f8b418e1dd1af4f2f23a8ba2a5a15c3d1b116 SHA512 3043c7df2838ed1e536eeae9839bc60ce38cf91a39c03d5b620097743cb491247c69c1bbd77648361fa127eecb512fa3e5bec3b01b0b4921f8c1eb24235094dc +DIST cliparser-0.1.2.crate 1191086 BLAKE2B b2103c8672879b231328238ff2cff13e6af09608dfd83fa0b5cb2771684fce2d1f1daa711e6028cf78bbfd1d0e83ce21f786d529822c0ed37260c27cf8cfe2ce SHA512 3ddc83775c5570e7b61eacfa447121d5248bf3ae984fc234080779ed4cacd9582655bde68eb7f0ba0e62fb840e5d81b442a5d0f31971c9f8d77edd400e9331d5 +DIST colored-2.2.0.crate 35062 BLAKE2B 60c397914f6a1ed2c8e04a7e1cd96f90fda10e8fe6233dbe31424c0ef46ec41fdee7779d2f5d6968662de23434b7cb7f717c5abdf29022e09ab59b9f8d92ee80 SHA512 4e3266c498a18a464b6640c0b735519f91b30fc1e001236badd4885a7fad80fe230e262fed4a8d07d54b4eb7dd24df4daebce84cfc0a4f29b6582153e11df5ea +DIST colored-3.0.0.crate 34497 BLAKE2B 6477cfaf974399a2823a714b766800766245c8965abc99f142c4ab72effeb665cbe408e9f34e28ca54a0b1e82859b8712027ec0cf88b98d2c536f0878e7ef6ea SHA512 2e3a0b7625cebe491a884a4bd1d8c4b4355235cf6e1e940768f92968313e09233d2f9a13a623cd44542f7f2894d4a7d64759083e005f22967d0a4991e0491396 +DIST core-foundation-0.9.4.crate 27743 BLAKE2B 5b695e671cc833170bc6bad436b2d0d8d386ffb8181bfcf2e92a1d93cee67c3ba1768cf57064fb91b0897c6aec1be7db40b5bd256a052c1bdaf872ec19f6e15e SHA512 82d0878a1b9e3d56b3666fb5a78f92c6f7806d01665c242c06a640bd6b1fd36260211e92dc05e1a16d1430622bfdd650aabb0b5bd8e5592f74abdcf412448e33 +DIST core-foundation-sys-0.8.7.crate 37712 BLAKE2B 0e1dd99a5bbb0fe92f55181a37426f6e86445cb20e355f553b3162c88ccc075644461731a0cdcd93dcca65b6cef1de62b409afbd73ba3070a199ab8e7422dcfa SHA512 17492d5314db03abdb3b1998bf0c396ec8ed0f83bc978ae22d6026afdc86c50b58cbac073b3a0d97b92da7e98be11302faf1249d24313494bc058add4f4cb63a +DIST cpufeatures-0.2.16.crate 13405 BLAKE2B 06d061cb2577057bd2afbc8cd6783488595701dbc46772533645d86aed71ba8b20905625b897840c90aaebb41360a286935824ca49bdebc0763a81df4bd64402 SHA512 97707ae1b533ecd3a6fe412a22fb70cf4ac278c2d7dba407fa7dbebd110d06f88a7b3aee3fb7cf4b0b5ca88f6fecf390c4d3e5ccbd4d18a75fc2f93a647e7074 +DIST crc32fast-1.4.2.crate 38491 BLAKE2B aaa3acca66e5814a45f12a90ae09f6ff5fc14ca94c8539184dab6ed928abc68cd1d37e539c268c1effd50ab3af20de6038593fb9c6bd6a664785dac52f6939fd SHA512 c7608d33022062e217d3576f536ffbd51479855a5e5874529c71db2bf6a937ce04d814c39cf777309c38445393bf43cb9996161947e28738abd432f11beb7266 +DIST crossbeam-deque-0.8.6.crate 22471 BLAKE2B 02b854df171b0430ca8a40349674ff251698d0c322c317055da8678da6661730c945d86737fa4947c3bd824ffe402271ee2f77fd6a505d2d46b4a41454c510c8 SHA512 9368c0c224c4b84356f1d422d8869a5ab4bfb36b0ff69244a9e7a7304ed51f034001cd9b2bc35849df874d36ed34285c66574943573522ea32bbdc5a05df6989 +DIST crossbeam-epoch-0.9.18.crate 46875 BLAKE2B 200c256cad6011a3a14c4664bea6b150fce72d561c4fffc387fa561b08c0480e8756bf51c14874c5fb19f427424547f72d2cd7dd6f56fb8b6666a85f8d52bfd1 SHA512 0a8a199b9d77f4e28e91fe0a0cbff7e0dec58cac283631fd972477fa912d2f6ddfddaed2c695e4978b01cb5440b702822af6333e7c3dfbcb9a2c2086999516b2 +DIST crossbeam-utils-0.8.21.crate 42691 BLAKE2B cd9015c41f532eb3c90101603f32d383f01e6880718b727d6d1fe46872ae276cda685e1b548cf77dd22bb1a05f0d4c4982332c2bde90e1743dbd7f51919022a7 SHA512 6f4aa7ca10c20da291c4714b56ceb1fab1c06b03b2f4e28e474e9aeb95ab6615a25462dc7819713652c3b5f6a06fa0f24ebc92c533fcf35dfcf2655857d975f8 +DIST crypto-common-0.1.6.crate 8760 BLAKE2B f2422bfb89c15d47a8f91c8f6695e05eb56990a922e3cdf3d426044736f9932324c0d899a151a6df4d6683e6a6b21659c657d3988734014c02cd854bb4b924e7 SHA512 471dbc43f517089d2cfe0868e29510c6ca579875b3bb5d013c70796db969b609b6c4bb35c9a07b9a2917012dc5708b717d48e317a20038adbe7e7039bf3ada6f +DIST ctrlc-3.4.5.crate 14592 BLAKE2B 189b026f4061b68848851dc694c71c6ecf87d6c6cdb4518a3aa215ac3d77739db43aa68e3c628e51dad99d7ad089ae6c66a6d03bd912ab9748a0793d09c2333b SHA512 3fca36deead46f3ca586f0a07ace804251d3c3e49a9a63e8c34546e2305d08158770304ebd0c9ad6ed499f811cbbee0b76ffee1858aae60852a61a19024db3e6 +DIST deranged-0.3.11.crate 18043 BLAKE2B 738d5a88732e227bb0e0d33c04ab8248a699c7c499100666ffcd78673d1f38ad2d740222ab405e3eaa7a0a6f4596cfef90bd581a1baf77c954dca830c22e74f9 SHA512 48485666d3e50eb7976e91bed36bddbaea80fac4ac664723130069bd7d17893b6d1a2b82a4c3dd61677162e4305ba5ea8aec7bc2793d1b8b92dd1666c204fc43 +DIST derive_arbitrary-1.4.1.crate 11521 BLAKE2B 47ab73cc942314a65574d2ef8395dda33361fcd1e33ccdf37843a92b0a5de62540277e6791991ae54835ba4235a9fa504cc8f6d43cbfde20f18f14b70f84defd SHA512 0d499a368f9f97b0a1a52f17fd111109b071c25c2732c206c96485a7a753520ad706320e5a817e1a10e5f8cf154afc6afe0ce09f9187d23b4e2c2ed4961afeb8 +DIST digest-0.10.7.crate 19557 BLAKE2B 61e69d78cb8d6850ae26ad7ff2d52dd6dce820d8c621230def11cc0e8aa6d883a6e1b25340fb45748db52a8ccf3c8d36a8aa0c8cdf4d4eeb4e3f870d86abe09a SHA512 0dd8c012468ab9011b89413ea4d3647d95b1f683b020a0e6274c95ed5148638b56fef19cd9044c837ad53715b582b88eed277fe96e917c27c5d7abdbf7c3794c +DIST dirs-next-2.0.0.crate 11689 BLAKE2B f5022bc51dd50bad4ad0fd05b159a4117aca47afbea66dc42c8306ca58f3a550165afbcf9f5f721ef5ad8d357eaff305c6f6e42789354a910d5f1d05d3b7b7c6 SHA512 6ccb732da8ccf7bf35952c22a3b0caa8238319feb0a6cd3b0957e6be12548a2ce507c69cb6d3cbd2adfb37e13e6521c6229da5999edb0e47a292a41c3ea1a766 +DIST dirs-sys-next-0.1.2.crate 10681 BLAKE2B 71431533dbfd6016cc309c14a842ac8d43577abe768e69bd2caaf7d19d743f3ca95b9b0be1747077282089c64485f3d4e24bec8e56d4d883f25e494d328fbf3a SHA512 b3c40a8e93d4f9f4a890718076e14779aedd67a79da61b466788268c1eaea19aa493f043a7e410f5023a23d5509e639a6fc6681fbee30e252a601091cfffa2d5 +DIST displaydoc-0.2.5.crate 24219 BLAKE2B ba3396c93d27a99a92ff4a0f01a8d192b419bad25e48d9427b76260ebf2f9982291d77f2eb24d239c0b1fbb097e866a20bc46dc1879fdfc6637ea49928444a92 SHA512 5ca35fa59f263162389c1180331e9df607d9374bcb056cb04bc46c98e4d87277162ddb2335ffa8a8c5f69218abc3eabccdcaa71c21b8dd9081cc4146f266b948 +DIST dissimilar-1.0.9.crate 27652 BLAKE2B 2a5d4be38f836dbfc4015c4173156ae1bf769ab3481a4e8ed2a9c2349588403512191d47af7e4210fff7d5c6da40a513a3034e0fbbdb8cdd4bcbaf329da203b6 SHA512 12d9b849b7ed14a4106123ab0a23c96a9f3fffc77eac3d780d0185eed9a6b259f64013460d22a34b01696f947cdee8f12f6a21a7734ef8fa52e9a84c9b60b36a +DIST duckscript-0.10.0.crate 19827 BLAKE2B 6d2b93a742bbbbea0197d7b02d998d6177c2d8d129eb04718976f1198498c19bff4344afc08fdd425dd78d3f9d5d3e3feab65c6b131912de438c57ea80274320 SHA512 544897df034769da21e1f513f0cfe5304ee9f6850a37f5d97943c4329aad79859ef9d702c434f7c9bccf65afca5951c94b055803b3c9b0fd9f3285faf5dafde4 +DIST duckscriptsdk-0.11.1.crate 111366 BLAKE2B a87694f98251058c858091157017165ab1424f137377f8732ff149117ad949aa40f05619815302ef7f28e318f2e615cf6299e8adf231939206a2019866deb442 SHA512 2dce0e5494df42ab950672a180d8ded44af15cb5ae37b984a6456a4c8ca3992fce96f1160fffc7f4a0f323701f92965d14e52c5226fab6f4b2227d40fa0159fe +DIST dunce-1.0.5.crate 8244 BLAKE2B 1499ae0bb3d34e8d42e97eaf551308efc95697366b804dc83c51171a939d45bad46fce9f82a39e17b6b92fc833aecc85eabd2104823c7db30396833388125728 SHA512 36d7d75217d629185a9a9187f7d2e2dc346a28be0ad1c21b1b6bcbe3991e9cd11797e53d745c0b3b5ae94cf1e4cf141cdb2322bab86d97cc258b4145e3b97a56 +DIST either-1.13.0.crate 19169 BLAKE2B d6223c76421babf163a694aa513fe07adcf4cea329872c02f5af5956e89b2c353a899f5708e5a2924e5a92d871ba748490350ba30c17dcd78dd4379e229f6e11 SHA512 72e803079bae621d282136ab1e423ba71415bf12038b6f386f294cae68a67ad9ff16e4fdf4344eb3fee4418e853f9cac344c248f6befa3006d1c954668b36322 +DIST encoding_rs-0.8.35.crate 1381050 BLAKE2B 2db6797e4f226b3836c18496ed77f3fb113fbc075864fd264f23c4fec8396eb3a01c439985ba0586a4464ac4043ddd3acac80e0ecf897cb59569e5065ce2137c SHA512 4b55b53553c5cb6fe05ae81d1c6f3b0bab73ecd3d426b15c58b9de9ea8dd61617bf0bb2e6d3ae2514c7cb6e73019b1a083173d1423b3ece2d190770c597114c4 +DIST envmnt-0.10.4.crate 1194963 BLAKE2B de1311a32bea0fbba21a071ff11efd3adb5b6fe0623967a4d35f805f6b2610c63e96baf8c0e6c6d393f533fee453a337779b5355dd0259257b6211be6254ed53 SHA512 09b3810c46361115695143856e0008263b993d26db7577468ef9f8e9345a2d75f6a32ff09ac00a89431e8f1ec980db40d58408b58e043d5bdf1d978b3cd0000e +DIST equivalent-1.0.1.crate 6615 BLAKE2B 302d78069d9df05e78b53f0488a9e4eb98fa2bc1e21893dc8a0acf2234347ba7c4df4b9d6b380ae77d8ffb1074b9c790460fe2dae47318aa1c4fe4208244540a SHA512 b2bc60e804c1b02c461dcefcfd60fc37145af710d183ebe65f9a4d63f2b2072d23193f98dc550a9213c7fdc6a2a837af23b04a89294ebbb681a4aaf5d5031140 +DIST errno-0.3.10.crate 11824 BLAKE2B f9976b538868daba3cd2d47ff2fdcda16b4a436ca767f865f23d1139e7f232aba263dd4aa38d573442c762999c8a8beab8a4a8c10649d21b49090fa65ced1ec7 SHA512 fa4b9a368f254cd90c6f69f6883af4c579829a6da6f31481a1b527ac9602c8ffcb5e9518cdc32c39b5589c151a20e75a7300c8a907d178346185ecc6e8749f3f +DIST evalexpr-11.3.1.crate 61854 BLAKE2B 7d5bcd610795fdb3242330e93e54e36fea5da2494d778f06cbc01dc3193cb10b4f5f2cdd628f07e38159bb2a28ce8d5f4a6b2b821530856d9a2317423121cbad SHA512 57e992c898372e0fd872e27e0c29de6256e80ad964ddabb6bcc9303ca1e4a2b093cc985eeb48177eab2a4631041bc78755f7c26073a1227f5a0439d8256f6de3 +DIST expect-test-1.5.1.crate 13672 BLAKE2B 69d2b9db16e0f658389b9aed25f212c864abb09f5df64e94dccf9831a68931ffc5b927398515d6cc395c76c53c9ed1e9d2713b1e73a8f0a60fc1a66efede37db SHA512 b5f3f643cb7467a2b78f5057c72469a951e3795816a816a065c51ecd1f54d2c8d557fdbb5dcb0e6d5c17d6e42e6fc4394c73eec2247358b8a47a138a19e9e147 +DIST fastrand-2.3.0.crate 15076 BLAKE2B 15c9a1c4f64d94c4bfd38ae139c6fe19b6b621a495c1b57209edd6d76d978eaf018ba77f356b5086c3f462a6de044fb5e3b172fc288309569911a17ec39951bc SHA512 267fecbb7459c8840f03425733d278dd6c4e7637b85b99552877117ed5e8015e094d86aa95841f77064136b7f382276c3cb2c2bef7b2881d272f4aa57c5cf947 +DIST fern-0.7.1.crate 304533 BLAKE2B f525e0dbd7c36690d47fd48eb52651588719de72e185b4922e37ac3bb5fd6c59d03761c69bc3ce7c151728a0d930bf919e80295e743f2e79a52b7e6b9a238792 SHA512 550c47b49364b1e517de67655b9422356434b05be9bc52392d6dcb80a94f738ae84d5e3cf8efae9e3b91f2830fbaa2d19f7f4d37d34bfab1971d8b3fd4805691 +DIST fixedbitset-0.5.7.crate 26537 BLAKE2B 48b7e02d7fa3fb33f05fb2de50a829e2f25d19ac680d59c754faef754ca4678d1671fcdc66d06c39b51b4f937bca44a89b87da195e43a4a905a0d29fa95996f9 SHA512 320b1b47a9f93590f24d5c111c171c401f15a50dc29617c8715b6c9d0b3f26e17f966a87d8628661dfc62ff8dee98524f3b6f4f4391725b1b77db714eb6eef60 +DIST flate2-1.0.35.crate 109188 BLAKE2B 8bd6e51c3bcc06044e5b8d7ead950c3beab6c6337052fd48e86175f0fc98c8d12804274308ee515dc6156bbedb2277dfa2706cdcd7baaf2a789122473248486e SHA512 aa2c4f0ad46cfbc7d2bfbdffd226eaa37f5223a34d132d8fb2dfd04c20d15a96c4882cc377fd72afbc7d13e512f5e9934386b0390a0ab2b171d081335c58fad4 +DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334 +DIST foreign-types-0.3.2.crate 7504 BLAKE2B 520818b702d990d296ecd31a8646850202509ccfa18edd0e1b260289619a6c351e758f317ec0824bd76eccb209b6f087057c25f1bd01a47897715013dd834867 SHA512 bf27b8243ed482c202d120383374f19ff09422535e24b9c1aebccc66529bf300ca17b8bbc76d67f98ac092e614497afe3add9dc68aa69c93074df05762f91232 +DIST foreign-types-shared-0.1.1.crate 5672 BLAKE2B d2e42e04b6657e7a69fe0bd20c672176629c743e49a55fd007bb30e289710b70045d445ae9cae0eeaa747ee708c90e8abd9b5fc39bad8ec0666befe1b696d4f1 SHA512 bafdb2143e136fb0818e2ffd90b5c862b7181647d6568947d4e4531012bbf7a57b597221ec7056c1b562dfc0c3b5dead26d1a4111ebc15e7863737a873518a4a +DIST form_urlencoded-1.2.1.crate 8969 BLAKE2B 383d3a197b73fba199220b7708e16d770591ac16725faf4efc1a8c230c569c381870d4a11b8fba623e761e68f9d318630b22101d461e67dd26c67e13a73358a1 SHA512 c65104e2dc08fad572bb31f981700fd43dd29fcff42b01c7ccdbd3d4c23dec12360aed3f1b5fc4766fee386d418a65349b2941b8735f788cb0d35d631a6a8dd1 +DIST fs_extra-1.3.0.crate 31298 BLAKE2B 96dfb4e886767d3d3850d94cc789867c3ed461feb9da0ba90c600b2b41c3119067953ba795cea5e6c8c338adb6fe6426769a6e6894ea3e02eb1ab11794eb8d5f SHA512 090d2ace0517b86dd2f54c5491366cbb6e1677f64cf64f024f7dc6a3c42c4f8c54b215e954572e2df10ae7f0e956890ecf7ccbeebf66b645c7647409484c845d +DIST fsio-0.4.0.crate 1139854 BLAKE2B 59136c9daf6f515427f8ac44f7f5b9a075ae764f12c755e31ba277470e6fed428770aef99cb06037d131a95c208dd26988f3961cef8d37a9a1a575f4d4b9b8d5 SHA512 a7bcac0b319fa446e9b02d8e0892cdd5fa898915674f1564546fe7e339ab9911d72841eb0d18f0201f80c0ae2f638b486bb08e965346e4c433112de8eb45036c +DIST futures-core-0.3.31.crate 14318 BLAKE2B 613d16e4f18547e45ed0dd56a7b908306393e479c379ff64f358844eacb1f8d37008ffbbfe6b1a4ed184e501ee9214db149d9cca31651b7d353ab4a99c8f5ee1 SHA512 d2f4c2476c4f480f724a880ee16566fcdd545579d3cacd2f16745812eed9ac4a7a88d59d4a38b163ef466c6f6b612b9cb06308a09d52256506a8a90e358db935 +DIST futures-io-0.3.31.crate 9047 BLAKE2B 667e62b50be304b68b8437d93b734a0e2433d88a3b410010ed0b04eb2bbfbc9984454c3f0a591f720c9983582c6421d7f870f0733c31337c4c518112f52aea54 SHA512 16d21388f7ca083d2c618ec140cb2c0807ca621b8c338698c367d862b99133ec9edda828f051f3f666472c929e7bf7a5cb334fcf167109c7c392c5cc60b54fdf +DIST futures-lite-2.6.0.crate 45157 BLAKE2B 987475a28fae8e04dac435867352f8f225e72041b6f73e97609d9c3179d89c35519d34e4dc7a08978337303c904f339549dd69c10f5eca0b0106deee5246a840 SHA512 2e896e15e7251d29f20fc39869432f3b7649fa567a59ca378bd76b67c62d5258651315972b6fcc292e99bc44e8c569a8b2cc8d3882af9ece3624437c0bf31f55 +DIST generic-array-0.14.7.crate 15950 BLAKE2B e74c785e3127095625951da192a018281ea9976aaeb11019f9088c3f27748c5fed1ef25d577150864486dc48b5138d6892e42f99979339f711a66fc70756c82b SHA512 363a7b04e4102f9ca63d429721c1ada6272be6bf0a2e97da681faf76381f73f0e3acb86623b9ce2dae441de9fda704088391779b9769ec02b3c8c9f9f35f897d +DIST getrandom-0.2.15.crate 37163 BLAKE2B 7d534e799a4711d01c6553b8c9422dbf01e384a850fb0f7cd76e444628f2b96d28d0f5e8dae042f8081a2bf9340f57c558be50a6f22ed5fa6b0301a15898fb35 SHA512 04789a53d3f4a84862e1e8b2113641af67e471b468de1222470d5e6cef0015232463a2cf3c3518dc2a533b3983b175a7c8922da00665bcf71c1e4e279b67e6fb +DIST git_info-0.1.3.crate 1118729 BLAKE2B 62fb00bfa98be27b226c73b9fae651df1aaad96615acadab286cab8243cf3cdda8c2896952a2407e5e1680eabd55a5a052dcd0a77fc54667698dbda4ab9e1851 SHA512 68f196c217cf066b0a5ae4ac964a0b7936eefa1d20b3b111a609d9b2175c244a055d9d769433efa4633ae18e3ddfcef0b5d841b4ef2a5e5257ed187bc366352b +DIST glob-0.3.2.crate 22359 BLAKE2B 564b72e2738cce5311aee12d8d6147631cb571f7b96d8d3823098d3dd449bcc23ffed5a6584f8979402bef95536b0e73fe9772f273295a0079782b9f7d88d19f SHA512 d15389441e337e3fab9c30102fe7b4b1b3e68d8cbb5d14162d2fd7e7d01a9812b2d6d6d2a24a60116418be41e2075e70becd6994c13b34365d512521e8debb02 +DIST globset-0.4.15.crate 25177 BLAKE2B 5556f4cd7c311b2ead3a83fb2c84280a48e493f024bfd7269c91cde6ab81315d2d7f051f7cee9d7d34e6c8563c2452f0ec04a9d5a8ba5273bce66f5ff8f9054b SHA512 b9281b8bf48d2e297be533aa31c701c0115978b4e580b684b78a385eb2ecb4125187605368a6858311d6cdf5caae7d733cf1406c79241b7d19e7193f5a111dad +DIST hashbrown-0.12.3.crate 102968 BLAKE2B 492072f27eaec45abd2c5d7405c614c0c6a8221425e901bb6174bfa1688ee524408a618650126d6c683b7285b9bf0a21dcdbff7347e4d8f97bf7111defa1b7e5 SHA512 b3700fcd659a21a6b9b3777c18b37a83bf25542b4e8f2b963779a122f5d22e1742c064cfc03e649583e7dd5c6e90ca8407f8c51a0e8755f6a108682853022f76 +DIST hashbrown-0.15.2.crate 138478 BLAKE2B 453888ce68b10cd6e93d787986603fceb29b83fe2dc417e7e57316b9e0060d0bba51ec7fb71d46a038662c99f60deac8237a8f349297208d1d223bcc13f0d0ea SHA512 d6fc0613623f9313533dfcab1240e97f652f78f05baa21419f7edb2eff030c4a2c5f426d3eaae747923cffdd8aa9cc2648340e5fc229395b5eacc6fae087c8cd +DIST heck-0.5.0.crate 11517 BLAKE2B 5365ec43b2239a76b33a174f1a4292ece4147f9d382a68c6c60db78fdc8bad0afb1d51a65bcb25e96675372faa4ea37c318265030b0546ba51942f7c929e1835 SHA512 f044fc9c3d22466629fd8f772ec0555350fd611c0cfadca51d99a3d2f10e155f77c1091916c8a95a6b9b499f366c2e99a5fbf45b010f988bfb9b2501bf9f6a76 +DIST hermit-abi-0.3.9.crate 16165 BLAKE2B b779f005bd4cb9ba9abe401a0a559a5bbcc44726ac37f53e9c8d1f7218389ec8b48f74d14666261bc4fba4fbe5558cfefae873c49a2312c8c8bd4010b8344064 SHA512 f3a5a51d834a6ad55480b53f7e9cdc73a512ab0cc6c246a6ab1e8bf8f9851a0c8a55982f5bba6cb57b5a03b54870e73b0bab0a79195764c308318394a3ea8045 +DIST hex-0.4.3.crate 13299 BLAKE2B deab49bf3d97f6fd7c0a0855b50232422443b226362bc7a4a19e57c2e662fff2cb046d4c5bd7618ddd523045f3d8c78754508f862f9a8ca29ca9247da6d6ec79 SHA512 fd8ff33b68eea2d6f2c6b02a6d82a2807cbcdc209ca5a76e3e3e5d006917ee151f236b6d18e2646cc9a9674bcdda1d6ce6ee363a89cadd99bef00d0eea9989e6 +DIST home-0.5.11.crate 9926 BLAKE2B d9c0d3660aa7784f3a26f3930a5ee35dd50cd15b7e252d930240ff9bcb70fdb0169f78c02b5fd82318af8c398d7139be18d2e9675a1b85c7845c90266945da1f SHA512 cd107c4cee793b6db8b29157c3aa2629b5ef1b9fe129fd903fe414faadfa06a881a1b685f1c66fa5aa1deefd3013a210603c952bfa4bf02d5d1f90f75ba9ff18 +DIST http-1.2.0.crate 105932 BLAKE2B efc9fc4ccc4a622781ed895f77c1752baf34e82d249acf97687ac8d4260aeafb333040833d9f8df5916cb105cc8217c8f27ddd021636b9248ad551ebfe4d83a6 SHA512 2c8e7234ec3aa720c9dd762c0bb06367fbc39ea89446fc9d8d2e55052a4ac461559a20a8294c877879f3e94d5db06fe41e2cdbb9664ea7ab1bc8003abb038bb5 +DIST iana-time-zone-0.1.61.crate 27685 BLAKE2B 2091f0bdbfae3f63ff846e27136d9779a2d65f85cef899ea3ab0ff7c987329e6a584cf49c57de566f08e0277bd4981ac3db30ea0cec6a6757ed50d96e2c6583f SHA512 d16c67f435606334042c3a286350db46ff3409f142c0782509b136150b4069aafff0dc5c2ecfb7519dd8d105b9a2e6649df2a7bec33ee3966dc94034c9d5a1c4 +DIST iana-time-zone-haiku-0.1.2.crate 7185 BLAKE2B 37fa14b589ff092377b9271c414d4e584c5a531f13f70ac48df26df3cc03353db635b4630ba192fc65b800cce11823e91b91f03dfad85e4bed55aa18398156cb SHA512 448224ecafa935472ff6f0aab7cb71f9dabdbe71569c4b94fcc65baea925ef48841577687c9a31106a1826c2105e8dd73c748e9d27fd002648e5b0ce838af6b2 +DIST icu_collections-1.5.0.crate 82762 BLAKE2B ab89336790ceafe62dd72f0aaef16a6eb47fa5e41424ed990e6c059ad431cdb3dcea943436aed0bf9c6eabd7aba12d255a2233fbbcf9cf5f666ef1dfd5b79a16 SHA512 127f1c91101ba69405b10a2590579606df766166fcf1fe6aa9a74c4900296425cba5c47a391a53a01b02026af5581f068fce4a7a400179809f7ed9922b94c0db +DIST icu_locid-1.5.0.crate 55131 BLAKE2B cde2b988f0af200b8e7851a66b8ae08881670ad6ff79c5caf5135a04c200e5ecd0acf27d8856fb0fce46d502527d506095f469c28f325b9b9d21d2a3657149be SHA512 4b85f0e7cc73166a542b2e502b3ffae1f30d2a9609ab83acf98e90b0edb37fa8ae4592f61ecf48a0ae0779fdd376abeff59e1d5cb97475012eda99ce2a97da57 +DIST icu_locid_transform-1.5.0.crate 29094 BLAKE2B c7bb5c5ed273a6a97279d4599f612dccdd796f3ae717411aa5b21949721989986d8b766041b9c7e49a91cdd42a48fc965effb8d7fb6d33554926d203a6535953 SHA512 1779078e2ef9859bee2bfd5414ad7e4b0f0a40e6813f4ccf8de2bbe8c764fac7f99ef001cce22332a8b3840af22e9c7fb7cc0341cf8ba61303794ebe87071e63 +DIST icu_locid_transform_data-1.5.0.crate 44727 BLAKE2B 7fc5408510886bd7b7d796850a542f2c1d759d2c67492b695245d46b34930e3918513cae2699963f603d2bd02484960b05afd58cefb6c3152ec201880366d44a SHA512 1c00fb962eb4b8c759b1120313bb890f4388d579890d7450b798d6266a7d6adcbbebc8a8dad2f267668ca6f1c059d0bd2209eafbe2a72f4558c85258eba57405 +DIST icu_normalizer-1.5.0.crate 53113 BLAKE2B ccd58f24469da1f237ed9a349f0b3bdbb49b8f5b1995d6254c6e3eab53a71208ff4a0b09bdc68082cdbd288df66499efb19555f41d12a19205d724af22fb504c SHA512 22612b86a24e3ea222469392763ae9d40dcbb37191dd8b9fa1c64332463a4299a53275a1cd3deb7e0f057d137f4312d990762f9925d0ceafbc8839d67c425a13 +DIST icu_normalizer_data-1.5.0.crate 50561 BLAKE2B c7b8c5751c6d6df03b23d63855335ef67b34a0b13b15f1f8a8986943b5131874f5205155889e12253692b39918256fe2cfed70dfe2087011683ab9165a5fd786 SHA512 222fbb819791fb4ec7889e45ed3032ac8d4753e2e9cdce9d0b3f79128baca5ce64157a8a58ecdf39cfddb6c2395001e3cc8828ed51803e85cae133c247cb338f +DIST icu_properties-1.5.1.crate 64479 BLAKE2B be7d3a1663664095f4af654723ebc74f385a6423fbd3acad325ba0d6188dce9d9321eb323c1b1d8e6d75fc9aaef3d873b609d7049525d2402456c6331bcbf486 SHA512 7e347c0a02a41a3add950290bee90a339091a713546d4369c2995022e64f127f54204b0d46cbb88f396b3bccbd4cf12720a93d8551b73926f78fd5ec01829cac +DIST icu_properties_data-1.5.0.crate 227993 BLAKE2B 3b3141507077dfdeb4f89316e63e1a651fc5570cda58c6c2d566130858ff67f900c3b151113e6303962fedf1d6b6d617601b21a08c4c0c98e6bf135aace6f299 SHA512 c651d0a50c229acafa648ce234a73bc1d0a85a8bf2369fdadaa62badc741c35e8a7d5392fb1bdb7b720fe2e0f883d1309c78de4ba913691969e5367a4e8bafac +DIST icu_provider-1.5.0.crate 52722 BLAKE2B b1e53ac677e2db5870df0a91de405ebbc635c3f7931960f3bd744b57350c7536116f3861d4177faed2145b79c1c957d79815fadc2dc85faa656a1f0bb338a16d SHA512 6c11d89c7d2b788a44757f02b0e298b558ebe174fe917664401d91109cdc7bd1aba5526b3cdcee1f066018de1b775bc9dfc294bdfb40476c53d552bd6f29d6a1 +DIST icu_provider_macros-1.5.0.crate 6436 BLAKE2B 7405924dca41db72ce422437434a4affece69f888e5c18d2a92f761a8d83b180f40c8de9a34ec15d0e107b63b2fe0502cebd0a0ae6f98d9d6ee37d197e754703 SHA512 a0dd58d731556a010428fe4aebbc9dbcd626b46d380cf28ba5236ec8824045a20f6f2ec986e0c1e791bc8bc2b692a10306f448279f079b4c37237e4a3c3cef63 +DIST idna-1.0.3.crate 142515 BLAKE2B 6835a64772e5d301c2456a94f8f5f40ebe6828aaeb1d48e3fbe015917dc3ef95ac7cfd0e1f1763e23950482f4b46ef7987928c8dfddebab63947d5a29fb490ac SHA512 e75ab18297878df11d82bf3623b005a3dbf7a6fa38c8f78830c219adc7d6f4ac07dce24a5f1186de69035ec316421319e487396cfacb053674137342d72a4126 +DIST idna_adapter-1.2.0.crate 8206 BLAKE2B 5e8d7dbfea699584542cde53039df9d8c3dd408efa2534f11fce7086f679872c45d9905d6b2cfe523148eda3bb0cd4820a7b14317f91725f3d9cdb475aafbd57 SHA512 1d8b54c19878645749a1bae768dacf353b07d266f2cb3bfa1071a7afb56ca68f534dc1d54cae277b777bc97e5986f297cbe2051a82e14f553ea73cd723d9da7e +DIST ignore-0.4.23.crate 55901 BLAKE2B 8c5138e723cbccffe84aa215b2e73daa18d8b2d39136a901ba1514def3a67437f79d932e4762578dd1b28dd8360a397aaba29ab8bb67a93a587a1c71cf5d1aa1 SHA512 ae354b00994ae8570751bc5c09167edd0e2891709d4c4878cf75b24619421d23a1b83e28886d54ed9d31aa427f49153e9a5fc42b5de7262abda20c1c0061b299 +DIST indexmap-1.9.3.crate 54653 BLAKE2B 7bc1768589e74020dc15d3dd064009edaaef39b7aeb682d0ca8e49944e3f020b9c04d64feb102e88b22feb40863479dfaf4722d6a77b5d19e7ca553f4bf64c1b SHA512 2aa8069eb07a814c8fa3e11296c9f032ef60963520d7786ad20cca5cb7e73b8f76d97722a994d65295bb713020aadce5008cd3df5e99d8bd968ef1979f910a37 +DIST indexmap-2.7.0.crate 85335 BLAKE2B c7430ef510738ac5fc4658f3e4d927ca5cde780774a07848791ea87503be09fb4677c52803f6cdaaed73eee600f47e0595ac3db74a498947d0e180cbd10fb7aa SHA512 efac370b9f365a49489aa2c5406eb503044a4df7d6ceb772e0191b02244b6c2c1bf6c43ad4c8924160c1a2bd76d46c630b500a1c4252fc52366295d1cb04b48d +DIST itertools-0.14.0.crate 152715 BLAKE2B 3c075b735a6ae4b66980b1f7ca0ccf4237286b140268ea179e4ac01b1349105da227f03ea9ea721d3e762c3cf8b736cc48b6902148eae73addd864b9c79aa219 SHA512 bb168e21281ef3e43f9c93a079fc1938d79b6db2366fe17e26a90f7ce6fa55df73e54a06334cdb2a7b208b0a64473b5af9de76827a9ecb49378a5f9073d2e645 +DIST itoa-1.0.14.crate 11210 BLAKE2B b2d33dc384757963eab3ae7d80bb672d828a549967986e3af8c70fe71a0ad46c4a278da2db4dfccef99e804e6cd4934067e97c0697a33ac3302cafbc46eeb416 SHA512 ea2d38df373652ddacccd11e610dfdad4e3ae7f0d476514e6ac58092733c817bd834e8cd88c3bc4178dd5a646ba628ae626195e0aa407e8534ae3c2a7b049987 +DIST java-properties-2.0.0.crate 11982 BLAKE2B 03ff7845f3e5b380c88768dfa5f529ee022a13f144fd3357fe7421295a2bc8d783e3fd2b3249883a6ac65c0b44d6ab54d4430e28f9ace7d8086115d628f747ef SHA512 524b5952c66fd53bf17b11127d652988f74c504c08f524f3304b47aaf10cb1a909e1f20debd7f8f6b1cadcb2afd321d5ff94bd13c5e5624bea45bb9a077b0f1e +DIST js-sys-0.3.77.crate 55538 BLAKE2B 8a4c04a8e93bf5dab63784a24320a314cc5cb629df788e116c452857b8c049c6bf357f3bf8f35086eaa81bc2d7f0954001addfd0577d845844871ee138e81bc6 SHA512 d9370ed6ea892bd51ea181630ca661c348f82d575381aa4c8b529113dfcab6687f4d19bceecad7e1b28ebaca74d405862150a5b5ee2d5d55efdaf98eed1ab255 +DIST lazy-regex-3.4.1.crate 7808 BLAKE2B deb502308c6cf9d23749e5e65abbd5023ec79e4c02588e60a04a86d2b83c09ee9f8efb2dbdb704a7b93aec4dcb66e44b3ba7469717fda42a46ef0330be348455 SHA512 97e18958575e6a44608a0ca60d378e7cfe35d929e0e4303e8631033650ebcbd0c4be8b839749b7d8651876bfddc7733197c3352b01dffc2d0734aefa9af199ee +DIST lazy-regex-proc_macros-3.4.1.crate 6022 BLAKE2B 69cd298bee5ba3a08b1d6870e043e30618280ce329277a5642ba66ab080f2da598bec9242bb73b19575e1e5f4508a80d0d136c40ef1453055756a1b2c989bac9 SHA512 47bfcbc5beabadaf0e6c5063a4f3b094832eb30471c26916e70403c54e2f7f567eb6fa3c181c7b76a85159a5df2990c547461768f635dab4c8a4da9917915e1d +DIST lazy_static-1.5.0.crate 14025 BLAKE2B df29e0e3d1c061815bdd608b41074436024dc407d454f32517705ab04b2fe06075e310086c5e4961df0b4885e91021589d0bca2c1cbe6f0aeffa3ff1b3fd4637 SHA512 6d2f9887cd7f34f019644e42f02f2bf0111accd73aeaa60973ba0b039b6774670debece1ea9a6978e923208ef5d3ab7326473ee3560c078817f0f7ab8ed0f65f +DIST lenient_semver-0.4.2.crate 331925 BLAKE2B 09b70b9e989ac14c6d24a4623eb01378d8e481017b1165137a6861f580ea030da37a842d4b081b2069f00ff3d4363d87c7142a896cbfee581fca4f730d0467bf SHA512 e00d8cb3f2badc3847a41381c0e8855488c340ce2dd40af51a873d9c57147dc318f6b47fbccaa59a7c3921c4fe0a0fa19626f030bf96dd4fe46721326cfe9292 +DIST lenient_semver_parser-0.4.2.crate 15745 BLAKE2B 565fd4130c37dc6e22d022d235cbb9aa827bbb9283fa0244d6ca873488ad4fcd711dda5d9fb07fc281fd55de3ecaa31513cf7b67133a1e1f0e787a8ef3c1ce94 SHA512 c4193ab5398bc2fbe9022c5fe4146d9b5860b65645dd5ed4220a311f06b83a23df83d0c1130e3390188fcb14635750391bce0938498e80b54140059bd8e04746 +DIST lenient_semver_version_builder-0.4.2.crate 4183 BLAKE2B 466b5ee57af51a23267fbde5584a6712a0eb6514088eb098e8a62c5bfafa6d094e42bc0c1cb8da426834c8bb93c7fed54d14ac2ee9ff73f0c0f28dd7d7ed71e5 SHA512 d3bec955d9f9ab50871f489faf33fc3d0c719c7bf109209f0558d443e1d0511947e6223ad85ee5842f3b2fbb3a5a0dbeda2db088ab5ef2b56519777d881e8bb6 +DIST libc-0.2.169.crate 757901 BLAKE2B 1012cf93d8975aa20fc3f2332e253426ff66be6aed63ace5292cc8568ee419b0f1a4b5b39ddbb78d9c2dfd8d72eb0d068c98faa229ab55556da5e674429f0e97 SHA512 c4566330a7967efc211edf31a23647d1a33aa51fc25aa4e9337716748c8fd4be0ae63679220ff2cf6e892f37d03bc5264c55e8f082eb82574a6ec1fa8e5e45ce +DIST libredox-0.1.3.crate 6068 BLAKE2B cf09f261d3a945d290ecaaa724903e0042d66eca46dde8a40c261ccb1e82c0d6b9926898eadafc6313fdb9f19cde56377b8a9179935482559c4b9707e327511a SHA512 c62142fdca92388664eef83fc89b8607e2df318cbadff6edf9e3d927837853d5cfeb54445299a82054a0ca81853b0a33536966ab26f1f2e0fa43b39aaaf67c49 +DIST linux-raw-sys-0.4.15.crate 2150898 BLAKE2B d1936eb74377d9bfddccef3830b56eb716c38ea3cb7e13b73325dfd00f9fc0df74bae49e4214dd7f27c257403b8b12cd1ef332d53336279d13f7e9497caf4135 SHA512 b5c39181fb6b901abddd8b2e7b449142e2e5691cddadb8e6b74ddc3b53076b1d410522cfa45af68dd18befd24ff12313c2494cf2cb0cf142e2228bfe42014309 +DIST litemap-0.7.4.crate 28257 BLAKE2B 52989ad353a782e9592357530dca3504e3ef5475bd2f1b2c795b60825d971ee6d3e6da51fbb6bbc26cb3c3303f6a751a3e15d1caa78c0cb888288a965666279c SHA512 5009c486a87b2f52237e15e2e772365424e4780c146776656d8e1551e52bc8e06e5c1cee8db1c59ef20d0463962fc07ba5221a46020a82df17a2f623a175f58f +DIST lockfree-object-pool-0.1.6.crate 12309 BLAKE2B 47c4b3ade2102e8c5154404d6eb8bab943f0173bab01764192a2ba76e4dc454a7763a7e2c6a3df6a72f2d0971c419bf69af4f81a50636c75cac2dd4c692a7962 SHA512 d4a51c7e92184ded686ebeb06467e26905b12dfda6b4da28f230e73901d7406d611798d823c0e1fb5e2c9efec5ab3eabfcd8aadbfe9e319046b3cd0d31008e90 +DIST log-0.4.25.crate 44876 BLAKE2B ab9433934d16edca42b38f559c3c87f949c4540fc422e6d65c75aedd5055c7a4935ac0f735e7ef5c901a7443e70d60be77079a104dc61a3955b0c900162b3967 SHA512 b420404c82aeb04219e9f63505d60b8853cad44d1de0bec0750715baae21afae806bd4f741bb8964dd39bb5d1e0f5be41bc38d76773bdfd5e920d30533146231 +DIST memchr-2.7.4.crate 96670 BLAKE2B da38114beca670467c3e1fbf4e415af6f22d52e3223715d52e181babb89b872b46511563985bcc16d7ff4e82f812c6e83ad904b0fe2501b14445119dfa8240e6 SHA512 8d0e8b9c30208897d4b1b920f1bdcccd0c2b75d92a06abe4a1b2407938768abb6487d63de56c6a80419798fe69517210643dfaf11f5f5540185f0eccf220adb2 +DIST miniz_oxide-0.8.3.crate 61827 BLAKE2B ae8626de8711a8b7c2bce52d2e226a3e973ba6919ed33904883ae6287f848fcf40642afdb9ad71bba19db181fe9ea354c85cd81c1dad889588d5df8fcc99b9f2 SHA512 b79cd67a477851b18ed87c887bfd9f40f97059eb3fedbdc3a52eac66b5fcea42cae833eea39fd62becdb057b337f91d27f2087a407d02770feeaea934c0b1e1c +DIST native-tls-0.2.12.crate 29517 BLAKE2B 76f4bb2aa8fefc306a04ff50a62d6617f71c3c34aa83ed35f11714ef2306fd82f76c7e26ab7ce50f8eabed40602ba02589dde2d98b55ea6113b45cc539c84bb6 SHA512 15fbc9d02134d3d55334d2f02fe4f64be50db991d75720b38d802088f06cf5f844cba6b25dfd7beb92f2cd367ba477ec2098e3c7336c4e5a5a7fd39c753fc723 +DIST nix-0.29.0.crate 318248 BLAKE2B 3a13a88375a359cf77b28d7f77f47f178bd31ef74b7627b6701bc6fc601024706be4e9ac1a076c7cba26b64d3bac4de17aab45fe3c045aa7a36e2d9232e872ca SHA512 86c05084aa0e6238f8d48df0f5ce6e6d7661b589f4f3fbdad43387c59c0d6afafea4badf25d31db1611615de19a0b9ef18ce614846b79a47cad4e2c9367dbe7f +DIST nu-ansi-term-0.50.1.crate 28536 BLAKE2B fc259654aca2119c1d913e101b0fe7a561b44ba4a6145d309bec23d82ba5e4db916852acafecb727efc92b5dea1641304b26c383ac07a8796e296bb179eaa669 SHA512 c29735a5e1562776251dbd7337a3e4b68eeb299e86c534feab6478512ca5e167b42ebd32c6c461b71187cd375b8a2f587feb962f1501a656543f1429731a95a2 +DIST num-conv-0.1.0.crate 7444 BLAKE2B 4f5c4695006aa3ae77aaf5c55999a07d8ddfab294584fe10d73eb6abbb3f551846646156581599f966a28c74d80d3ac4373c49d2099991f7ed9edb56d36feec4 SHA512 7884c0c6599c66e40b9a79435e1bbcec60aa7e68b59686922dfab19ccbcac6a6e54f208cfb3d5a8a12e86e4dd67e09977d60b69ef6940e308a28256733f36100 +DIST num-traits-0.2.19.crate 51631 BLAKE2B 78637360cbf32d172510a62bd9442708af9730c0296a2bb4ebd200c08facd49bc31bf8ddd58967e0df7273a938832b620265d9f8f4d26ad16049bf6dac1cb4e5 SHA512 180018a5eceb45085e4e8d103ff21bb4d5079cea874c42a0ad4c76c99d275d434bbc1cc289f0cdec172866daa89dbfe0871410b2cc3407233fe1129786905956 +DIST num_cpus-1.16.0.crate 15713 BLAKE2B 11b432fc7c7496d48918f09ed0954e0f1d0845596301266321293b374392898853fb7c313a0b0fd9d22d9dbfe3ccc5cc1e38f38407c89b2e5906eb76caa6ad68 SHA512 a75863afc4a563e63c64d06471c7921615355d98011ea9497b1f1a7dac2bdfc876509136018e8062ac38575ccf476a196d1fd9231e09e90017333bbf2df4615d +DIST once_cell-1.20.2.crate 33394 BLAKE2B 79dd394fcf1637adfef28b4159ec653c8b71d2bda0e0e36a940c04e3d87698f039dc30c97f26648ecf0d9742962f1f0a117568f7c705a8a3fc167085b0ca3e80 SHA512 bc6005bdab7a154c01e2203fb553a68695727475a9a882cf906d49c054ce886ad92cb491d380b6b9fe71a81b2fd690ce91c9a6cf8dfa8508470ac9acfc8a31c8 +DIST openssl-0.10.68.crate 276578 BLAKE2B da7c42f8a87150c76cde12316fe1c170593e76a4bd55176ca5ab7a43c57d5457246bfa91bf7bbf73ca47c87a066789226529fb7ad57c5e93c551baa67f6a9eba SHA512 2b0c7f5a888b0e398ebee9c0fffb6fdb8408c36f96eb99182ebb9e162106c012334554304ddaaa6689d3ae41cdf638ba08187a40088efb95a5e9f6aca032a22f +DIST openssl-macros-0.1.1.crate 5601 BLAKE2B 69dc1c1f3b7bc4f934cae0dce64c3efa501162e5279efd6af3b74f7a7716c04b6996b306b310f1c045cfa2eff2895314a47ecbb020a817e461c6d77d0bc11e92 SHA512 57e75c84f78fb83f884eeaedb0dd135ecb40192dad2facd908e6a575c9b65b38a2c93bca4630e09ea5a82c77d8bc8364cb2f5778cbfe9d8f484cafe3346b883c +DIST openssl-probe-0.1.5.crate 7227 BLAKE2B d1fd6a9498b3ab7f25b228f19043067604bf20790530fd0ab6fe3d4d3bc27f13e6e94d1e7ef49314c3663477d8916b8790b90427f74976143b54b95350895165 SHA512 7e560314150709a34520472698060c4f29689d4e608dc4dde146140aa690350d3603279c693367deeb0f21ab34ef61956143a3447827a2b7a3d578b9ccd6552c +DIST openssl-sys-0.9.104.crate 72287 BLAKE2B d9af8f2ae8a8dfd53b3bb68433a4dd2a4b30038858ac58aa98d7a23b2d23e0b7c7d8fc36c1733d0330bcb9f51284667b2c32fc5a5bd4d9e1a5df7b98d610a997 SHA512 e812d5323bc0ec7376f176a980dd9856dad6d36513e854d333b93ce8a14c20a9ca61be88db82ba2a8ae4e086df5c3fe6965ed10ac155eb7b502e0225c0124278 +DIST parking-2.2.1.crate 10685 BLAKE2B 3af8020bc27ea921d6023c14f20545f70a5a5a5a216d5f97458d76d3bfc8d9de937f3c92668d31a79de85ce08ed0236d440c64ca1e4fe0a7748f412b941c052b SHA512 2e49137b59000f0467aa9ee0648d53e06cd2b8319d6ea28bf04c621b873469739a34186840b02f08d770d109cca26e161b3de3e4341dd729701885307a6a8177 +DIST percent-encoding-2.3.1.crate 10235 BLAKE2B cf8e2fd7b359a05b7bdaf731f9ae84c7fe6f468a53482eb2db7f93dfdaab64ac812b3664899db260055a93449462e6d219c695942fc5b030517b197b4df9b95f SHA512 5951ea8315e52cf3acfbaa023cb9e13a136b114c54a7da0bd44619ae24cd2159d4a96469d7572a2fdabd94e19513a033387117d7ca81d0eb409fb383e4acda44 +DIST petgraph-0.7.1.crate 736025 BLAKE2B c5c54cbb0ee2a388c11ae29d20d76ab9b9cf4bef996532aa5ec0d08dcf548218915832748bfd759972edb72b917e88a1f935f8e24192befcfbf37c89df28dcff SHA512 3b93ef0b9b92618b7d5fda4fa35322815ff102065d6eb08dd71706473cbe679994014536ffe2b3aad72a82f1e04b78e5878aecf4893fa6bed0ee17f2ad2db873 +DIST pin-project-lite-0.2.16.crate 30504 BLAKE2B efd0b426fcc6ea8852bce499fac61f9755a11c6a2999cbec514f093ba7b3f94b1f2d437ee9abb243e31f3838ac1c74491a212851d7798eb249e209b35e015332 SHA512 971adfe54cfed304647fd944c1c915e78b37eaf0de3a582fb984a5e91f1b7d4db2cf0f53a9a64b64427062d4b41c0a36baddef782411a76ae3be0f8ca45f0718 +DIST pkg-config-0.3.31.crate 20880 BLAKE2B ab7676e810751f89639b60ae70bdebe1d57edc76319f83077c3680049a701a26e72e8cc485fe77cdc4346fe3571d32c59e7384c8c86fef17e00d7d81df5daf43 SHA512 ac3e8062ee8831a4e4fc717b5247dc7f113da7bf6d64ec95cbca7875959a2afa1497bf81d9dfc27206b5fb10027a2509d51dd9ca1c10139d7b4c78128864fdf4 +DIST powerfmt-0.2.0.crate 15165 BLAKE2B a3e1ce63f5866f75526eeb749bec6607e42cb495bbb953082cde7e98e6aa429ecaa41889d98ff7ed4cf5031258b4f7e0553ff8fc435b3b6f8b4ef2b6d53d9b61 SHA512 0623f92e4d6ab284b3f6dae58220d79d9185df4a738999d68040c50d72fe0380d70358cb622f079c629bab53bb03c6e085e165d5bddfbeea84245864fed90029 +DIST ppv-lite86-0.2.20.crate 22478 BLAKE2B 9d68dc36d8148047d571c0147ed29f586f3c6ac9394b56bd955c8ae5bb18f5a8da5369809f7b8c3199074e23660325158c32c62e1bf69a16cb1f5da2a01f5df0 SHA512 6d171f63b42296f7765732fce3af7ea05d0d81f1541ffb3ad86e81210715ef4afe5bc9e58926e97e757aea6ff96a8012c8411eac78be0fd080898318ed21d7d1 +DIST proc-macro2-1.0.93.crate 52388 BLAKE2B dae4493215b88f68cc485bc0ae80f0a48ebad68e0260839b1c367832d1ab778197bf040647b3fe36cfe9d5f7a496e05cd71b5914f531eb129c2d458d5f0be896 SHA512 1ae650e390e4f1b18d05f42d2ffcd025cabf72568a326cd85496c722600108b0aa0ab0161b39fcc931b8b302427f678650e703f4db57aa1a60f1751db881dc6c +DIST quote-1.0.38.crate 31252 BLAKE2B a3836efbe5c21dec70c684002b47b8fc7cef643c82ee903b537a48bc0707a28106c4b33d98e60ff81e04c7520f7404b1dc4d49446e8d91dded517e476c36e1c2 SHA512 530c47c5e6372b508bf5b2b88a138408a7afa5ef52c47280ed20eccf39f8e97dfc1e0a18c1bd5472efcdc49a7a1e69566333a0a1b4c0b4f0e11e6a7a85bfe8af +DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2 +DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075 +DIST rand_core-0.6.4.crate 22666 BLAKE2B 8b6b66d50aade877f2779c006f8038db450f808c66d73d79efa66c4178dc03db06f12201bf0e7930181c4b0f4030c49b20cce6eb7839763cf2217cad9710789a SHA512 36c67eb845aa2ccca49d6d680f28d418229bbc5a050729e487fe6b9f9f384fdd7b8d67fc6508b90b79ffb3c26688e72feceb3ecae57d3d7f59338aeb62296f79 +DIST redox_syscall-0.5.8.crate 26319 BLAKE2B bd69a69e2a0f3d84843a8f76199ef6b3991698ebac58b23f69c26d02f5f3e24e77a9d5e8259e9fbff3887f06d15ced94ff23b5a3272ab475918e6e3e753dcde6 SHA512 5f9632f1f89f4963c36ede4da9b955c3474b673c3414d81cdbb61f46c08eff67167f703a0b06b239beeb2d720f8fa592a5493c0f7e872728b5b95f561ff11348 +DIST redox_users-0.4.6.crate 15585 BLAKE2B 1d60d0b7781395ff271d79264910d24fb021cd8ef612714265abae25b26ac158d48f542f1e73701bf5b99bd67546a7b878e4a14e40cdbd478b35bcc8b4778f5f SHA512 719d63fec42bad3cbed39deb9242ce1daf3f391bccafa8121f63198120371f112d78b0da8d66458519e946581511004983f04b0a697071f22294ac7c831120c9 +DIST regex-1.11.1.crate 254170 BLAKE2B 5cf41012fc2ba8a006c0eb4a922cbbf1614bf300be361c9e2d98956a9a5e9b140e37bea09132fab7bfb633d4439158723624bcf45e8c619c4061b399253c1b82 SHA512 d065f6dc405771518260425f39a5eaaf8cab62e78c91ceed3b3994a9a121674d2484cadaaf816bdad89c87a40550d57b66a3d9de6618a7119a658301ce7e67d8 +DIST regex-automata-0.4.9.crate 618525 BLAKE2B ee3fc41c8c445be4c1aa3e5b19a3e61efd641b1a24e7a1ed55f837c1fba9c816272cb4645c13232b66b170bc7c413802928beb22e3891500141ad4ede65b60b0 SHA512 40bde0ec91cc27bc0c3fa237a37ecee5a1f023dbe006a999c5888f8f578ee2c4c64d9edfe1827546cea8e92ca3c10f8b4d494d81f3d0422b40d90bca9cf598d2 +DIST regex-syntax-0.8.5.crate 357541 BLAKE2B fc6d125f7a8574c37d81c75cbfd447cbcff736f2d9991b19814ffc1a414ebc5b76e84fb8fd36c983b38e8e391d165cdd9047832b0d9100f0e1ba7085484b7db5 SHA512 549d8d130fea9ec0d5806126f57f31d433f50e9328c5532ad417c44bb5488ec0d20acb0983dbe54dabaa0b453cbea4533cf7baac7144df119e8f78dfe55c5ab8 +DIST ring-0.17.8.crate 4188554 BLAKE2B f531b15cc5cf88f2ef00b1708473a7e98a42dbbd026027ef2c42f2d8bdba0eb1665621fc98db618252f6a131bd54b1493987a0285bf2b9a22eba4c9409ee1cab SHA512 e4966409a4078ee43bfc9cc659d08ad28419effe2a729c8c275361a7fe0620a3c727009bcfb1d0bab265af2bc107b50c19d868a4e80da7a8bb55f97e8b214358 +DIST run_script-0.11.0.crate 14052 BLAKE2B f87adabf71c80ef6c1f3aced9829a1b5c0fd25331a9013eb2380d8d90846584d2d8c66bed622954a85478e563226a605cd66579c6f636a3ca61d4284a1231856 SHA512 f527d68b1bfb5c1b48776270ee5138c19b10f9ddeaff9968d1ce6aefa6827a26f1af7a7b17869ad7059f4f77e25863d6c9ff5454a24e8b525e3890fd08d1d9ab +DIST rust_info-0.3.3.crate 1124323 BLAKE2B 6dcca1878981f7a428e8950a52d3641568b35f1af0db3e7ae67c20cd6f45b94450fc9b03f22720790c6ef21f66decd99e649fa8bcb3310e9aee6c99c2a55d2c4 SHA512 1bf95c4502384644d1dc66de20d9df43bc3b07c135eaaa366a9baccd5d4c574cb7c2f5190403011b71da7dc628a4ce81b22f56a3f54bb94aebb574bdc1a54edb +DIST rustix-0.38.43.crate 379134 BLAKE2B 7e527b0a98485c029b89f2946f07226d772d9ddcce2f21d7fc7b74c2f2377f780d7fb0529f9af1be6a750a0d1a00393534708dff48f4bbd0678cc75ac1a9a6df SHA512 0122fc3ef3b1199105f63e3d06df0992b7fbf4a3f0bf54cf68ff8035ed96329c90c2ec30b365f02a7a9ae1f0018897489f5be77787b4048c2bfe49b30d7839df +DIST rustls-0.23.21.crate 337106 BLAKE2B 3b7c100e1fd257c3b71b3bdedc6461c507ef5dc8183d460ff6e7ccc9ddfbdc3fae908830a98577d5fdf6b418fa980f31e248488304bb9dc198f94dfae4e31d07 SHA512 0cc7c924c0a72be5de3d49ad67f41e1d6b42bb77905a0923d39852d3a88a5e22f63ff38419c9c6e96a3fa760a9635343fd43960c7b6a9d9586d5aa7ac85eb4e7 +DIST rustls-pki-types-1.10.1.crate 58944 BLAKE2B 1bf83e046802a5eef5dc597bcbe045a7aef146c489ef5fca442bc20a9a80dcb2d15cc8e07ffff45890df069b99698bca2a9463d1c2925a8f1a5eaa673ebf621c SHA512 ec63005b54bb9676fb6ab3f7a399aa816881c34670577e8c8de7f86a46a834e71c2363049ef152475d784f12b6cc9301b4fa20e9d478e95a8f1b9ad75f6ba2d8 +DIST rustls-webpki-0.102.8.crate 204327 BLAKE2B 8db832f181b46bdecc419e1433dd5550bc181cbffa1961aa90b2533f92696ebe15d71d742225bf806e2dc3a4ebb110d48bf62b0677089df1eede6d5a072c0a28 SHA512 8cdd5d07bb8d6c3f0d1d6663babc3b7ccbe8c9b1463870a3dd095c67f46addf4097a715da796c70f1891ebc1d045ae7d7c3a352400e8bfd6687e6cddfd33b1ba +DIST rustversion-1.0.19.crate 20616 BLAKE2B 025944fe053ef928f26affb890ef6a563b0e63cf6acc0ce7bd4ff104541f819bbda48ebb59fd8a677e44ca1ea21f4a18c209adf2004c9ad79604dfbeca43b5fb SHA512 45b959aea8155ee47c51aa1d87c6c344b5f4b20199a2646ca30bdabe1c2458b014be91fe0c48c29c2261ad9e5de6df7eef7ddead1682e584d4a906c17984baab +DIST ryu-1.0.18.crate 47713 BLAKE2B 409cdf4b4e77685394018371e91ad6fdb175ac57e1df9f902871f13208515e5a2ab1daa226fc1e7291278e64448332845be4cc9409bce3b2f3daed409259e104 SHA512 a9b2beac778ec47e6be303148d7512ee681bd2361f6e4ac6db32c8b4baf86a8c5eb5b0d02eacd6131ae88c7b5105c57018c3050676e0b3dd1ed9c4d2fd650e84 +DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c +DIST schannel-0.1.27.crate 42772 BLAKE2B 55b3cdf596d6d490fdbc10298eed7cb1b1bb8d6349ac8700ac2e7db66e1d75f0a5bea5b1b322bf30cc0f982262e96aa421998151a8ee1e620b5a09d25ad4263f SHA512 f469d03c2be014c248e7b6408f541584f250a9d58bc8dd8ff4d1e63f5720cadba1c0579b1e5d97b58844fadaeff10e9cfae6d5cd33c5de0fa4ebe699a8ead4a8 +DIST security-framework-2.11.1.crate 80188 BLAKE2B 844d36d2b2216cc7055687110d54ea783a7ed9bfe6375fd4dcbea267ec85531e666fe002648110315f42c3364ff5ff5aeba711cf8d1f5358ba65c8393e96f55c SHA512 02786d62fd9dded80bae3942896bc8fea2a90763427f582bf5d9f127ca5682097b59b5dbff2cde373198ba659316ab5906a68d3141ba00c7408b73ebe353fac1 +DIST security-framework-sys-2.14.0.crate 20537 BLAKE2B 50a04eda370788fb769600b0df2f984155d9ff67c753a8b138568c648fc23f90f076092c9a8f984aa3b6590c547171e53b968ecc4f80f6b7edb8cbbf23bce31c SHA512 a6b5a391450ad91118aff3b9d8420e1099fc9f96926043f5c4061a1fd615a00bb1f86f5a06b9a549f45b27a43b5f9ceb5a015d8589d7df258a77dd4b4dfdd7e4 +DIST semver-1.0.24.crate 31267 BLAKE2B 934f55d953ca52f6c11696889182e1e4c660a6eae3917b15b411d91a18b22c6a1178708caf95da93e70e6ea97c0762ed9154333d60bf0a08b156ca7b50c4077e SHA512 751bb04fb50abfbb92b2612e1d1097f612a1ceee1861852681d6ad67fe459d77a72898903b14f2f01d8185fbbc022c7471913785610c2a8e9d6530e48094869a +DIST serde-1.0.217.crate 79019 BLAKE2B a0aacff795d34583365ddd469fa14c58a6cccf8afbb248210aaff3134c7ce6e34b3d03f437326d7c01b3e78f82a5d19c37ed9fa4372970d8b2793f2889288e1c SHA512 f97b3b54b9e99c9a027390405cc054c3072f49c92803a4ed5f5f69e76a179deda9d77993b645b3581437085912d881da88d0451b9e0da423c64033a23fdd8054 +DIST serde_derive-1.0.217.crate 57749 BLAKE2B 63b4930122d80d64492ba2718630513012202e42bbaa74510729ee66a0e72b8a1ad123784b479697ba562db43868f4bddfdf5e94bb3d744cd68a547471ba40aa SHA512 31020f4533d04b31ae125580a3c5093fad36438d324e2d9b063923aa8c125c654102ae7fbc3b3df892bb41db6b321962a23e0a37950e080055d715d15b18af76 +DIST serde_ignored-0.1.10.crate 11789 BLAKE2B 16900f4e424fe522a72158ffeaa1c279ea96d498317215d2da9ffb61963587914965c87c31023d67be67675721db693d9ecaab6f4b0e064ca438ea8087e8c2d2 SHA512 c8a0b55c975446e06ae6a6ed16690a9b0a942f9e43e84149a8d9727660283e7d42c9e0386af60c7186923edffaf1781013f52739bdd9ea0a5e22dbb006f5a413 +DIST serde_json-1.0.135.crate 154499 BLAKE2B deeb22932145715d6a443b36b9b984b6ace1e254199db9586c48dcfdd270a3208ef127584431e19a826947df705de78f07e58d9126ee1c5ccd2bc73d1e779bd8 SHA512 e19c583aa4a55f1c3b9a4e49b8b5c6b66e91c893db06e52f33e87608be1ff0aa27996065157f45dd4d2c59b752259ae747b2d353fe7cd1d466f56cd8a97fe71d +DIST serde_spanned-0.6.8.crate 9330 BLAKE2B 630bb2cabd74e8d9736e315ac57c4d2c5c4f72264aab35ecc8e0040cb4186885722051a9f7b8a9006fd121fe58428cbb151e5cf541e7de30b6528c84e968f7ac SHA512 2343a2fda35ff57ed8ff7d8eeadd651821fce7e22f91c2d5797c6af7db9e009b7d637382f6f390c17911912865a5aea1ce87a86fbe36f4b6aeccb065a4c8942d +DIST sha2-0.10.8.crate 26357 BLAKE2B 1d01b381223a931dc631ad3a1191f5378b1d2f3f9f20474c5f020e366624c73b08330ce8dc4bdd3e63b15f647276f533de655b545b77f70fbedc1a1846f44f0a SHA512 3be73133a6b7690e14acaead47914dc92395dca4191fb657a2ea186fefd0ccd94d12a1121d63a26027d9a9c62b775c53202473edc461587b9dcd75472af77785 +DIST shell2batch-0.4.5.crate 1109220 BLAKE2B 930d178d345d88ab302bb44acb948dd3a1fc5e7f97c1093567071856d8835a0b9745ec9b6220204fbae619cc1274f985e0a48ac94123f7e0195b8196ed2a35b3 SHA512 b2c51ce2f2bd050128f9148596d6e9aa718391d733cb424b996c0ae473b5a78f013090b9a53777d93c5439eac2bc9f1bf9ed1277583124ab39571cafe6ba9c8f +DIST shlex-1.3.0.crate 18713 BLAKE2B 18800c364d3a628f1a3125097ea82fe6286550c2997235df0bf8483a3906aacabc81308cb239887d46ba2f457cc6f8acd5aca78316707eea5098cd5666aea67d SHA512 5c8cedbe666a14b8a0874defb9208146ce64579cde52ed483e4a794cac5dde6a24bf8d684404edff582f842e1fd4fa3fbeddbe074f191e4ec4aa517aa456fe8a +DIST simd-adler32-0.3.7.crate 12086 BLAKE2B 8e0ae18603b344fd8a6573cc3fe1f8594ad542619a6e0d6e8f62e356a3a97409f4de3a215d561b8ed0e063ab431d81b63967a5a0b6561c45537a27ee84eaa362 SHA512 2976bb7fa153854ecd0d68ccdc108bf81d5da374839d53ce9dfb27e80d8db258bb817ea3dac73921e408541d75e2797b6d20fa63c42c1e8a935b6d75dee14bac +DIST smallvec-1.13.2.crate 35216 BLAKE2B 31a268aad595c06cdb078577a97b089dbea156a0df307a3e6aaaf4861bd9a680c5b11921da9dbdb1bcfe17d58c0cbede1ffe6bba3aef59b384fb1b9703c62d27 SHA512 a97c758b668e40ad9eb572e65feeae4954e09200a04ab92e26a13b48894381cd3a3d2571070c4b7a5e181182e1ede9688f990650342ec69ecfe1a264d234c679 +DIST spin-0.9.8.crate 38958 BLAKE2B 8648bf2e48fc618758e3de67f0a493bf3cd22a8d18666164b0d850ed7c0d73650f7b0af783019dd361116bd60c61d24895cdd2c579383cd2700de0e32a23cdae SHA512 b15ad66ba9b308937f34ea166b799676fa45c67224e10cb57530fe33d2a8317ff3e3db3223a3249fa2862cc141c964d2130d3f39910a86ac5ef8aaf8ff4bc6ee +DIST stable_deref_trait-1.2.0.crate 8054 BLAKE2B 287a65c3e5b47213544a43e57c60a54add60b4c2e3c8d042407d860cc950ba7ca01a2e67ce56aed6744992b61ec1f9aed3321e3d88482e33129548b7d51df205 SHA512 a13cfb22723f1f2cf089b2d07d657846f50c37bc0438d1a76096bea30214cad226b7a422c21f9e191ce87071da8a141d61882aedf9e0203a5fffdfda86a5fb03 +DIST strip-ansi-escapes-0.2.1.crate 8273 BLAKE2B 627315e64f016561a3a2cf14699ce92d9f62e82bc29078c98666384dffa0b84c4270b3fe3c77a62f9bd078ac4a1f7eb7f45df7451716fc4d8551a4a47e17ccb4 SHA512 275639e0a469844cc6e725ad34c4367e63ab69a1c6a43780852c0d39832ebf3526fc11f1a35138e032faa0aacdee447b4f76b20974b7c27a8980665f21a65bf9 +DIST strum_macros-0.26.4.crate 27531 BLAKE2B 7f7d57c957a1591054288fcae6590a5e669fba1b47d8f1a52371ce60fd84f91fdb430e48cc7edbb5fc72914be5ce12af29758b653680da3f4177339b31206750 SHA512 77a17ce47d5e8fe8a89cb6aa6c3ca5d5c2625aea0f93456f05a9994238cd3b08b3f7c6a45e9b3db21bca8fb5759f505f15cc111ac84acbbb34d59cdae8307b0b +DIST subtle-2.6.1.crate 14562 BLAKE2B 3cf4940b7a01f04715da1057f6a92b1043a6b86ab2ee7f9fee0337b680ff781201d330409460f6f90b3f81bb5fd4b563e17c762c6e824ba3b0af99e4ae7d66bd SHA512 f5946ebd9bcb8776ee3446abcbf4afb3cca5d8bd847cadda87e864333ac7ded537a3efa773e9648adf20ce4add2c1da85172cff88c1e1a3a6cb051401b00c6bd +DIST suppaftp-6.0.7.crate 62898 BLAKE2B 4c70f41063d46f871443b0134a7bcac0012ac80503f8b6cc3a4827a449e5483843994fe2866c1321f7a60f815df12ecb8393c38d9a303d59293f284671ee33f2 SHA512 549446b6adae3600d12ca641015571fd9514ab06435858d1ce93b32b4070d716431d48fcc0774cef6314b06b7a06754ce4da39a7f50a869d33b11af8b0ac49de +DIST syn-2.0.96.crate 297497 BLAKE2B 68b62de28ad670572096a1d92ff8ed6fb55fee441f2d429edfeffcc48fa1d4f1cd39327540a4216d94a9763b84831956cb7e5c8ce89b81f1dc5767ea5734620d SHA512 ec2e352a5b0b2aa619774c01d7a7767674a44ffe91dea45d3379bf172d13039c3d37f264e98e26b20fe1d86db6d5190f220831c842f3316469d4ae73c2bfddec +DIST synstructure-0.13.1.crate 18327 BLAKE2B b29ee88c559a2d58fa46b7af155b448f001649ea79a1898f0ac87e69108b87c65cbd287d8f9001f360df7fef06ff39c937b48d33e487a30c8eec6a46c639c0c2 SHA512 09024193b44fc9a8901bda845b9f86c57dad65d0f53e309b2e7e968538fab6f67db1c86e5e52a2eb8fd116dc073e3ad10983bd60764662ec6ba94fee22a958aa +DIST tempfile-3.15.0.crate 35693 BLAKE2B 1b4d6b17ed4263ff89ef6967650b0c18671b2b80cbfe388cbfd77ca597473e91c1c7aebfc715d0fe4360c20d0f235df31147b1f029b471aea8c57d188f7c2be0 SHA512 82636d50a29e1ea8cc61e80dc1fa28ea4cfaeb6175e5bf0558d6cd6f8da823f50a808a555ec17fc8601acfd0f504e15688fe95f64e8792feeb216bf27678807d +DIST thiserror-1.0.69.crate 22198 BLAKE2B fdd8ca8c8ca78702377d0bf7b253440519018275b105db980d63229d0d44aa5c39a703e14aa6fe453c779b3c864d8044009dfef893d2a5294950f067656d7a80 SHA512 ef50d2867d965da1dfb29d26faf6de273b5fadf78f95313f6caf44d68bfc610b9bd4b7544200b05bb0861231cfc84e961007f8db83c7905244c492037fd31899 +DIST thiserror-2.0.11.crate 28648 BLAKE2B 973126f9a9ca5f3118e830af11ddde4b26c905e13df89b2888b42facc4e48b3adea53b66405260f6291c3df7ddb85a93856841be3626b005040b3fd15502e2bd SHA512 ba0c3c2615bb9bfb07affa66ffeb2eeda43b16a974dc9a0482165a4a5a502a376e2fd6b569a228a08647de23d291e2c301dedf89d8caa79833b965a184dd5904 +DIST thiserror-impl-1.0.69.crate 18365 BLAKE2B 51663251ea6ec99c59aec35fe73c5f9760809d6b6b7eaa8ecbc8f6939acdc4d0ebc11f9034d9204dde7bd689d5e8303ae0be86e298745e9ef96825bf73453a08 SHA512 579eb796c8885feb01d27638862823acd96c79440655bb444c3445ac00121852603396ce7439aed617c0a0ac69f62102167fde5845411c906997574a46d6d9e3 +DIST thiserror-impl-2.0.11.crate 21067 BLAKE2B 33be76d7ab098eaeeaefb2ea5ef20a73221ac51b491d6339e1fff66e24118854f3640de43241e233c68be17804b90d22d75f1d60f7df274acef4647c871e0e17 SHA512 3fb76f16613064917d2b21f1bab06fd4dec9f40ad1f850aa78c5917854347cf9034a72d2091dc792ac06ce9ff9e29ed2bec3a4330b459abff379356e35c8f701 +DIST time-0.3.37.crate 123257 BLAKE2B 5968d85182e3a945c194c0e405a3c771698472f4b4028a01870e8dedcfc5c10a32e167715c7c12626b46b9ddd758c72e0188b55e45c0396cbaa42a65920ae28e SHA512 6d007507f79c45a7408675b3223bbf83a133bbaf96429ae6a02b5db09acccf884bb8323dc6f3dd05e7ce87a78366a55bafa6c6ba31b04198a31026df4ef425e2 +DIST time-core-0.1.2.crate 7191 BLAKE2B c477ad3410ff29f3bf4a38fc6ac4a043d49b6d2bdf5cf309ffcd2eec3bb6e4c4b62156ee7f069f0b37ea31c163bc75ccbf35abc1db2833cdd4912135e60ddfc9 SHA512 3861724c23cb806829a01186deb5217ae8252c20af622975264e6670cff528f42155039e4937756a9eb312a5580ffab07949437d5504d684a0e70755046cac52 +DIST tinystr-0.7.6.crate 16971 BLAKE2B 33a248261c4cded41a81f0d6e6c8df55437f042b37f235c39787986ec562f0dbff50b282ad0f1483daaf49c4b33e6618e139a6677d1238c21f4e12082562b4ae SHA512 a33051848de248cac0a2d151760a78cb3aa62c787d84ff7aac38b11c0660e9188e4d43d43a77fb8676e49ac6102015e9c3db057848d809e71981851875d0fb25 +DIST toml-0.8.19.crate 50974 BLAKE2B f68987353837b74421256fd9a76134bfbfe93887cfb25145b65b7e6b31ad2c3a3384829a06f50c771a2a0be0c5467c856cc631af69f586ea056c4f15af9e3b7c SHA512 16fdc58d14516e81badbe8c9a4506db75b559b377c9c4fecee79e76007b31a4abfc8c8868bf9159f79c6f7c0218f93bdcfb92b669b0917db7da42b51ec155751 +DIST toml_datetime-0.6.8.crate 12028 BLAKE2B 62113366771f22b437b2ed0d3bb2489ae9078cb589cfad2ad2e92c81ddbda48f689e5a573366eea4f54c2b3cbc6b37eaa8b442b6d935b631a992de4917268757 SHA512 d38b98db3b2d4eebd3001d88e2135b6fdbae63b200f7e900c6bb9c121dd3f170e557332bd26f237312c1cbef61666716b0cf550c2d730f86fa7cd9eb5f64a16f +DIST toml_edit-0.22.22.crate 106387 BLAKE2B c658eef2dc8420266a6928d7ef46340372af2593e4db0d3a67ec88aaf8f601d37d1e9b5bac231a799be8a2ee68a7d98b5f651e9c109d23d8b19b60cf75debddb SHA512 0f98b371f7e27ae7f435a207c0915f942af145cc5dfabfe6d57f2b797efa3e706025401e501fccc6df70c001ce27051381556b8e7824447edd23ea25d047da4d +DIST typenum-1.17.0.crate 42849 BLAKE2B a6d1162050679e2c4ab2467f3a77d301f6861882eb7c9749f31d047f383dd5bd2ed5846ad63eed99ccc04d6ac36cc697a305861e1d65880b4d2ef04ee0a79b94 SHA512 99773d5d9f850c0602db4bb67dd062b0ade6f086e155216f1bb2fb6569461ba7e1b7c2f2af81ea8833bc3bfcf3fe5033edecb7c438adae63f59d3e30cf63a508 +DIST uname-0.1.1.crate 6852 BLAKE2B 9ffe386e9819ba6341c644320210456841090625327da79a15ebb9601a299e236de91abe0cc0491ce24756d03ba4498c1baaeff1c24202ddf470a0fc5c5829a5 SHA512 b38f9f3496b3555e2b321813a43fbb419e5b81889a3c777626e7428b22311b5e2d9fac009dfe2378566962cea09ee4b32e2364329b947717939de84aacc543e5 +DIST unicode-ident-1.0.14.crate 47547 BLAKE2B 30e0b6d7f3a967aaf5b9d91237008a60c3a8ded53bda901696e23cea3931dd71b01ddab866dca9e31e17c395d5f5a68f2a938655b693e894962568c2cff5ca15 SHA512 7c6dcd1724e8cfedc37546d1abd49088b633dad228097acc73d7b6cab255b223e830c541144e05a00388fd8ca8066f27c18792419cfa58ee9da4460a38d0bc0a +DIST untrusted-0.9.0.crate 14447 BLAKE2B 8e9c3ae09435af0885bc4a6e3c8943805b48cfc00bdae228c7c43093254e1be15d7005d1026561ff369ec37865d8458203f421a9c89ae3db077f655449621aed SHA512 5929e4079c1c2ff933ae8d8f59a2ecc7a424e71a20d1b8821f75925af68bdf82604b024c008e5464b02e25ff093e561a352b685e755b3d0b27e4c30254689416 +DIST url-2.5.4.crate 81097 BLAKE2B 74943c63809ca41a526a146bedae66f91f390fbd2ccbd90f9397d8074ee7ec26535f0f67170eb1d7232e139d8d795fde99be37f53f1bc32c6a6a4d46aad1369f SHA512 8f1d62bfdd45f52fa12ad657a521a3478d0ab54d187346a29dd59cc66a0f140ca96d850948e09f6316f08b44b3fc68526c58bd620fed5d065b7e8528df3cd46d +DIST utf16_iter-1.0.5.crate 9736 BLAKE2B edcd9776113d4d2b267a9cbd58cab11c5497ff1a8252c4e695de619fc8e5eee1595343c857651774b3670d13392144e9d7df579f2e226842aa7e4e023a76fb65 SHA512 44dcbc5a7db149392fdaa31862be240f78fc5d7616f54be32cfc8f3adbee310e8681ae1bbe6edaad8a7fe6e7759dbac8ae4f69d0dbdbe5350c21dccdbbe975fa +DIST utf8_iter-1.0.4.crate 10437 BLAKE2B 1e7a8b9241ebbb62cb497542b970473780f735010a0af900771a43abceae4e7f362d21d4f79f7c00630e4549400875ea17574b2cbe4f5ea19e8ed428e3b5577d SHA512 a72671995b3eb295581c60dc632e4a25ba257227fb5d58a8bec322428b6d69529bba79a6f02b8e7ee6698b7779d9d6695f5badad73e07c254b00c9d6256c9090 +DIST vcpkg-0.2.15.crate 228735 BLAKE2B 6b6bacd9a7fa38919241f45a97f58cae957e58d3aac99df208a26aa718e4f1644f4ccefa31b09151e5c1952288e0e5837c363918b98c7f55079a948a952c1c50 SHA512 7322a21e8811b2fe4e79e09dc321458068ecdf1953f05d36233f3278ecc0b1dfc64194db7010dd46fcf692285f42475beb090c6c6cac0c8f9fe0eb5c770e3172 +DIST version_check-0.9.5.crate 15554 BLAKE2B 131e75cc287518831e142430e2a39b48e4275874f4473780d47a27552294097aa1cddb65c385583e1022478f940b495eb43c24a8b1617b8ac5a24af3340c0d72 SHA512 d11d5a2240ab0c67ea69db56561ce202201edeef9a8e5eda3d9ae7ab7bb5752d8f343fe7f6536d8383de8d55f9024efa84f66a0c21e69563b7a38c4a628014db +DIST vte-0.14.1.crate 57382 BLAKE2B 8ab32f32ae111d8d03d6f3cb5e2e4405a74c8c176b6015fcd1595421bfeeb98c68d59994fa75f9833cd809fbe5bd38807645c665ae327f220559347c57ee4075 SHA512 a3080c98805c2940eab15b492b8ca7c3f4d842507d1b68503c6d9d88784b85c3d7c4dd207cae612d228b6c3f5dbfca0a187dd102728548e027d78aa84f41f95a +DIST walkdir-2.5.0.crate 23951 BLAKE2B a2d3a973f206e94699adec0263dd5e211347722cf3ab82536295019268b3125084da5dbcad818070bfdcb6a5de08da4eb483475bc225a829f58a1e3e040b5fba SHA512 da36a121dc6656942dc9cd9887fcf4f6eea7750354ef3f59c7c25d836e7afe06f33260b4d55d0d99421104ed4ce56ef2a1f0f4c3b713766fff90548c21793fad +DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f +DIST wasite-0.1.0.crate 2346 BLAKE2B a5a03d04135e3e32354d298386f132f9aa3b5c3806186f0c1eb75138038001d07f3bb5a3c6f8f938c9bba7c84b97b06b5304be3c9f86255d2d00f46a134ccd3e SHA512 06be2f7a2d289136740cc7b9ef9c4addbbf85210312759a7c99f977aa52285e2c3e4e3dade82d454a266ae42aaeeda7e767140b0bcdc1208ecc86aa18afc1384 +DIST wasm-bindgen-0.2.100.crate 48288 BLAKE2B 8fc4f71c7d6cef15f131a9bdbb50e3eaf9f3894a5b6c1d73876824efb731b46e8c3449947893103f23bc15cad228a1b8bcccd45ada20df53b3f3dde6e419c184 SHA512 2a8ea7ec669efe10f5701dc3b2bf496e33afa70c31dbc65fda5191c9c28ddde54fa38bb168a41b0319a4ff0bb5ccd897ce51ccd7e523e647b3544fb390f8a4e3 +DIST wasm-bindgen-backend-0.2.100.crate 32111 BLAKE2B 6bbbef709753e22230176121388a95fdb8f4dd32e0755dce5bf6c1127c54a236af292f319d14b5cd97bdb310fee65288e8f404921b83693e287164cf9d589a2e SHA512 a2ee30c1185644f989af6be34e93149a791c05125de24c0ff91c320f683f6f5d939fe42b8ca09d629096388a39256469f8b96a6e35722ccfdbe8d978c9a51770 +DIST wasm-bindgen-macro-0.2.100.crate 9663 BLAKE2B b8a3fc6b3571f8caf106a9e9f3d9cc48b86096d714c5d0208f03d44d47003b3b26441b5cd68bcd49a8c05758bc1b984e460fb62ab439ff2d68c72766ce20358f SHA512 a1942f838eff5fd54406b573d81fe18f262df48a19535245b1a46cb31db2a022746e861d72e5286c632969d15d416655460d3865309c4947cd3d7965dead5c42 +DIST wasm-bindgen-macro-support-0.2.100.crate 26243 BLAKE2B c18e35978b62dd2822ba8a4f6955cd5154b2a0d81b8e8032c2f8bda42c1c25f74a13f3e1c3a7bf47a823de2517a237e6a1aef18b189bf1f2b934123c58d1eb34 SHA512 0d03eaeda37c9c6ae06c0fa96e872b54780c4cf545b621c730dcc113dd59a8cb6333c5e3818f51365f71913b9669d8a870a06e70729722d03c07a49cff8a4fdf +DIST wasm-bindgen-shared-0.2.100.crate 8570 BLAKE2B 886fa72cae891d4c2311e12e28f0a7bde9bcaca893603afa3428a402726b3b2bcdb6cb7dca6fdf983bd8fac5f049f0543537f2161318769b43c7eebfc906df27 SHA512 3fca8ddd1c6b2f66f70f6608c9b341822603f1c0dd71d47d27c6be8fe3f2c88598619946627720734b48cf999cafd0c63a08af5db28ea78a1538d2165a5fba61 +DIST web-sys-0.3.77.crate 638246 BLAKE2B 3f21ab03a18d82cffd96432e4f08bfae183b24f9a50dcfc51c927e9973dabfb8b6bb1f3ae044890832809ec91709242c1c37463931770d347fdf521587a72515 SHA512 cd149286105288f7c385a29eae7df2306d4066edfca4de1255efc7bd8a4e8eaafc313dab85091025c3b5d5e333fce8b7fcef1fb824fe4d799bcc9bb78b73c97a +DIST webpki-roots-0.26.7.crate 249392 BLAKE2B 6e3eccc530fbe66d22cd122b28e743e1052eabfa686c212b0f5056aa18be2ac1ed3672973e1e2deacdd9c3c9761a19e862efee8e4bb66ee61481234635898a0a SHA512 7eb3e7972864518acdacd7b716a223956ffa4454a39b8d4fd44f8fc25f39d113f8583d340f738ccbe4cd8e497906247865bc87ca9b9d8cfc1f1b0984c41a9397 +DIST which-6.0.3.crate 16937 BLAKE2B c4916ce80625b8b869cbf43844d689c62545964cb60f9741851393540a241d1d440dd64517949f3a64a4e9256584393fff84e3cea5f75773c9afd8b7ef580333 SHA512 82048af7dee4bd274f977530a19c2e2c86ac12936b7d814b2a86f13b2063e1a3d7092846d1ab66e3f653bf7ebbf5eae8bbce061a970c5ddb30b151234dd0593d +DIST whoami-1.5.2.crate 24204 BLAKE2B 29ca6ac8b280d10882d39fe8f15850e2e6035c1e72445c7fb541acdd8784ee756f0a412daf3ea48f7f7755fd5ed68bdd309e85e9380bb9c5af7b05c197b46b14 SHA512 5ecb06b352528e3320cc71c6700f72a79a04791c33f08fde172762f6f2dde25218aa0d405604d0a18a741dba7c370c26cb63b471f09c7b2a6303cdf849606398 +DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97 +DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2 +DIST winapi-util-0.1.9.crate 12464 BLAKE2B 7fb9dd803fc2608c4e5bc75674472992d82da364f24c22072d5624d6ae6abc44abd3e3ea3c45a7558e045331f3d87572b306b4ab5de52c07ff3706e7f13c2a38 SHA512 c46b893f67ec6e36499b00736bb6b9421e0e2611e76784afa6da01d7ebd033df82f1be7cf8d871d541125d290983f98f26f759488ba9aface49efce8edd682e9 +DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513 +DIST windows-core-0.52.0.crate 42154 BLAKE2B 9670bf02261b4ab2a24eff97dad11e305deac823cacfae286965b62b11bc035f19a55ca710eaa4359c8a4905433a94fe62a836b77ddd68f244ad6ac2c9657f58 SHA512 0c8f1c7e63c11bdcf1361150ecc83abbfba8da2c6d28523799bd286bf8aa1df61ffed19175e8cb3ef516a9afb6248b640c2101a2e0c09a99bfd7a18c6741bd36 +DIST windows-sys-0.52.0.crate 2576877 BLAKE2B 69d6b560ccfc8f679e2678663ba606060d71fa28efa82c8aef8cceaa2c63b06f2052764d60163964f939649a26bbec6361ee4b094555e941fae92070db566980 SHA512 24ee0df246c2b456a4987a9124786a28acd358768cc7d1305bccd81bc5bb8822b81a03fb18d35174a520b911c6d9b685f81a34ab319fee13da3b985273584f03 +DIST windows-sys-0.59.0.crate 2387323 BLAKE2B 3110c8cd2bc005f8c95cd038a8d574af648dc19788fe4485f977376f92e36b911b1a542d669a07ae9cd4ea72a884ab01ec78b8a2b5587456eb202452d1d8fa0d SHA512 d35e009e979633a1f3c8468cd038bd5c8c0381405165ce03497decd7d9edaaac485d704487e4a61d9aaf4e4d011b4248408912df6a0044d50e8457259867e061 +DIST windows-targets-0.52.6.crate 6403 BLAKE2B eb98d0a8daeed5fe76e7fa8edb2743e2a3e77dfb9c4ea68605a6ab10532cb7cfc43bc1cea0180869445bd940be762a40136500e26b84ca88b5e0c502004c7a4c SHA512 d6d2dbd96096c6c396dba141a9817e377c35877f3b2fe58b2553280c7cfcb1ed6ee75bd4d62c9b882662de67ddaf0c1049b91530d29c94dd709c230e08eb895f +DIST windows_aarch64_gnullvm-0.52.6.crate 435718 BLAKE2B 8b12ae02892cb69401329034bbca671d13bd268a112120b56b90504707cef89decfbd2560492844a9f0588fab62dc1476ab7e931126b939015d25a8cc91ca334 SHA512 f62b2d942bdb3a9353465b07d47b93de179bb706511aa497e4addd74cff95e689a9b633e7801ce786e73b5ae5f30b506b6faa199c5ab86eefdc1d94652df79c5 +DIST windows_aarch64_msvc-0.52.6.crate 832615 BLAKE2B adc8ff61b6dc96d39c92c7d4221ae6aa0575edfc016cfcd046067ca5d8fcfd56d10e8e227be1c038ce34684be22c7ccaf5f18cd5a7638d28fbff4ba15b48b90b SHA512 a3e21305ad0e6de38f5b5ed5d37ee5825b7521064163bcdf31d63341cd87983f54377865d2daf3bb480d2d0aa66d6f598fa09540ec1d71baea74569c86bd213b +DIST windows_i686_gnu-0.52.6.crate 880402 BLAKE2B 5aab8ee07132eccb7695807eb44811beeb0657aadfb672c54e99b6ae39c067ba9b93e38fc69bb5b9b14a9759f263ccd5e301597d2727d83b31b49a409b6bd405 SHA512 a1f6b5dd23d17ec3567bc9d11a4be6f35e196eee21ca342e9b88dbaa6a5f7c46e439c834b77e724f32ac22c0d81573746b3b513a6c944a221b92b2c76fe98822 +DIST windows_i686_gnullvm-0.52.6.crate 475940 BLAKE2B fec4fda8bb2bf319a501a22372fa642ae682e4dee3235b258a028190ee73220bfc55b3142f06249bb4579b17e5fde662bb2b121aefe18544653350d7d0fe7d8e SHA512 95f13af855d530acc0b856214478d4b11b8dbab3f8f79dd223d0b009790c0e46d096fc1773e0277997deb2d5b96c704f17f23c7df11411524629f75415dec99f +DIST windows_i686_msvc-0.52.6.crate 901163 BLAKE2B 99ed34e052db5ba77bab240ed5d38ce450be347a794d63ec39b719304c32722c9999b540ab40abe0216318900b7412970df99dfb36d1516a9517cae0c77d1bdc SHA512 ca97913ce202d73266cf55947b868bea7e964a4516b6a096a81aeab6a60ee73867171032ced35e3afccff741ddfb2def7468343b6eceb95253e4d4f349efbf96 +DIST windows_x86_64_gnu-0.52.6.crate 836363 BLAKE2B e2335829155cdbd4a55cc9f9babc237e14e32aab97f6f91afabcdf80d2aee37d6fb4b8669aaf433ff532c85dba59b3d366c7d41b61a2f29b96f960169c900687 SHA512 c4086bb0280042f2bef9b556283b67f8a5cacddd209e1c5fabec63decec6d4fd2d6a7071407973981b98ae0c0cf7034fc612f9e70dc6d3eed9acdec771ae31cb +DIST windows_x86_64_gnullvm-0.52.6.crate 435707 BLAKE2B ab77dccd06328cdb00175f41cdbc120594050a9678b7f9820444391fb50aada3911a91ea00f3a6db2b4fa1820fd23bc9a007dfbe65ad41417c26ee1137ef9b96 SHA512 67681f5859e249c56b0183181811f6212cc7008d6471dad78aecc7ebe3d027686b19210b8aa9014c554410f69f913d21ce2aca928eea905eab779bea26464cbd +DIST windows_x86_64_msvc-0.52.6.crate 832564 BLAKE2B 8e9a3044654c6de99a9153e7cacd575474e7a8a3d883c67b02132af5d3fc99d03cd5f7a4dd666a3947451d11218e6acc6eb5e2526f012481106cc13453839719 SHA512 21944cd8e3a481b514509e73ae3f62722fe7ed380d37ea0c25f8fbdeba79174dd52ff65d898838da5df4197894b74e00f45d47489418e978753b4e55c7e623e7 +DIST winnow-0.6.24.crate 165680 BLAKE2B 404b91cf890523dc66b2e1c8ed8610a991cc3551de16894a6aed4d6b720b19f33feba9f2257541f9eef6b51051bb5e15e4b7c9c74653a3bdbb782e273d0605a2 SHA512 b0dc1890a59709c61f06096dd37d94bd41cea0b6dd097ae9651c19acbd2963833f5b9cb6c8274aa7577433bff4b3cc68a9de80f7b285035074b5cc96907f967d +DIST winsafe-0.0.19.crate 492820 BLAKE2B 4eba26861f85f668e134b08c60e9522b698aed61eaa5e6d4e89ef31c1b97953fa08a5157add52d9a306075df4ad97e9aaf1767eea4208b72401ec0bc1c3eb0e9 SHA512 0555ec74c5acbb69ab08e54d920094e806258079bffaff3f90297bb94a000c7da36d6eba0eae445d425c781465235dd70a198437cf83a1f113438bfd9baf4c21 +DIST write16-1.0.0.crate 7218 BLAKE2B 548796314339463e4b71f8af3d344e45dc89480e103180b6d56c90fcb816ad1a37ab2ba20766c4b9754f2cc686752eb1f3a5a12ec1ed4369a9cef749ad4f3e97 SHA512 655a207b8082bb88e462f992ecb4833cef9d590da06d6356b41d109df2862b49ee5705189c78a607b549e7343035119d158020d58fcad49608e51659357a83c1 +DIST writeable-0.5.5.crate 22354 BLAKE2B e4ff9862c070b413568ce0c75d1eccafcf1db8578eee4795ea9046dadd643f8a77258b437be288b93af247199d63455298ac2cff909226bc432f91c0aa863921 SHA512 818b2546c8ec25816aeaf5e31a1ded927d197bf7256e7c5073738c2709bc58a95d382a0256eb38a99235ae83729b578701261866d42ea3357a26024906e196c1 +DIST yoke-0.7.5.crate 29673 BLAKE2B cd2e42103140e080a29bf579fe5176b36a192f9b1309c1f2fd7557fe93b2f6eadbf6fca4a6a3b1a7b6288403d2f643841dfc7a5b6a4476776943950abe5c1613 SHA512 6bbd99671d1a5a5217890eaa267113d193b3636b265393afb6e72a313f01704d462fe017264f061405e8e84c188b590094c29e3fcf19a63c375ae165d1a0bbef +DIST yoke-derive-0.7.5.crate 7525 BLAKE2B 9b6b97eaf3c50f0f5ce8cebf685a1a17d4c21eb9b26d38eac99e0a4c0f9d592e95a7843b7a0b897945a14c4eb78ffdf2c0972b448d31d7bc7b077f27aad81d9a SHA512 e30b06b020aa283080905004295fb643c539b130d0d53bda51927b95e79ba562336aad30d8a6202d9a0c62d5b64559a01218c6f02f3faada6003d4b03c205cd6 +DIST zerocopy-0.7.35.crate 152645 BLAKE2B 8f13123c9d9257ac5a5c6954d38c3510fa658624442f7e03cdcc6db5a0977d9f26bb4e277be172b7872ec365cf6e58ac742e5578636f7698f9f37093e9249d9a SHA512 17fcb31c029ae89c01e5bae5fb2bb46bd434120199a3dc2c7fe0012dbbcfe2a0bb38934c4a7d3a4920e3fe47c097403beee554fefa54b66cb390f8b1de638d3c +DIST zerocopy-derive-0.7.35.crate 37829 BLAKE2B badeb7fa5e0bfe93a6788d93fd297604ed31de526b121549300ead3c49d450f49265f499e2e7ce606dcce2b59dd01f7fa817b8fbb3f237475185c5b42f5299c4 SHA512 dbe23573b62a6267d7bc8c744320b75b2fbda03b908c1d175211f7394374fe182bce58021e25485c10671d726b2007f250565dfe53134d51c89293bb607e9feb +DIST zerofrom-0.1.5.crate 5091 BLAKE2B a2b938197957755c4a8ccfb258f60f90931a0a342d9d4bd098c7a25e1c9069148a51ddfffd2b72a6a9856d8c6e66fe1482ab2081a5f3478b4b318062caffff42 SHA512 11f16a1003967b3f30d7b32ffc8541ec05fb335690b08cf4f7554c624ad4312ee0961c83390a997e2a73aee06d8bb09a0ff4e6a5e489f8fb925141e732006544 +DIST zerofrom-derive-0.1.5.crate 8285 BLAKE2B d19bf1b74be89f4d27eda36ba6407d598358d3d69bed64f02903ab7dc509faa006cde9c13e19f5f3cde09cf9049120575263996c922b20da366a11e18baa42dc SHA512 75098e0f1c690bd8476f819f4ea2a7645b88237042a8876259bf4e025b070a4b105caf16ca7a824c5dd6c4690b693fcc74bed9ac0b5e6fdab05a5bed1b5cb298 +DIST zeroize-1.8.1.crate 20029 BLAKE2B 092eba034cd35ec47290020e0c2b213177ff5dbe14ab9e7f0b4ef3cb1ecbc42fbec2b951414e26ab00bc65aaddc2c93eddd5a1963b27c6cd613ac71c65d5cc24 SHA512 dd40ebe98b98fd742608d4066b5ab66caba94b2e679428fcaff9fe547d8cd6ff2360dc85d671ee9183e32fb79cb554d00d6aef9eb8f3d8ad0ec92d0435aa4ebe +DIST zerovec-0.10.4.crate 126398 BLAKE2B b078784d6f178bbb9de1c3c1b6c7ef996f00bdd7dfd2924bda921e62f3e09e953fbf50f8d0da99ac6ff6d134f146253846f5663549dcf8df08eaf34b9d4016b3 SHA512 db12bba1d7476ddead92e6dfcdcc30e2e0defff4f263a740244eabee265a2cab265473a663d3dc3210f48e113b66d951da496dfab7965ce1bc792e5f2db422a0 +DIST zerovec-derive-0.10.3.crate 19438 BLAKE2B 9f7df8a4e4a0b62ab25aed967b26509db4bcc5d5b10b3bd73305099a4c49a60be8921484ced1a34d9b7ae30ffa5abe789686f432416a8f1cfc07de1db1dff594 SHA512 caefbffeb35265db9f74933bf07109d57f0da48156cafd4f330af78a5c7eb9ab0831a80789ad4fb119875ebc6cfd7e3de68c9984b77dca5151f9be41f1ae6e09 +DIST zip-2.2.2.crate 108809 BLAKE2B e6d7792b70ab397ef340d37167266b87538d2e0ad422d02b053f6b492c8ed13535ea18d5d4077350286b3c2f79623a01ec89544f6334eddd07c87b0d443f19ae SHA512 0255079792b786a55dd18587daf178456f2b79f83d767ba42504f8b7163eebc152c02500097edd78bb37916444c9ad9905779367c6d743489502468258f1706e +DIST zopfli-0.8.1.crate 50972 BLAKE2B 27cde48858dc65ec8082d4e0d81e2758f92d3dcc7a1c1f08aa6448e99f2995a865ac3259353b26e787f108c2f88ce3c7610413ea9d3daae6f864900d74565de6 SHA512 799e25c0cc9f0bf2119a7c03225b11ed94e7c3ac83f872a27da8ae15c90206245121c38f5e2b78fece131f5bb428f01fabbfd1b1e18ea456957940042d38f38d diff --git a/dev-build/cargo-make/cargo-make-0.37.24.ebuild b/dev-build/cargo-make/cargo-make-0.37.24.ebuild new file mode 100644 index 000000000000..78bd8686dc0f --- /dev/null +++ b/dev-build/cargo-make/cargo-make-0.37.24.ebuild @@ -0,0 +1,327 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Autogenerated by pycargoebuild 0.13.4 + +EAPI=8 + +CRATES=" + adler2@2.0.0 + aho-corasick@1.1.3 + android-tzdata@0.1.1 + android_system_properties@0.1.5 + arbitrary@1.4.1 + attohttpc@0.28.2 + autocfg@1.4.0 + base64@0.22.1 + bitflags@2.8.0 + block-buffer@0.10.4 + bstr@1.11.3 + bumpalo@3.16.0 + byteorder@1.5.0 + bytes@1.9.0 + bzip2-sys@0.1.11+1.0.8 + bzip2@0.4.4 + camino@1.1.9 + cargo-platform@0.1.9 + cargo_metadata@0.19.1 + cc@1.2.10 + cfg-if@1.0.0 + cfg_aliases@0.2.1 + chrono@0.4.39 + ci_info@0.14.14 + cliparser@0.1.2 + colored@2.2.0 + colored@3.0.0 + core-foundation-sys@0.8.7 + core-foundation@0.9.4 + cpufeatures@0.2.16 + crc32fast@1.4.2 + crossbeam-deque@0.8.6 + crossbeam-epoch@0.9.18 + crossbeam-utils@0.8.21 + crypto-common@0.1.6 + ctrlc@3.4.5 + deranged@0.3.11 + derive_arbitrary@1.4.1 + digest@0.10.7 + dirs-next@2.0.0 + dirs-sys-next@0.1.2 + displaydoc@0.2.5 + dissimilar@1.0.9 + duckscript@0.10.0 + duckscriptsdk@0.11.1 + dunce@1.0.5 + either@1.13.0 + encoding_rs@0.8.35 + envmnt@0.10.4 + equivalent@1.0.1 + errno@0.3.10 + evalexpr@11.3.1 + expect-test@1.5.1 + fastrand@2.3.0 + fern@0.7.1 + fixedbitset@0.5.7 + flate2@1.0.35 + fnv@1.0.7 + foreign-types-shared@0.1.1 + foreign-types@0.3.2 + form_urlencoded@1.2.1 + fs_extra@1.3.0 + fsio@0.4.0 + futures-core@0.3.31 + futures-io@0.3.31 + futures-lite@2.6.0 + generic-array@0.14.7 + getrandom@0.2.15 + git_info@0.1.3 + glob@0.3.2 + globset@0.4.15 + hashbrown@0.12.3 + hashbrown@0.15.2 + heck@0.5.0 + hermit-abi@0.3.9 + hex@0.4.3 + home@0.5.11 + http@1.2.0 + iana-time-zone-haiku@0.1.2 + iana-time-zone@0.1.61 + icu_collections@1.5.0 + icu_locid@1.5.0 + icu_locid_transform@1.5.0 + icu_locid_transform_data@1.5.0 + icu_normalizer@1.5.0 + icu_normalizer_data@1.5.0 + icu_properties@1.5.1 + icu_properties_data@1.5.0 + icu_provider@1.5.0 + icu_provider_macros@1.5.0 + idna@1.0.3 + idna_adapter@1.2.0 + ignore@0.4.23 + indexmap@1.9.3 + indexmap@2.7.0 + itertools@0.14.0 + itoa@1.0.14 + java-properties@2.0.0 + js-sys@0.3.77 + lazy-regex-proc_macros@3.4.1 + lazy-regex@3.4.1 + lazy_static@1.5.0 + lenient_semver@0.4.2 + lenient_semver_parser@0.4.2 + lenient_semver_version_builder@0.4.2 + libc@0.2.169 + libredox@0.1.3 + linux-raw-sys@0.4.15 + litemap@0.7.4 + lockfree-object-pool@0.1.6 + log@0.4.25 + memchr@2.7.4 + miniz_oxide@0.8.3 + native-tls@0.2.12 + nix@0.29.0 + nu-ansi-term@0.50.1 + num-conv@0.1.0 + num-traits@0.2.19 + num_cpus@1.16.0 + once_cell@1.20.2 + openssl-macros@0.1.1 + openssl-probe@0.1.5 + openssl-sys@0.9.104 + openssl@0.10.68 + parking@2.2.1 + percent-encoding@2.3.1 + petgraph@0.7.1 + pin-project-lite@0.2.16 + pkg-config@0.3.31 + powerfmt@0.2.0 + ppv-lite86@0.2.20 + proc-macro2@1.0.93 + quote@1.0.38 + rand@0.8.5 + rand_chacha@0.3.1 + rand_core@0.6.4 + redox_syscall@0.5.8 + redox_users@0.4.6 + regex-automata@0.4.9 + regex-syntax@0.8.5 + regex@1.11.1 + ring@0.17.8 + run_script@0.11.0 + rust_info@0.3.3 + rustix@0.38.43 + rustls-pki-types@1.10.1 + rustls-webpki@0.102.8 + rustls@0.23.21 + rustversion@1.0.19 + ryu@1.0.18 + same-file@1.0.6 + schannel@0.1.27 + security-framework-sys@2.14.0 + security-framework@2.11.1 + semver@1.0.24 + serde@1.0.217 + serde_derive@1.0.217 + serde_ignored@0.1.10 + serde_json@1.0.135 + serde_spanned@0.6.8 + sha2@0.10.8 + shell2batch@0.4.5 + shlex@1.3.0 + simd-adler32@0.3.7 + smallvec@1.13.2 + spin@0.9.8 + stable_deref_trait@1.2.0 + strip-ansi-escapes@0.2.1 + strum_macros@0.26.4 + subtle@2.6.1 + suppaftp@6.0.7 + syn@2.0.96 + synstructure@0.13.1 + tempfile@3.15.0 + thiserror-impl@1.0.69 + thiserror-impl@2.0.11 + thiserror@1.0.69 + thiserror@2.0.11 + time-core@0.1.2 + time@0.3.37 + tinystr@0.7.6 + toml@0.8.19 + toml_datetime@0.6.8 + toml_edit@0.22.22 + typenum@1.17.0 + uname@0.1.1 + unicode-ident@1.0.14 + untrusted@0.9.0 + url@2.5.4 + utf16_iter@1.0.5 + utf8_iter@1.0.4 + vcpkg@0.2.15 + version_check@0.9.5 + vte@0.14.1 + walkdir@2.5.0 + wasi@0.11.0+wasi-snapshot-preview1 + wasite@0.1.0 + wasm-bindgen-backend@0.2.100 + wasm-bindgen-macro-support@0.2.100 + wasm-bindgen-macro@0.2.100 + wasm-bindgen-shared@0.2.100 + wasm-bindgen@0.2.100 + web-sys@0.3.77 + webpki-roots@0.26.7 + which@6.0.3 + whoami@1.5.2 + winapi-i686-pc-windows-gnu@0.4.0 + winapi-util@0.1.9 + winapi-x86_64-pc-windows-gnu@0.4.0 + winapi@0.3.9 + windows-core@0.52.0 + windows-sys@0.52.0 + windows-sys@0.59.0 + windows-targets@0.52.6 + windows_aarch64_gnullvm@0.52.6 + windows_aarch64_msvc@0.52.6 + windows_i686_gnu@0.52.6 + windows_i686_gnullvm@0.52.6 + windows_i686_msvc@0.52.6 + windows_x86_64_gnu@0.52.6 + windows_x86_64_gnullvm@0.52.6 + windows_x86_64_msvc@0.52.6 + winnow@0.6.24 + winsafe@0.0.19 + write16@1.0.0 + writeable@0.5.5 + yoke-derive@0.7.5 + yoke@0.7.5 + zerocopy-derive@0.7.35 + zerocopy@0.7.35 + zerofrom-derive@0.1.5 + zerofrom@0.1.5 + zeroize@1.8.1 + zerovec-derive@0.10.3 + zerovec@0.10.4 + zip@2.2.2 + zopfli@0.8.1 +" + +inherit cargo + +DESCRIPTION="Rust task runner and build tool" +HOMEPAGE="https://sagiegurari.github.io/cargo-make/" +SRC_URI=" + https://github.com/sagiegurari/cargo-make/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz + ${CARGO_CRATE_URIS} +" + +LICENSE="Apache-2.0" +# Dependent crate licenses +LICENSE+=" Apache-2.0 BSD Boost-1.0 ISC MIT MPL-2.0 Unicode-3.0" +# ring +LICENSE+=" openssl" +SLOT="0" +KEYWORDS="~amd64" +IUSE="openssl +rustls test" +REQUIRED_USE="?? ( openssl rustls )" +RESTRICT="!test? ( test )" + +DEPEND="openssl? ( dev-libs/openssl:= )" +RDEPEND="${DEPEND}" +BDEPEND=" + virtual/pkgconfig + test? ( + dev-build/cargo-make + dev-util/rust-script + ) +" + +QA_FLAGS_IGNORED="usr/bin/.*" + +src_configure() { + local myfeatures=( + $(usev openssl tls-native) + $(usev rustls tls-rustls) + ) + cargo_src_configure --no-default-features +} + +src_test() { + local CARGO_SKIP=( + # Test checks that S directory name matches PN. This fails as expected. + environment::mod_test::get_base_directory_name_valid + # Not a git repo + io::io_test::get_path_list_dirs_with_gitignore + # Requires working rustup https://bugs.gentoo.org/834741 + installer::crate_installer::crate_installer_test::install_test_with_toolchain_test + installer::crate_installer::crate_installer_test::invoke_cargo_install_with_toolchain_test + installer::crate_version_check::crate_version_check_test::get_crate_version_for_rustup_component + installer::rustup_component_installer::rustup_component_installer_test::install_with_toolchain_test + installer::rustup_component_installer::rustup_component_installer_test::is_installed_with_toolchain_non_zero + toolchain::toolchain_test::get_cargo_binary_path_valid + toolchain::toolchain_test::wrap_command_empty_args + toolchain::toolchain_test::wrap_command_none_args + toolchain::toolchain_test::wrap_command_with_args + toolchain::toolchain_test::wrap_command_with_args_and_simple_variable_toolchain + # Requires network access + installer::cargo_plugin_installer::cargo_plugin_installer_test::install_crate_already_installed_cargo_make_without_check + installer::crate_installer::crate_installer_test::install_already_installed_crate_only_min_version_equal + installer::crate_installer::crate_installer_test::install_already_installed_crate_only_min_version_smaller + installer::crate_installer::crate_installer_test::install_already_installed_crate_only_version_equal + # cargo.eclass removes .crates.toml, which is needed by crate version checks + installer::crate_version_check::crate_version_check_test::is_min_version_valid_newer_version + installer::crate_version_check::crate_version_check_test::is_version_valid_newer_version + installer::crate_version_check::crate_version_check_test::is_version_valid_old_version + installer::crate_version_check::crate_version_check_test::is_min_version_valid_same_version + installer::crate_version_check::crate_version_check_test::is_version_valid_same_version + ) + + # https://github.com/sagiegurari/cargo-make/issues/573#issuecomment-886147300 + set -- cargo make --env CARGO_MAKE_CARGO_BUILD_TEST_FLAGS="-- ${CARGO_SKIP[*]/#/--skip }" test + einfo "${@}" + "${@}" || die "cargo make test failed" +} + +src_install() { + cargo_src_install + dodoc README.md +} diff --git a/dev-build/cargo-make/metadata.xml b/dev-build/cargo-make/metadata.xml new file mode 100644 index 000000000000..1ad364dcdb2c --- /dev/null +++ b/dev-build/cargo-make/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <!-- maintainer-needed --> + <upstream> + <remote-id type="github">sagiegurari/cargo-make</remote-id> + </upstream> + <use> + <flag name="openssl">Enable TLS support with <pkg>dev-libs/openssl</pkg></flag> + <flag name="rustls">Enable TLS support with rustls</flag> + </use> +</pkgmetadata> diff --git a/dev-build/cmake/Manifest b/dev-build/cmake/Manifest new file mode 100644 index 000000000000..9ee401c8d604 --- /dev/null +++ b/dev-build/cmake/Manifest @@ -0,0 +1,19 @@ +DIST cmake-4.0.0_rc1-docs.tar.xz 577536 BLAKE2B 74a742ffef8e1af1652746e1c177d4198155145a039635e6a0ea40af463f3a2d45b6c6ce7d3a9b1fee24f0c1cfd1c3aa95c27669ca3c6281d54e701fc0ece202 SHA512 74c20067d3b82493024b2f2711b55b93998ce3b5f35ab5a154f33a8268a35a29d01127c55ce6b85b80ff252d15284ed1065e1338422124f6722a4190a984637c +DIST cmake-4.1.4-SHA-256.txt 2015 BLAKE2B 6e8b2f7c769fbf7b5dbdec081edd8c9169f80fb9b16119b5ace3e5596a14394abe8287f45c537dc2ded972e521745c909d9b33e242c1d8fe34abda9791cec71d SHA512 c806bc17dbad51b5bd90354bf3df31232bd39f7a8dee30205807cc7e2ba63eaddc1138f8512c860e86d21cc7075f58cda85f4f9f3f9001810a243e6ebef0261c +DIST cmake-4.1.4-SHA-256.txt.asc 833 BLAKE2B e2685feadb1565a5d14eea89eb5e505dd3988a10f3539d40d44411f425db7baba7fea7cabe894a706e86f58ff8c7332ed26a56711113d099ab27f874177036c3 SHA512 b316dec0ed3f5df1d03b8fdd17afa997df5da723072c4958fe728d4abf5156b36c9e79e0344735a20d31d4a2366aa22b4ae23f334b831ce67ed6bf23183631da +DIST cmake-4.1.4.tar.gz 12051840 BLAKE2B 0d43042b70b1fe27bb1e1eeb2bda1b24923887cb0fdaca2fff11771c980b7a9b24637559315f58c53066a53aa40dd3e2127de8cf4fd7eb0d25844e27a7a08f17 SHA512 c8a5eb269f98f70db1f52675822e1b371864fa86037ed4f1714f77abaf5c7b3fae307bfc4392add29c2c600b502d8876d7d1bb260e331ee6607cb02356a7e8a8 +DIST cmake-4.1.5-SHA-256.txt 2015 BLAKE2B 1859a418346eb7409e661e4addb72c62adca9c781fb0568083437b8861031b6b732c6a84ceb509f1b894dfe8c024eb0a51fba41f201b2d301c306b13717b43ce SHA512 07b34031e95bd74275ce73f86b8731432885065f9869d1b12424318bdc557ad90871bfaa73087cd4a2880e84c52977c16f0e52887b551437c8041a2a01ba78c7 +DIST cmake-4.1.5-SHA-256.txt.asc 833 BLAKE2B 789375e7d65bdabd4fde8fae0b06bef4bed99689565deb834b447daf6aff9b7836a04db198ebd0c6d88aaa51e224f01c6a78757d42e3a06cd15dfe9d31297232 SHA512 f3e989f0ac81b08297665620efb926774d387bb9ea607a61ec7e1a040332ef0e9174eeab8f28d176e34ef278e0f627a27d9d70d4935a765d3f6f535ab242a2a4 +DIST cmake-4.1.5.tar.gz 12048837 BLAKE2B c62c615a480edfd60c694003e26f70a6d2365d0c7a934eabf3e29c44decab0ce91ee35a1c8a900ee57de86e4222a2fd7575561ce2029e310c145607fd8ce46a8 SHA512 25c585a07b20dab2cb483616b6de03f6338add3a320f28321c46efd4b9b2d41fa3fc3e71991ea75fb20a64dddd2b858f9828a64d860f4b9095288dedc6d429b2 +DIST cmake-4.2.4-SHA-256.txt 2015 BLAKE2B 2f53c1aaedbb9e7421312ecf843f35f7538ad72e6bf4dd41271d8cef6eeab0375d45969c09ff255e0587562276711d77f334e670441a08892ad6bf3ce8e0ed16 SHA512 778023fbd242da7de84d8c3a312466022160cc58206fe9945e97b570fc8011db188c2996d6a47f6b6092345b123197c9d083af56b7002acffb4465c08aab601f +DIST cmake-4.2.4-SHA-256.txt.asc 833 BLAKE2B 63ad10bdfba3408d2c23c33130519b6404c2e796d0d84cdb46b0bf18567954ef35768ba69343adabfea701fdad73db308ae751c4bffe9679d834f78b1eb0ab5a SHA512 11819ed1c70938f8980597d2a62c89f393efd2e6ca4e2e4b472fc7e78ad89a7f59c3a92cec03ee2baeb551fcbe6a720edeab7790a300e6339b71a9e5efb607d1 +DIST cmake-4.2.4.tar.gz 12348311 BLAKE2B 367f75fb2493caf2c137ffe04857843e4a94ea01b7ac1c3128e18ab550a97db83eda49f2d8e1600dbcf81a528330bb7517ab3a82ab32cbc0936054cda8b07c09 SHA512 255838f89ef5dd01936bbc13252d099e41d99a681e4279d305e3a3b0ddd85597e7e0334b87052d4766a77e7d5ef189dd77259a194e27d1a6f19a0d0a0e8e7d76 +DIST cmake-4.3.1-SHA-256.txt 2015 BLAKE2B f642be0fe25f036e3200587d38b013258b41d3abd9794376611b1bc9b176485bde415e6587f3776f028b9e7f82b6901a6d01cd31aab8a83887edf08555d79161 SHA512 dce1e1a3701962f0e3b7e69ef004d52093a070affba3f4d8dea428e0118562c7c27cd90883fbff0b039ff7fb2e3dbb1986e4827ecad4f10b0685728acd3bbaca +DIST cmake-4.3.1-SHA-256.txt.asc 833 BLAKE2B 2b8d29633dfb27affcad468258a1d4b529380c4e3a94e5fb25034f3f77bc6f77ade58314e3f5a81e605bbe15077d549f692658605d2fa8a76c0d77d47c2b4305 SHA512 cf8a9ac2e0c9f37d07fc69556933eae56dd8fdc03838060908f1fa64ce4e9d9cede8f46c4a8b73829c3384ad50db804daff3ac6d6af8f5d9c17fa03c961211b4 +DIST cmake-4.3.1.tar.gz 12966559 BLAKE2B 5685a52e9dacc69e267c0616564c8198424ce2a471822d05c63834fed8fe1931e0c9123a4f8f7ab86bb9954d29b2cff0d927d66d1748b8f3fd92a1d0fb8fc1c5 SHA512 010744f82b5448e589a8cbcaa45aea43280e529cafc1897ff311f5c21598c71ee4e822ef7fd679cdf0e49c4d22941f83a3fe21ffde08b2e39bbb92fb94d83ba3 +DIST cmake-4.3.2-SHA-256.txt 2015 BLAKE2B d8dec4928b25922b7d94bf577cefe9f2998f802fc36285df2589aa55de56d035d2c9cc62bb91e556886c92d80ee74fa09e80379702d921b04b70f5979d87b21d SHA512 04ccb8f71544d0923ebe636acd777621dbd7a899bcf782974139131e68e3ad871fba77096917ba3dd1c34b3220c7c63f703c83f9ab1ead821cf5c09fef4ae5cc +DIST cmake-4.3.2-SHA-256.txt.asc 833 BLAKE2B 5957e0be571c42ebfee57dcb933dfeea78e8103fa364f18dcd65c8ae182538e7054c9fed7446684888f9ede2bcaa8c617c9003e8d1775194f9dc001b8cb82542 SHA512 3e86faa633989affa1e301e045092350750be2943e166c4f29778aee162bc80c9f716da5e806133f4a7fb1cf1d4bcca0d1955764933a473b30e5888be781f17e +DIST cmake-4.3.2.tar.gz 12968608 BLAKE2B 58e48f7dd618b8732da960fdb3373618dded50d6d57af30f590c2ee77f657744e998b526b3e8f08463e0d9ff7514d14e3e96ad42284fcea0971ed1b52a0a16cf SHA512 ee78390be3907f4ce398e41ece9067952a25c2cba2edd9cb17f12827466d5bf2476ad8a2bba5df95b3d7950bb5122cb1754d005b6544e43901949869adf8c74a +DIST cmake-4.3.3-SHA-256.txt 2015 BLAKE2B a73f3dfd4a95a353e95cf75c8fe68343020b3936f78da4c1579d49f4bf51360d952193aaf744accd820f9da22e180cfd1f13b029bf13deda293e74306869377f SHA512 23c9851300aa16881cd32d22df69db4189ac2288cc3cdb6cc9534c7de5f2abc0d1d5e53f2b1bdbfce81c4901cb7ea5857019598edd53f95ad0f6554028c65720 +DIST cmake-4.3.3-SHA-256.txt.asc 833 BLAKE2B ff69825df8b777894ef200a418f2b6f1d1cf534d040c54f5b2399aa9a63069d70bb72deeb118245484c00da9a471c8c93a2ea7da26cfe5a3aee3ce23609473e1 SHA512 f1a018f80aa42c62836bd3aeb1a3866d11815041b26adcc3e0f2f0bba482f7564b426a805c3ccf02ff3ad375382ad1a47f0df327c736d2c0428c1573eede33a4 +DIST cmake-4.3.3.tar.gz 12971567 BLAKE2B 30de7da05576d0cc44d67320a2d6fa250c44f5262f73a9e7c3a568cb7f9bda9aee578486911e6dfe2881c55ac618fb7c4443755aec4a105ac54ac304d005a4af SHA512 7f6af59cc53ea412311d54aeb52ad6981c46c53bac1ce0d3bf5944e85952534888267ea952596ad612e2b582f6897a818566963c85b88099f698df0803fe29d9 diff --git a/dev-build/cmake/cmake-4.1.4.ebuild b/dev-build/cmake/cmake-4.1.4.ebuild new file mode 100644 index 000000000000..5f815951e2e4 --- /dev/null +++ b/dev-build/cmake/cmake-4.1.4.ebuild @@ -0,0 +1,334 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +: ${CMAKE_DOCS_PREBUILT:=1} + +CMAKE_DOCS_PREBUILT_DEV=sam +CMAKE_DOCS_VERSION=4.0.0_rc1 +#CMAKE_DOCS_VERSION=${PV} +#CMAKE_DOCS_VERSION=$(ver_cut 1-2).0 +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +# See bug #784815 +CMAKE_DOCS_USEFLAG="+doc" + +CMAKE_QA_COMPAT_SKIP=1 # bug #964514; cmake itself is the last pkg we worry about + +# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja +# ... but seems fine as of 3.22.3? +# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759. +CMAKE_MAKEFILE_GENERATOR="emake" +CMAKE_REMOVE_MODULES_LIST=() +inherit bash-completion-r1 cmake flag-o-matic multiprocessing \ + toolchain-funcs xdg-utils + +MY_P="${P/_/-}" + +DESCRIPTION="Cross platform Make" +HOMEPAGE="https://cmake.org/" +if [[ ${PV} == *9999* ]] ; then + CMAKE_DOCS_PREBUILT=0 + + EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git" + inherit git-r3 +else + SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz" + + if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )" + fi + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc + inherit verify-sig + + SRC_URI+=" verify-sig? ( + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt.asc + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt.asc + )" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20250904 )" +fi + +[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc" + +S="${WORKDIR}/${MY_P}" + +LICENSE="BSD" +SLOT="0" +IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses test" +RESTRICT="!test? ( test )" + +# >= 1.51.0-r1 for ppc32 workaround (bug #941738) +RDEPEND=" + >=app-arch/libarchive-3.3.3:= + app-crypt/rhash:0= + >=dev-libs/expat-2.0.1 + >=dev-libs/jsoncpp-1.9.2-r2:0= + >=dev-libs/libuv-1.51.0-r1:= + >=net-misc/curl-7.21.5[ssl] + virtual/zlib:= + virtual/pkgconfig + dap? ( dev-cpp/cppdap ) + gui? ( dev-qt/qtbase:6[gui,widgets] ) + ncurses? ( sys-libs/ncurses:= ) +" +DEPEND="${RDEPEND}" +BDEPEND+=" + doc? ( + dev-python/requests + dev-python/sphinx + ) + test? ( app-arch/libarchive[zstd] ) +" + +SITEFILE="50${PN}-gentoo.el" + +PATCHES=( + # Prefix + "${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch + # Misc + "${FILESDIR}"/${PN}-3.31.6-Prefer-pkgconfig-in-FindBLAS.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch + # Cuda + "${FILESDIR}/${PN}-3.30.3-cudahostld.patch" + + # Upstream fixes (can usually be removed with a version bump) +) + +cmake_src_bootstrap() { + # disable running of cmake in bootstrap command + sed -i \ + -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \ + bootstrap || die "sed failed" + + # execinfo.h on Solaris isn't quite what it is on Darwin + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i -e 's/execinfo\.h/blablabla.h/' \ + Source/kwsys/CMakeLists.txt || die + fi + + # bootstrap script isn't exactly /bin/sh compatible + tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \ + --prefix="${T}/cmakestrap/" \ + --parallel=$(get_makeopts_jobs "$(get_nproc)") \ + || die "Bootstrap failed" +} + +pkg_pretend() { + if [[ -z ${EPREFIX} ]] ; then + local file + local errant_files=() + + # See bug #599684 and bug #753581 (at least) + for file in /etc/arch-release /etc/redhat-release /etc/debian_version ; do + if [[ -e ${file} ]]; then + errant_files+=( "${file}" ) + fi + done + + # If errant files exist + if [[ ${#errant_files[@]} -gt 0 ]]; then + eerror "Errant files found!" + eerror "The presence of these files is known to confuse CMake's" + eerror "library path logic. Please (re)move these files:" + + for file in "${errant_files[@]}"; do + eerror " mv ${file} ${file}.bak" + done + + die "Stray files found in /etc/, see above message" + fi + fi +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then + default + else + cd "${DISTDIR}" || die + + # See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature + verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc} + verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz + + cd "${WORKDIR}" || die + + default + fi +} + +src_prepare() { + cmake_src_prepare + + if [[ ${CHOST} == *-darwin* ]] ; then + # Disable Xcode hooks, bug #652134 + sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \ + Source/CMakeLists.txt || die + sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \ + -e '/cmGlobalXCodeGenerator.h/d' \ + Source/cmake.cxx || die + # Disable system integration, bug #933744 + sed -i -e 's/__APPLE__/__DISABLED__/' \ + Source/cmFindProgramCommand.cxx \ + Source/CPack/cmCPackGeneratorFactory.cxx || die + sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \ + Source/cmMachO.cxx || die + sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \ + Source/CMakeLists.txt || die + + # Disable isysroot usage with GCC, we've properly instructed + # where things are via GCC configuration and ldwrapper + sed -i -e '/cmake_gnu_set_sysroot_flag/d' \ + Modules/Platform/Apple-GNU-*.cmake || die + # Disable isysroot usage with clang as well + sed -i -e '/_SYSROOT_FLAG/d' \ + Modules/Platform/Apple-Clang.cmake || die + # Don't set a POSIX standard, system headers don't like that, #757426 + sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmLoadCommandCommand.cxx \ + Source/cmStandardLexer.h \ + Source/cmSystemTools.cxx \ + Source/cmTimestamp.cxx + sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmStandardLexer.h + fi + + # Add gcc libs to the default link paths + sed -i \ + -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \ + -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \ + -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \ + Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed" + + ## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must* + ## handle them as part of bootstrapping, sadly. + + # Fix linking on Solaris + [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl + + # ODR warnings, bug #858335 + # https://gitlab.kitware.com/cmake/cmake/-/issues/20740 + filter-lto + + # 4.0.0_rc1 is missing this, fails to configure + # https://gitlab.kitware.com/cmake/cmake/-/issues/26712 + touch .clang-tidy Utilities/.clang-tidy || die + + if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then + CMAKE_BINARY="${S}/Bootstrap.cmk/cmake" + cmake_src_bootstrap + fi +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_USE_SYSTEM_LIBRARIES=ON + -DCMake_ENABLE_DEBUGGER=$(usex dap) + -DCMAKE_DOC_DIR=/share/doc/${PF} + -DCMAKE_MAN_DIR=/share/man + -DCMAKE_DATA_DIR=/share/${PN} + -DSPHINX_MAN=$(usex doc) + -DSPHINX_HTML=$(usex doc) + -DBUILD_CursesDialog="$(usex ncurses)" + -DBUILD_TESTING=$(usex test) + -DBUILD_QtDialog=$(usex gui) + ) + + use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=6 ) + + cmake_src_configure +} + +src_test() { + # Fix OutDir and SelectLibraryConfigurations tests + # these are altered thanks to our eclass + sed -i -e 's:^#_cmake_modify_IGNORE ::g' \ + "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \ + || die + + unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS + + pushd "${BUILD_DIR}" > /dev/null || die + + # Excluded tests: + local CMAKE_SKIP_TESTS=( + # BootstrapTest: we actually bootstrap it every time so why test it? + "BootstrapTest" + # BundleUtilities: bundle creation broken + "BundleUtilities" + # CMakeOnly.AllFindModules: pthread issues + "CMakeOnly.AllFindModules" + # TODO + "CompileOptions" + # CTest.updatecvs: which fails to commit as root + "CTest.UpdateCVS" + # Fortran: requires fortran + "Fortran" + # RunCMake.CompilerLauncher: also requires fortran + "RunCMake.CompilerLauncher" + # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because + # debugedit binary is not in the expected location + # RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because + # it can't find a deb package that owns libc + # RunCMake.CPack_TGZ: requires 64-bit time_t (bug #967480) + "RunCMake.CPack_(DEB|RPM|TGZ)" + # TestUpload, which requires network access + "TestUpload" + # RunCMake.CMP0125, known failure reported upstream (bug #829414) + "RunCMake.CMP0125" + ) + + local -x QT_QPA_PLATFORM=offscreen + + cmake_src_test +} + +src_install() { + cmake_src_install + + # If USE=doc, there'll be newly generated docs which we install instead. + if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8] + fi + + insinto /usr/share/vim/vimfiles/syntax + doins Auxiliary/vim/syntax/cmake.vim + + insinto /usr/share/vim/vimfiles/indent + doins Auxiliary/vim/indent/cmake.vim + + insinto /usr/share/vim/vimfiles/ftdetect + doins "${FILESDIR}/${PN}.vim" + + dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack} +} + +pkg_postinst() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} + +pkg_postrm() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} diff --git a/dev-build/cmake/cmake-4.1.5.ebuild b/dev-build/cmake/cmake-4.1.5.ebuild new file mode 100644 index 000000000000..a3917f21387d --- /dev/null +++ b/dev-build/cmake/cmake-4.1.5.ebuild @@ -0,0 +1,334 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +: ${CMAKE_DOCS_PREBUILT:=1} + +CMAKE_DOCS_PREBUILT_DEV=sam +CMAKE_DOCS_VERSION=4.0.0_rc1 +#CMAKE_DOCS_VERSION=${PV} +#CMAKE_DOCS_VERSION=$(ver_cut 1-2).0 +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +# See bug #784815 +CMAKE_DOCS_USEFLAG="+doc" + +CMAKE_QA_COMPAT_SKIP=1 # bug #964514; cmake itself is the last pkg we worry about + +# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja +# ... but seems fine as of 3.22.3? +# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759. +CMAKE_MAKEFILE_GENERATOR="emake" +CMAKE_REMOVE_MODULES_LIST=() +inherit bash-completion-r1 cmake flag-o-matic multiprocessing \ + toolchain-funcs xdg-utils + +MY_P="${P/_/-}" + +DESCRIPTION="Cross platform Make" +HOMEPAGE="https://cmake.org/" +if [[ ${PV} == *9999* ]] ; then + CMAKE_DOCS_PREBUILT=0 + + EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git" + inherit git-r3 +else + SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz" + + if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )" + fi + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc + inherit verify-sig + + SRC_URI+=" verify-sig? ( + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt.asc + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt.asc + )" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20250904 )" +fi + +[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc" + +S="${WORKDIR}/${MY_P}" + +LICENSE="BSD" +SLOT="0" +IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses test" +RESTRICT="!test? ( test )" + +# >= 1.51.0-r1 for ppc32 workaround (bug #941738) +RDEPEND=" + >=app-arch/libarchive-3.3.3:= + app-crypt/rhash:0= + >=dev-libs/expat-2.0.1 + >=dev-libs/jsoncpp-1.9.2-r2:0= + >=dev-libs/libuv-1.51.0-r1:= + >=net-misc/curl-7.21.5[ssl] + virtual/zlib:= + virtual/pkgconfig + dap? ( dev-cpp/cppdap ) + gui? ( dev-qt/qtbase:6[gui,widgets] ) + ncurses? ( sys-libs/ncurses:= ) +" +DEPEND="${RDEPEND}" +BDEPEND+=" + doc? ( + dev-python/requests + dev-python/sphinx + ) + test? ( app-arch/libarchive[zstd] ) +" + +SITEFILE="50${PN}-gentoo.el" + +PATCHES=( + # Prefix + "${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch + # Misc + "${FILESDIR}"/${PN}-3.31.6-Prefer-pkgconfig-in-FindBLAS.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch + # Cuda + "${FILESDIR}/${PN}-3.30.3-cudahostld.patch" + + # Upstream fixes (can usually be removed with a version bump) +) + +cmake_src_bootstrap() { + # disable running of cmake in bootstrap command + sed -i \ + -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \ + bootstrap || die "sed failed" + + # execinfo.h on Solaris isn't quite what it is on Darwin + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i -e 's/execinfo\.h/blablabla.h/' \ + Source/kwsys/CMakeLists.txt || die + fi + + # bootstrap script isn't exactly /bin/sh compatible + tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \ + --prefix="${T}/cmakestrap/" \ + --parallel=$(get_makeopts_jobs "$(get_nproc)") \ + || die "Bootstrap failed" +} + +pkg_pretend() { + if [[ -z ${EPREFIX} ]] ; then + local file + local errant_files=() + + # See bug #599684 and bug #753581 (at least) + for file in /etc/arch-release /etc/redhat-release /etc/debian_version ; do + if [[ -e ${file} ]]; then + errant_files+=( "${file}" ) + fi + done + + # If errant files exist + if [[ ${#errant_files[@]} -gt 0 ]]; then + eerror "Errant files found!" + eerror "The presence of these files is known to confuse CMake's" + eerror "library path logic. Please (re)move these files:" + + for file in "${errant_files[@]}"; do + eerror " mv ${file} ${file}.bak" + done + + die "Stray files found in /etc/, see above message" + fi + fi +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then + default + else + cd "${DISTDIR}" || die + + # See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature + verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc} + verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz + + cd "${WORKDIR}" || die + + default + fi +} + +src_prepare() { + cmake_src_prepare + + if [[ ${CHOST} == *-darwin* ]] ; then + # Disable Xcode hooks, bug #652134 + sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \ + Source/CMakeLists.txt || die + sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \ + -e '/cmGlobalXCodeGenerator.h/d' \ + Source/cmake.cxx || die + # Disable system integration, bug #933744 + sed -i -e 's/__APPLE__/__DISABLED__/' \ + Source/cmFindProgramCommand.cxx \ + Source/CPack/cmCPackGeneratorFactory.cxx || die + sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \ + Source/cmMachO.cxx || die + sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \ + Source/CMakeLists.txt || die + + # Disable isysroot usage with GCC, we've properly instructed + # where things are via GCC configuration and ldwrapper + sed -i -e '/cmake_gnu_set_sysroot_flag/d' \ + Modules/Platform/Apple-GNU-*.cmake || die + # Disable isysroot usage with clang as well + sed -i -e '/_SYSROOT_FLAG/d' \ + Modules/Platform/Apple-Clang.cmake || die + # Don't set a POSIX standard, system headers don't like that, #757426 + sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmLoadCommandCommand.cxx \ + Source/cmStandardLexer.h \ + Source/cmSystemTools.cxx \ + Source/cmTimestamp.cxx + sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmStandardLexer.h + fi + + # Add gcc libs to the default link paths + sed -i \ + -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \ + -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \ + -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \ + Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed" + + ## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must* + ## handle them as part of bootstrapping, sadly. + + # Fix linking on Solaris + [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl + + # ODR warnings, bug #858335 + # https://gitlab.kitware.com/cmake/cmake/-/issues/20740 + filter-lto + + # 4.0.0_rc1 is missing this, fails to configure + # https://gitlab.kitware.com/cmake/cmake/-/issues/26712 + touch .clang-tidy Utilities/.clang-tidy || die + + if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then + CMAKE_BINARY="${S}/Bootstrap.cmk/cmake" + cmake_src_bootstrap + fi +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_USE_SYSTEM_LIBRARIES=ON + -DCMake_ENABLE_DEBUGGER=$(usex dap) + -DCMAKE_DOC_DIR=/share/doc/${PF} + -DCMAKE_MAN_DIR=/share/man + -DCMAKE_DATA_DIR=/share/${PN} + -DSPHINX_MAN=$(usex doc) + -DSPHINX_HTML=$(usex doc) + -DBUILD_CursesDialog="$(usex ncurses)" + -DBUILD_TESTING=$(usex test) + -DBUILD_QtDialog=$(usex gui) + ) + + use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=6 ) + + cmake_src_configure +} + +src_test() { + # Fix OutDir and SelectLibraryConfigurations tests + # these are altered thanks to our eclass + sed -i -e 's:^#_cmake_modify_IGNORE ::g' \ + "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \ + || die + + unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS + + pushd "${BUILD_DIR}" > /dev/null || die + + # Excluded tests: + local CMAKE_SKIP_TESTS=( + # BootstrapTest: we actually bootstrap it every time so why test it? + "BootstrapTest" + # BundleUtilities: bundle creation broken + "BundleUtilities" + # CMakeOnly.AllFindModules: pthread issues + "CMakeOnly.AllFindModules" + # TODO + "CompileOptions" + # CTest.updatecvs: which fails to commit as root + "CTest.UpdateCVS" + # Fortran: requires fortran + "Fortran" + # RunCMake.CompilerLauncher: also requires fortran + "RunCMake.CompilerLauncher" + # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because + # debugedit binary is not in the expected location + # RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because + # it can't find a deb package that owns libc + # RunCMake.CPack_TGZ: requires 64-bit time_t (bug #967480) + "RunCMake.CPack_(DEB|RPM|TGZ)" + # TestUpload, which requires network access + "TestUpload" + # RunCMake.CMP0125, known failure reported upstream (bug #829414) + "RunCMake.CMP0125" + ) + + local -x QT_QPA_PLATFORM=offscreen + + cmake_src_test +} + +src_install() { + cmake_src_install + + # If USE=doc, there'll be newly generated docs which we install instead. + if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8] + fi + + insinto /usr/share/vim/vimfiles/syntax + doins Auxiliary/vim/syntax/cmake.vim + + insinto /usr/share/vim/vimfiles/indent + doins Auxiliary/vim/indent/cmake.vim + + insinto /usr/share/vim/vimfiles/ftdetect + doins "${FILESDIR}/${PN}.vim" + + dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack} +} + +pkg_postinst() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} + +pkg_postrm() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} diff --git a/dev-build/cmake/cmake-4.2.4.ebuild b/dev-build/cmake/cmake-4.2.4.ebuild new file mode 100644 index 000000000000..0bf58953c507 --- /dev/null +++ b/dev-build/cmake/cmake-4.2.4.ebuild @@ -0,0 +1,333 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +: ${CMAKE_DOCS_PREBUILT:=1} + +CMAKE_DOCS_PREBUILT_DEV=sam +CMAKE_DOCS_VERSION=4.0.0_rc1 +#CMAKE_DOCS_VERSION=${PV} +#CMAKE_DOCS_VERSION=$(ver_cut 1-2).0 +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +# See bug #784815 +CMAKE_DOCS_USEFLAG="+doc" + +CMAKE_QA_COMPAT_SKIP=1 # bug #964514; cmake itself is the last pkg we worry about + +# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja +# ... but seems fine as of 3.22.3? +# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759. +CMAKE_MAKEFILE_GENERATOR="emake" +CMAKE_REMOVE_MODULES_LIST=() +inherit bash-completion-r1 cmake flag-o-matic multiprocessing \ + toolchain-funcs xdg-utils + +MY_P="${P/_/-}" + +DESCRIPTION="Cross platform Make" +HOMEPAGE="https://cmake.org/" +if [[ ${PV} == *9999* ]] ; then + CMAKE_DOCS_PREBUILT=0 + + EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git" + inherit git-r3 +else + SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz" + + if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )" + fi + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc + inherit verify-sig + + SRC_URI+=" verify-sig? ( + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt.asc + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt.asc + )" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20250904 )" +fi + +[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc" + +S="${WORKDIR}/${MY_P}" + +LICENSE="BSD" +SLOT="0" +IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses test" +RESTRICT="!test? ( test )" + +# >= 1.51.0-r1 for ppc32 workaround (bug #941738) +RDEPEND=" + >=app-arch/libarchive-3.3.3:= + app-crypt/rhash:0= + >=dev-libs/expat-2.0.1 + >=dev-libs/jsoncpp-1.9.2-r2:0= + >=dev-libs/libuv-1.51.0-r1:= + >=net-misc/curl-7.21.5[ssl] + virtual/zlib:= + virtual/pkgconfig + dap? ( dev-cpp/cppdap ) + gui? ( dev-qt/qtbase:6[gui,widgets] ) + ncurses? ( sys-libs/ncurses:= ) +" +DEPEND="${RDEPEND}" +BDEPEND+=" + doc? ( + dev-python/requests + dev-python/sphinx + ) + test? ( app-arch/libarchive[zstd] ) +" + +SITEFILE="50${PN}-gentoo.el" + +PATCHES=( + # Prefix + "${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch + # Misc + "${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch + # Cuda + "${FILESDIR}/${PN}-3.30.3-cudahostld.patch" + + # Upstream fixes (can usually be removed with a version bump) +) + +cmake_src_bootstrap() { + # disable running of cmake in bootstrap command + sed -i \ + -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \ + bootstrap || die "sed failed" + + # execinfo.h on Solaris isn't quite what it is on Darwin + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i -e 's/execinfo\.h/blablabla.h/' \ + Source/kwsys/CMakeLists.txt || die + fi + + # bootstrap script isn't exactly /bin/sh compatible + tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \ + --prefix="${T}/cmakestrap/" \ + --parallel=$(get_makeopts_jobs "$(get_nproc)") \ + || die "Bootstrap failed" +} + +pkg_pretend() { + if [[ -z ${EPREFIX} ]] ; then + local file + local errant_files=() + + # See bug #599684 and bug #753581 (at least) + for file in /etc/arch-release /etc/redhat-release /etc/debian_version ; do + if [[ -e ${file} ]]; then + errant_files+=( "${file}" ) + fi + done + + # If errant files exist + if [[ ${#errant_files[@]} -gt 0 ]]; then + eerror "Errant files found!" + eerror "The presence of these files is known to confuse CMake's" + eerror "library path logic. Please (re)move these files:" + + for file in "${errant_files[@]}"; do + eerror " mv ${file} ${file}.bak" + done + + die "Stray files found in /etc/, see above message" + fi + fi +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then + default + else + cd "${DISTDIR}" || die + + # See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature + verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc} + verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz + + cd "${WORKDIR}" || die + + default + fi +} + +src_prepare() { + cmake_src_prepare + + if [[ ${CHOST} == *-darwin* ]] ; then + # Disable Xcode hooks, bug #652134 + sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \ + Source/CMakeLists.txt || die + sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \ + -e '/cmGlobalXCodeGenerator.h/d' \ + Source/cmake.cxx || die + # Disable system integration, bug #933744 + sed -i -e 's/__APPLE__/__DISABLED__/' \ + Source/cmFindProgramCommand.cxx \ + Source/CPack/cmCPackGeneratorFactory.cxx || die + sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \ + Source/cmMachO.cxx || die + sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \ + Source/CMakeLists.txt || die + + # Disable isysroot usage with GCC, we've properly instructed + # where things are via GCC configuration and ldwrapper + sed -i -e '/cmake_gnu_set_sysroot_flag/d' \ + Modules/Platform/Apple-GNU-*.cmake || die + # Disable isysroot usage with clang as well + sed -i -e '/_SYSROOT_FLAG/d' \ + Modules/Platform/Apple-Clang.cmake || die + # Don't set a POSIX standard, system headers don't like that, #757426 + sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmLoadCommandCommand.cxx \ + Source/cmStandardLexer.h \ + Source/cmSystemTools.cxx \ + Source/cmTimestamp.cxx + sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmStandardLexer.h + fi + + # Add gcc libs to the default link paths + sed -i \ + -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \ + -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \ + -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \ + Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed" + + ## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must* + ## handle them as part of bootstrapping, sadly. + + # Fix linking on Solaris + [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl + + # ODR warnings, bug #858335 + # https://gitlab.kitware.com/cmake/cmake/-/issues/20740 + filter-lto + + # 4.0.0_rc1 is missing this, fails to configure + # https://gitlab.kitware.com/cmake/cmake/-/issues/26712 + touch .clang-tidy Utilities/.clang-tidy || die + + if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then + CMAKE_BINARY="${S}/Bootstrap.cmk/cmake" + cmake_src_bootstrap + fi +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_USE_SYSTEM_LIBRARIES=ON + -DCMake_ENABLE_DEBUGGER=$(usex dap) + -DCMAKE_DOC_DIR=/share/doc/${PF} + -DCMAKE_MAN_DIR=/share/man + -DCMAKE_DATA_DIR=/share/${PN} + -DSPHINX_MAN=$(usex doc) + -DSPHINX_HTML=$(usex doc) + -DBUILD_CursesDialog="$(usex ncurses)" + -DBUILD_TESTING=$(usex test) + -DBUILD_QtDialog=$(usex gui) + ) + + use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=6 ) + + cmake_src_configure +} + +src_test() { + # Fix OutDir and SelectLibraryConfigurations tests + # these are altered thanks to our eclass + sed -i -e 's:^#_cmake_modify_IGNORE ::g' \ + "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \ + || die + + unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS + + pushd "${BUILD_DIR}" > /dev/null || die + + # Excluded tests: + local CMAKE_SKIP_TESTS=( + # BootstrapTest: we actually bootstrap it every time so why test it? + "BootstrapTest" + # BundleUtilities: bundle creation broken + "BundleUtilities" + # CMakeOnly.AllFindModules: pthread issues + "CMakeOnly.AllFindModules" + # TODO + "CompileOptions" + # CTest.updatecvs: which fails to commit as root + "CTest.UpdateCVS" + # Fortran: requires fortran + "Fortran" + # RunCMake.CompilerLauncher: also requires fortran + "RunCMake.CompilerLauncher" + # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because + # debugedit binary is not in the expected location + # RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because + # it can't find a deb package that owns libc + # RunCMake.CPack_TGZ: requires 64-bit time_t (bug #967480) + "RunCMake.CPack_(DEB|RPM|TGZ)" + # TestUpload, which requires network access + "TestUpload" + # RunCMake.CMP0125, known failure reported upstream (bug #829414) + "RunCMake.CMP0125" + ) + + local -x QT_QPA_PLATFORM=offscreen + + cmake_src_test +} + +src_install() { + cmake_src_install + + # If USE=doc, there'll be newly generated docs which we install instead. + if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8] + fi + + insinto /usr/share/vim/vimfiles/syntax + doins Auxiliary/vim/syntax/cmake.vim + + insinto /usr/share/vim/vimfiles/indent + doins Auxiliary/vim/indent/cmake.vim + + insinto /usr/share/vim/vimfiles/ftdetect + doins "${FILESDIR}/${PN}.vim" + + dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack} +} + +pkg_postinst() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} + +pkg_postrm() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} diff --git a/dev-build/cmake/cmake-4.3.1.ebuild b/dev-build/cmake/cmake-4.3.1.ebuild new file mode 100644 index 000000000000..c2fda1de8122 --- /dev/null +++ b/dev-build/cmake/cmake-4.3.1.ebuild @@ -0,0 +1,333 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +: ${CMAKE_DOCS_PREBUILT:=1} + +CMAKE_DOCS_PREBUILT_DEV=sam +CMAKE_DOCS_VERSION=4.0.0_rc1 +#CMAKE_DOCS_VERSION=${PV} +#CMAKE_DOCS_VERSION=$(ver_cut 1-2).0 +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +# See bug #784815 +CMAKE_DOCS_USEFLAG="+doc" + +CMAKE_QA_COMPAT_SKIP=1 # bug #964514; cmake itself is the last pkg we worry about + +# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja +# ... but seems fine as of 3.22.3? +# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759. +CMAKE_MAKEFILE_GENERATOR="emake" +CMAKE_REMOVE_MODULES_LIST=() +inherit bash-completion-r1 cmake flag-o-matic multiprocessing \ + toolchain-funcs xdg-utils + +MY_P="${P/_/-}" + +DESCRIPTION="Cross platform Make" +HOMEPAGE="https://cmake.org/" +if [[ ${PV} == *9999* ]] ; then + CMAKE_DOCS_PREBUILT=0 + + EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git" + inherit git-r3 +else + SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz" + + if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )" + fi + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc + inherit verify-sig + + SRC_URI+=" verify-sig? ( + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt.asc + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt.asc + )" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20250904 )" +fi + +[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc" + +S="${WORKDIR}/${MY_P}" + +LICENSE="BSD" +SLOT="0" +IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses test" +RESTRICT="!test? ( test )" + +# >= 1.51.0-r1 for ppc32 workaround (bug #941738) +RDEPEND=" + >=app-arch/libarchive-3.3.3:= + app-crypt/rhash:0= + >=dev-libs/expat-2.0.1 + >=dev-libs/jsoncpp-1.9.2-r2:0= + >=dev-libs/libuv-1.51.0-r1:= + >=net-misc/curl-7.21.5[ssl] + virtual/zlib:= + virtual/pkgconfig + dap? ( dev-cpp/cppdap ) + gui? ( dev-qt/qtbase:6[gui,widgets] ) + ncurses? ( sys-libs/ncurses:= ) +" +DEPEND="${RDEPEND}" +BDEPEND+=" + doc? ( + dev-python/requests + dev-python/sphinx + ) + test? ( app-arch/libarchive[zstd] ) +" + +SITEFILE="50${PN}-gentoo.el" + +PATCHES=( + # Prefix + "${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch + # Misc + "${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch + # Cuda + "${FILESDIR}/${PN}-3.30.3-cudahostld.patch" + + # Upstream fixes (can usually be removed with a version bump) +) + +cmake_src_bootstrap() { + # disable running of cmake in bootstrap command + sed -i \ + -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \ + bootstrap || die "sed failed" + + # execinfo.h on Solaris isn't quite what it is on Darwin + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i -e 's/execinfo\.h/blablabla.h/' \ + Source/kwsys/CMakeLists.txt || die + fi + + # bootstrap script isn't exactly /bin/sh compatible + tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \ + --prefix="${T}/cmakestrap/" \ + --parallel=$(get_makeopts_jobs "$(get_nproc)") \ + || die "Bootstrap failed" +} + +pkg_pretend() { + if [[ -z ${EPREFIX} ]] ; then + local file + local errant_files=() + + # See bug #599684 and bug #753581 (at least) + for file in /etc/arch-release /etc/redhat-release /etc/debian_version ; do + if [[ -e ${file} ]]; then + errant_files+=( "${file}" ) + fi + done + + # If errant files exist + if [[ ${#errant_files[@]} -gt 0 ]]; then + eerror "Errant files found!" + eerror "The presence of these files is known to confuse CMake's" + eerror "library path logic. Please (re)move these files:" + + for file in "${errant_files[@]}"; do + eerror " mv ${file} ${file}.bak" + done + + die "Stray files found in /etc/, see above message" + fi + fi +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then + default + else + cd "${DISTDIR}" || die + + # See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature + verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc} + verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz + + cd "${WORKDIR}" || die + + default + fi +} + +src_prepare() { + cmake_src_prepare + + if [[ ${CHOST} == *-darwin* ]] ; then + # Disable Xcode hooks, bug #652134 + sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \ + Source/CMakeLists.txt || die + sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \ + -e '/cmGlobalXCodeGenerator.h/d' \ + Source/cmake.cxx || die + # Disable system integration, bug #933744 + sed -i -e 's/__APPLE__/__DISABLED__/' \ + Source/cmFindProgramCommand.cxx \ + Source/CPack/cmCPackGeneratorFactory.cxx || die + sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \ + Source/cmMachO.cxx || die + sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \ + Source/CMakeLists.txt || die + + # Disable isysroot usage with GCC, we've properly instructed + # where things are via GCC configuration and ldwrapper + sed -i -e '/cmake_gnu_set_sysroot_flag/d' \ + Modules/Platform/Apple-GNU-*.cmake || die + # Disable isysroot usage with clang as well + sed -i -e '/_SYSROOT_FLAG/d' \ + Modules/Platform/Apple-Clang.cmake || die + # Don't set a POSIX standard, system headers don't like that, #757426 + sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmLoadCommandCommand.cxx \ + Source/cmStandardLexer.h \ + Source/cmSystemTools.cxx \ + Source/cmTimestamp.cxx + sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmStandardLexer.h + fi + + # Add gcc libs to the default link paths + sed -i \ + -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \ + -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \ + -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \ + Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed" + + ## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must* + ## handle them as part of bootstrapping, sadly. + + # Fix linking on Solaris + [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl + + # ODR warnings, bug #858335 + # https://gitlab.kitware.com/cmake/cmake/-/issues/20740 + filter-lto + + # 4.0.0_rc1 is missing this, fails to configure + # https://gitlab.kitware.com/cmake/cmake/-/issues/26712 + touch .clang-tidy Utilities/.clang-tidy || die + + if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then + CMAKE_BINARY="${S}/Bootstrap.cmk/cmake" + cmake_src_bootstrap + fi +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_USE_SYSTEM_LIBRARIES=ON + -DCMake_ENABLE_DEBUGGER=$(usex dap) + -DCMAKE_DOC_DIR=/share/doc/${PF} + -DCMAKE_MAN_DIR=/share/man + -DCMAKE_DATA_DIR=/share/${PN} + -DSPHINX_MAN=$(usex doc) + -DSPHINX_HTML=$(usex doc) + -DBUILD_CursesDialog="$(usex ncurses)" + -DBUILD_TESTING=$(usex test) + -DBUILD_QtDialog=$(usex gui) + ) + + use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=6 ) + + cmake_src_configure +} + +src_test() { + # Fix OutDir and SelectLibraryConfigurations tests + # these are altered thanks to our eclass + sed -i -e 's:^#_cmake_modify_IGNORE ::g' \ + "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \ + || die + + unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS + + pushd "${BUILD_DIR}" > /dev/null || die + + # Excluded tests: + local CMAKE_SKIP_TESTS=( + # BootstrapTest: we actually bootstrap it every time so why test it? + "BootstrapTest" + # BundleUtilities: bundle creation broken + "BundleUtilities" + # CMakeOnly.AllFindModules: pthread issues + "CMakeOnly.AllFindModules" + # TODO + "CompileOptions" + # CTest.updatecvs: which fails to commit as root + "CTest.UpdateCVS" + # Fortran: requires fortran + "Fortran" + # RunCMake.CompilerLauncher: also requires fortran + "RunCMake.CompilerLauncher" + # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because + # debugedit binary is not in the expected location + # RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because + # it can't find a deb package that owns libc + # RunCMake.CPack_TGZ: requires 64-bit time_t (bug #967480) + "RunCMake.CPack_(DEB|RPM|TGZ)" + # TestUpload, which requires network access + "TestUpload" + # RunCMake.CMP0125, known failure reported upstream (bug #829414) + "RunCMake.CMP0125" + ) + + local -x QT_QPA_PLATFORM=offscreen + + cmake_src_test +} + +src_install() { + cmake_src_install + + # If USE=doc, there'll be newly generated docs which we install instead. + if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8] + fi + + insinto /usr/share/vim/vimfiles/syntax + doins Auxiliary/vim/syntax/cmake.vim + + insinto /usr/share/vim/vimfiles/indent + doins Auxiliary/vim/indent/cmake.vim + + insinto /usr/share/vim/vimfiles/ftdetect + doins "${FILESDIR}/${PN}.vim" + + dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack} +} + +pkg_postinst() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} + +pkg_postrm() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} diff --git a/dev-build/cmake/cmake-4.3.2.ebuild b/dev-build/cmake/cmake-4.3.2.ebuild new file mode 100644 index 000000000000..c2fda1de8122 --- /dev/null +++ b/dev-build/cmake/cmake-4.3.2.ebuild @@ -0,0 +1,333 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +: ${CMAKE_DOCS_PREBUILT:=1} + +CMAKE_DOCS_PREBUILT_DEV=sam +CMAKE_DOCS_VERSION=4.0.0_rc1 +#CMAKE_DOCS_VERSION=${PV} +#CMAKE_DOCS_VERSION=$(ver_cut 1-2).0 +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +# See bug #784815 +CMAKE_DOCS_USEFLAG="+doc" + +CMAKE_QA_COMPAT_SKIP=1 # bug #964514; cmake itself is the last pkg we worry about + +# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja +# ... but seems fine as of 3.22.3? +# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759. +CMAKE_MAKEFILE_GENERATOR="emake" +CMAKE_REMOVE_MODULES_LIST=() +inherit bash-completion-r1 cmake flag-o-matic multiprocessing \ + toolchain-funcs xdg-utils + +MY_P="${P/_/-}" + +DESCRIPTION="Cross platform Make" +HOMEPAGE="https://cmake.org/" +if [[ ${PV} == *9999* ]] ; then + CMAKE_DOCS_PREBUILT=0 + + EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git" + inherit git-r3 +else + SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz" + + if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )" + fi + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc + inherit verify-sig + + SRC_URI+=" verify-sig? ( + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt.asc + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt.asc + )" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20250904 )" +fi + +[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc" + +S="${WORKDIR}/${MY_P}" + +LICENSE="BSD" +SLOT="0" +IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses test" +RESTRICT="!test? ( test )" + +# >= 1.51.0-r1 for ppc32 workaround (bug #941738) +RDEPEND=" + >=app-arch/libarchive-3.3.3:= + app-crypt/rhash:0= + >=dev-libs/expat-2.0.1 + >=dev-libs/jsoncpp-1.9.2-r2:0= + >=dev-libs/libuv-1.51.0-r1:= + >=net-misc/curl-7.21.5[ssl] + virtual/zlib:= + virtual/pkgconfig + dap? ( dev-cpp/cppdap ) + gui? ( dev-qt/qtbase:6[gui,widgets] ) + ncurses? ( sys-libs/ncurses:= ) +" +DEPEND="${RDEPEND}" +BDEPEND+=" + doc? ( + dev-python/requests + dev-python/sphinx + ) + test? ( app-arch/libarchive[zstd] ) +" + +SITEFILE="50${PN}-gentoo.el" + +PATCHES=( + # Prefix + "${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch + # Misc + "${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch + # Cuda + "${FILESDIR}/${PN}-3.30.3-cudahostld.patch" + + # Upstream fixes (can usually be removed with a version bump) +) + +cmake_src_bootstrap() { + # disable running of cmake in bootstrap command + sed -i \ + -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \ + bootstrap || die "sed failed" + + # execinfo.h on Solaris isn't quite what it is on Darwin + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i -e 's/execinfo\.h/blablabla.h/' \ + Source/kwsys/CMakeLists.txt || die + fi + + # bootstrap script isn't exactly /bin/sh compatible + tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \ + --prefix="${T}/cmakestrap/" \ + --parallel=$(get_makeopts_jobs "$(get_nproc)") \ + || die "Bootstrap failed" +} + +pkg_pretend() { + if [[ -z ${EPREFIX} ]] ; then + local file + local errant_files=() + + # See bug #599684 and bug #753581 (at least) + for file in /etc/arch-release /etc/redhat-release /etc/debian_version ; do + if [[ -e ${file} ]]; then + errant_files+=( "${file}" ) + fi + done + + # If errant files exist + if [[ ${#errant_files[@]} -gt 0 ]]; then + eerror "Errant files found!" + eerror "The presence of these files is known to confuse CMake's" + eerror "library path logic. Please (re)move these files:" + + for file in "${errant_files[@]}"; do + eerror " mv ${file} ${file}.bak" + done + + die "Stray files found in /etc/, see above message" + fi + fi +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then + default + else + cd "${DISTDIR}" || die + + # See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature + verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc} + verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz + + cd "${WORKDIR}" || die + + default + fi +} + +src_prepare() { + cmake_src_prepare + + if [[ ${CHOST} == *-darwin* ]] ; then + # Disable Xcode hooks, bug #652134 + sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \ + Source/CMakeLists.txt || die + sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \ + -e '/cmGlobalXCodeGenerator.h/d' \ + Source/cmake.cxx || die + # Disable system integration, bug #933744 + sed -i -e 's/__APPLE__/__DISABLED__/' \ + Source/cmFindProgramCommand.cxx \ + Source/CPack/cmCPackGeneratorFactory.cxx || die + sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \ + Source/cmMachO.cxx || die + sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \ + Source/CMakeLists.txt || die + + # Disable isysroot usage with GCC, we've properly instructed + # where things are via GCC configuration and ldwrapper + sed -i -e '/cmake_gnu_set_sysroot_flag/d' \ + Modules/Platform/Apple-GNU-*.cmake || die + # Disable isysroot usage with clang as well + sed -i -e '/_SYSROOT_FLAG/d' \ + Modules/Platform/Apple-Clang.cmake || die + # Don't set a POSIX standard, system headers don't like that, #757426 + sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmLoadCommandCommand.cxx \ + Source/cmStandardLexer.h \ + Source/cmSystemTools.cxx \ + Source/cmTimestamp.cxx + sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmStandardLexer.h + fi + + # Add gcc libs to the default link paths + sed -i \ + -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \ + -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \ + -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \ + Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed" + + ## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must* + ## handle them as part of bootstrapping, sadly. + + # Fix linking on Solaris + [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl + + # ODR warnings, bug #858335 + # https://gitlab.kitware.com/cmake/cmake/-/issues/20740 + filter-lto + + # 4.0.0_rc1 is missing this, fails to configure + # https://gitlab.kitware.com/cmake/cmake/-/issues/26712 + touch .clang-tidy Utilities/.clang-tidy || die + + if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then + CMAKE_BINARY="${S}/Bootstrap.cmk/cmake" + cmake_src_bootstrap + fi +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_USE_SYSTEM_LIBRARIES=ON + -DCMake_ENABLE_DEBUGGER=$(usex dap) + -DCMAKE_DOC_DIR=/share/doc/${PF} + -DCMAKE_MAN_DIR=/share/man + -DCMAKE_DATA_DIR=/share/${PN} + -DSPHINX_MAN=$(usex doc) + -DSPHINX_HTML=$(usex doc) + -DBUILD_CursesDialog="$(usex ncurses)" + -DBUILD_TESTING=$(usex test) + -DBUILD_QtDialog=$(usex gui) + ) + + use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=6 ) + + cmake_src_configure +} + +src_test() { + # Fix OutDir and SelectLibraryConfigurations tests + # these are altered thanks to our eclass + sed -i -e 's:^#_cmake_modify_IGNORE ::g' \ + "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \ + || die + + unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS + + pushd "${BUILD_DIR}" > /dev/null || die + + # Excluded tests: + local CMAKE_SKIP_TESTS=( + # BootstrapTest: we actually bootstrap it every time so why test it? + "BootstrapTest" + # BundleUtilities: bundle creation broken + "BundleUtilities" + # CMakeOnly.AllFindModules: pthread issues + "CMakeOnly.AllFindModules" + # TODO + "CompileOptions" + # CTest.updatecvs: which fails to commit as root + "CTest.UpdateCVS" + # Fortran: requires fortran + "Fortran" + # RunCMake.CompilerLauncher: also requires fortran + "RunCMake.CompilerLauncher" + # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because + # debugedit binary is not in the expected location + # RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because + # it can't find a deb package that owns libc + # RunCMake.CPack_TGZ: requires 64-bit time_t (bug #967480) + "RunCMake.CPack_(DEB|RPM|TGZ)" + # TestUpload, which requires network access + "TestUpload" + # RunCMake.CMP0125, known failure reported upstream (bug #829414) + "RunCMake.CMP0125" + ) + + local -x QT_QPA_PLATFORM=offscreen + + cmake_src_test +} + +src_install() { + cmake_src_install + + # If USE=doc, there'll be newly generated docs which we install instead. + if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8] + fi + + insinto /usr/share/vim/vimfiles/syntax + doins Auxiliary/vim/syntax/cmake.vim + + insinto /usr/share/vim/vimfiles/indent + doins Auxiliary/vim/indent/cmake.vim + + insinto /usr/share/vim/vimfiles/ftdetect + doins "${FILESDIR}/${PN}.vim" + + dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack} +} + +pkg_postinst() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} + +pkg_postrm() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} diff --git a/dev-build/cmake/cmake-4.3.3.ebuild b/dev-build/cmake/cmake-4.3.3.ebuild new file mode 100644 index 000000000000..0bf58953c507 --- /dev/null +++ b/dev-build/cmake/cmake-4.3.3.ebuild @@ -0,0 +1,333 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +: ${CMAKE_DOCS_PREBUILT:=1} + +CMAKE_DOCS_PREBUILT_DEV=sam +CMAKE_DOCS_VERSION=4.0.0_rc1 +#CMAKE_DOCS_VERSION=${PV} +#CMAKE_DOCS_VERSION=$(ver_cut 1-2).0 +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +# See bug #784815 +CMAKE_DOCS_USEFLAG="+doc" + +CMAKE_QA_COMPAT_SKIP=1 # bug #964514; cmake itself is the last pkg we worry about + +# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja +# ... but seems fine as of 3.22.3? +# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759. +CMAKE_MAKEFILE_GENERATOR="emake" +CMAKE_REMOVE_MODULES_LIST=() +inherit bash-completion-r1 cmake flag-o-matic multiprocessing \ + toolchain-funcs xdg-utils + +MY_P="${P/_/-}" + +DESCRIPTION="Cross platform Make" +HOMEPAGE="https://cmake.org/" +if [[ ${PV} == *9999* ]] ; then + CMAKE_DOCS_PREBUILT=0 + + EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git" + inherit git-r3 +else + SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz" + + if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )" + fi + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc + inherit verify-sig + + SRC_URI+=" verify-sig? ( + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt.asc + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt.asc + )" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20250904 )" +fi + +[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc" + +S="${WORKDIR}/${MY_P}" + +LICENSE="BSD" +SLOT="0" +IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses test" +RESTRICT="!test? ( test )" + +# >= 1.51.0-r1 for ppc32 workaround (bug #941738) +RDEPEND=" + >=app-arch/libarchive-3.3.3:= + app-crypt/rhash:0= + >=dev-libs/expat-2.0.1 + >=dev-libs/jsoncpp-1.9.2-r2:0= + >=dev-libs/libuv-1.51.0-r1:= + >=net-misc/curl-7.21.5[ssl] + virtual/zlib:= + virtual/pkgconfig + dap? ( dev-cpp/cppdap ) + gui? ( dev-qt/qtbase:6[gui,widgets] ) + ncurses? ( sys-libs/ncurses:= ) +" +DEPEND="${RDEPEND}" +BDEPEND+=" + doc? ( + dev-python/requests + dev-python/sphinx + ) + test? ( app-arch/libarchive[zstd] ) +" + +SITEFILE="50${PN}-gentoo.el" + +PATCHES=( + # Prefix + "${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch + # Misc + "${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch + # Cuda + "${FILESDIR}/${PN}-3.30.3-cudahostld.patch" + + # Upstream fixes (can usually be removed with a version bump) +) + +cmake_src_bootstrap() { + # disable running of cmake in bootstrap command + sed -i \ + -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \ + bootstrap || die "sed failed" + + # execinfo.h on Solaris isn't quite what it is on Darwin + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i -e 's/execinfo\.h/blablabla.h/' \ + Source/kwsys/CMakeLists.txt || die + fi + + # bootstrap script isn't exactly /bin/sh compatible + tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \ + --prefix="${T}/cmakestrap/" \ + --parallel=$(get_makeopts_jobs "$(get_nproc)") \ + || die "Bootstrap failed" +} + +pkg_pretend() { + if [[ -z ${EPREFIX} ]] ; then + local file + local errant_files=() + + # See bug #599684 and bug #753581 (at least) + for file in /etc/arch-release /etc/redhat-release /etc/debian_version ; do + if [[ -e ${file} ]]; then + errant_files+=( "${file}" ) + fi + done + + # If errant files exist + if [[ ${#errant_files[@]} -gt 0 ]]; then + eerror "Errant files found!" + eerror "The presence of these files is known to confuse CMake's" + eerror "library path logic. Please (re)move these files:" + + for file in "${errant_files[@]}"; do + eerror " mv ${file} ${file}.bak" + done + + die "Stray files found in /etc/, see above message" + fi + fi +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then + default + else + cd "${DISTDIR}" || die + + # See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature + verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc} + verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz + + cd "${WORKDIR}" || die + + default + fi +} + +src_prepare() { + cmake_src_prepare + + if [[ ${CHOST} == *-darwin* ]] ; then + # Disable Xcode hooks, bug #652134 + sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \ + Source/CMakeLists.txt || die + sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \ + -e '/cmGlobalXCodeGenerator.h/d' \ + Source/cmake.cxx || die + # Disable system integration, bug #933744 + sed -i -e 's/__APPLE__/__DISABLED__/' \ + Source/cmFindProgramCommand.cxx \ + Source/CPack/cmCPackGeneratorFactory.cxx || die + sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \ + Source/cmMachO.cxx || die + sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \ + Source/CMakeLists.txt || die + + # Disable isysroot usage with GCC, we've properly instructed + # where things are via GCC configuration and ldwrapper + sed -i -e '/cmake_gnu_set_sysroot_flag/d' \ + Modules/Platform/Apple-GNU-*.cmake || die + # Disable isysroot usage with clang as well + sed -i -e '/_SYSROOT_FLAG/d' \ + Modules/Platform/Apple-Clang.cmake || die + # Don't set a POSIX standard, system headers don't like that, #757426 + sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmLoadCommandCommand.cxx \ + Source/cmStandardLexer.h \ + Source/cmSystemTools.cxx \ + Source/cmTimestamp.cxx + sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmStandardLexer.h + fi + + # Add gcc libs to the default link paths + sed -i \ + -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \ + -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \ + -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \ + Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed" + + ## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must* + ## handle them as part of bootstrapping, sadly. + + # Fix linking on Solaris + [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl + + # ODR warnings, bug #858335 + # https://gitlab.kitware.com/cmake/cmake/-/issues/20740 + filter-lto + + # 4.0.0_rc1 is missing this, fails to configure + # https://gitlab.kitware.com/cmake/cmake/-/issues/26712 + touch .clang-tidy Utilities/.clang-tidy || die + + if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then + CMAKE_BINARY="${S}/Bootstrap.cmk/cmake" + cmake_src_bootstrap + fi +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_USE_SYSTEM_LIBRARIES=ON + -DCMake_ENABLE_DEBUGGER=$(usex dap) + -DCMAKE_DOC_DIR=/share/doc/${PF} + -DCMAKE_MAN_DIR=/share/man + -DCMAKE_DATA_DIR=/share/${PN} + -DSPHINX_MAN=$(usex doc) + -DSPHINX_HTML=$(usex doc) + -DBUILD_CursesDialog="$(usex ncurses)" + -DBUILD_TESTING=$(usex test) + -DBUILD_QtDialog=$(usex gui) + ) + + use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=6 ) + + cmake_src_configure +} + +src_test() { + # Fix OutDir and SelectLibraryConfigurations tests + # these are altered thanks to our eclass + sed -i -e 's:^#_cmake_modify_IGNORE ::g' \ + "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \ + || die + + unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS + + pushd "${BUILD_DIR}" > /dev/null || die + + # Excluded tests: + local CMAKE_SKIP_TESTS=( + # BootstrapTest: we actually bootstrap it every time so why test it? + "BootstrapTest" + # BundleUtilities: bundle creation broken + "BundleUtilities" + # CMakeOnly.AllFindModules: pthread issues + "CMakeOnly.AllFindModules" + # TODO + "CompileOptions" + # CTest.updatecvs: which fails to commit as root + "CTest.UpdateCVS" + # Fortran: requires fortran + "Fortran" + # RunCMake.CompilerLauncher: also requires fortran + "RunCMake.CompilerLauncher" + # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because + # debugedit binary is not in the expected location + # RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because + # it can't find a deb package that owns libc + # RunCMake.CPack_TGZ: requires 64-bit time_t (bug #967480) + "RunCMake.CPack_(DEB|RPM|TGZ)" + # TestUpload, which requires network access + "TestUpload" + # RunCMake.CMP0125, known failure reported upstream (bug #829414) + "RunCMake.CMP0125" + ) + + local -x QT_QPA_PLATFORM=offscreen + + cmake_src_test +} + +src_install() { + cmake_src_install + + # If USE=doc, there'll be newly generated docs which we install instead. + if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8] + fi + + insinto /usr/share/vim/vimfiles/syntax + doins Auxiliary/vim/syntax/cmake.vim + + insinto /usr/share/vim/vimfiles/indent + doins Auxiliary/vim/indent/cmake.vim + + insinto /usr/share/vim/vimfiles/ftdetect + doins "${FILESDIR}/${PN}.vim" + + dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack} +} + +pkg_postinst() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} + +pkg_postrm() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} diff --git a/dev-build/cmake/cmake-9999.ebuild b/dev-build/cmake/cmake-9999.ebuild new file mode 100644 index 000000000000..c2fda1de8122 --- /dev/null +++ b/dev-build/cmake/cmake-9999.ebuild @@ -0,0 +1,333 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +: ${CMAKE_DOCS_PREBUILT:=1} + +CMAKE_DOCS_PREBUILT_DEV=sam +CMAKE_DOCS_VERSION=4.0.0_rc1 +#CMAKE_DOCS_VERSION=${PV} +#CMAKE_DOCS_VERSION=$(ver_cut 1-2).0 +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +# See bug #784815 +CMAKE_DOCS_USEFLAG="+doc" + +CMAKE_QA_COMPAT_SKIP=1 # bug #964514; cmake itself is the last pkg we worry about + +# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja +# ... but seems fine as of 3.22.3? +# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759. +CMAKE_MAKEFILE_GENERATOR="emake" +CMAKE_REMOVE_MODULES_LIST=() +inherit bash-completion-r1 cmake flag-o-matic multiprocessing \ + toolchain-funcs xdg-utils + +MY_P="${P/_/-}" + +DESCRIPTION="Cross platform Make" +HOMEPAGE="https://cmake.org/" +if [[ ${PV} == *9999* ]] ; then + CMAKE_DOCS_PREBUILT=0 + + EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git" + inherit git-r3 +else + SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz" + + if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )" + fi + + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc + inherit verify-sig + + SRC_URI+=" verify-sig? ( + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt + https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}-SHA-256.txt.asc + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt + https://github.com/Kitware/CMake/releases/download/v${PV/_/-}/${MY_P}-SHA-256.txt.asc + )" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi + + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20250904 )" +fi + +[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc" + +S="${WORKDIR}/${MY_P}" + +LICENSE="BSD" +SLOT="0" +IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses test" +RESTRICT="!test? ( test )" + +# >= 1.51.0-r1 for ppc32 workaround (bug #941738) +RDEPEND=" + >=app-arch/libarchive-3.3.3:= + app-crypt/rhash:0= + >=dev-libs/expat-2.0.1 + >=dev-libs/jsoncpp-1.9.2-r2:0= + >=dev-libs/libuv-1.51.0-r1:= + >=net-misc/curl-7.21.5[ssl] + virtual/zlib:= + virtual/pkgconfig + dap? ( dev-cpp/cppdap ) + gui? ( dev-qt/qtbase:6[gui,widgets] ) + ncurses? ( sys-libs/ncurses:= ) +" +DEPEND="${RDEPEND}" +BDEPEND+=" + doc? ( + dev-python/requests + dev-python/sphinx + ) + test? ( app-arch/libarchive[zstd] ) +" + +SITEFILE="50${PN}-gentoo.el" + +PATCHES=( + # Prefix + "${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch + # Misc + "${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch + "${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch + # Cuda + "${FILESDIR}/${PN}-3.30.3-cudahostld.patch" + + # Upstream fixes (can usually be removed with a version bump) +) + +cmake_src_bootstrap() { + # disable running of cmake in bootstrap command + sed -i \ + -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \ + bootstrap || die "sed failed" + + # execinfo.h on Solaris isn't quite what it is on Darwin + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i -e 's/execinfo\.h/blablabla.h/' \ + Source/kwsys/CMakeLists.txt || die + fi + + # bootstrap script isn't exactly /bin/sh compatible + tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \ + --prefix="${T}/cmakestrap/" \ + --parallel=$(get_makeopts_jobs "$(get_nproc)") \ + || die "Bootstrap failed" +} + +pkg_pretend() { + if [[ -z ${EPREFIX} ]] ; then + local file + local errant_files=() + + # See bug #599684 and bug #753581 (at least) + for file in /etc/arch-release /etc/redhat-release /etc/debian_version ; do + if [[ -e ${file} ]]; then + errant_files+=( "${file}" ) + fi + done + + # If errant files exist + if [[ ${#errant_files[@]} -gt 0 ]]; then + eerror "Errant files found!" + eerror "The presence of these files is known to confuse CMake's" + eerror "library path logic. Please (re)move these files:" + + for file in "${errant_files[@]}"; do + eerror " mv ${file} ${file}.bak" + done + + die "Stray files found in /etc/, see above message" + fi + fi +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then + default + else + cd "${DISTDIR}" || die + + # See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature + verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc} + verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz + + cd "${WORKDIR}" || die + + default + fi +} + +src_prepare() { + cmake_src_prepare + + if [[ ${CHOST} == *-darwin* ]] ; then + # Disable Xcode hooks, bug #652134 + sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \ + Source/CMakeLists.txt || die + sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \ + -e '/cmGlobalXCodeGenerator.h/d' \ + Source/cmake.cxx || die + # Disable system integration, bug #933744 + sed -i -e 's/__APPLE__/__DISABLED__/' \ + Source/cmFindProgramCommand.cxx \ + Source/CPack/cmCPackGeneratorFactory.cxx || die + sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \ + Source/cmMachO.cxx || die + sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \ + Source/CMakeLists.txt || die + + # Disable isysroot usage with GCC, we've properly instructed + # where things are via GCC configuration and ldwrapper + sed -i -e '/cmake_gnu_set_sysroot_flag/d' \ + Modules/Platform/Apple-GNU-*.cmake || die + # Disable isysroot usage with clang as well + sed -i -e '/_SYSROOT_FLAG/d' \ + Modules/Platform/Apple-Clang.cmake || die + # Don't set a POSIX standard, system headers don't like that, #757426 + sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmLoadCommandCommand.cxx \ + Source/cmStandardLexer.h \ + Source/cmSystemTools.cxx \ + Source/cmTimestamp.cxx + sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \ + Source/cmStandardLexer.h + fi + + # Add gcc libs to the default link paths + sed -i \ + -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \ + -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \ + -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \ + Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed" + + ## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must* + ## handle them as part of bootstrapping, sadly. + + # Fix linking on Solaris + [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl + + # ODR warnings, bug #858335 + # https://gitlab.kitware.com/cmake/cmake/-/issues/20740 + filter-lto + + # 4.0.0_rc1 is missing this, fails to configure + # https://gitlab.kitware.com/cmake/cmake/-/issues/26712 + touch .clang-tidy Utilities/.clang-tidy || die + + if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then + CMAKE_BINARY="${S}/Bootstrap.cmk/cmake" + cmake_src_bootstrap + fi +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_USE_SYSTEM_LIBRARIES=ON + -DCMake_ENABLE_DEBUGGER=$(usex dap) + -DCMAKE_DOC_DIR=/share/doc/${PF} + -DCMAKE_MAN_DIR=/share/man + -DCMAKE_DATA_DIR=/share/${PN} + -DSPHINX_MAN=$(usex doc) + -DSPHINX_HTML=$(usex doc) + -DBUILD_CursesDialog="$(usex ncurses)" + -DBUILD_TESTING=$(usex test) + -DBUILD_QtDialog=$(usex gui) + ) + + use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=6 ) + + cmake_src_configure +} + +src_test() { + # Fix OutDir and SelectLibraryConfigurations tests + # these are altered thanks to our eclass + sed -i -e 's:^#_cmake_modify_IGNORE ::g' \ + "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \ + || die + + unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS + + pushd "${BUILD_DIR}" > /dev/null || die + + # Excluded tests: + local CMAKE_SKIP_TESTS=( + # BootstrapTest: we actually bootstrap it every time so why test it? + "BootstrapTest" + # BundleUtilities: bundle creation broken + "BundleUtilities" + # CMakeOnly.AllFindModules: pthread issues + "CMakeOnly.AllFindModules" + # TODO + "CompileOptions" + # CTest.updatecvs: which fails to commit as root + "CTest.UpdateCVS" + # Fortran: requires fortran + "Fortran" + # RunCMake.CompilerLauncher: also requires fortran + "RunCMake.CompilerLauncher" + # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because + # debugedit binary is not in the expected location + # RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because + # it can't find a deb package that owns libc + # RunCMake.CPack_TGZ: requires 64-bit time_t (bug #967480) + "RunCMake.CPack_(DEB|RPM|TGZ)" + # TestUpload, which requires network access + "TestUpload" + # RunCMake.CMP0125, known failure reported upstream (bug #829414) + "RunCMake.CMP0125" + ) + + local -x QT_QPA_PLATFORM=offscreen + + cmake_src_test +} + +src_install() { + cmake_src_install + + # If USE=doc, there'll be newly generated docs which we install instead. + if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8] + fi + + insinto /usr/share/vim/vimfiles/syntax + doins Auxiliary/vim/syntax/cmake.vim + + insinto /usr/share/vim/vimfiles/indent + doins Auxiliary/vim/indent/cmake.vim + + insinto /usr/share/vim/vimfiles/ftdetect + doins "${FILESDIR}/${PN}.vim" + + dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack} +} + +pkg_postinst() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} + +pkg_postrm() { + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} diff --git a/dev-build/cmake/files/50cmake-gentoo.el b/dev-build/cmake/files/50cmake-gentoo.el new file mode 100644 index 000000000000..e4a1a6d47cbc --- /dev/null +++ b/dev-build/cmake/files/50cmake-gentoo.el @@ -0,0 +1,4 @@ +(add-to-list 'load-path "@SITELISP@") +(autoload 'cmake-mode "cmake-mode" "Major mode for editing CMake files." t) +(add-to-list 'auto-mode-alist '("CMakeLists\\.txt\\'" . cmake-mode)) +(add-to-list 'auto-mode-alist '("\\.cmake\\'" . cmake-mode)) diff --git a/dev-build/cmake/files/cmake-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch b/dev-build/cmake/files/cmake-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch new file mode 100644 index 000000000000..ada6f7b8f5bc --- /dev/null +++ b/dev-build/cmake/files/cmake-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch @@ -0,0 +1,35 @@ +From 2d155220920c8fd7ad5b4df2d5be923808ee841a Mon Sep 17 00:00:00 2001 +From: Lars Wendler <polynomial-c@gentoo.org> +Date: Tue, 19 Nov 2019 12:28:53 +0100 +Subject: [PATCH 1/6] Don't use .so for modules on darwin/macos. Use .bundle + instead. + +Patch by Heiko Przybyl + +Forward-ported from 2.8.10 to 3.4.0-rc1 +Forward-ported from 3.4.0-rc1 to 3.16.0-rc4 + +Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> +--- a/Modules/Platform/Darwin.cmake ++++ b/Modules/Platform/Darwin.cmake +@@ -42,7 +42,7 @@ set(CMAKE_SHARED_LIBRARY_PREFIX "lib") + set(CMAKE_SHARED_LIBRARY_SUFFIX ".dylib") + set(CMAKE_EXTRA_SHARED_LIBRARY_SUFFIXES ".tbd" ".so") + set(CMAKE_SHARED_MODULE_PREFIX "lib") +-set(CMAKE_SHARED_MODULE_SUFFIX ".so") ++set(CMAKE_SHARED_MODULE_SUFFIX ".bundle") + set(CMAKE_APPLE_IMPORT_FILE_PREFIX "lib") + set(CMAKE_APPLE_IMPORT_FILE_SUFFIX ".tbd") + set(CMAKE_MODULE_EXISTS 1) +@@ -66,7 +66,7 @@ foreach(lang C CXX OBJC OBJCXX) + endforeach() + + set(CMAKE_PLATFORM_HAS_INSTALLNAME 1) +-set(CMAKE_FIND_LIBRARY_SUFFIXES ".tbd" ".dylib" ".so" ".a") ++set(CMAKE_FIND_LIBRARY_SUFFIXES ".tbd" ".dylib" ".bundle" ".a") + + # hack: if a new cmake (which uses CMAKE_INSTALL_NAME_TOOL) runs on an old build tree + # (where install_name_tool was hardcoded) and where CMAKE_INSTALL_NAME_TOOL isn't in the cache +-- +2.41.0 + diff --git a/dev-build/cmake/files/cmake-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch b/dev-build/cmake/files/cmake-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch new file mode 100644 index 000000000000..7ed6fb4b15b3 --- /dev/null +++ b/dev-build/cmake/files/cmake-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch @@ -0,0 +1,133 @@ +From aa8c0176389436e698e2f7e84097b4151b6477bf Mon Sep 17 00:00:00 2001 +From: Lars Wendler <polynomial-c@gentoo.org> +Date: Fri, 1 Mar 2019 23:11:41 +0100 +Subject: [PATCH 2/6] Set some proper paths to make cmake find our tools. + +The ebuild now adds an extra / at the end of $EPREFIX so that it is +never the empty string (so that CMAKE_SYSTEM_PREFIX_PATH remains +correct) + +Original patch by Heiko Przybyl. +Updated by Chris Reffett (cmake-2.8.8) +Updated by Johannes Huber (cmake-2.8.9) +Updated by Michael Palimaka (cmake-2.8.10) +Updated by Chris Reffett (cmake-2.8.11) +Updated by Michael Palimaka (cmake-3.0.0) +Updated by Lars Wendler (cmake-3.9.0_rc2) +Updated by Benda Xu (cmake-3.13.4) +Updated by Lars Wendler (cmake-3.14.0_rc1) +Updated by Lars Wendler (cmake-3.14.0_rc2) +Updated by Lars Wendler (cmake-3.14.0_rc3) +Updated by Jacob Floyd (cmake-3.19.2) +--- a/Modules/Platform/Darwin.cmake ++++ b/Modules/Platform/Darwin.cmake +@@ -138,9 +138,9 @@ set(CMAKE_LINK_LIBRARY_USING_WEAK_LIBRARY_SUPPORTED TRUE) + set(CMAKE_LINK_LIBRARY_USING_WHOLE_ARCHIVE "LINKER:-force_load <LIB_ITEM>") + set(CMAKE_LINK_LIBRARY_USING_WHOLE_ARCHIVE_SUPPORTED TRUE) + +-# default to searching for frameworks first ++# default to searching for frameworks last + if(NOT DEFINED CMAKE_FIND_FRAMEWORK) +- set(CMAKE_FIND_FRAMEWORK FIRST) ++ set(CMAKE_FIND_FRAMEWORK LAST) + endif() + + # Older OS X linkers do not report their framework search path +@@ -162,6 +162,9 @@ endif() + + # set up the default search directories for frameworks + set(CMAKE_SYSTEM_FRAMEWORK_PATH ++ @GENTOO_PORTAGE_EPREFIX@MacOSX.sdk/System/Library/Frameworks ++ @GENTOO_PORTAGE_EPREFIX@Frameworks ++ @GENTOO_PORTAGE_EPREFIX@usr/lib + ~/Library/Frameworks + ) + if(_CMAKE_OSX_SYSROOT_PATH) +@@ -219,13 +222,15 @@ if(CMAKE_OSX_SYSROOT) + endif() + endif() + +-# default to searching for application bundles first ++# default to searching for application bundles last + if(NOT DEFINED CMAKE_FIND_APPBUNDLE) +- set(CMAKE_FIND_APPBUNDLE FIRST) ++ set(CMAKE_FIND_APPBUNDLE LAST) + endif() + # set up the default search directories for application bundles + set(_apps_paths) + foreach(_path ++ @GENTOO_PORTAGE_EPREFIX@Applications ++ @GENTOO_PORTAGE_EPREFIX@usr/bin + "~/Applications" + "/Applications" + "${OSX_DEVELOPER_ROOT}/../Applications" # Xcode 4.3+ +--- a/Modules/Platform/UnixPaths.cmake ++++ b/Modules/Platform/UnixPaths.cmake +@@ -30,7 +30,8 @@ get_filename_component(_CMAKE_INSTALL_DIR "${_CMAKE_INSTALL_DIR}" PATH) + # synchronized + list(APPEND CMAKE_SYSTEM_PREFIX_PATH + # Standard +- /usr/local /usr / ++ @GENTOO_PORTAGE_EPREFIX@usr/local @GENTOO_PORTAGE_EPREFIX@usr @GENTOO_PORTAGE_EPREFIX@ ++ @GENTOO_HOST@/usr/local /usr / + + # CMake install location + "${_CMAKE_INSTALL_DIR}" +@@ -58,17 +59,33 @@ list(APPEND CMAKE_SYSTEM_PREFIX_PATH + + # List common include file locations not under the common prefixes. + list(APPEND CMAKE_SYSTEM_INCLUDE_PATH +- # X11 +- /usr/include/X11 ++ @GENTOO_PORTAGE_EPREFIX@usr/include + ) + + list(APPEND CMAKE_SYSTEM_LIBRARY_PATH +- # X11 +- /usr/lib/X11 ++ @GENTOO_PORTAGE_GCCLIBDIR@/gcc ++ @GENTOO_PORTAGE_GCCLIBDIR@ ++ @GENTOO_PORTAGE_EPREFIX@usr/lib64 ++ @GENTOO_PORTAGE_EPREFIX@usr/libx32 ++ @GENTOO_PORTAGE_EPREFIX@usr/lib32 ++ @GENTOO_PORTAGE_EPREFIX@usr/lib ++ @GENTOO_PORTAGE_EPREFIX@lib ++ ) ++ ++list(APPEND CMAKE_SYSTEM_PROGRAM_PATH ++ @GENTOO_PORTAGE_EPREFIX@usr/bin ++ @GENTOO_PORTAGE_EPREFIX@bin + ) + + list(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES +- /lib /lib32 /lib64 /usr/lib /usr/lib32 /usr/lib64 ++ @GENTOO_PORTAGE_GCCLIBDIR@/gcc ++ @GENTOO_PORTAGE_GCCLIBDIR@ ++ @GENTOO_PORTAGE_EPREFIX@usr/lib64 ++ @GENTOO_PORTAGE_EPREFIX@usr/libx32 ++ @GENTOO_PORTAGE_EPREFIX@usr/lib32 ++ @GENTOO_PORTAGE_EPREFIX@usr/lib ++ @GENTOO_PORTAGE_EPREFIX@lib ++ @GENTOO_HOST@/lib /usr/lib /usr/lib32 /usr/lib64 /usr/libx32 + ) + + if(CMAKE_SYSROOT_COMPILE) +@@ -81,11 +98,13 @@ endif() + # parsing the implicit directory information from compiler output. + set(_CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES_INIT + ${CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES} +- "${_cmake_sysroot_compile}/usr/include" ++ @GENTOO_PORTAGE_EPREFIX@usr/include ++ @GENTOO_HOST@/usr/include + ) + set(_CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES_INIT + ${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES} +- "${_cmake_sysroot_compile}/usr/include" ++ @GENTOO_PORTAGE_EPREFIX@usr/include ++ @GENTOO_HOST@/usr/include + ) + set(_CMAKE_CUDA_IMPLICIT_INCLUDE_DIRECTORIES_INIT + ${CMAKE_CUDA_IMPLICIT_INCLUDE_DIRECTORIES} +-- +2.41.0 + diff --git a/dev-build/cmake/files/cmake-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch b/dev-build/cmake/files/cmake-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch new file mode 100644 index 000000000000..5f9560c4aaa9 --- /dev/null +++ b/dev-build/cmake/files/cmake-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch @@ -0,0 +1,54 @@ +From 30cf2aa7830a09b2bc4132eb3a3920fc0853b827 Mon Sep 17 00:00:00 2001 +From: Sam James <sam@gentoo.org> +Date: Fri, 9 Jun 2023 09:57:18 +0100 +Subject: [PATCH 4/6] Ensure that the correct version of Qt is always used. + +With the introduction qt-4.8.6, Qt binaries were moved from /usr/bin to +/usr/$(get_libdir)/qt4/bin, leaving behind in their place symlinks to qtchooser. + +There is no guarantee to which version of Qt these symlinks might point, so it +is necessary to find the correct version explicitly. + +Once qmake is found, it is queried for the correct location of all other items. + +Bug: https://bugs.gentoo.org/547222 + +[imported from cmake-3.5.2-FindQt4.patch.] + +Signed-off-by: Sam James <sam@gentoo.org> +--- a/Modules/FindQt4.cmake ++++ b/Modules/FindQt4.cmake +@@ -478,13 +478,23 @@ function(_QT4_FIND_QMAKE QMAKE_NAMES QMAKE_RESULT VERSION_RESULT) + + get_filename_component(qt_install_version "[HKEY_CURRENT_USER\\Software\\trolltech\\Versions;DefaultQtVersion]" NAME) + +- find_program(QT_QMAKE_EXECUTABLE NAMES ${QMAKE_NAME} +- PATHS +- ENV QTDIR +- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]" +- PATH_SUFFIXES bin +- DOC "The qmake executable for the Qt installation to use" +- ) ++ if(CMAKE_GENTOO_BUILD OR CMAKE_BUILD_TYPE STREQUAL Gentoo) ++ find_program(QT_QMAKE_EXECUTABLE NAMES ${QMAKE_NAME} ++ PATHS ++ $ENV{EPREFIX}/usr/${CMAKE_INSTALL_LIBDIR}/qt4/bin ++ $ENV{EPREFIX}/usr/bin ++ NO_DEFAULT_PATH ++ DOC "The qmake executable for the Qt installation to use" ++ ) ++ else() ++ find_program(QT_QMAKE_EXECUTABLE NAMES ${QMAKE_NAME} ++ PATHS ++ ENV QTDIR ++ "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]" ++ PATH_SUFFIXES bin ++ DOC "The qmake executable for the Qt installation to use" ++ ) ++ endif() + + set(major 0) + if (QT_QMAKE_EXECUTABLE) +-- +2.41.0 + diff --git a/dev-build/cmake/files/cmake-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch b/dev-build/cmake/files/cmake-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch new file mode 100644 index 000000000000..b8c9c1fe50b1 --- /dev/null +++ b/dev-build/cmake/files/cmake-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch @@ -0,0 +1,63 @@ +From 91acf58e953fd6e609788e955d84eab9822d5aa4 Mon Sep 17 00:00:00 2001 +From: Sam James <sam@gentoo.org> +Date: Fri, 9 Jun 2023 09:58:11 +0100 +Subject: [PATCH 5/6] Respect Gentoo's Python eclasses + +[imported from 2.8.10.2-FindPythonLibs.patch] +[imported from 3.9.0_rc2-FindPythonInterp.patch] + +Signed-off-by: Sam James <sam@gentoo.org> +--- a/Modules/FindPythonInterp.cmake ++++ b/Modules/FindPythonInterp.cmake +@@ -91,6 +91,11 @@ if(PythonInterp_FIND_VERSION) + else() + set(_PYTHON_FIND_OTHER_VERSIONS ${_PYTHON3_VERSIONS} ${_PYTHON2_VERSIONS} ${_PYTHON1_VERSIONS}) + endif() ++ ++if (CMAKE_GENTOO_BUILD OR CMAKE_BUILD_TYPE STREQUAL Gentoo) ++ set(_Python_NAMES python) ++endif() ++ + find_program(PYTHON_EXECUTABLE NAMES ${_Python_NAMES}) + + # Set up the versions we know about, in the order we will search. Always add +@@ -115,12 +120,13 @@ unset(_PYTHON2_VERSIONS) + unset(_PYTHON3_VERSIONS) + + # Search for newest python version if python executable isn't found +-if(NOT PYTHON_EXECUTABLE) ++if(NOT PYTHON_EXECUTABLE AND NOT (CMAKE_GENTOO_BUILD OR CMAKE_BUILD_TYPE STREQUAL Gentoo)) + foreach(_CURRENT_VERSION IN LISTS _Python_VERSIONS) + set(_Python_NAMES python${_CURRENT_VERSION}) + if(CMAKE_HOST_WIN32) + list(APPEND _Python_NAMES python) + endif() ++ + find_program(PYTHON_EXECUTABLE + NAMES ${_Python_NAMES} + PATHS +--- a/Modules/FindPythonLibs.cmake ++++ b/Modules/FindPythonLibs.cmake +@@ -130,6 +130,19 @@ if(DEFINED PYTHON_VERSION_MAJOR AND DEFINED PYTHON_VERSION_MINOR) + endif() + list(APPEND _Python_VERSIONS ${_PYTHON_FIND_OTHER_VERSIONS}) + ++# Gentoo portage requires that you use exactly the given python version ++if (CMAKE_GENTOO_BUILD OR CMAKE_BUILD_TYPE STREQUAL Gentoo) ++ execute_process(COMMAND python -c "import sys; sys.stdout.write('.'.join([str(x) for x in sys.version_info[:2]]))" ++ OUTPUT_VARIABLE _Gentoo_Python_VERSION) ++ list(FIND _Python_VERSIONS "${_Gentoo_Python_VERSION}" _Gentoo_Python_INDEX) ++ if (_Gentoo_Python_INDEX EQUAL -1) ++ # the current Gentoo python version is not compatible with what is requested ++ set(_Python_VERSIONS) ++ else () ++ set(_Python_VERSIONS "${_Gentoo_Python_VERSION}") ++ endif () ++endif() ++ + unset(_PYTHON_FIND_OTHER_VERSIONS) + unset(_PYTHON1_VERSIONS) + unset(_PYTHON2_VERSIONS) +-- +2.41.0 + diff --git a/dev-build/cmake/files/cmake-3.30.3-cudahostld.patch b/dev-build/cmake/files/cmake-3.30.3-cudahostld.patch new file mode 100644 index 000000000000..f8b29730ea9f --- /dev/null +++ b/dev-build/cmake/files/cmake-3.30.3-cudahostld.patch @@ -0,0 +1,23 @@ +From 0648f8f75c5f7044cca0f96d26e3ef6ed9440b3d Mon Sep 17 00:00:00 2001 +From: Paul Zander <negril.nx+gentoo@gmail.com> +Date: Mon, 26 Aug 2024 17:04:04 +0200 +Subject: [PATCH] allow custom CMAKE_CUDA_LINK_LAUNCHER + +Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com> + +diff --git a/Modules/Internal/CMakeNVCCParseImplicitInfo.cmake b/Modules/Internal/CMakeNVCCParseImplicitInfo.cmake +index 3aa10a2..a58c3ec 100644 +--- a/Modules/Internal/CMakeNVCCParseImplicitInfo.cmake ++++ b/Modules/Internal/CMakeNVCCParseImplicitInfo.cmake +@@ -77,6 +77,11 @@ macro(cmake_nvcc_parse_implicit_info lang lang_var_) + if(_nvcc_link_line) + if("x${CMAKE_${lang}_SIMULATE_ID}" STREQUAL "xMSVC") + set(CMAKE_${lang}_HOST_LINK_LAUNCHER "${CMAKE_LINKER}") ++ elseif(DEFINED ENV{CUDAHOSTLD}) ++ set(CMAKE_${lang}_HOST_LINK_LAUNCHER "$ENV{CUDAHOSTLD}") ++ string(APPEND _nvcc_log " env link launcher name: [${CMAKE_${lang}_HOST_LINK_LAUNCHER}]\n") ++ elseif(DEFINED CMAKE_CUDA_HOST_LINK_LAUNCHER) ++ string(APPEND _nvcc_log " set link launcher name: [${CMAKE_${lang}_HOST_LINK_LAUNCHER}]\n") + else() + #extract the compiler that is being used for linking + separate_arguments(_nvcc_link_line_args UNIX_COMMAND "${_nvcc_link_line}") diff --git a/dev-build/cmake/files/cmake-3.31.6-Prefer-pkgconfig-in-FindBLAS.patch b/dev-build/cmake/files/cmake-3.31.6-Prefer-pkgconfig-in-FindBLAS.patch new file mode 100644 index 000000000000..0f8611771828 --- /dev/null +++ b/dev-build/cmake/files/cmake-3.31.6-Prefer-pkgconfig-in-FindBLAS.patch @@ -0,0 +1,28 @@ +diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake +index 6d60c9d86a..b6664dfe26 100644 +--- a/Modules/FindBLAS.cmake ++++ b/Modules/FindBLAS.cmake +@@ -7,6 +7,11 @@ FindBLAS + + Find Basic Linear Algebra Subprograms (BLAS) library + ++Version modified for Gentoo Linux. ++If a valid PkgConfig configuration is found, this overrides and cancels ++all further checks. The upstream behavior can be restored by defining ++GENTOO_REMOVE_CMAKE_BLAS_HACK ++ + This module finds an installed Fortran library that implements the + `BLAS linear-algebra interface`_. + +@@ -281,6 +286,11 @@ function(_add_blas_target) + endif() + endfunction() + ++# first, try PkgConfig ++if(NOT DEFINED GENTOO_REMOVE_CMAKE_BLAS_HACK) ++ set(BLA_PREFER_PKGCONFIG ON) ++endif() ++ + if(CMAKE_Fortran_COMPILER_LOADED) + include(${CMAKE_CURRENT_LIST_DIR}/CheckFortranFunctionExists.cmake) + else() diff --git a/dev-build/cmake/files/cmake.vim b/dev-build/cmake/files/cmake.vim new file mode 100644 index 000000000000..5cecd7d05b64 --- /dev/null +++ b/dev-build/cmake/files/cmake.vim @@ -0,0 +1,3 @@ +autocmd BufRead,BufNewFile *.cmake,CMakeLists.txt,*.cmake.in runtime! indent/cmake.vim +autocmd BufRead,BufNewFile *.cmake,CMakeLists.txt,*.cmake.in setf cmake +autocmd BufRead,BufNewFile *.ctest,*.ctest.in setf cmake diff --git a/dev-build/cmake/metadata.xml b/dev-build/cmake/metadata.xml new file mode 100644 index 000000000000..0d5f2ea4307c --- /dev/null +++ b/dev-build/cmake/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <maintainer type="project"> + <email>kde@gentoo.org</email> + <name>Gentoo KDE Project</name> + </maintainer> + <use> + <flag name="dap">Build debugger for CMake with Debug Adapter Protocol support via <pkg>dev-cpp/cppdap</pkg></flag> + </use> + <upstream> + <remote-id type="cpe">cpe:/a:cmake_project:cmake</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/corrosion/Manifest b/dev-build/corrosion/Manifest new file mode 100644 index 000000000000..e149c8c01d82 --- /dev/null +++ b/dev-build/corrosion/Manifest @@ -0,0 +1,4 @@ +DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62 +DIST cc-1.0.73.crate 57880 BLAKE2B be8d7a25a54afdd759844e76aec61526fc2bd5ca09480e6cdd3bdcf27e5f9d3a88dc16cbcbf54cd021470a7cc521e1ad468116c112bbd30752bac0d5486939ac SHA512 980f012b90c6410144f6de4995048337e09214f19603076db6d4edb88e9ef9ac9e8c6e25569f66c2be3a47e99298f5886dafc102e1a9122316179aa26bc1c985 +DIST corrosion-0.5.2.tar.gz 91872 BLAKE2B bdf6de522cf7d3b220113f7533201d72dff7bab5adb95c4b9e33ec2638429c38e1541bd9a0a1313faa9fb398c05e8447c6bc871a57de883b7a5135f850c39770 SHA512 2510d4d0484fc12a6b429244b283515fda650b52ea74fbfdcc141298b452b20e2bef800b8f8a573a2bf509f4147ecb2d68e795cbd86cc8edd092f57ccff8b86b +DIST corrosion-0.6.1.tar.gz 103330 BLAKE2B 312b2fb889b8744d2ee59dce6f646d51a597dccea02cda406cc66a9df72b5a6bca424f80a29f5719dc2732997d99144dfeaaa1554e6e2acde17289e45bbeed86 SHA512 2b0d1ccafd5472f2938d084995662c586f19cb5cd4ead20fa25e9516d595eb5f756cb2d9abb12dccfa944b52a1f8002c69a1a4d955409c9d194c6d885a6d48ca diff --git a/dev-build/corrosion/corrosion-0.5.2.ebuild b/dev-build/corrosion/corrosion-0.5.2.ebuild new file mode 100644 index 000000000000..7a0670910fb7 --- /dev/null +++ b/dev-build/corrosion/corrosion-0.5.2.ebuild @@ -0,0 +1,41 @@ +# Copyright 2025-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CRATES=" + cc@1.0.73 +" + +RUST_MIN_VERSION="1.77.4" + +inherit cargo cmake + +DESCRIPTION="Marrying Rust and CMake - Easy Rust and C/C++ Integration!" +HOMEPAGE="https://github.com/corrosion-rs/corrosion" +SRC_URI=" + https://github.com/corrosion-rs/corrosion/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz + test? ( ${CARGO_CRATE_URIS} ) +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + test? ( dev-util/cbindgen ) + >=dev-build/cmake-3.22 +" + +PATCHES=( + "${FILESDIR}/corrosion-0.5.2_fix_tests.patch" +) + +src_configure() { + local mycmakeargs=( + -DCORROSION_BUILD_TESTS=$(usex test) + ) + cmake_src_configure +} diff --git a/dev-build/corrosion/corrosion-0.6.1-r1.ebuild b/dev-build/corrosion/corrosion-0.6.1-r1.ebuild new file mode 100644 index 000000000000..999ac7255b43 --- /dev/null +++ b/dev-build/corrosion/corrosion-0.6.1-r1.ebuild @@ -0,0 +1,62 @@ +# Copyright 2025-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CRATES=" + bitflags@1.3.2 + cc@1.0.73 +" + +RUST_MIN_VERSION="1.77.4" + +inherit cargo cmake + +DESCRIPTION="Marrying Rust and CMake - Easy Rust and C/C++ Integration!" +HOMEPAGE="https://github.com/corrosion-rs/corrosion" +SRC_URI=" + https://github.com/corrosion-rs/corrosion/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz + test? ( ${CARGO_CRATE_URIS} ) +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + test? ( dev-util/cbindgen ) + >=dev-build/cmake-3.22 +" + +PATCHES=( + "${FILESDIR}/corrosion-0.6.1_cxxbridge-cmd_no_locked.patch" +) + +CMAKE_SKIP_TESTS=( + # requires extensive rust-src cargo packages + custom_target_build + custom_target_run_test-exe + custom_target_run_rust-bin + install_lib_build + install_lib_run_main-static + install_lib_run_main-shared + # error[E0425]: cannot find function `print_line` in this scope + cargo_config_rustflags_build + # must be run but gets skipped sometimes? + cargo_config_rustflags_run_cargo_config_rustflags +) + +src_configure() { + local mycmakeargs=( + -DCORROSION_BUILD_TESTS=$(usex test) + ) + cmake_src_configure +} + +src_test() { + # Some RUSTFLAGS like disabling debuginfo can mess with the tests + local -x RUSTFLAGS= + cmake_src_test +} diff --git a/dev-build/corrosion/files/corrosion-0.5.2_fix_tests.patch b/dev-build/corrosion/files/corrosion-0.5.2_fix_tests.patch new file mode 100644 index 000000000000..fce435dd307b --- /dev/null +++ b/dev-build/corrosion/files/corrosion-0.5.2_fix_tests.patch @@ -0,0 +1,44 @@ +From https://github.com/corrosion-rs/corrosion/pull/605 +From: Jonathan Schwender <schwenderjonathan@gmail.com> +Date: Sun, 12 Jan 2025 10:44:14 +0100 +Subject: [PATCH 1/2] Disable rustup_proxy test if rustup is not installed + +The test only makes sense if rustc / cargo are behind a rustup proxy. +If rustup is not installed, we can +just disable the test. +--- a/test/find_rust/CMakeLists.txt ++++ b/test/find_rust/CMakeLists.txt +@@ -1,3 +1,7 @@ + corrosion_tests_add_test(find_rust "") + corrosion_tests_add_test(rustup_proxy "") + ++find_program(rustup rustup) ++if(NOT rustup) ++ set_tests_properties(rustup_proxy_build rustup_proxy_cleanup PROPERTIES DISABLED 1) ++endif() + +From 1127f5bc08491a1dccbb979f92f78a9a7264bba9 Mon Sep 17 00:00:00 2001 +From: Jonathan Schwender <schwenderjonathan@gmail.com> +Date: Sun, 12 Jan 2025 11:05:52 +0100 +Subject: [PATCH 2/2] tests: Improve parse_target_triple warning regex. + +Improve the regex, to ensure it only matches against our specific +warning. This should hopefully make it more robust, since +new CMake versions can always introduce new warnings for our +existing code. +--- a/test/parse_target_triple/CMakeLists.txt ++++ b/test/parse_target_triple/CMakeLists.txt +@@ -2,9 +2,9 @@ corrosion_tests_add_test(parse_target_triple "") + corrosion_tests_add_test(parse_target_triple_should_fail "") + + set_tests_properties("parse_target_triple_build" PROPERTIES FAIL_REGULAR_EXPRESSION +- "CMake Warning" ++ "CMake Warning at [^\r\n]*FindRust\.cmake:.*(\r)?\n[ \t]*Failed to parse target-triple `" + ) + + set_tests_properties("parse_target_triple_should_fail_build" PROPERTIES PASS_REGULAR_EXPRESSION +- "CMake Warning" +- ) +\ No newline at end of file ++ "CMake Warning at [^\r\n]*FindRust\.cmake:.*(\r)?\n[ \t]*Failed to parse target-triple `" ++ ) diff --git a/dev-build/corrosion/files/corrosion-0.6.1_cxxbridge-cmd_no_locked.patch b/dev-build/corrosion/files/corrosion-0.6.1_cxxbridge-cmd_no_locked.patch new file mode 100644 index 000000000000..057aa5376c39 --- /dev/null +++ b/dev-build/corrosion/files/corrosion-0.6.1_cxxbridge-cmd_no_locked.patch @@ -0,0 +1,20 @@ +From https://github.com/corrosion-rs/corrosion/commit/4b954fa5a238d78a80aacf85a667f4b426926e71 +From: Jonathan Schwender <schwenderjonathan@gmail.com> +Date: Sat, 16 May 2026 16:25:49 +0200 +Subject: [PATCH] Install cxxbridge-cmd without --locked + +cxxbridge-cmd does not have a lockfile, +and adding --locked caused issues for users +using offline mode. + +Fixes #672 +--- a/cmake/Corrosion.cmake ++++ b/cmake/Corrosion.cmake +@@ -1862,7 +1862,6 @@ function(corrosion_add_cxxbridge cxx_target) + $CACHE{CORROSION_TOOLS_CARGO} install + cxxbridge-cmd + --version "${cxx_required_version}" +- --locked + --root "${CMAKE_BINARY_DIR}/corrosion/cxxbridge_v${cxx_required_version}" + --quiet + # todo: use --target-dir to potentially reuse artifacts diff --git a/dev-build/corrosion/metadata.xml b/dev-build/corrosion/metadata.xml new file mode 100644 index 000000000000..c6d5363987be --- /dev/null +++ b/dev-build/corrosion/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person" proxied="yes"> + <email>azamat.hackimov@gmail.com</email> + <name>Azamat H. Hackimov</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> + <upstream> + <remote-id type="github">corrosion-rs/corrosion</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/dagger/Manifest b/dev-build/dagger/Manifest new file mode 100644 index 000000000000..16c0284be518 --- /dev/null +++ b/dev-build/dagger/Manifest @@ -0,0 +1,2 @@ +DIST dagger-0.9.8-deps.tar.xz 257422892 BLAKE2B 94e5f2a98a7f40cb1a67deaf0db868f507b3abb4482c1dba9542816da289719fc9cb3d8da5b5b6b9e4e636c789d3d80879d3ab32947ebcebd53c49a3a755f81f SHA512 b0509b30bc73c81478c78c7d518c7705750bb72d390d23f15e090c24cdc8fcdf633237fb1c48f1772837ea2bc27c94637f7e457325514616cf7c67f7eb9125b4 +DIST dagger-0.9.8.tar.gz 7366092 BLAKE2B c32390c3e6a1ecf604cb733855b64c8951aedf48ea495285143b70520673924aedd247cac3424b82a0a2ab94588df8f89282819f4a5425bab50542a5600e614a SHA512 54d820867bac00a40dfa2c3f6fd1e650502395def2de975631f3ffaa4d7199014a12625d7eb71f5cf235cdbcfe54005c9980d3f0969a59492cc779489c294a44 diff --git a/dev-build/dagger/dagger-0.9.8.ebuild b/dev-build/dagger/dagger-0.9.8.ebuild new file mode 100644 index 000000000000..6d0dfbaad93c --- /dev/null +++ b/dev-build/dagger/dagger-0.9.8.ebuild @@ -0,0 +1,21 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +inherit go-module + +DESCRIPTION="ci/cd as code that runs anywhere" +HOMEPAGE="http://dagger.io" +SRC_URI="https://github.com/dagger/dagger/archive/v${PV}.tar.gz -> ${P}.tar.gz" +SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" +src_compile() { + ego build -o bin/dagger ./cmd/dagger +} + +src_install() { +dobin bin/* +} diff --git a/dev-build/dagger/metadata.xml b/dev-build/dagger/metadata.xml new file mode 100644 index 000000000000..cbf03aefbf72 --- /dev/null +++ b/dev-build/dagger/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>williamh@gentoo.org</email> + <name>William Hubbs</name> + </maintainer> + <upstream> + <remote-id type="github">dagger/dagger</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/dolphin-plugins-makefileactions/Manifest b/dev-build/dolphin-plugins-makefileactions/Manifest new file mode 100644 index 000000000000..f8a545f37a70 --- /dev/null +++ b/dev-build/dolphin-plugins-makefileactions/Manifest @@ -0,0 +1,2 @@ +DIST dolphin-plugins-25.12.3.tar.xz 337964 BLAKE2B ca59dcec606af363da0ffe6bba9de4165f94c738cb8249d0f2f93f294dbaa00a2d2a2a7bf739be01519a0f1faf868cad9ba87ea6447634c45814a2ab80c238b4 SHA512 e79f80cd17f1acb7a8160020625fa59a7983f7762c1c26c620cb856b87470cfede44fc7a0f1c14116b8fc237dfb0fa81e338bf41853bdce901b4015e47fc0b4d +DIST dolphin-plugins-26.04.1.tar.xz 338580 BLAKE2B 435bbfe3e6f9b4cfb6f3186f1a43e45e52fb00938e1f27b3cff10ab579d01421f0838d5133dcd883d87d4ac766542d7da6450bca68c38a2a33d3704e15af0cd9 SHA512 b6aef3125c406c2ee4afd165274bcf45561a33406548851a383e0231b203e555c33762c313555e46b0ecd54107434eb712188aafda33a1aeae876d5fd484258b diff --git a/dev-build/dolphin-plugins-makefileactions/dolphin-plugins-makefileactions-25.12.3.ebuild b/dev-build/dolphin-plugins-makefileactions/dolphin-plugins-makefileactions-25.12.3.ebuild new file mode 100644 index 000000000000..76b4fb3035c5 --- /dev/null +++ b/dev-build/dolphin-plugins-makefileactions/dolphin-plugins-makefileactions-25.12.3.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KDE_ORG_NAME="dolphin-plugins" +MY_PLUGIN_NAME="makefileactions" +PVCUT=$(ver_cut 1-3) +KFMIN=6.19.0 +QTMIN=6.10.1 +inherit ecm gear.kde.org + +DESCRIPTION="Dolphin plugin for Makefile targets integration" +HOMEPAGE="https://apps.kde.org/dolphin_plugins/" + +LICENSE="GPL-2+" +SLOT="6" +KEYWORDS="amd64 arm64 ~x86" +IUSE="" + +DEPEND=" + >=dev-qt/qtbase-${QTMIN}:6[concurrent,gui,widgets] + >=kde-apps/dolphin-${PVCUT}:6 + >=kde-frameworks/kconfig-${KFMIN}:6 + >=kde-frameworks/kcoreaddons-${KFMIN}:6 + >=kde-frameworks/ki18n-${KFMIN}:6 + >=kde-frameworks/kio-${KFMIN}:6 + >=kde-frameworks/kjobwidgets-${KFMIN}:6 +" +RDEPEND="${DEPEND} + !<kde-apps/dolphin-plugins-subversion-24.08.2-r1 + >=kde-apps/dolphin-plugins-common-${PV} +" + +src_prepare() { + ecm_src_prepare + ecm_punt_po_install + # solid, qtdbus only required by mountiso + ecm_punt_qt_module DBus + ecm_punt_kf_module Solid + # kxmlgui, qtnetwork only required by dropbox + ecm_punt_qt_module Network + ecm_punt_kf_module XmlGui + # kcompletion, ktextwidgets only required by other plugins + ecm_punt_kf_module Completion + ecm_punt_kf_module TextWidgets +} + +src_configure() { + local mycmakeargs=( + -DBUILD_${MY_PLUGIN_NAME}=ON + -DBUILD_bazaar=OFF + -DBUILD_dropbox=OFF + -DBUILD_git=OFF + -DBUILD_hg=OFF + -DBUILD_mountiso=OFF + -DBUILD_svn=OFF + ) + ecm_src_configure +} diff --git a/dev-build/dolphin-plugins-makefileactions/dolphin-plugins-makefileactions-26.04.1.ebuild b/dev-build/dolphin-plugins-makefileactions/dolphin-plugins-makefileactions-26.04.1.ebuild new file mode 100644 index 000000000000..f7f3994df692 --- /dev/null +++ b/dev-build/dolphin-plugins-makefileactions/dolphin-plugins-makefileactions-26.04.1.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +KDE_ORG_NAME="dolphin-plugins" +MY_PLUGIN_NAME="makefileactions" +PVCUT=$(ver_cut 1-3) +KFMIN=6.22.0 +QTMIN=6.10.1 +inherit ecm gear.kde.org + +DESCRIPTION="Dolphin plugin for Makefile targets integration" +HOMEPAGE="https://apps.kde.org/dolphin_plugins/" + +LICENSE="GPL-2+" +SLOT="6" +KEYWORDS="amd64 arm64 ~x86" +IUSE="" + +DEPEND=" + >=dev-qt/qtbase-${QTMIN}:6[concurrent,gui,widgets] + >=kde-apps/dolphin-${PVCUT}:6 + >=kde-frameworks/kconfig-${KFMIN}:6 + >=kde-frameworks/kcoreaddons-${KFMIN}:6 + >=kde-frameworks/ki18n-${KFMIN}:6 + >=kde-frameworks/kio-${KFMIN}:6 + >=kde-frameworks/kjobwidgets-${KFMIN}:6 +" +RDEPEND="${DEPEND} + !<kde-apps/dolphin-plugins-subversion-24.08.2-r1 + >=kde-apps/dolphin-plugins-common-${PV} +" + +src_prepare() { + ecm_src_prepare + ecm_punt_po_install + # solid, qtdbus only required by mountiso + ecm_punt_qt_module DBus + ecm_punt_kf_module Solid + # kxmlgui, qtnetwork only required by dropbox + ecm_punt_qt_module Network + ecm_punt_kf_module XmlGui + # kcompletion, ktextwidgets only required by other plugins + ecm_punt_kf_module Completion + ecm_punt_kf_module TextWidgets +} + +src_configure() { + local mycmakeargs=( + -DBUILD_${MY_PLUGIN_NAME}=ON + -DBUILD_bazaar=OFF + -DBUILD_dropbox=OFF + -DBUILD_git=OFF + -DBUILD_hg=OFF + -DBUILD_mountiso=OFF + -DBUILD_svn=OFF + ) + ecm_src_configure +} diff --git a/dev-build/dolphin-plugins-makefileactions/metadata.xml b/dev-build/dolphin-plugins-makefileactions/metadata.xml new file mode 100644 index 000000000000..24e0d59c569a --- /dev/null +++ b/dev-build/dolphin-plugins-makefileactions/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>kde@gentoo.org</email> + <name>Gentoo KDE Project</name> + </maintainer> + <upstream> + <bugs-to>https://bugs.kde.org/enter_bug.cgi?product=dolphin</bugs-to> + <remote-id type="kde-invent">sdk/dolphin-plugins</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/fobis/Manifest b/dev-build/fobis/Manifest new file mode 100644 index 000000000000..0541b4c26651 --- /dev/null +++ b/dev-build/fobis/Manifest @@ -0,0 +1,2 @@ +DIST FoBiS.py-3.1.0.tar.gz 50502 BLAKE2B b89865372c1d31ea216de1f5ead15f790ab0c09dbf70da9c2ee9100f02db1ff29a2167b3bc3c18319d5a2028c7d672d97c15cfdcd74b5166c0c00d6e8214ef35 SHA512 f5110ecd2ebc17e6c9a7e53b54957b4ac104eed42ffb34b0b2061f4cf43ac847ed3160d5e92c7f9211c28a4bbeaa9f271bcd6e07f0edd2cbfd60f8cb102ac27c +DIST fobis-3.2.1.tar.gz 52650 BLAKE2B 92f02c5a78f214b4e0bc4f98e0c5e49fc9ca7916cfc8e2fc3000513a15cbc163048939f379d8c9654349d49a5a9291ba3d20cf0711e130b7e5d31c7efc46ff39 SHA512 8637927d7d083c7982e05361eb68307022d7bf3aee38b9111ce69e560cb8066fe63dbf5e0cec82f46098eb84b26643a6a89a622804f454024e1998d697b6eec8 diff --git a/dev-build/fobis/fobis-3.1.0.ebuild b/dev-build/fobis/fobis-3.1.0.ebuild new file mode 100644 index 000000000000..725a2f7d92ce --- /dev/null +++ b/dev-build/fobis/fobis-3.1.0.ebuild @@ -0,0 +1,24 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) +PYPI_PN="FoBiS.py" +PYPI_NO_NORMALIZE=1 + +inherit distutils-r1 pypi + +DESCRIPTION="FoBiS.py, a Fortran Building System for poor men" +HOMEPAGE="https://github.com/szaghi/FoBiS" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="graphviz" +RESTRICT="mirror" + +RDEPEND=" + graphviz? ( dev-python/graphviz[${PYTHON_USEDEP}] ) +" diff --git a/dev-build/fobis/fobis-3.2.1.ebuild b/dev-build/fobis/fobis-3.2.1.ebuild new file mode 100644 index 000000000000..54ec1913193b --- /dev/null +++ b/dev-build/fobis/fobis-3.2.1.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) +PYPI_PN="FoBiS.py" +PYPI_NO_NORMALIZE=1 + +inherit distutils-r1 pypi + +DESCRIPTION="FoBiS.py, a Fortran Building System for poor men" +HOMEPAGE="https://github.com/szaghi/FoBiS" +SRC_URI="$(pypi_sdist_url "${PN}_py" "${PV}") -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="graphviz" +RESTRICT="mirror" + +RDEPEND=" + graphviz? ( dev-python/graphviz[${PYTHON_USEDEP}] ) +" diff --git a/dev-build/fobis/metadata.xml b/dev-build/fobis/metadata.xml new file mode 100644 index 000000000000..a9a19108725b --- /dev/null +++ b/dev-build/fobis/metadata.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer type="person"> + <email>torokhov-s-a@yandex.ru</email> + <name>Sergey Torokhov</name> +</maintainer> +<longdescription lang="en"> + FoBiS.py, a Fortran Building System for poor men, is a KISS tool + for automatic building modern Fortran projects, it being able + to automatically resolve inter-modules dependency hierarchy. +</longdescription> +<use> + <flag name="graphviz">Add support of generation of a dependencies graph</flag> +</use> +<upstream> + <remote-id type="pypi">FoBiS.py</remote-id> + <remote-id type="github">szaghi/FoBiS</remote-id> +</upstream> +</pkgmetadata> diff --git a/dev-build/fpm/Manifest b/dev-build/fpm/Manifest new file mode 100644 index 000000000000..c29ee7b11ed0 --- /dev/null +++ b/dev-build/fpm/Manifest @@ -0,0 +1,8 @@ +DIST fpm-0.9.0.F90 1371069 BLAKE2B df3439ca50176f0a8e3b2f48d130dc232da343d7fe5451af73b5bfa72112cfc7e08bc5c0dbaced2c5b5c72f48fc91d059ca533b4b47df23d1e579ebd03690078 SHA512 62f17491a2540d3b5f68435a87916b5e88bbd903a87cb4ecdfaa25e3024357e070c27e51a1f5ccdf22fb05ac8054ed83bb83e8a13c8639a47be822ff1fda9060 +DIST fpm-0.9.0.tar.gz 219603 BLAKE2B cb282913c1c6dd6440e6c7b982e7a5ffd76a2e8177b70da22ee36946feb62229919b8f40a4747a2f0cd8b2c589ee111f063cab50ee0f0bee295cd8cf8946b46a SHA512 b80141408a2192efdd3c0777eb2df01de95ee5740332468ac95f89f6e6199c88c2d4180934ce552403572cadfc755395eb669336fcc9d3d00cb8ee0607205397 +DIST fpm-0.10.0.F90 1413145 BLAKE2B 8b0121b2436cdc6d0d82783a0d083afedb8bf0eb5f8221f140e1a1bea0b03475516f9309b079bed10b85e442ebb8f71f2ddcaddc3647cd56e1d4f32fba27be23 SHA512 dcd97bbe39469040848efef915edc8c6f4af5a5f34713a021e6b58761a3f3ea6301fc8a7cbde7c93ca5446964e2f0bd4a9b9e915acf24bf230ea557ca74b23ef +DIST fpm-0.10.0.tar.gz 227016 BLAKE2B a6d9592fbfe3115ab43675cf28036dde69df0e2bcf3c7d3d98278566450328e6c3f21777efd8374177e615fcc123babce9a456f08ad1d03e790c16b95547edf2 SHA512 8b81e564ee2d3307472c1627e16b4cc9e13288c40c7ff3ea95f0c55cc4315da34d9319de5256aab9e602dd751c51be8f1fc27711f31fbf22580f58788822b69a +DIST fpm-0.11.0.F90 1580806 BLAKE2B 52eaca18d4de4011c61d83914568ee07063a8db679996d7dae1719778d5153bed430036129bb514ab0c31e8d500db1ee842f329cf32871a6e8abcee78d2337ac SHA512 0c47fbc593b529c9a3095b12ef6681a8b2f59e2509ca64ad087756d1b400e45f6cbeddb9dd7d21f47ba4658f59a1abf40c626ef52b74b562d20c416c3ec2866c +DIST fpm-0.11.0.tar.gz 263484 BLAKE2B 1507a7d7e2a823831893d9c2b3411f88540634434822eb1034eebee8c1dceac99d368506805275a8ad552b3f7de3affeea7e935aa6390b6d15f3488cd4b4b76d SHA512 40e4ee5bc16e4d9d336033e3b3f3823e12edd12bcc0af114c2e531af8754b20d76ef0d3f1c62d6a0fe444878d5dd772570cf20bff8fdd1f7a24b03a943be5df1 +DIST fpm-0.12.0.F90 1728278 BLAKE2B 27ea8d0959bea849c3358300b34b54d7acfdb72afaad4d5e3b545794e34c9e0ad0a1fceb0c133d659a6f7515a3610614d31cadf5ff10f0290d377fd60e8fdc6d SHA512 4a41f2f6bdcc7839af5567e07b7704004cc12d41d4a8ebf26c6ef88d054056c2da2bf6b5f699a5b086d69d92a817756c5dd44e4b69f0272ebab983cab3d2e57d +DIST fpm-0.12.0.tar.gz 290239 BLAKE2B 6af2c0955e7472c092cb3d634766e39fae87c20caa1b3beda725bf3ac75b4a3d91b3174636f78f2a1b6590240436beebe7f7d7acda8e54eb2ad37342ab8214f1 SHA512 556393d58b5ccdbe6168c143e42a294ec8d9b6fb094d3a137afd2fe13ecd6d2d373742c696ebb152a2aac414ea0dad4252b8c094c25d631cf8fa8dab8ef71a21 diff --git a/dev-build/fpm/files/fpm-0.10.0_fpm_toml.patch b/dev-build/fpm/files/fpm-0.10.0_fpm_toml.patch new file mode 100644 index 000000000000..da03a4761edf --- /dev/null +++ b/dev-build/fpm/files/fpm-0.10.0_fpm_toml.patch @@ -0,0 +1,23 @@ +diff -Naur a/fpm.toml b/fpm.toml +--- a/fpm.toml ++++ b/fpm.toml +@@ -10,16 +10,9 @@ + macros=["FPM_RELEASE_VERSION={version}"] + + [dependencies] +-toml-f.git = "https://github.com/toml-f/toml-f" +-toml-f.rev = "d7b892b1d074b7cfc5d75c3e0eb36ebc1f7958c1" +-M_CLI2.git = "https://github.com/urbanjost/M_CLI2.git" +-M_CLI2.rev = "7264878cdb1baff7323cc48596d829ccfe7751b8" +-fortran-regex.git = "https://github.com/perazz/fortran-regex" +-fortran-regex.tag = "1.1.2" +-jonquil.git = "https://github.com/toml-f/jonquil" +-jonquil.rev = "4fbd4cf34d577c0fd25e32667ee9e41bf231ece8" +-fortran-shlex.git = "https://github.com/perazz/fortran-shlex" +-fortran-shlex.tag = "1.0.1" ++[build] ++external-modules = ["tomlf","m_cli2","regex_module","shlex_module","jonquil"] ++link = ["toml-f","M_CLI2","fortran-regex","fortran-shlex","jonquil"] + + [[test]] + name = "cli-test" diff --git a/dev-build/fpm/files/fpm-0.11.0_fpm_toml.patch b/dev-build/fpm/files/fpm-0.11.0_fpm_toml.patch new file mode 100644 index 000000000000..d05134a93c5e --- /dev/null +++ b/dev-build/fpm/files/fpm-0.11.0_fpm_toml.patch @@ -0,0 +1,23 @@ +diff -Naur a/fpm.toml b/fpm.toml +--- a/fpm.toml ++++ b/fpm.toml +@@ -10,16 +10,9 @@ + macros=["FPM_RELEASE_VERSION={version}"] + + [dependencies] +-toml-f.git = "https://github.com/toml-f/toml-f" +-toml-f.rev = "d7b892b1d074b7cfc5d75c3e0eb36ebc1f7958c1" +-M_CLI2.git = "https://github.com/urbanjost/M_CLI2.git" +-M_CLI2.rev = "7264878cdb1baff7323cc48596d829ccfe7751b8" +-fortran-regex.git = "https://github.com/perazz/fortran-regex" +-fortran-regex.tag = "1.1.2" +-jonquil.git = "https://github.com/toml-f/jonquil" +-jonquil.rev = "4fbd4cf34d577c0fd25e32667ee9e41bf231ece8" +-fortran-shlex.git = "https://github.com/perazz/fortran-shlex" +-fortran-shlex.tag = "1.0.1" ++[build] ++external-modules = ["tomlf","tomlf_constants","tomlf_de_parser","m_cli2","regex_module","shlex_module","jonquil"] ++link = ["toml-f","M_CLI2","fortran-regex","fortran-shlex","jonquil"] + + [[test]] + name = "cli-test" diff --git a/dev-build/fpm/files/fpm-0.12.0_fpm_toml.patch b/dev-build/fpm/files/fpm-0.12.0_fpm_toml.patch new file mode 100644 index 000000000000..9bbdf35b9ba5 --- /dev/null +++ b/dev-build/fpm/files/fpm-0.12.0_fpm_toml.patch @@ -0,0 +1,23 @@ +diff -Naur a/fpm.toml b/fpm.toml +--- a/fpm.toml ++++ b/fpm.toml +@@ -10,16 +10,9 @@ + macros=["FPM_RELEASE_VERSION={version}"] + + [dependencies] +-toml-f.git = "https://github.com/toml-f/toml-f" +-toml-f.rev = "d7b892b1d074b7cfc5d75c3e0eb36ebc1f7958c1" +-M_CLI2.git = "https://github.com/urbanjost/M_CLI2.git" +-M_CLI2.rev = "7264878cdb1baff7323cc48596d829ccfe7751b8" +-fortran-regex.git = "https://github.com/perazz/fortran-regex" +-fortran-regex.tag = "1.1.2" +-jonquil.git = "https://github.com/toml-f/jonquil" +-jonquil.rev = "4fbd4cf34d577c0fd25e32667ee9e41bf231ece8" +-fortran-shlex.git = "https://github.com/perazz/fortran-shlex" +-fortran-shlex.tag = "2.0.0" ++[build] ++external-modules = ["tomlf","tomlf_constants","tomlf_de_parser","m_cli2","regex_module","shlex_module","jonquil"] ++link = ["toml-f","M_CLI2","fortran-regex","fortran-shlex","jonquil"] + + [[test]] + name = "cli-test" diff --git a/dev-build/fpm/files/fpm-0.9.0_fpm_toml.patch b/dev-build/fpm/files/fpm-0.9.0_fpm_toml.patch new file mode 100644 index 000000000000..8765e164f516 --- /dev/null +++ b/dev-build/fpm/files/fpm-0.9.0_fpm_toml.patch @@ -0,0 +1,22 @@ +diff -Naur a/fpm.toml b/fpm.toml +--- a/fpm.toml ++++ b/fpm.toml +@@ -9,15 +9,9 @@ + [preprocess.cpp] + macros=["FPM_RELEASE_VERSION={version}"] + +-[dependencies] +-toml-f.git = "https://github.com/toml-f/toml-f" +-toml-f.rev = "d7b892b1d074b7cfc5d75c3e0eb36ebc1f7958c1" +-M_CLI2.git = "https://github.com/urbanjost/M_CLI2.git" +-M_CLI2.rev = "7264878cdb1baff7323cc48596d829ccfe7751b8" +-fortran-regex.git = "https://github.com/perazz/fortran-regex" +-fortran-regex.tag = "1.1.2" +-jonquil.git = "https://github.com/toml-f/jonquil" +-jonquil.rev = "4c27c8c1e411fa8790dffcf8c3fa7a27b6322273" ++[build] ++external-modules = ["tomlf","m_cli2","regex_module","jonquil"] ++link = ["toml-f","M_CLI2","fortran-regex","jonquil"] + + [[test]] + name = "cli-test" diff --git a/dev-build/fpm/fpm-0.10.0.ebuild b/dev-build/fpm/fpm-0.10.0.ebuild new file mode 100644 index 000000000000..d9c7cbf7b07b --- /dev/null +++ b/dev-build/fpm/fpm-0.10.0.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +FORTRAN_STANDARD="2003" + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit fortran-2 python-any-r1 toolchain-funcs + +DESCRIPTION="Fortran Package Manager (fpm)" +HOMEPAGE="https://fpm.fortran-lang.org" +SRC_URI=" + https://github.com/fortran-lang/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz + https://github.com/fortran-lang/fpm/releases/download/v${PV}/${P}.F90 +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="openmp doc test" +RESTRICT="!test? ( test )" + +CDEPEND=" + dev-libs/fortran-regex + dev-libs/fortran-shlex:0/1 + dev-libs/jonquil:0/2 + dev-libs/toml-f:0/4 + dev-libs/M_CLI2 +" + +RDEPEND=" + ${CDEPEND} + dev-vcs/git +" + +DEPEND=" + ${CDEPEND} + doc? ( + ${PYTHON_DEPS} + $(python_gen_any_dep ' + app-text/ford[${PYTHON_USEDEP}] + ') + ) +" + +DOCS=( LICENSE PACKAGING.md README.md ) + +PATCHES="${FILESDIR}/${P}_fpm_toml.patch" + +BSDIR="build/bootstrap" # Bootstrap directory path + +pkg_pretend() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp +} + +set_build_flags() { + OMPFLAG="" + if use openmp ; then + case $(tc-getFC) in + *gfortran* ) + OMPFLAG="-fopenmp" ;; + * ) + die "Sorry, only GNU gfortran is currently supported in the ebuild" ;; + esac + fi + + BUILD_FLAGS=( --compiler "$(tc-getFC)" + --flag "${FCFLAGS} ${OMPFLAG} -I/usr/include/fortran-regex \ + -I/usr/include/fortran-shlex \ + -I/usr/include/jonquil/modules \ + -I/usr/include/M_CLI2 \ + -I/usr/include/toml-f/modules" + --c-compiler "$(tc-getCC)" --c-flag "${CFLAGS}" + --cxx-compiler "$(tc-getCXX)" --cxx-flag "${CXXFLAGS}" + --archiver "$(tc-getAR)" --link-flag "${LDFLAGS}" ) +} + +pkg_setup() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp + fortran-2_pkg_setup + python-any-r1_pkg_setup + set_build_flags +} + +src_prepare() { + default + + mkdir -p "${BSDIR}" || die + cp "${DISTDIR}/${P}.F90" "${BSDIR}/" || die + + # Use favicon.png instead remote icon + sed -i -e 's#https://fortran-lang.org/assets/img/fortran_logo_512x512.png#favicon.png#' docs.md || die +} + +src_compile() { + default + + # Build a bootstrap binary from the single source version + "$(tc-getFC)" -J "${BSDIR}" -o "${BSDIR}"/fpm "${BSDIR}/${P}.F90" || die + + # Use the bootstrap binary to build the feature complete fpm version + "${BSDIR}"/fpm build --verbose "${BUILD_FLAGS[@]}" || die + + if use doc ; then + einfo "Build API documentation:" + ford docs.md || die + fi +} + +src_test() { + "${BSDIR}"/fpm test --verbose "${BUILD_FLAGS[@]}" || die +} + +src_install() { + # Set prefix and pass all used env flags to avoid recompiling with default values + "${BSDIR}"/fpm install --prefix "${ED}/usr" "${BUILD_FLAGS[@]}" || die + + use doc && HTML_DOCS=( "${S}"/fpm-doc/. ) + einstalldocs +} diff --git a/dev-build/fpm/fpm-0.11.0.ebuild b/dev-build/fpm/fpm-0.11.0.ebuild new file mode 100644 index 000000000000..38ea74dfd38f --- /dev/null +++ b/dev-build/fpm/fpm-0.11.0.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +FORTRAN_STANDARD="2003" + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit fortran-2 python-any-r1 toolchain-funcs + +DESCRIPTION="Fortran Package Manager (fpm)" +HOMEPAGE="https://fpm.fortran-lang.org" +SRC_URI=" + https://github.com/fortran-lang/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz + https://github.com/fortran-lang/fpm/releases/download/v${PV}/${P}.F90 +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="openmp doc test" +RESTRICT="!test? ( test )" + +CDEPEND=" + dev-libs/fortran-regex + dev-libs/fortran-shlex:0/1 + dev-libs/jonquil:0/2 + dev-libs/toml-f:0/4 + >=dev-libs/M_CLI2-3.2.0 +" + +RDEPEND=" + ${CDEPEND} + dev-vcs/git +" + +DEPEND=" + ${CDEPEND} + doc? ( + ${PYTHON_DEPS} + $(python_gen_any_dep ' + app-text/ford[${PYTHON_USEDEP}] + ') + ) +" + +DOCS=( LICENSE PACKAGING.md README.md ) + +PATCHES="${FILESDIR}/${P}_fpm_toml.patch" + +BSDIR="build/bootstrap" # Bootstrap directory path + +pkg_pretend() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp +} + +set_build_flags() { + OMPFLAG="" + if use openmp ; then + case $(tc-getFC) in + *gfortran* ) + OMPFLAG="-fopenmp" ;; + * ) + die "Sorry, only GNU gfortran is currently supported in the ebuild" ;; + esac + fi + + BUILD_FLAGS=( --compiler "$(tc-getFC)" + --flag "${FCFLAGS} ${OMPFLAG} -I/usr/include/fortran-regex \ + -I/usr/include/fortran-shlex \ + -I/usr/include/jonquil/modules \ + -I/usr/include/M_CLI2 \ + -I/usr/include/toml-f/modules" + --c-compiler "$(tc-getCC)" --c-flag "${CFLAGS}" + --cxx-compiler "$(tc-getCXX)" --cxx-flag "${CXXFLAGS}" + --archiver "$(tc-getAR)" --link-flag "${LDFLAGS}" ) +} + +pkg_setup() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp + fortran-2_pkg_setup + python-any-r1_pkg_setup + set_build_flags +} + +src_prepare() { + default + + mkdir -p "${BSDIR}" || die + cp "${DISTDIR}/${P}.F90" "${BSDIR}/" || die + + # Use favicon.png instead remote icon + sed -i -e 's#https://fortran-lang.org/assets/img/fortran_logo_512x512.png#favicon.png#' docs.md || die +} + +src_compile() { + default + + # Build a bootstrap binary from the single source version + "$(tc-getFC)" -J "${BSDIR}" -o "${BSDIR}"/fpm "${BSDIR}/${P}.F90" || die + + # Use the bootstrap binary to build the feature complete fpm version + "${BSDIR}"/fpm build --verbose "${BUILD_FLAGS[@]}" || die + + if use doc ; then + einfo "Build API documentation:" + ford docs.md || die + fi +} + +src_test() { + "${BSDIR}"/fpm test --verbose "${BUILD_FLAGS[@]}" || die +} + +src_install() { + # Set prefix and pass all used env flags to avoid recompiling with default values + "${BSDIR}"/fpm install --prefix "${ED}/usr" "${BUILD_FLAGS[@]}" || die + + use doc && HTML_DOCS=( "${S}"/fpm-doc/. ) + einstalldocs +} diff --git a/dev-build/fpm/fpm-0.12.0.ebuild b/dev-build/fpm/fpm-0.12.0.ebuild new file mode 100644 index 000000000000..fdcfb34809f6 --- /dev/null +++ b/dev-build/fpm/fpm-0.12.0.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +FORTRAN_STANDARD="2003" + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit fortran-2 python-any-r1 toolchain-funcs + +DESCRIPTION="Fortran Package Manager (fpm)" +HOMEPAGE="https://fpm.fortran-lang.org" +SRC_URI=" + https://github.com/fortran-lang/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz + https://github.com/fortran-lang/fpm/releases/download/v${PV}/${P}.F90 +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="openmp doc test" +RESTRICT="!test? ( test )" + +CDEPEND=" + dev-libs/fortran-regex + dev-libs/fortran-shlex:0/2 + dev-libs/jonquil:0/2 + dev-libs/toml-f:0/4 + >=dev-libs/M_CLI2-3.2.0 +" + +RDEPEND=" + ${CDEPEND} + dev-vcs/git +" + +DEPEND=" + ${CDEPEND} + doc? ( + ${PYTHON_DEPS} + $(python_gen_any_dep ' + app-text/ford[${PYTHON_USEDEP}] + ') + ) +" + +DOCS=( LICENSE PACKAGING.md README.md ) + +PATCHES="${FILESDIR}/${P}_fpm_toml.patch" + +BSDIR="build/bootstrap" # Bootstrap directory path + +pkg_pretend() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp +} + +set_build_flags() { + OMPFLAG="" + if use openmp ; then + case $(tc-getFC) in + *gfortran* ) + OMPFLAG="-fopenmp" ;; + * ) + die "Sorry, only GNU gfortran is currently supported in the ebuild" ;; + esac + fi + + BUILD_FLAGS=( --compiler "$(tc-getFC)" + --flag "${FCFLAGS} ${OMPFLAG} -I/usr/include/fortran-regex \ + -I/usr/include/fortran-shlex \ + -I/usr/include/jonquil/modules \ + -I/usr/include/M_CLI2 \ + -I/usr/include/toml-f/modules" + --c-compiler "$(tc-getCC)" --c-flag "${CFLAGS}" + --cxx-compiler "$(tc-getCXX)" --cxx-flag "${CXXFLAGS}" + --archiver "$(tc-getAR)" --link-flag "${LDFLAGS}" ) +} + +pkg_setup() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp + fortran-2_pkg_setup + python-any-r1_pkg_setup + set_build_flags +} + +src_prepare() { + default + + mkdir -p "${BSDIR}" || die + cp "${DISTDIR}/${P}.F90" "${BSDIR}/" || die + + # Use favicon.png instead remote icon + sed -i -e 's#https://fortran-lang.org/assets/img/fortran_logo_512x512.png#favicon.png#' docs.md || die +} + +src_compile() { + default + + # Build a bootstrap binary from the single source version + "$(tc-getFC)" -J "${BSDIR}" -o "${BSDIR}"/fpm "${BSDIR}/${P}.F90" || die + + # Use the bootstrap binary to build the feature complete fpm version + "${BSDIR}"/fpm build --verbose "${BUILD_FLAGS[@]}" || die + + if use doc ; then + einfo "Build API documentation:" + ford docs.md || die + fi +} + +src_test() { + "${BSDIR}"/fpm test --verbose "${BUILD_FLAGS[@]}" || die +} + +src_install() { + # Set prefix and pass all used env flags to avoid recompiling with default values + "${BSDIR}"/fpm install --prefix "${ED}/usr" "${BUILD_FLAGS[@]}" || die + + use doc && HTML_DOCS=( "${S}"/fpm-doc/. ) + einstalldocs +} diff --git a/dev-build/fpm/fpm-0.9.0.ebuild b/dev-build/fpm/fpm-0.9.0.ebuild new file mode 100644 index 000000000000..61c3dabf6254 --- /dev/null +++ b/dev-build/fpm/fpm-0.9.0.ebuild @@ -0,0 +1,118 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +FORTRAN_STANDARD="2003" + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit fortran-2 python-any-r1 toolchain-funcs + +DESCRIPTION="Fortran Package Manager (fpm)" +HOMEPAGE="https://fpm.fortran-lang.org" +SRC_URI=" + https://github.com/fortran-lang/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz + https://github.com/fortran-lang/fpm/releases/download/v${PV}/${P}.F90 +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="openmp doc test" +RESTRICT="!test? ( test )" + +CDEPEND=" + dev-libs/fortran-regex + dev-libs/jonquil:0/2 + dev-libs/toml-f:0/4 + dev-libs/M_CLI2 +" + +RDEPEND=" + ${CDEPEND} + dev-vcs/git +" + +DEPEND=" + ${CDEPEND} + doc? ( + ${PYTHON_DEPS} + $(python_gen_any_dep ' + app-text/ford[${PYTHON_USEDEP}] + ') + ) +" + +DOCS=( LICENSE PACKAGING.md README.md ) + +PATCHES="${FILESDIR}/${P}_fpm_toml.patch" + +BSDIR="build/bootstrap" # Bootstrap directory path + +pkg_pretend() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp +} + +set_build_flags() { + OMPFLAG="" + if use openmp ; then + case $(tc-getFC) in + *gfortran* ) + OMPFLAG="-fopenmp" ;; + * ) + die "Sorry, only GNU gfortran is currently supported in the ebuild" ;; + esac + fi + + BUILD_FLAGS=( --compiler "$(tc-getFC)" + --flag "${FCFLAGS} ${OMPFLAG} -I/usr/include/fortran-regex -I/usr/include/jonquil/modules \ + -I/usr/include/M_CLI2 -I/usr/include/toml-f/modules" + --c-compiler "$(tc-getCC)" --c-flag "${CFLAGS}" + --cxx-compiler "$(tc-getCXX)" --cxx-flag "${CXXFLAGS}" + --archiver "$(tc-getAR)" --link-flag "${LDFLAGS}" ) +} + +pkg_setup() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp + fortran-2_pkg_setup + python-any-r1_pkg_setup + set_build_flags +} + +src_prepare() { + default + + mkdir -p "${BSDIR}" || die + cp "${DISTDIR}/${P}.F90" "${BSDIR}/" || die + + # Use favicon.png instead remote icon + sed -i -e 's#https://fortran-lang.org/assets/img/fortran_logo_512x512.png#favicon.png#' docs.md || die +} + +src_compile() { + default + + # Build a bootstrap binary from the single source version + "$(tc-getFC)" -J "${BSDIR}" -o "${BSDIR}"/fpm "${BSDIR}/${P}.F90" || die + + # Use the bootstrap binary to build the feature complete fpm version + "${BSDIR}"/fpm build --verbose "${BUILD_FLAGS[@]}" || die + + if use doc ; then + einfo "Build API documentation:" + ford docs.md || die + fi +} + +src_test() { + "${BSDIR}"/fpm test --verbose "${BUILD_FLAGS[@]}" || die +} + +src_install() { + # Set prefix and pass all used env flags to avoid recompiling with default values + "${BSDIR}"/fpm install --prefix "${ED}/usr" "${BUILD_FLAGS[@]}" || die + + use doc && HTML_DOCS=( "${S}"/fpm-doc/. ) + einstalldocs +} diff --git a/dev-build/fpm/metadata.xml b/dev-build/fpm/metadata.xml new file mode 100644 index 000000000000..fac9ec00a9d6 --- /dev/null +++ b/dev-build/fpm/metadata.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>torokhov-s-a@yandex.ru</email> + <name>Sergey Torokhov</name> + </maintainer> + <use> + <flag name="openmp">OpenMP support to build targets in parallel where possible</flag> + </use> + <upstream> + <remote-id type="github">fortran-lang/fpm</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/fypp/Manifest b/dev-build/fypp/Manifest new file mode 100644 index 000000000000..62000f78a196 --- /dev/null +++ b/dev-build/fypp/Manifest @@ -0,0 +1 @@ +DIST fypp-3.2.tar.gz 69307 BLAKE2B f84738dafdacc48e41fe67a10d1dafabee8b531b3171f1e0fda6e180ab579cffbd2276f3004a54a428f5adf4409347b639c2339297cfe4d1e8a468cc306b6039 SHA512 79cdaaf540447d72a665360ae8dbdea52d71b2d1a3a8733e35a258d0050d0e77729414e1c59d9905349d3ef61f1a943348efce3fffddd80affd808a0b2660ea3 diff --git a/dev-build/fypp/files/filevarroot.fypp b/dev-build/fypp/files/filevarroot.fypp new file mode 100644 index 000000000000..9eb9a2a720a7 --- /dev/null +++ b/dev-build/fypp/files/filevarroot.fypp @@ -0,0 +1,5 @@ +FILE: ${_FILE_}$:${_LINE_}$ +THIS_FILE: ${_THIS_FILE_}$:${_THIS_LINE_}$ +--- +#:include "filevarroot.inc" +$:macro() diff --git a/dev-build/fypp/fypp-3.2.ebuild b/dev-build/fypp/fypp-3.2.ebuild new file mode 100644 index 000000000000..cdcbd0e9bda9 --- /dev/null +++ b/dev-build/fypp/fypp-3.2.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Fypp - Python powered Fortran preprocessor" +HOMEPAGE="https://github.com/aradi/fypp" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="test" + +RESTRICT="!test? ( test )" + +src_prepare() { + default + cp "${FILESDIR}/filevarroot.fypp" "${S}/test/input/" || die +} + +python_test() { + # pass python version as arg + test/runtests.sh ${EPYTHON} || die +} diff --git a/dev-build/fypp/metadata.xml b/dev-build/fypp/metadata.xml new file mode 100644 index 000000000000..1a87c738a78b --- /dev/null +++ b/dev-build/fypp/metadata.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>torokhov-s-a@yandex.ru</email> + <name>Sergey Torokhov</name> + </maintainer> + <longdescription lang="en"> + Fypp is a Python powered preprocessor. + It can be used for any programming languages but its primary aim is to offer a Fortran preprocessor, + which helps to extend Fortran with condititional compiling and template metaprogramming capabilities. + </longdescription> + <upstream> + <remote-id type="pypi">fypp</remote-id> + <remote-id type="github">aradi/fypp</remote-id> +</upstream> +</pkgmetadata> diff --git a/dev-build/gn/Manifest b/dev-build/gn/Manifest new file mode 100644 index 000000000000..2073ac522d65 --- /dev/null +++ b/dev-build/gn/Manifest @@ -0,0 +1,8 @@ +DIST gn-0.2122.tar.xz 740444 BLAKE2B df57fb611f26964ed3ac47365080cd043ba4206233450bb39699e78e35b8acff918e94efe4e7cea957199dd2f441dfcf31566e7d64ad10aace9d2c1d538ed6ac SHA512 80c330eac876fc0d6f46038b96eefd19bc1b6e5e89515489c1d02f82675213174fba394398ffc1bdd1405ddcd11b60c2870f3076296390976da74012867faf39 +DIST gn-0.2217.tar.xz 754264 BLAKE2B 671cbe6d3767bf108604cd13fa1363339f1688ed9b2b59a8470225e077762bcc77d491636ba22e73e00ebeaf5054260cbce4e01f4db8cf30b7bf06ecbcb41151 SHA512 9f9872f35c1e8d7b33996377413c81c1cc9d9873fd0e889155089ceb609e6382eae3d776bb3c0cb83fe7c285997f1eca63c2d1807ff895a716cdb52dfc905366 +DIST gn-0.2227.tar.xz 755232 BLAKE2B f7430d4175a91d2f2d3991c346477ee06b450e81fd1424019d3b9316da5def5637db312c2ed68eb392e71f3e0279d894f25f7c44e91b6f1e3e919d2bfaef5e19 SHA512 807bb74f5c9bb16a3f1d871bb1f31ee5415dd3e1ed16acbd0105438f1d8b562d77d44192bc968dbf5486b26de7a103ccf3c9aad4ad84c596509d1c5495af27b4 +DIST gn-0.2235.tar.xz 755696 BLAKE2B a66577a1ce3dc726f4d6b06221428a8fdbced5c9f57bde1cd7538fbc3cef1c81b9a40a386d9f317d24c9400d0a8cca2c593013f4496ba34b6f3a26e49ed6569a SHA512 2acc5937ff684180a6529d80d97ed7b615e43a1e4b58544ae5e00ec6021c51aa99fb9150cb6642c3bebe4545af957f890a32bacc3942948c8b1a47efd30b3db7 +DIST gn-0.2289.tar.xz 762416 BLAKE2B cb3c3e6bc28ba40ccd8b1f30cbcabebdf10e65d7f0072b43fc0f06c07f148e9eb4b3ddaf84f8d3f3f3be1e9153aedd40b9be0b7b14711a28cb92b539c671e60d SHA512 0abadf6af9e6c15c9d2586daa3ba1546990b1e32eb40843417a6dc73b57213da5cf9c403d23ed04af47f9ab3986aae91caf68615ff16562fe1e89ee674df289a +DIST gn-0.2318.tar.xz 773116 BLAKE2B 67756f7026a050dd2e89efe3985b55f48c6903f258a1807108f3da88c0f3777d6a28783f34a22ec0bdd7a3905f8b97c578a1a3616ad0ac311bbb7a2143a8932b SHA512 6482906411c8a809dd283220301a5f202893cdf292cd9112b0a9bca767637179f7ae6de4497b886af8c1e3c68afdbf8c7d8dc9e70ef6f5bb0bb4c1fd371ce419 +DIST gn-0.2354.tar.xz 784656 BLAKE2B a4a9d7898909adfdf9e975e7c57b00748c68cf42a796509bc9784eeefc46a41c5ad136818aebdc4c77b20305270ddf4516ca7d59c03e80f5bea0f2c1aaf20494 SHA512 c4911837d848a8a12c3f1f1eb2ebb1d865688921f97e369e3dd0d116ff00c6425ab93ee0bab0ee58a96fa378c831b79e74c80a033da782a757b5d2a1de1f7c83 +DIST gn-0.2374.tar.xz 790236 BLAKE2B ffa58e8ac35c334fa19e3cf01806b66567e6b1907940c05321211c33ff5f29d525e7d9508f579f0e0a6f305d8cf2e375447a58490bf1efdd9472350a8453009f SHA512 8d9235afd25206fcf5eaab47e6504ce9c2ed98e1088134826801cc648f542f2b808f840649560bcb30b3cbafb3acf2c60dfbd6ad53de872dddd499636593962e diff --git a/dev-build/gn/files/gn-0.2374-test-iwyu.patch b/dev-build/gn/files/gn-0.2374-test-iwyu.patch new file mode 100644 index 000000000000..d70fa9d459d0 --- /dev/null +++ b/dev-build/gn/files/gn-0.2374-test-iwyu.patch @@ -0,0 +1,18 @@ +https://gn-review.googlesource.com/c/gn/+/22200 +From: Matt Jolly <kangie@gentoo.org> +Date: Sun, 26 Apr 2026 18:18:05 +1000 +Subject: [PATCH] IWYU: gn/target.h + +Signed-off-by: Matt Jolly <kangie@gentoo.org> +--- a/src/gn/target_public_pair_unittest.cc ++++ b/src/gn/target_public_pair_unittest.cc +@@ -3,6 +3,7 @@ + // found in the LICENSE file. + + #include "gn/target_public_pair.h" ++#include "gn/target.h" + #include "util/test/test.h" + + TEST(TargetPublicPairTest, ConstructionAndMutation) { +-- +2.53.0 diff --git a/dev-build/gn/files/gn-gen-r5.patch b/dev-build/gn/files/gn-gen-r5.patch new file mode 100644 index 000000000000..80966b3c7f5e --- /dev/null +++ b/dev-build/gn/files/gn-gen-r5.patch @@ -0,0 +1,46 @@ +From ef45f2e73264e62ad3fb24d064453a17099da8d7 Mon Sep 17 00:00:00 2001 +From: Mike Gilbert <floppym@gentoo.org> +Date: Sat, 14 Mar 2020 18:02:51 +0000 +Subject: [PATCH] Remove unwanted cflags/ldflags parameters + +--- + build/gen.py | 9 --------- + 1 file changed, 9 deletions(-) + +diff --git a/build/gen.py b/build/gen.py +index 265b1f5..06c6d8b 100755 +--- a/build/gen.py ++++ b/build/gen.py +@@ -343,11 +343,6 @@ def WriteGNNinja(path, platform, host, options): + if options.debug: + cflags.extend(['-O0', '-g']) + else: +- cflags.append('-DNDEBUG') +- cflags.append('-O3') +- if options.no_strip: +- cflags.append('-g') +- ldflags.append('-O3') + # Use -fdata-sections and -ffunction-sections to place each function + # or data item into its own section so --gc-sections can eliminate any + # unused functions and data items. +@@ -383,7 +378,6 @@ def WriteGNNinja(path, platform, host, options): + '-D_FILE_OFFSET_BITS=64', + '-D__STDC_CONSTANT_MACROS', '-D__STDC_FORMAT_MACROS', + '-pthread', +- '-pipe', + '-fno-exceptions', + '-fno-rtti', + '-fdiagnostics-color', +@@ -411,9 +405,6 @@ def WriteGNNinja(path, platform, host, options): + '-Wno-cast-function-type', # Casting FARPROC to RegDeleteKeyExPtr + '-std=gnu++17', + ]) +- else: +- # This is needed by libc++. +- libs.append('-ldl') + elif platform.is_darwin(): + min_mac_version_flag = '-mmacosx-version-min=10.9' + cflags.append(min_mac_version_flag) +-- +2.32.0 + diff --git a/dev-build/gn/files/gn-gen-r7.patch b/dev-build/gn/files/gn-gen-r7.patch new file mode 100644 index 000000000000..f49236021406 --- /dev/null +++ b/dev-build/gn/files/gn-gen-r7.patch @@ -0,0 +1,39 @@ +From 74f21d84b06e63cd558a5e69f8195b5f93230a2f Mon Sep 17 00:00:00 2001 +From: Matt Jolly <kangie@gentoo.org> +Date: Thu, 10 Oct 2024 12:23:12 +1000 +Subject: [PATCH] Update patch to v7 + +--- + build/gen.py | 9 ++++----- + 1 file changed, 4 insertions(+), 5 deletions(-) + +diff --git a/build/gen.py b/build/gen.py +index d1c649cb..104ce569 100755 +--- a/build/gen.py ++++ b/build/gen.py +@@ -432,10 +432,10 @@ def WriteGNNinja(path, platform, host, options, args_list): + cflags.extend(['-D_LIBCPP_DEBUG=1', '-D_GLIBCXX_DEBUG=1']) + else: + cflags.append('-DNDEBUG') +- cflags.append('-O3') +- if options.no_strip: +- cflags.append('-g') +- ldflags.append('-O3') ++# cflags.append('-O3') ++# if options.no_strip: ++# cflags.append('-g') ++# ldflags.append('-O3') + # Use -fdata-sections and -ffunction-sections to place each function + # or data item into its own section so --gc-sections can eliminate any + # unused functions and data items. +@@ -482,7 +482,6 @@ def WriteGNNinja(path, platform, host, options, args_list): + '-D_FILE_OFFSET_BITS=64', + '-D__STDC_CONSTANT_MACROS', '-D__STDC_FORMAT_MACROS', + '-pthread', +- '-pipe', + '-fno-exceptions', + '-fno-rtti', + '-fdiagnostics-color', +-- +2.46.2 + diff --git a/dev-build/gn/files/gn-gen-r8.patch b/dev-build/gn/files/gn-gen-r8.patch new file mode 100644 index 000000000000..ed16ad8b32fd --- /dev/null +++ b/dev-build/gn/files/gn-gen-r8.patch @@ -0,0 +1,38 @@ +https://gn-review.googlesource.com/c/gn/+/18760 (partially, at least) +From: Matt Jolly <kangie@gentoo.org> +Date: Sat, 17 May 2025 12:38:19 +1000 +Subject: [PATCH] Update patch to v8 + +--- a/build/gen.py ++++ b/build/gen.py +@@ -432,10 +432,10 @@ def WriteGNNinja(path, platform, host, options, args_list): + cflags.extend(['-D_LIBCPP_DEBUG=1', '-D_GLIBCXX_DEBUG=1']) + else: + cflags.append('-DNDEBUG') +- cflags.append('-O3') +- if options.no_strip: +- cflags.append('-g') +- ldflags.append('-O3') ++# cflags.append('-O3') ++# if options.no_strip: ++# cflags.append('-g') ++# ldflags.append('-O3') + # Use -fdata-sections and -ffunction-sections to place each function + # or data item into its own section so --gc-sections can eliminate any + # unused functions and data items. +@@ -482,7 +482,6 @@ def WriteGNNinja(path, platform, host, options, args_list): + '-D_FILE_OFFSET_BITS=64', + '-D__STDC_CONSTANT_MACROS', '-D__STDC_FORMAT_MACROS', + '-pthread', +- '-pipe', + '-fno-exceptions', + '-fno-rtti', + '-fdiagnostics-color', +@@ -524,8 +524,6 @@ + '-Wno-implicit-fallthrough', + '-Wno-redundant-move', + '-Wno-unused-variable', +- '-Wno-format', # Use of %llx, which is supported by _UCRT, false positive +- '-Wno-strict-aliasing', # Dereferencing punned pointer + '-Wno-cast-function-type', # Casting FARPROC to RegDeleteKeyExPtr + ]) diff --git a/dev-build/gn/gn-0.2122.ebuild b/dev-build/gn/gn-0.2122.ebuild new file mode 100644 index 000000000000..0e5fe0fcea6a --- /dev/null +++ b/dev-build/gn/gn-0.2122.ebuild @@ -0,0 +1,70 @@ +# Copyright 2018-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{13..14} ) + +inherit edo ninja-utils python-any-r1 toolchain-funcs + +DESCRIPTION="GN is a meta-build system that generates build files for Ninja" +HOMEPAGE="https://gn.googlesource.com/" +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gn.googlesource.com/gn" +else + # The version number is derived from `git describe HEAD --abbrev=12` + SRC_URI="https://deps.gentoo.zip/dev-build/gn/${P}.tar.xz" + KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv x86" +fi + +LICENSE="BSD" +SLOT="0" + +BDEPEND=" + ${PYTHON_DEPS} + app-alternatives/ninja +" + +PATCHES=( + "${FILESDIR}"/gn-gen-r5.patch +) + +pkg_setup() { + : +} + +src_configure() { + python_setup + tc-export AR CC CXX + if use elibc_musl ; then # bug 906362 + export CC="${CC} -D_LARGEFILE64_SOURCE" + export CXX="${CXX} -D_LARGEFILE64_SOURCE" + fi + unset CFLAGS + set -- ${EPYTHON} build/gen.py --no-last-commit-position --no-strip --no-static-libstdc++ --allow-warnings + edo "$@" + cat >out/last_commit_position.h <<-EOF || die + #ifndef OUT_LAST_COMMIT_POSITION_H_ + #define OUT_LAST_COMMIT_POSITION_H_ + #define LAST_COMMIT_POSITION_NUM ${PV##0.} + #define LAST_COMMIT_POSITION "${PV}" + #endif // OUT_LAST_COMMIT_POSITION_H_ + EOF +} + +src_compile() { + eninja -C out gn +} + +src_test() { + eninja -C out gn_unittests + out/gn_unittests || die +} + +src_install() { + dobin out/gn + einstalldocs + + insinto /usr/share/vim/vimfiles + doins -r misc/vim/{autoload,ftdetect,ftplugin,syntax} +} diff --git a/dev-build/gn/gn-0.2217.ebuild b/dev-build/gn/gn-0.2217.ebuild new file mode 100644 index 000000000000..3335b696f0a1 --- /dev/null +++ b/dev-build/gn/gn-0.2217.ebuild @@ -0,0 +1,66 @@ +# Copyright 2018-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{13..14} ) + +inherit edo ninja-utils python-any-r1 toolchain-funcs + +DESCRIPTION="GN is a meta-build system that generates build files for Ninja" +HOMEPAGE="https://gn.googlesource.com/" +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gn.googlesource.com/gn" +else + # The version number is derived from `git describe HEAD --abbrev=12` + SRC_URI="https://deps.gentoo.zip/dev-build/gn/${P}.tar.xz" + KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86" +fi + +LICENSE="BSD" +SLOT="0" + +BDEPEND=" + ${PYTHON_DEPS} + app-alternatives/ninja +" + +PATCHES=( + "${FILESDIR}"/gn-gen-r7.patch +) + +pkg_setup() { + : +} + +src_configure() { + python_setup + tc-export AR CC CXX + unset CFLAGS + set -- ${EPYTHON} build/gen.py --no-last-commit-position --no-strip --no-static-libstdc++ --allow-warnings + edo "$@" + cat >out/last_commit_position.h <<-EOF || die + #ifndef OUT_LAST_COMMIT_POSITION_H_ + #define OUT_LAST_COMMIT_POSITION_H_ + #define LAST_COMMIT_POSITION_NUM ${PV##0.} + #define LAST_COMMIT_POSITION "${PV}" + #endif // OUT_LAST_COMMIT_POSITION_H_ + EOF +} + +src_compile() { + eninja -C out gn +} + +src_test() { + eninja -C out gn_unittests + out/gn_unittests || die +} + +src_install() { + dobin out/gn + einstalldocs + + insinto /usr/share/vim/vimfiles + doins -r misc/vim/{autoload,ftdetect,ftplugin,syntax} +} diff --git a/dev-build/gn/gn-0.2227.ebuild b/dev-build/gn/gn-0.2227.ebuild new file mode 100644 index 000000000000..2dbfac8034dd --- /dev/null +++ b/dev-build/gn/gn-0.2227.ebuild @@ -0,0 +1,66 @@ +# Copyright 2018-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{13..14} ) + +inherit edo ninja-utils python-any-r1 toolchain-funcs + +DESCRIPTION="GN is a meta-build system that generates build files for Ninja" +HOMEPAGE="https://gn.googlesource.com/" +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gn.googlesource.com/gn" +else + # The version number is derived from `git describe HEAD --abbrev=12` + SRC_URI="https://deps.gentoo.zip/dev-build/gn/${P}.tar.xz" + KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86" +fi + +LICENSE="BSD" +SLOT="0" + +BDEPEND=" + ${PYTHON_DEPS} + app-alternatives/ninja +" + +PATCHES=( + "${FILESDIR}"/gn-gen-r7.patch +) + +pkg_setup() { + : +} + +src_configure() { + python_setup + tc-export AR CC CXX + unset CFLAGS + set -- ${EPYTHON} build/gen.py --no-last-commit-position --no-strip --no-static-libstdc++ --allow-warnings + edo "$@" + cat >out/last_commit_position.h <<-EOF || die + #ifndef OUT_LAST_COMMIT_POSITION_H_ + #define OUT_LAST_COMMIT_POSITION_H_ + #define LAST_COMMIT_POSITION_NUM ${PV##0.} + #define LAST_COMMIT_POSITION "${PV}" + #endif // OUT_LAST_COMMIT_POSITION_H_ + EOF +} + +src_compile() { + eninja -C out gn +} + +src_test() { + eninja -C out gn_unittests + out/gn_unittests || die +} + +src_install() { + dobin out/gn + einstalldocs + + insinto /usr/share/vim/vimfiles + doins -r misc/vim/{autoload,ftdetect,ftplugin,syntax} +} diff --git a/dev-build/gn/gn-0.2235.ebuild b/dev-build/gn/gn-0.2235.ebuild new file mode 100644 index 000000000000..efe0b1eaddf1 --- /dev/null +++ b/dev-build/gn/gn-0.2235.ebuild @@ -0,0 +1,66 @@ +# Copyright 2018-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{13..14} ) + +inherit edo ninja-utils python-any-r1 toolchain-funcs + +DESCRIPTION="GN is a meta-build system that generates build files for Ninja" +HOMEPAGE="https://gn.googlesource.com/" +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gn.googlesource.com/gn" +else + # The version number is derived from `git describe HEAD --abbrev=12` + SRC_URI="https://deps.gentoo.zip/dev-build/gn/${P}.tar.xz" + KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86" +fi + +LICENSE="BSD" +SLOT="0" + +BDEPEND=" + ${PYTHON_DEPS} + app-alternatives/ninja +" + +PATCHES=( + "${FILESDIR}"/gn-gen-r8.patch +) + +pkg_setup() { + : +} + +src_configure() { + python_setup + tc-export AR CC CXX + unset CFLAGS + set -- ${EPYTHON} build/gen.py --no-last-commit-position --no-strip --no-static-libstdc++ --allow-warnings + edo "$@" + cat >out/last_commit_position.h <<-EOF || die + #ifndef OUT_LAST_COMMIT_POSITION_H_ + #define OUT_LAST_COMMIT_POSITION_H_ + #define LAST_COMMIT_POSITION_NUM ${PV##0.} + #define LAST_COMMIT_POSITION "${PV}" + #endif // OUT_LAST_COMMIT_POSITION_H_ + EOF +} + +src_compile() { + eninja -C out gn +} + +src_test() { + eninja -C out gn_unittests + out/gn_unittests || die +} + +src_install() { + dobin out/gn + einstalldocs + + insinto /usr/share/vim/vimfiles + doins -r misc/vim/{autoload,ftdetect,ftplugin,syntax} +} diff --git a/dev-build/gn/gn-0.2289.ebuild b/dev-build/gn/gn-0.2289.ebuild new file mode 100644 index 000000000000..f8b9686bd276 --- /dev/null +++ b/dev-build/gn/gn-0.2289.ebuild @@ -0,0 +1,66 @@ +# Copyright 2018-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{13..14} ) + +inherit edo ninja-utils python-any-r1 toolchain-funcs + +DESCRIPTION="GN is a meta-build system that generates build files for Ninja" +HOMEPAGE="https://gn.googlesource.com/" +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gn.googlesource.com/gn" +else + # The version number is derived from `git describe HEAD --abbrev=12` + SRC_URI="https://deps.gentoo.zip/dev-build/gn/${P}.tar.xz" + KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86" +fi + +LICENSE="BSD" +SLOT="0" + +BDEPEND=" + ${PYTHON_DEPS} + app-alternatives/ninja +" + +PATCHES=( + "${FILESDIR}"/gn-gen-r8.patch +) + +pkg_setup() { + : +} + +src_configure() { + python_setup + tc-export AR CC CXX + unset CFLAGS + set -- ${EPYTHON} build/gen.py --no-last-commit-position --no-strip --no-static-libstdc++ --allow-warnings + edo "$@" + cat >out/last_commit_position.h <<-EOF || die + #ifndef OUT_LAST_COMMIT_POSITION_H_ + #define OUT_LAST_COMMIT_POSITION_H_ + #define LAST_COMMIT_POSITION_NUM ${PV##0.} + #define LAST_COMMIT_POSITION "${PV}" + #endif // OUT_LAST_COMMIT_POSITION_H_ + EOF +} + +src_compile() { + eninja -C out gn +} + +src_test() { + eninja -C out gn_unittests + out/gn_unittests || die +} + +src_install() { + dobin out/gn + einstalldocs + + insinto /usr/share/vim/vimfiles + doins -r misc/vim/{autoload,ftdetect,ftplugin,syntax} +} diff --git a/dev-build/gn/gn-0.2318.ebuild b/dev-build/gn/gn-0.2318.ebuild new file mode 100644 index 000000000000..58deb243f5af --- /dev/null +++ b/dev-build/gn/gn-0.2318.ebuild @@ -0,0 +1,66 @@ +# Copyright 2018-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{13..14} ) + +inherit edo ninja-utils python-any-r1 toolchain-funcs + +DESCRIPTION="GN is a meta-build system that generates build files for Ninja" +HOMEPAGE="https://gn.googlesource.com/" +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gn.googlesource.com/gn" +else + # The version number is derived from `git describe HEAD --abbrev=12` + SRC_URI="https://deps.gentoo.zip/dev-build/gn/${P}.tar.xz" + KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86" +fi + +LICENSE="BSD" +SLOT="0" + +BDEPEND=" + ${PYTHON_DEPS} + app-alternatives/ninja +" + +PATCHES=( + "${FILESDIR}"/gn-gen-r8.patch +) + +pkg_setup() { + : +} + +src_configure() { + python_setup + tc-export AR CC CXX + unset CFLAGS + set -- ${EPYTHON} build/gen.py --no-last-commit-position --no-strip --no-static-libstdc++ --allow-warnings + edo "$@" + cat >out/last_commit_position.h <<-EOF || die + #ifndef OUT_LAST_COMMIT_POSITION_H_ + #define OUT_LAST_COMMIT_POSITION_H_ + #define LAST_COMMIT_POSITION_NUM ${PV##0.} + #define LAST_COMMIT_POSITION "${PV}" + #endif // OUT_LAST_COMMIT_POSITION_H_ + EOF +} + +src_compile() { + eninja -C out gn +} + +src_test() { + eninja -C out gn_unittests + out/gn_unittests || die +} + +src_install() { + dobin out/gn + einstalldocs + + insinto /usr/share/vim/vimfiles + doins -r misc/vim/{autoload,ftdetect,ftplugin,syntax} +} diff --git a/dev-build/gn/gn-0.2354.ebuild b/dev-build/gn/gn-0.2354.ebuild new file mode 100644 index 000000000000..58deb243f5af --- /dev/null +++ b/dev-build/gn/gn-0.2354.ebuild @@ -0,0 +1,66 @@ +# Copyright 2018-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{13..14} ) + +inherit edo ninja-utils python-any-r1 toolchain-funcs + +DESCRIPTION="GN is a meta-build system that generates build files for Ninja" +HOMEPAGE="https://gn.googlesource.com/" +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gn.googlesource.com/gn" +else + # The version number is derived from `git describe HEAD --abbrev=12` + SRC_URI="https://deps.gentoo.zip/dev-build/gn/${P}.tar.xz" + KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv ~x86" +fi + +LICENSE="BSD" +SLOT="0" + +BDEPEND=" + ${PYTHON_DEPS} + app-alternatives/ninja +" + +PATCHES=( + "${FILESDIR}"/gn-gen-r8.patch +) + +pkg_setup() { + : +} + +src_configure() { + python_setup + tc-export AR CC CXX + unset CFLAGS + set -- ${EPYTHON} build/gen.py --no-last-commit-position --no-strip --no-static-libstdc++ --allow-warnings + edo "$@" + cat >out/last_commit_position.h <<-EOF || die + #ifndef OUT_LAST_COMMIT_POSITION_H_ + #define OUT_LAST_COMMIT_POSITION_H_ + #define LAST_COMMIT_POSITION_NUM ${PV##0.} + #define LAST_COMMIT_POSITION "${PV}" + #endif // OUT_LAST_COMMIT_POSITION_H_ + EOF +} + +src_compile() { + eninja -C out gn +} + +src_test() { + eninja -C out gn_unittests + out/gn_unittests || die +} + +src_install() { + dobin out/gn + einstalldocs + + insinto /usr/share/vim/vimfiles + doins -r misc/vim/{autoload,ftdetect,ftplugin,syntax} +} diff --git a/dev-build/gn/gn-0.2374.ebuild b/dev-build/gn/gn-0.2374.ebuild new file mode 100644 index 000000000000..ac6e6d2e3c1d --- /dev/null +++ b/dev-build/gn/gn-0.2374.ebuild @@ -0,0 +1,67 @@ +# Copyright 2018-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{13..14} ) + +inherit edo ninja-utils python-any-r1 toolchain-funcs + +DESCRIPTION="GN is a meta-build system that generates build files for Ninja" +HOMEPAGE="https://gn.googlesource.com/" +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gn.googlesource.com/gn" +else + # The version number is derived from `git describe HEAD --abbrev=12` + SRC_URI="https://deps.gentoo.zip/dev-build/gn/${P}.tar.xz" + KEYWORDS="amd64 arm64 ~loong ~ppc64 ~riscv x86" +fi + +LICENSE="BSD" +SLOT="0" + +BDEPEND=" + ${PYTHON_DEPS} + app-alternatives/ninja +" + +PATCHES=( + "${FILESDIR}"/gn-gen-r8.patch + "${FILESDIR}"/${P}-test-iwyu.patch +) + +pkg_setup() { + : +} + +src_configure() { + python_setup + tc-export AR CC CXX + unset CFLAGS + set -- ${EPYTHON} build/gen.py --no-last-commit-position --no-strip --no-static-libstdc++ --allow-warnings + edo "$@" + cat >out/last_commit_position.h <<-EOF || die + #ifndef OUT_LAST_COMMIT_POSITION_H_ + #define OUT_LAST_COMMIT_POSITION_H_ + #define LAST_COMMIT_POSITION_NUM ${PV##0.} + #define LAST_COMMIT_POSITION "${PV}" + #endif // OUT_LAST_COMMIT_POSITION_H_ + EOF +} + +src_compile() { + eninja -C out gn +} + +src_test() { + eninja -C out gn_unittests + out/gn_unittests || die +} + +src_install() { + dobin out/gn + einstalldocs + + insinto /usr/share/vim/vimfiles + doins -r misc/vim/{autoload,ftdetect,ftplugin,syntax} +} diff --git a/dev-build/gn/gn-9999.ebuild b/dev-build/gn/gn-9999.ebuild new file mode 100644 index 000000000000..650a289f1448 --- /dev/null +++ b/dev-build/gn/gn-9999.ebuild @@ -0,0 +1,66 @@ +# Copyright 2018-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{13..14} ) + +inherit edo ninja-utils python-any-r1 toolchain-funcs + +DESCRIPTION="GN is a meta-build system that generates build files for Ninja" +HOMEPAGE="https://gn.googlesource.com/" +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gn.googlesource.com/gn" +else + # The version number is derived from `git describe HEAD --abbrev=12` + SRC_URI="https://deps.gentoo.zip/dev-build/gn/${P}.tar.xz" + KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86" +fi + +LICENSE="BSD" +SLOT="0" + +BDEPEND=" + ${PYTHON_DEPS} + app-alternatives/ninja +" + +PATCHES=( + "${FILESDIR}"/gn-gen-r8.patch +) + +pkg_setup() { + : +} + +src_configure() { + python_setup + tc-export AR CC CXX + unset CFLAGS + set -- ${EPYTHON} build/gen.py --no-last-commit-position --no-strip --no-static-libstdc++ --allow-warnings + edo "$@" + cat >out/last_commit_position.h <<-EOF || die + #ifndef OUT_LAST_COMMIT_POSITION_H_ + #define OUT_LAST_COMMIT_POSITION_H_ + #define LAST_COMMIT_POSITION_NUM ${PV##0.} + #define LAST_COMMIT_POSITION "${PV}" + #endif // OUT_LAST_COMMIT_POSITION_H_ + EOF +} + +src_compile() { + eninja -C out gn +} + +src_test() { + eninja -C out gn_unittests + out/gn_unittests || die +} + +src_install() { + dobin out/gn + einstalldocs + + insinto /usr/share/vim/vimfiles + doins -r misc/vim/{autoload,ftdetect,ftplugin,syntax} +} diff --git a/dev-build/gn/metadata.xml b/dev-build/gn/metadata.xml new file mode 100644 index 000000000000..d981d800e597 --- /dev/null +++ b/dev-build/gn/metadata.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>chromium@gentoo.org</email> + </maintainer> +</pkgmetadata> diff --git a/dev-build/gtk-doc-am/Manifest b/dev-build/gtk-doc-am/Manifest new file mode 100644 index 000000000000..ca58663a6510 --- /dev/null +++ b/dev-build/gtk-doc-am/Manifest @@ -0,0 +1 @@ +DIST gtk-doc-1.34.0.tar.xz 494116 BLAKE2B cb8550debed9f32b967de9d4ebdde8dbe83551eb8527221d2d788355431f34e62a4beedda3e7f5722516ae8e23794a56b97a4f761ede0f7f2c0ef288624b5f7a SHA512 d962fe31949b5f7c70122c7ebbd98f4d21725697804bf5dd75fd7a6662753a91c9350fd1e8bed22a58a957b173f35e200fcbb4c7c2ebc45ccbc0db2e916b27ea diff --git a/dev-build/gtk-doc-am/gtk-doc-am-1.34.0.ebuild b/dev-build/gtk-doc-am/gtk-doc-am-1.34.0.ebuild new file mode 100644 index 000000000000..bab7d9e36e5c --- /dev/null +++ b/dev-build/gtk-doc-am/gtk-doc-am-1.34.0.ebuild @@ -0,0 +1,33 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +GNOME_ORG_MODULE="gtk-doc" + +inherit gnome.org + +DESCRIPTION="Automake files from gtk-doc" +HOMEPAGE="https://gitlab.gnome.org/GNOME/gtk-doc" + +LICENSE="GPL-2+ FDL-1.1" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + +RDEPEND="!<dev-util/gtk-doc-${PV}" +PDEPEND="virtual/pkgconfig" + +# This ebuild doesn't even compile anything, causing tests to fail when updating (bug #316071) +RESTRICT="test" + +src_configure() { + : +} + +src_compile() { + : +} + +src_install() { + insinto /usr/share/aclocal + doins buildsystems/autotools/gtk-doc.m4 +} diff --git a/dev-build/gtk-doc-am/metadata.xml b/dev-build/gtk-doc-am/metadata.xml new file mode 100644 index 000000000000..ec7485f7ddef --- /dev/null +++ b/dev-build/gtk-doc-am/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>gnome@gentoo.org</email> + <name>Gentoo GNOME Desktop</name> + </maintainer> + <stabilize-allarches/> + <upstream> + <remote-id type="gnome-gitlab">GNOME/gtk-doc</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/guildmaster/Manifest b/dev-build/guildmaster/Manifest new file mode 100644 index 000000000000..433145277a80 --- /dev/null +++ b/dev-build/guildmaster/Manifest @@ -0,0 +1 @@ +DIST guildmaster-463382ba5b47625a9355832cd792a164c54237f9.cb.tar.gz 4774 BLAKE2B 7291f09ce380d0e1a6e4ea8a3370310ac8a7b89f373082eb7bd4b705fba5ffd80d6edb5689fd0b5ca945c58119644b2bec3bd3bcb63e83abb964b9d66dbbf1f3 SHA512 799b2fb0645a0dc0e541cf73b60f779db74308c60922298af43122d3fb3acef0e4021d62c07fbd7c70f99aa8ae033f9fcd87bc71f8be3bba5441953dec367d7d diff --git a/dev-build/guildmaster/files/sandbox.conf b/dev-build/guildmaster/files/sandbox.conf new file mode 100644 index 000000000000..d95453bbcb25 --- /dev/null +++ b/dev-build/guildmaster/files/sandbox.conf @@ -0,0 +1 @@ +SANDBOX_WRITE="/dev/guild" diff --git a/dev-build/guildmaster/guildmaster-0_pre20250712.ebuild b/dev-build/guildmaster/guildmaster-0_pre20250712.ebuild new file mode 100644 index 000000000000..1fee1ce2c30d --- /dev/null +++ b/dev-build/guildmaster/guildmaster-0_pre20250712.ebuild @@ -0,0 +1,70 @@ +# Copyright 2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-info meson systemd udev + +DESCRIPTION="FIFO-like jobserver node via CUSE" +HOMEPAGE="https://codeberg.org/amonakov/guildmaster" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://codeberg.org/amonakov/guildmaster.git" + inherit git-r3 +else + GUILDMASTER_COMMIT="463382ba5b47625a9355832cd792a164c54237f9" + SRC_URI="https://codeberg.org/amonakov/guildmaster/archive/${GUILDMASTER_COMMIT}.tar.gz -> ${PN}-${GUILDMASTER_COMMIT}.cb.tar.gz" + S="${WORKDIR}"/${PN} + + KEYWORDS="~amd64" +fi + +LICENSE="ISC" +SLOT="0" + +DEPEND="sys-fs/fuse:3=" +RDEPEND=" + ${DEPEND} +" + +pkg_pretend() { + local CONFIG_CHECK="~CUSE" + check_extra_config +} + +src_configure() { + local emesonargs=( + -Dopenrc=true + -Dsystemd=true + -Dsystemdunitdir="$(systemd_get_systemunitdir)" + -Dudev=true + -Dudevrulesdir="$(get_udevdir)"/rules.d + ) + + meson_src_configure +} + +src_install() { + meson_src_install + + insinto /etc/sandbox.d + newins "${FILESDIR}"/sandbox.conf 90guildmaster +} + +pkg_postinst() { + udev_reload + + if ! grep -q -s -R -- '--jobserver-auth=fifo:/dev/guild' "${EROOT}"/etc/portage/make.conf ; then + elog "In order to use a system-wide guildmaster instance, enable the service:" + elog + elog " systemctl enable --now guildmaster" + elog + elog "Then add to your make.conf:" + elog + elog ' MAKEFLAGS="--jobserver-auth=fifo:/dev/guild"' + elog ' NINJAOPTS=""' + elog + elog "You can use -l in NINJAOPTS but *do not* use -j, as it disables" + elog "jobserver support." + fi +} diff --git a/dev-build/guildmaster/guildmaster-9999.ebuild b/dev-build/guildmaster/guildmaster-9999.ebuild new file mode 100644 index 000000000000..1fee1ce2c30d --- /dev/null +++ b/dev-build/guildmaster/guildmaster-9999.ebuild @@ -0,0 +1,70 @@ +# Copyright 2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-info meson systemd udev + +DESCRIPTION="FIFO-like jobserver node via CUSE" +HOMEPAGE="https://codeberg.org/amonakov/guildmaster" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://codeberg.org/amonakov/guildmaster.git" + inherit git-r3 +else + GUILDMASTER_COMMIT="463382ba5b47625a9355832cd792a164c54237f9" + SRC_URI="https://codeberg.org/amonakov/guildmaster/archive/${GUILDMASTER_COMMIT}.tar.gz -> ${PN}-${GUILDMASTER_COMMIT}.cb.tar.gz" + S="${WORKDIR}"/${PN} + + KEYWORDS="~amd64" +fi + +LICENSE="ISC" +SLOT="0" + +DEPEND="sys-fs/fuse:3=" +RDEPEND=" + ${DEPEND} +" + +pkg_pretend() { + local CONFIG_CHECK="~CUSE" + check_extra_config +} + +src_configure() { + local emesonargs=( + -Dopenrc=true + -Dsystemd=true + -Dsystemdunitdir="$(systemd_get_systemunitdir)" + -Dudev=true + -Dudevrulesdir="$(get_udevdir)"/rules.d + ) + + meson_src_configure +} + +src_install() { + meson_src_install + + insinto /etc/sandbox.d + newins "${FILESDIR}"/sandbox.conf 90guildmaster +} + +pkg_postinst() { + udev_reload + + if ! grep -q -s -R -- '--jobserver-auth=fifo:/dev/guild' "${EROOT}"/etc/portage/make.conf ; then + elog "In order to use a system-wide guildmaster instance, enable the service:" + elog + elog " systemctl enable --now guildmaster" + elog + elog "Then add to your make.conf:" + elog + elog ' MAKEFLAGS="--jobserver-auth=fifo:/dev/guild"' + elog ' NINJAOPTS=""' + elog + elog "You can use -l in NINJAOPTS but *do not* use -j, as it disables" + elog "jobserver support." + fi +} diff --git a/dev-build/guildmaster/metadata.xml b/dev-build/guildmaster/metadata.xml new file mode 100644 index 000000000000..d2f7fed06523 --- /dev/null +++ b/dev-build/guildmaster/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>sam@gentoo.org</email> + <name>Sam James</name> + </maintainer> + <upstream> + <remote-id type="codeberg">amonakov/guildmaster</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/gyp/Manifest b/dev-build/gyp/Manifest new file mode 100644 index 000000000000..66686b3ce776 --- /dev/null +++ b/dev-build/gyp/Manifest @@ -0,0 +1 @@ +DIST gyp-20200512145953.tar.xz 443884 BLAKE2B 74ff269e3e8aa51e6b34f795892f6e8922d098a81b4d855619520d3d366e79b611931cddf4ee2ec60a7e040af11ac8eba7582ad10e24de627df5a4aa4eba6474 SHA512 35bf2af22f2e632b3d6e546e5017df8effd0c7ad80beed9b95ed1e2f294d70215889bc6a0147506461254e951d70189dc48824af10a6620e996945d2cf5586ee diff --git a/dev-build/gyp/gyp-20200512145953-r1.ebuild b/dev-build/gyp/gyp-20200512145953-r1.ebuild new file mode 100644 index 000000000000..0c2fe718f717 --- /dev/null +++ b/dev-build/gyp/gyp-20200512145953-r1.ebuild @@ -0,0 +1,67 @@ +# Copyright 2017-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +inherit edo python-single-r1 + +DESCRIPTION="GYP (Generate Your Projects) meta-build system" +HOMEPAGE="https://gyp.gsrc.io/ https://chromium.googlesource.com/external/gyp" + +if [[ ${PV} == 99999999999999 ]]; then + EGIT_REPO_URI="https://chromium.googlesource.com/external/gyp" + inherit git-r3 +else + SRC_URI="https://home.apache.org/~arfrever/distfiles/${P}.tar.xz" + KEYWORDS="amd64 arm64 ~loong ppc64 x86" +fi + +LICENSE="BSD" +SLOT="0" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +# Needs review after updating to a newer commit +RESTRICT="test" + +RDEPEND="${PYTHON_DEPS}" +BDEPEND=" + $(python_gen_cond_dep ' + dev-python/setuptools[${PYTHON_USEDEP}] + ') +" + +src_prepare() { + default + + sed -e "s/' Linux %s' % ' '\.join(platform.linux_distribution())/' Linux'/" -i gyptest.py || die + sed \ + -e "s/import collections/import collections.abc/" \ + -e "s/collections\.MutableSet/collections.abc.MutableSet/" \ + -i pylib/gyp/common.py || die + sed -e "s/the_dict_key is 'variables'/the_dict_key == 'variables'/" -i pylib/gyp/input.py || die + sed \ + -e "s/import collections/import collections.abc/" \ + -e "s/collections\.Iterable/collections.abc.Iterable/" \ + -i pylib/gyp/msvs_emulation.py || die + sed \ + -e "s/os\.environ\['PRESERVE'\] is not ''/os.environ['PRESERVE'] != ''/" \ + -e "s/conditions is ()/conditions == ()/" \ + -i test/lib/TestCmd.py || die +} + +src_compile() { + edo ${EPYTHON} setup.py build +} + +src_test() { + # More errors with DeprecationWarnings enabled. + local -x PYTHONWARNINGS="" + + edo "${PYTHON}" gyptest.py --all --verbose +} + +src_install() { + edo ${EPYTHON} setup.py install --prefix="${EPREFIX}/usr" --root="${D}" + python_optimize + einstalldocs +} diff --git a/dev-build/gyp/gyp-99999999999999.ebuild b/dev-build/gyp/gyp-99999999999999.ebuild new file mode 100644 index 000000000000..a343c5bdc06a --- /dev/null +++ b/dev-build/gyp/gyp-99999999999999.ebuild @@ -0,0 +1,67 @@ +# Copyright 2017-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +inherit edo python-single-r1 + +DESCRIPTION="GYP (Generate Your Projects) meta-build system" +HOMEPAGE="https://gyp.gsrc.io/ https://chromium.googlesource.com/external/gyp" + +if [[ ${PV} == 99999999999999 ]]; then + EGIT_REPO_URI="https://chromium.googlesource.com/external/gyp" + inherit git-r3 +else + SRC_URI="https://home.apache.org/~arfrever/distfiles/${P}.tar.xz" + KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~x86" +fi + +LICENSE="BSD" +SLOT="0" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +# Needs review after updating to a newer commit +RESTRICT="test" + +RDEPEND="${PYTHON_DEPS}" +BDEPEND=" + $(python_gen_cond_dep ' + dev-python/setuptools[${PYTHON_USEDEP}] + ') +" + +src_prepare() { + default + + sed -e "s/' Linux %s' % ' '\.join(platform.linux_distribution())/' Linux'/" -i gyptest.py || die + sed \ + -e "s/import collections/import collections.abc/" \ + -e "s/collections\.MutableSet/collections.abc.MutableSet/" \ + -i pylib/gyp/common.py || die + sed -e "s/the_dict_key is 'variables'/the_dict_key == 'variables'/" -i pylib/gyp/input.py || die + sed \ + -e "s/import collections/import collections.abc/" \ + -e "s/collections\.Iterable/collections.abc.Iterable/" \ + -i pylib/gyp/msvs_emulation.py || die + sed \ + -e "s/os\.environ\['PRESERVE'\] is not ''/os.environ['PRESERVE'] != ''/" \ + -e "s/conditions is ()/conditions == ()/" \ + -i test/lib/TestCmd.py || die +} + +src_compile() { + edo ${EPYTHON} setup.py build +} + +src_test() { + # More errors with DeprecationWarnings enabled. + local -x PYTHONWARNINGS="" + + edo "${PYTHON}" gyptest.py --all --verbose +} + +src_install() { + edo ${EPYTHON} setup.py install --prefix="${EPREFIX}/usr" --root="${D}" + python_optimize + einstalldocs +} diff --git a/dev-build/gyp/metadata.xml b/dev-build/gyp/metadata.xml new file mode 100644 index 000000000000..a94766977fa6 --- /dev/null +++ b/dev-build/gyp/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>cjk@gentoo.org</email> + <name>Cjk</name> + </maintainer> +</pkgmetadata> diff --git a/dev-build/icmake/Manifest b/dev-build/icmake/Manifest new file mode 100644 index 000000000000..bf7b36e3c2ca --- /dev/null +++ b/dev-build/icmake/Manifest @@ -0,0 +1 @@ +DIST icmake-9.03.01.tar.gz 393488 BLAKE2B 43bac6944aa816e077a55264064abcb55ff3525842ab923712997248ef198a934fa434352fef3484a8ed0f887a89d9151b8e56ef7c601435d26d1644438b2b55 SHA512 2e6228c3bffa7fa145fd3743b1220d96b5730350718b91be96600cb24317e17aa5138282fe2f603d00dadd57d7a832ecff21a570eab0c21426f94d3208a61184 diff --git a/dev-build/icmake/files/icmake-9.00.00-ar.patch b/dev-build/icmake/files/icmake-9.00.00-ar.patch new file mode 100644 index 000000000000..0eff669f8e39 --- /dev/null +++ b/dev-build/icmake/files/icmake-9.00.00-ar.patch @@ -0,0 +1,32 @@ +--- icmake/bootstrap/flags ++++ icmake/bootstrap/flags +@@ -14,3 +14,7 @@ + if [ "${CC}" == "" ] ; then + CC="gcc" + fi ++ ++if [ "${AR}" == "" ] ; then ++ CC="ar" ++fi +--- icmake/bootstrap/functions ++++ icmake/bootstrap/functions +@@ -35,7 +35,7 @@ + + echo -n . + +- try ar crs ../tmp/lib${program}.a */*.o ++ try ${AR} crs ../tmp/lib${program}.a */*.o + + echo -n . + +--- icmake/rss/icm_bootstrap ++++ icmake/rss/icm_bootstrap +@@ -8,7 +8,7 @@ + echo -n . + try ${CC} -c ${CFLAGS} *.c + echo -n . +-try ar rs ../tmp/libicrss.a *.o ++try ${AR} rs ../tmp/libicrss.a *.o + echo -n . + rm *.o + echo . diff --git a/dev-build/icmake/files/icmake-9.02.02-verbose-build.patch b/dev-build/icmake/files/icmake-9.02.02-verbose-build.patch new file mode 100644 index 000000000000..dde1af395152 --- /dev/null +++ b/dev-build/icmake/files/icmake-9.02.02-verbose-build.patch @@ -0,0 +1,11 @@ +--- icmake/bootstrap/functions ++++ icmake/bootstrap/functions +@@ -2,7 +2,7 @@ + + try() + { +- # echo $* ++ echo $* + $* || exit 1 + } + diff --git a/dev-build/icmake/files/icmake-9.03.01-ar.patch b/dev-build/icmake/files/icmake-9.03.01-ar.patch new file mode 100644 index 000000000000..944cca939746 --- /dev/null +++ b/dev-build/icmake/files/icmake-9.03.01-ar.patch @@ -0,0 +1,17 @@ +https://gitlab.com/fbb-git/icmake/-/merge_requests/12 + +diff --git a/scripts/ib/staticlibrary b/scripts/ib/staticlibrary +index f051569..e33084f 100644 +--- a/scripts/ib/staticlibrary ++++ b/scripts/ib/staticlibrary +@@ -4,8 +4,8 @@ void static_library() + + if (g_compiled) + { +- system("ar cr ../lib" LIBRARY + ".a *" OBJ_EXT); +- system("ranlib ../lib" LIBRARY + ".a"); ++ system("${AR:-ar} cr ../lib" LIBRARY + ".a *" OBJ_EXT); ++ system("${RANLIB:-ar} ../lib" LIBRARY + ".a"); + system("rm *" OBJ_EXT); + } + } diff --git a/dev-build/icmake/files/icmake-9.03.01-compressed-docs.patch b/dev-build/icmake/files/icmake-9.03.01-compressed-docs.patch new file mode 100644 index 000000000000..a8bb04e3102e --- /dev/null +++ b/dev-build/icmake/files/icmake-9.03.01-compressed-docs.patch @@ -0,0 +1,32 @@ +diff --git a/icm_bootstrap b/icm_bootstrap +index 9a80252..78ece4f 100755 +--- a/icm_bootstrap ++++ b/icm_bootstrap +@@ -45,11 +45,11 @@ cd doc + + echo man-pages to tmp/${MANDIR}/man1 and .../man7 + for x in *.1 ; do +- gzip -9cn $x > ../tmp/${MANDIR}/man1/$x.gz || exit 1 ++ cp $x ../tmp/${MANDIR}/man1/$x || exit 1 + done + + for x in *.7 ; do +- gzip -9cn $x > ../tmp/${MANDIR}/man7/$x.gz || exit 1 ++ cp $x ../tmp/${MANDIR}/man7/$x || exit 1 + done + + echo documentation to tmp/${DOCDIR} and tmp/${DOCDOCDIR} +@@ -58,11 +58,11 @@ echo documentation to tmp/${DOCDIR} and tmp/${DOCDOCDIR} + # gzip -9cn $x > ../tmp/${DOCDOCDIR}/$x.gz || exit 1 + #done + +-gzip -9cn icmake.ps > ../tmp/${DOCDOCDIR}/icmake.ps.gz || exit 1 ++cp icmake.ps ../tmp/${DOCDOCDIR}/icmake.ps || exit 1 + + cd .. + +-gzip -9cn changelog > tmp/${DOCDIR}/changelog.gz || exit 1 ++cp changelog tmp/${DOCDIR}/changelog || exit 1 + + try cp -r examples tmp/${DOCDOCDIR} + diff --git a/dev-build/icmake/icmake-9.03.01-r1.ebuild b/dev-build/icmake/icmake-9.03.01-r1.ebuild new file mode 100644 index 000000000000..fbd0e15b0459 --- /dev/null +++ b/dev-build/icmake/icmake-9.03.01-r1.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs flag-o-matic + +DESCRIPTION="Hybrid between a make utility and a shell scripting language" +HOMEPAGE="https://fbb-git.gitlab.io/icmake/ https://gitlab.com/fbb-git/icmake" +SRC_URI="https://gitlab.com/fbb-git/${PN}/-/archive/${PV}/${P}.tar.gz" +S="${WORKDIR}/${P}/${PN}" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +PATCHES=( + "${FILESDIR}"/${PN}-9.00.00-ar.patch + "${FILESDIR}"/${PN}-9.02.02-verbose-build.patch + "${FILESDIR}"/${PN}-9.03.01-compressed-docs.patch + "${FILESDIR}"/${PN}-9.03.01-ar.patch +) + +src_prepare() { + default + + sed -e "/^#define LIBDIR/s/lib/$(get_libdir)/" \ + -e "/^#define DOCDIR/s/${PN}/${PF}/" \ + -e "/^#define DOCDOCDIR/s/${PN}-doc/${PF}/" \ + -i INSTALL.im || die + + # fix build issues (bug #589896) + append-cflags -std=gnu99 + + tc-export AR CC +} + +src_configure() { + ./icm_prepare "${EPREFIX}" || die +} + +src_compile() { + ./icm_bootstrap "${EPREFIX}" || die +} + +src_install() { + ./icm_install all "${D}" || die +} diff --git a/dev-build/icmake/metadata.xml b/dev-build/icmake/metadata.xml new file mode 100644 index 000000000000..cb2d5608ccb6 --- /dev/null +++ b/dev-build/icmake/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <!-- maintainer-needed --> + <upstream> + <remote-id type="gitlab">fbb-git/icmake</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/just/Manifest b/dev-build/just/Manifest new file mode 100644 index 000000000000..aa378691315b --- /dev/null +++ b/dev-build/just/Manifest @@ -0,0 +1,236 @@ +DIST aho-corasick-1.1.4.crate 184015 BLAKE2B 088766e505a828a221a9bca29cb1833ac3964a538cda62d12b723a263fe0e588406af0b710cf87ef67b0ccb9aa3bf69f42e0e5225ade47abe93c73fcaca69ec1 SHA512 c77e35191b00546f5e499fab154170cedd619599e7250f92db9fba0a41c833eb426f214e58b00c5c39f8757406b33492b3241cb8cb233ce384ad0683c3ee4b62 +DIST android_system_properties-0.1.5.crate 5243 BLAKE2B 86f68ec3bdabf8c6ec47881d794970f08a9eefc7417fc8a2bf4fe9faf9bdd2a2024a94adb0cbf96673409f5fbbd4d0111a1ac371339e7a90a277b6cd5003524e SHA512 b09f51339f9772c0e2e4241b36cf51573c6b96b19ffc1fbbc94b1c1d1d2fdfe8eac3134af54174a675ab05d18ef4f6bcb2c7fcc20114bbeef6e17e3692202191 +DIST ansi_term-0.12.1.crate 24838 BLAKE2B f636772c34e2d68cda7b8d3b2b86abda074585a62bd2654812ce92384244655a9197fa66e6939e19a674c0148ca605313d83de262bb18c2339a8a4eb4438a791 SHA512 b840e28b3e7700689a69a39659b1e066560078dd4a58326b91a028915819e7af883399ee53e920db68fd974c58d35bb1ddf8d427af5937d5f696f57c4376b671 +DIST anstream-1.0.0.crate 28916 BLAKE2B a9198a66bd3821349f83d7837ba7546a12a74a6f57e179e480bd6bf4a75848a45dac9a19a27c5e2cf01520c7e917d380b21ec16e4485f69bebe112383ba273f2 SHA512 36bf11821e8bc23607a54842b47950782806ebc7a56233e3c458345d79986745f6ba878e39964ed41404eb5be58f78d0bbcdceeb86d523ba40eedd15f7e1f29d +DIST anstyle-1.0.14.crate 17787 BLAKE2B ebb3b3986c06628ebfe71665216de68f123840093013fa16c030c25e22ff0731cdcd7161737635c532d45ad0307a1b7f951859a40dbe1c812b3e905550b33b90 SHA512 2e7bbaf0794d209f0f19fb8709214c1b1109c27e14d91a8adc232a9bdfe76e653b2b86e341d71f63903e034c81f6ed63ffe7f123f6d631c0f8d41b56d70037b9 +DIST anstyle-parse-1.0.0.crate 22042 BLAKE2B 418cb53754b325354a76d75cd73652d2e41408911bcfbadf91f668e7d6942d92ae3c379194f1d38bc6aa26a9ad98c92801213ffddf544fd2ce29a1180179a8c4 SHA512 4394616b0aa7a591eb9b9bb758abd2f067a3fe673b060c02857f6d2210a2276c476f32512aa59aee6c5383e3261f2654058ff619d957bee93d62540e10d81085 +DIST anstyle-query-1.1.5.crate 10264 BLAKE2B e1c1bad89ad4c09e48f9d7c417713953f7f468f10f7f61e351137be801b5986ab3d21406411b0b23c42af4a2b5881b85aa68dfc66d23cafca7dfcb88180104b7 SHA512 3b7b888df0b678bd4560981dd94a51a6af9a535cc1a869bb4577e832492bb6de718a3ac80ecf61f8857b3d0ed7b95e444e85bd00ef65a46c6a244d0b0eadd95d +DIST anstyle-wincon-3.0.11.crate 12638 BLAKE2B 01f1ce85205ed3e573daca145ae420e9f7d78867fc036133be74bbcc9b83231ecbc681b57eb98bec622bcbaaf4bb293d05d3021a29b49a0a71b8ab89b0ae9dfd SHA512 09c3215dc6cef75d6282078e68c5dbd51580b6c8db79a77932d2e74a51d29cb0ef23c31b8a73a71896a45eb5dc5f94aee209bd8f6e5df4c675dabe3cd304a96b +DIST anyhow-1.0.102.crate 48658 BLAKE2B d9c7b7c50b7319be0e67bb236e0420a67e3fd6d6f4bd53a84cafc7a5385785275151832be472c0063405e6d458b5add3907b670ba5e300e08efaae699ab77c44 SHA512 18064a92b6d577151b6f1be3df0985fdefdc5f7089ac0aa9bc92a2034c780eac5b71b8fbb260217aea122bee7c950ff00abf4b6d8f4143dff889b7164c7d6f0b +DIST arrayref-0.3.9.crate 9186 BLAKE2B 8d7443944c81bf849fbb8a4e09ee379134c173decc712c6fafe483fb1545fba1f7f735979e5e26976502284502b5c7046f0b6aad59f8731a4ac8e1a51929c979 SHA512 f97e33e7fd65a8e908c21ab918350f71f12d49783162b90c5618660217b36516c39750b292a1248125f12429e4e00af9ff20c3846be81175946b8541d96ee606 +DIST arrayvec-0.7.6.crate 31237 BLAKE2B b9d1df7e3ec47d434a2606fe9540e37e02351873b376a4e113b54461288e9ab20e02285eed5c4bc0f052ec4d6b3c804044413490ea706c31a852624b03bde7bb SHA512 b1f320746018a7f32340a833420089446ec5cefb7f299b4506eab7423d5db49f00b72d8aa8c6600f9159b9480d5eb3ce69407d93f5c9934147860c83e4d6eca8 +DIST autocfg-1.5.0.crate 18729 BLAKE2B 27580e39b366c6fca02c9db09997b6415c409f12068f1249184268bf96fd85ba659e25ec730f99e10caf452f96c486f3d7442bf09c4552b5f39519b21d6f88cc SHA512 f279856f234d39d369623576acf9546a1ca24d7fe449f36d4fb93ea75a7efaf2c4015b9616a69bbbed358c5e5882e16b045352f046aa4c049b3d13b1e8257b08 +DIST bitflags-2.11.0.crate 48906 BLAKE2B 35764719b3070c5f9b51d35297803306ce01823ef07d720e5ea5e112c072b45c4d497f6b63285b1a0fce2842b1468bc252b00564c2ece14211d2af2cd26c2faa SHA512 d6c0de6c06ed8d1249dd69de035dfe5b23d9f1a8fcdc7535756622cf660807c5e1c692dee1ac832c06be1ce41b225e3d60f36be4d1896bab7d986d18946f6c48 +DIST bitflags-2.11.1.crate 49082 BLAKE2B c9c875b54e0a12115ecd846ef0a66bc7070d38892285a4142f1b1f26b07d407fa440a2943f310046f5fbc9a2428fcc56f2e44d06360e551d4b27c9b8cf93eab0 SHA512 c91b5a8b420d8e875a0906ef9b518a392487fba5399355aa5e908132149ddea7cc4222dd271cd5072e50dd9abd6e56420f4205652ba32a57af46bf07636604b7 +DIST blake3-1.8.3.crate 207224 BLAKE2B d463a940f84b71209f248fcedf3ebfacf1a31701523b51474b5fb3395f24a5bd553a6337fc5ee120306c45eb7e21329dffa84f546932db41b228fe3093a42ebc SHA512 833a98fdc061669d06714cd126bd5f64af0b052c324bb4f87cf6411f786a532c03b7fd07f0ba56e53aa57509fb3d37a594974d6ca310fada80a35a9a7d17c5db +DIST blake3-1.8.4.crate 208734 BLAKE2B 80790573c0fcf3b2800bbe03293d13586ae6d08506be8db646d85db492407d0d4c0e3b1bb2f7db16ad8f1747dba8c2d35b2452cf7de15ca9093eb058585d765e SHA512 9f05d02b4e33f6d461f153f0db12d4df74555bdb60a54f948d20fa59d82636921607a3447eba1412429b6d4f39df770a6ab53568a40896781c83987ce62118d6 +DIST blake3-1.8.5.crate 209089 BLAKE2B df1edad491e52751c6bb4a6866f6fd9b41fae119a516ee19db7cfcda753827f8e3cb52e426f5b5fc693ad1dd2a336ed40f0028bb4ed73eb9fb74937862eb5bb0 SHA512 15dacc8243ad27aabd5faedb3bbcff7adecccac652f19d01f2899e5dc37ed7ac4a5147331e26dcfaee845a13f8c0ba9e8bf5d76ae35d54cb88493c71118f393e +DIST block-buffer-0.10.4.crate 10538 BLAKE2B d819c4f9c4be85868e8b105fb7e479d2e58d3ed85c3339bd677a3e111f85cb1ff624a54d7802ab79a6e1d9221115f66388568340480fe83eae1cb448f19f5b11 SHA512 b7d436d8e627e16e6ddc300ee8f706a6cef28ff6f09eff848eedee46f84bdcd03601303c92ab8996042e55922866a59259948177c0a4496eed723523e77f6fdb +DIST block2-0.6.2.crate 34505 BLAKE2B 15cd481767a6467f8021f9245c29c2b0fc98a74c022280881c46bbe5cf221cd9c305e884f92d90ccf31e26e5a5a4b3ebb0c88f2345361c244ef7db1d778eb8ab SHA512 865a855e84c975d9a879159e888f097ce2314972c8e01506d2a3b3b65afc9dbe042d764da903df6746925cef6281cec93478bc13df3316ca112c901db8e3fc38 +DIST bstr-1.12.1.crate 354916 BLAKE2B 07b8e047c7a115d7d722ef57a37c5ac1e7ddba080e35b4eed78c3104cd92f08af5e67609faaa7a480ae15031f54c3f5d88784e23c96e659a7f4800c42dad45c3 SHA512 63a1e62d43c4dce00f287421b1ec76accbbab7f0897c8df26227f533af325896c0c8921a873f4125381e7b89fbb69a4358a96698ec6ee61191955464ff1c84ac +DIST bumpalo-3.20.2.crate 97696 BLAKE2B 0c744cb37279ca82e4c2a60be64c63e61c8290c9ff904c4a2ffd0e23f9ba96b1d63a30cce83fc757cbd40364bbe5e410da024c04cd9481f33831cfacc2133156 SHA512 4c725a4eb436fc9b3302430f5bec699563bed4b6a86c187defba9a83b749089eb6b00a6855afa4d42ac5eb324088eada3c0713f3e8c2d1c85bea4dcca83a4a60 +DIST bytecount-0.6.9.crate 18695 BLAKE2B 8bda63c522124450ad1c4295fe29f675398a249016d3ecb78dc5cf17c4af38a4732faaab8bfeff95a51d69835d346e801a4034455020fb979131d2c5fb9f7791 SHA512 e77fa4d95ec0641f40e937ccfba4a560363284a63b79ededc00fba27080d076546bdaaa81eccf622332b924159328964dff017d017ec7d89b55427a7227975b5 +DIST camino-1.2.2.crate 41202 BLAKE2B 00b1b94d8db456bec382bc2d98d28d9378dd4270543799f64cdba674fde3d7c4aca7170cbc7c43a4b69701140f58a157ae4de5f808e6c03708afed5841dfb421 SHA512 e52415518cc476dce1e6b742b59c81a13748af77be5c15b72d104832350b447f5ddd5a1a0fa9b35b79605561cf6bddbc34810cfe71d11461034f5483f1a0a7e5 +DIST cc-1.2.58.crate 96320 BLAKE2B 55284feb8da7280c59f520505bf49a1e64b17a7239b7dce7f7042bb6656de762584cb717dfef4227638ea08f6fe976a7efd7415677eee8a605232d5baf37df6b SHA512 64dc8dbb23616d149e5a98293b6aebd72566b79a19557de9101edd38a01592cb1c2e9f7eb24893314702ba41fbddf73e4a4c91664a6f7e565af9837c52e1c79d +DIST cc-1.2.59.crate 96779 BLAKE2B 9998334144446989e686ae2a54472bf99054a15ad767fc06bd9e98038a44884ed2d8c09961ef7e30f30b94f952d9291f49465f6a8fc4c9b392e8c6aa088c970b SHA512 075cd6528067f585cca2aa9e6695c22fc5e5262ce2c91c2c0764ecaf20559f37aa0358f8cf304c1d2ed1fe2b0a7dcf121568d5f6821cde860c204cd68c19d5a0 +DIST cc-1.2.60.crate 97051 BLAKE2B 292350c3fe7dc3e023fe4f7cd07b3a5a7233996963b42391243948f834a17cf69781bab32cf46d62722c45437f50123450811dce8aa0e96ee63f35480cc15d90 SHA512 d67fd7400bd1d20f26f7a6743ac02ad09dba0b8002172b87907f4a7ae2487ee41feb2f24fe375ca91a3ac4fde1dc8b48b6703b74297c9eb42bd1e91ac8fe4e80 +DIST cc-1.2.62.crate 97212 BLAKE2B 790820b89ab25e8a99d9d29b1b23031c858160303b854694a566c1c2d1c377a683db1d6bc3f624c11807b48db30f17ca2aff5af149e2bbf8af3aab2631b5bffe SHA512 0701ef643e7e2c646c7895bd544f9ebc862ad83ca11a640a7f8b1fb5d6d9617ea45eaa8646019daff52d86d32823235fc098598554340b9bf0f91190e06f3012 +DIST cfg-if-1.0.4.crate 9360 BLAKE2B beadbfb273ee97cbb6e3740891fbace57511399ad203459b66b397587d794677a9515cde4e9ec4320c3795518bf1551d72b9a889f8ac4b225168f493288b7c19 SHA512 176e04df7ba783b7143bb84397b777f5c5a1305c08a5c3a218d4a66830620be89ed68992ba27686165bcd3fb2f34b2daf80b2a1d4b481ecc267c988e84d28e9d +DIST cfg_aliases-0.2.1.crate 6355 BLAKE2B a758d9c88527f0e6e7cfd6d4c83eda1bcb4d6e2438189fe08e8ecbcaa78d56afc5a4873f3b82bf7da96afd690b44cdf1e44466b6da0f37c358b340481017103e SHA512 74969d12d5d24002a29e08d52e30fbce014dd481a7c35ee0162e69333c5f2d7755f3b02439b31522e12444cf1ac8e65880ce33fe6778dac03757e362cbf8a72c +DIST chacha20-0.10.0.crate 38763 BLAKE2B 84d3d12379495b724b33accdbafe0209d0ddfeec74115b59228fb03e02089f1531f1396783a408b26cfb90372670c809bee8ab056cc847102cfc92ea065656aa SHA512 97e50d8e16118070ec75c086bae3695513b63c2ad3c5d43e3fb57892f21c9634977bc506c0c094aeb61bc8864518cee3eabf6b81504128ab0a876b2f6860b43a +DIST chrono-0.4.44.crate 240549 BLAKE2B 7d3d1763ded8808a7402541513d00241c444b5b0503e144b568d2c0dc185ed20111163340a3895f30dc38864206a03d129840ed9a2841760dbcd5be26511c7e6 SHA512 0b1a83885724e9180e71ee9fed146d070d88620d46b74970a67f4af04f583dddc0285e7d09574b99507786568ac7fb3f06a5dfbd25c51490c8d444c145bdee21 +DIST clap-4.6.0.crate 62930 BLAKE2B f184cfb0d40adef5d0b4ee0370208bdeb6587b9dfd1b37f71a577cfdf77101100b4c47809ceecf946a855455ab836273aa6b8bb6570d0c126a82754f16bd95ba SHA512 bc5641690f0a0ed2b660836590174641e568be3d2b92d5dc91a82581fdef0543640190fc3c8ffe765f0245a88c0f9809d4e136af156a3d480a680da28e8ae5f6 +DIST clap-4.6.1.crate 61836 BLAKE2B 0e58b564b1c7792c4380284a61e20324495906764ed7ee7e9e62eac159d5f81508a82deb26cb294c85f236f77be79ce0cbf0253ea7544790ea3a5c0941acef6e SHA512 7e1bf1cdfcf8fe1f67251073e9ebabd92b44a7013a2245dbfc3a7368132600a30662416635a329067b97a8845af3c68274ec6ada3bd72d110b0aee5a4d7c986a +DIST clap_builder-4.6.0.crate 171122 BLAKE2B 0a6ac216ceee45625500379640f9306015f749c377d14c6c9538fab7988da89b39e260bf8736d7ca055c6db32613fa7a9e73f325fc496d7521ba3453c8558348 SHA512 43b26377a8f15d29f8fdc9ada914888d87111084c5e205308d166789a27d91c2d8db6756b24d48ef8a293c92ca4c27dbf5433db21e336b2116d51377116fabd7 +DIST clap_complete-4.6.0.crate 50747 BLAKE2B 7bae833c4a90c5c27d018f600511aadde0ed6de134a17cba91592434cb086e8969be65819fed46291276df0a0e062bff109d9da5df78439ff4330fa4003d38d3 SHA512 8dd210b58224cfdb0a3926e849258a3a23cab1cebfb9a7f8557e55576d8cf4ff385bdddb5f2d9682e58847859456186ee056ad45cd5e2bba5686e689e403c994 +DIST clap_complete-4.6.2.crate 50291 BLAKE2B c607d0fd3cde57cad402489eef98d2374be0bf6179d97724fc7eeae4bb9884da9d236eeb33b606d1504831c0c813543a062e1ad9d22f7ad4fc87433936f2f95d SHA512 c031870668dad42f2dd789daee2a45017ef3adbed2dc4acdca9d004bfb1a5488eb2f4efab0ce3773102c834315d7d88deb9ae2963dab7c90d9f18089735e267a +DIST clap_complete-4.6.4.crate 50634 BLAKE2B 19fd2a57ef96cac2016c9e9e371ac41005a790829c2fbc6786adda7ed8e20b7763a3a5a7b2a88bdbaa445b0257d21c781ef964abcd39e77cfc7cf517dad44aaa SHA512 244f7c2929553c35ed28033e41adc8f22c67595e5418ea93b42cc317a0271faa476cf060f52c71a18727450a0f2ccb6ee467abe94af74acb3da5133433da0210 +DIST clap_derive-4.6.0.crate 33435 BLAKE2B 93fef598637bc3674a7682f724412d5b515c3d219fe4d7e854dbb47864be598046e84c025a5245add4e9431b305d232e6207806cd87aff72cb3552c490426aa6 SHA512 4b642e4bda3af45b21fda189094f73b295c6890f2af533e1541be0df8669d1c7d8256a88dfd47f488ea6adab65012a213521d52dd902f9f11fd3b776923da1c7 +DIST clap_derive-4.6.1.crate 33512 BLAKE2B 36d4fcbdd0eb22ed872d27da80a1c22baf718533d43cb762f109f80abc8d7e13a92fd293db40ee2ca18709e7bcb8cab0f06eaf48dde336e67df90e83f6dfbd6b SHA512 ed210527cecfe3791b9d5af7279b337890b46b61fa05fa6979c88db1693ddf0ee5a4eb0904dd93e2da76f5c870963cc79b90d87cfc3cecf166a65364c16ffd06 +DIST clap_lex-1.1.0.crate 13470 BLAKE2B 3e4895620e2922bd95ab6e3aee296457adbe70c2b3b2fca24c48e5bb700ed622401c68f494a266b91f1b82a7ee109ca90d4eee7ab6eff35e28b5fe8038398e5a SHA512 d85237e0558ebc745b08a150ba8115133b1ac1ebfbf6b2abf632863761fb70cb329639bb1c30625b9e786bb27b19438af11c123c508fb39e682f13e294ea6d9a +DIST clap_mangen-0.3.0.crate 15840 BLAKE2B 1ec60607c76bdb349670ea66bb1930e7d1d13f8dc87dba09c620170f1ad0244658f78464478a1b9eadb3ea1204d23d0b2e509dd609bccc49c416dab3f8a1ccb7 SHA512 eb3957e03ee3f8219ae2cbb94aca91cf0f44b2fb96e7e5426e935b32713873ae2e4af43520ac1b373611ca454723335c696c512592612b28b57194ab6afafd31 +DIST colorchoice-1.0.5.crate 8187 BLAKE2B d6415c5b337e2f4f5176003082e6e8c52f55a45ff959376e7a3f30e5aab1ecd3f84f9cc5e7a8a720398c1b58f99a07cf042695adb0b35178931178cc8d77d2e8 SHA512 af3a5e7e837b280cd8f0578d2ba2a04443d4c5a445577f444af9edeef6cdb47de134f77b07ceda76ea6b2c73b9c10e1d7e3e1beabfd22b85869585c35db88bd5 +DIST constant_time_eq-0.4.2.crate 25831 BLAKE2B cfa8e08e63800b1c88b96d645a965873b168682b34f726a9d3ac6fef0a253378c96e853db3ac12dd5fa474abb10827ab81f41b15a97dc035d39aada0fa945fbf SHA512 552376f3024fd6750d4daafd5f703ecfcc5bec3a2b7f8328de2b5ef2ff3ecfc57c2a4ab636eed19940eb5e118e2c0d354f45354eb9d95d17565ce3b5cb8d5655 +DIST core-foundation-sys-0.8.7.crate 37712 BLAKE2B 0e1dd99a5bbb0fe92f55181a37426f6e86445cb20e355f553b3162c88ccc075644461731a0cdcd93dcca65b6cef1de62b409afbd73ba3070a199ab8e7422dcfa SHA512 17492d5314db03abdb3b1998bf0c396ec8ed0f83bc978ae22d6026afdc86c50b58cbac073b3a0d97b92da7e98be11302faf1249d24313494bc058add4f4cb63a +DIST cpufeatures-0.2.17.crate 13466 BLAKE2B c6392b635542a6fe29958fabe7ce725354a31e24f6f144718553218247881013f56659d2efc671d47394294373db2d4ff8f45c7cb520ac22f2ee5c462858a1dc SHA512 9ae64656a21cfdd0528d87ba95f6213860bf72ccdf866019e65ed6662633e73490f92c42c80125559b3dbb7822090b5faa8ea564c562e04041232809ec2f58a2 +DIST cpufeatures-0.3.0.crate 14156 BLAKE2B 9408d9b8f314a21702bde22f272d47263ef06e8f6fac116edb2464109ae2ff0d10b9d4f54d465bb6c55bea5722326bb8ee541352e6f5e03116a449930fa8375a SHA512 a842c5e7fe435c4339ba0e12169bcf1a2c2ebf4b0d02cf200f91d88a736607a930ba840a7db6a71afc6b125649a9f14ce0977599db917ee78880ec1ed9600f88 +DIST crossbeam-deque-0.8.6.crate 22471 BLAKE2B 02b854df171b0430ca8a40349674ff251698d0c322c317055da8678da6661730c945d86737fa4947c3bd824ffe402271ee2f77fd6a505d2d46b4a41454c510c8 SHA512 9368c0c224c4b84356f1d422d8869a5ab4bfb36b0ff69244a9e7a7304ed51f034001cd9b2bc35849df874d36ed34285c66574943573522ea32bbdc5a05df6989 +DIST crossbeam-epoch-0.9.18.crate 46875 BLAKE2B 200c256cad6011a3a14c4664bea6b150fce72d561c4fffc387fa561b08c0480e8756bf51c14874c5fb19f427424547f72d2cd7dd6f56fb8b6666a85f8d52bfd1 SHA512 0a8a199b9d77f4e28e91fe0a0cbff7e0dec58cac283631fd972477fa912d2f6ddfddaed2c695e4978b01cb5440b702822af6333e7c3dfbcb9a2c2086999516b2 +DIST crossbeam-utils-0.8.21.crate 42691 BLAKE2B cd9015c41f532eb3c90101603f32d383f01e6880718b727d6d1fe46872ae276cda685e1b548cf77dd22bb1a05f0d4c4982332c2bde90e1743dbd7f51919022a7 SHA512 6f4aa7ca10c20da291c4714b56ceb1fab1c06b03b2f4e28e474e9aeb95ab6615a25462dc7819713652c3b5f6a06fa0f24ebc92c533fcf35dfcf2655857d975f8 +DIST crypto-common-0.1.7.crate 9619 BLAKE2B b9a31ed6f3f06e0709e7c5a86a146018c9ef67e366f27c1d4fe07461d97810951eec60e92ec1531e365bfb9ab1b4cfbdd86b6cefd8b06ef2aa170c38f3c9cae0 SHA512 dcf3a6fc81f2b6528696dc762427fb198faa9b5effe1ee9fbda795da08b0560cfd6c286b55f1360864e95284bd9a52edabcf39fa9bcce71ff0621dbfef538c82 +DIST ctrlc-3.5.2.crate 14194 BLAKE2B cccbde5a877a224f033bb6b6eb26347b343545c6731f99c7f1fadf0308f8a514794e340f233ae9a8edcce902ef7544571af8d4032774625da210317787495d75 SHA512 702e67489d9a77878b7da4aa7d5ffaaf169a2ff9602303d1b5a7b191f51b61b62218a2f9c11ac28784dc7a819659f87885678484866336dc7fdcfe01a0e4e4fc +DIST derive-where-1.6.1.crate 52475 BLAKE2B 2440e4da5f45e325ee89ebc9c47df6bcf59d40776b96b8bbc50bfacae0298d5ecaf636810d1e48293d6c56f36362d2c71acfd9483ff2f2f269f1226ec9f42395 SHA512 1d2b8e148b98733b3b3107a46cdf36990d4b953fa62072fc48afd836eea3df3d6757e62c395147e05a41d1b2d2acdb19f0ca36435f922ab25a624e43648e3ceb +DIST diff-0.1.13.crate 46216 BLAKE2B 27ceeafb7afd45eabbbe22d1f05667f513a6062762e6b77122e267282a8f2a0bf96384989508bf10c9e13af4856bc9f58f09b10055d6fc2c32681e288ffa9f9e SHA512 45e259c9fe7c23bd9e9454891b42d4aef6d681d35ee039d21fdb05ae9ed5856161a40f29889e7880ac2a2daf85f1b7d752d213b4a99a1a74ed2682c18a3ae7fb +DIST digest-0.10.7.crate 19557 BLAKE2B 61e69d78cb8d6850ae26ad7ff2d52dd6dce820d8c621230def11cc0e8aa6d883a6e1b25340fb45748db52a8ccf3c8d36a8aa0c8cdf4d4eeb4e3f870d86abe09a SHA512 0dd8c012468ab9011b89413ea4d3647d95b1f683b020a0e6274c95ed5148638b56fef19cd9044c837ad53715b582b88eed277fe96e917c27c5d7abdbf7c3794c +DIST dirs-6.0.0.crate 14190 BLAKE2B e214cf0c4669fa149d1e3eda1f6ba5b10a4a4b7d13a9050e63c13a4b605aae5d545bb711fb659312dabad26028f190853764acf74c1f6f31014e57c0a53a2281 SHA512 f29f0f932aa627bada67db5bd9d2661b5fb3b18d07030f5d88da28de7049eb872a2f35756cf29c094aacbc2429a3a333b54fb94d70e470288d3ca091cf6d4aa8 +DIST dirs-sys-0.5.0.crate 10157 BLAKE2B 0808bd5c7bfaceef00d62476ff459a8f3ab19fdd4d3a860b04698e51c390285ab8f01690fdec7faf01ccee5734b28c44e50a4358f30de1193a0d54ae5c6622c3 SHA512 c2ca362ad04e92c929e2cea4db359de689e512b7c76246c408f40d10f1d47c5dbbd49238e67edc0a251bd642ee292cae88992e5755035c632baec36cd77c10b2 +DIST dispatch2-0.3.1.crate 55299 BLAKE2B a159e925c2b6ccc7357873b06114a600cd2c9137fb1f179883070aca60b3a4f4d63ec3cc27ff7e597f972ba3ea50621609f49b38c3be83b56cde6c6cc5573178 SHA512 58c2c10ce8e6d68faba8d96b2553979dece0a0733d98ccd22354231611b431ba76e6781729ebbdc52b695c11cadda53e9d26a09a7e11ef4cf47a94902bada878 +DIST dotenvy-0.15.7.crate 20293 BLAKE2B 89a205ca637c31678fdc7249212a6a71a10bea47607279087f719a4929ca30e27f5cf74d4560390ddbb825a58bebc8851a82c3c6ed525922a74206a85bbde6f2 SHA512 208eba7f7d012b71dbdd19d27fad4fa1d2982507d3362167fab72ce819f44972ac0dab6a10f3842f3f8b44d979cf8517240fa4249ee066f4806ef4e38e343bfc +DIST edit-distance-2.2.2.crate 9002 BLAKE2B fcb0231dcdb4f08fb149ae82ecb2c3bc619b13606e2e47041271334215bef1e0c0c464c290607bfd58cd36c7622a593d84e49665675f33ab35a1ff7011ff7391 SHA512 898af5dd2fc02a054815413fd9df2237943857030e61e51310c01c815e550e8d46de4a6da00e4b873c25ab9cf8b05daec9e09d87938092f8d9e1e7250272d02c +DIST equivalent-1.0.2.crate 7419 BLAKE2B 7ce4fb7b911961cd4ccfb48323eea4952110a069789c6bd177a63391c270df861afadd00c07db7b22768f0864f320e429e0200c433284f528336e2f81d071eff SHA512 8e0e2dc070794a85b276e93f9e4a65d3bbb8587b33fda211c34479a0b88504c913d8bef9e84d7996254aeabe1efe4ff1ef6259ff4fe3f9ccb90dd90070b3e4d4 +DIST errno-0.3.14.crate 12002 BLAKE2B 57fd842a717086ffdcfa5102a8c52bf8210672820366d78aadb6f159055917477e6771e9fbda88787278bf3a116bc7253dcb705b601e54038a93a1820c3c287a SHA512 1de95c9806323d63e7cc95111e67b3ba1ee4b9d47b70cec33485194574d6b584d22ff877dfbc244317822721291d537d9509ae5e46f1b45169cb478a78322366 +DIST fastrand-2.3.0.crate 15076 BLAKE2B 15c9a1c4f64d94c4bfd38ae139c6fe19b6b621a495c1b57209edd6d76d978eaf018ba77f356b5086c3f462a6de044fb5e3b172fc288309569911a17ec39951bc SHA512 267fecbb7459c8840f03425733d278dd6c4e7637b85b99552877117ed5e8015e094d86aa95841f77064136b7f382276c3cb2c2bef7b2881d272f4aa57c5cf947 +DIST fastrand-2.4.0.crate 20754 BLAKE2B 94732b591b60f62c460d95af228f11a42ce40416d5287c69bb10eab3e1abec649cf78309b59b2a39d505444e7a13d4a2752653342582d41338f6fa2be86d897c SHA512 9304f29b4404b02dd3bba68d64266c51f8619b850b5d5a407bf706005aadaf80d2dc0b3d212934692412948d207261b09b28c098ed15af203a199b2915a2afe3 +DIST fastrand-2.4.1.crate 20773 BLAKE2B 79fe53f19cbd8343ba15c21adad7397ca9e351d00d77673913063f8f8c02c0753a29828ddc7d52f2f2f68e8e1822f31060fc52d046769f6e768d510cbf2086e1 SHA512 7120edccfb1aac689412f463abb816e3ec2e7c6f7da3576c060229139c11af5e69408bce42dde4d78046cd09ba8db53a6f9c4fdcd68e5fb151b72a0906a8bc7c +DIST find-msvc-tools-0.1.9.crate 31493 BLAKE2B 4137592addf8b58f4e4c02be537a72b132b38cecc1c263c2569fe40e2cfe4377e7141679f32661f44ed467cf9723343ab13732b3d6f4a2a84c610d0958e7e30b SHA512 729b3c1c1d520dffe5d88fc8b58e47fb7e86dc26e568fc317eea5ca8de0ee953fbafaa20ab34a6bfb43173bab39a90ff6954c11dab8d545e902305dafc8cd3de +DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334 +DIST foldhash-0.1.5.crate 21901 BLAKE2B 22c3a266becac17995ac996f5c9caa8dea77e36786c50464e4e7750d8f3f13321a0a1abd3a9abcfd6ff441ddea257066b2dfb7fc6fcf7468f537dbd1b0db737d SHA512 3a634fdec410d87ffced8aa1bf8dacd9316a04c51424563d60b4dd611617041f09085edfd0ec96e6bb0e0db74a0e950b0616d1fb94a31667af35af1637604c22 +DIST futures-core-0.3.32.crate 14684 BLAKE2B d0c3ee59327998990f4cd81b8d76b6d8a58000ffda809ecafc8b7e658abffe4fc45be4b9d5e502436af8e4adef50b1601907b8256a9f65f8467beecd37ede220 SHA512 5848937ad4135fcc488690bc681bf66d6c353f063f87dfe1ea4b79259b9b402896276c10ea80b159a9adfa551abdb5b00a2c6b332af9a898766f87f177a40137 +DIST futures-task-0.3.32.crate 11377 BLAKE2B 290a2e7f7c957acfffc8041a5ce961b84bc6b1d02412ee8dce29cdc9a7d4daccbe430291d1a735c132b907448669aea4e5a3aa292cb5ea4b466b30fcd4e3f98f SHA512 eea93a8490d7083566d7f723c0bfae01583787028ae5d8bba851625b1ccb2587d27db0cbf3d7fbfa36b51bd6d444c54905cc4d56021f43a5a440cc8b0ed73520 +DIST futures-util-0.3.32.crate 168797 BLAKE2B d804428849635088636df69330881d68474db307ac4dd5863d73d1d93c54e90a18e21663864e94f2bd86999356e19b8325e321cd5c63da6e3e05f26c3af836fc SHA512 77705985b5cefd5a9009e631689f5967320cbd1363888cc8b7eef3f7457afb38c793499fc3edd4453bc8771c43436e5da1538ce0c5ef655a5e597f4fda2727b1 +DIST generic-array-0.14.7.crate 15950 BLAKE2B e74c785e3127095625951da192a018281ea9976aaeb11019f9088c3f27748c5fed1ef25d577150864486dc48b5138d6892e42f99979339f711a66fc70756c82b SHA512 363a7b04e4102f9ca63d429721c1ada6272be6bf0a2e97da681faf76381f73f0e3acb86623b9ce2dae441de9fda704088391779b9769ec02b3c8c9f9f35f897d +DIST getopts-0.2.24.crate 21467 BLAKE2B e5468cb141bc8be43ec84606c873fa6e16a49e902e247f7c38a08c6e8088d36964d99b41ae3a98a5350cd8fd15ee8d46762b818c79d1198c0aed576de191b640 SHA512 3b0fd721340f732d3ed3dee38c61a46d83c920d24d96fdc780927c2a02fb9a6910eca4caa57db83d500d76bfb0e7f424a166204fcc4c5a4d87ca3ed30008f5aa +DIST getrandom-0.2.17.crate 40780 BLAKE2B 49168490a12561828bb324273c1a2dcb98017577f8500fe08a8bb7c3accc37afdc459af264da7b95a4608e53c4edf8fcec3cb240741b2ee7b128012fab975ede SHA512 23033dde606eaeacc0557e21b3c5ef732e083b17ae086dc95ac7d1a8bc1b695a9a6a7073b8ae774ec62e7477a8ea0644d417fa5da7841a3c8118694c21813d1a +DIST getrandom-0.4.2.crate 53905 BLAKE2B 23aca6717b8fc8bdbc26bffaa1ae3aa35666f82951ced24e1d7b7530feae7eb5e66a9c81b738bbd2b09ead6efa030d2850e0ffb314dc82972fe72af361b961b6 SHA512 191d847be8c21369067b707c2c20cd56531478aca534ce902271e2693e84f6d74306a690759b17a8b1e9c46c639fe0e7be3b2fe41469eba4d7c27bb1c11a442f +DIST hashbrown-0.15.5.crate 140908 BLAKE2B 6a360eaa2e174ddd1e9761bc19edc4b57b80f84c36bb5d64003c7206755d4175a05f39c001acaf000ec69ced9e28c3853bd64702e2927aa7c38527a53abf2201 SHA512 654682535882733b56dad632851fed93a17ad0b2d3e13e3390d7802450781501e275b0e0b39fa32a6eae092132858ed79b305238cd5771c08987c5d26af6d692 +DIST hashbrown-0.16.1.crate 147785 BLAKE2B c506e64340b65fb462545c52e85a192b21e33025c91adf1d8255e799e8a5743814c60be971db56c0b9b1208dff8147ed4a28d8e37caf8f5646fd367d8d0bc9d7 SHA512 0739f1b2101488f88778e221d86738ce557b8ae12470e2a4444099eb90d876382030d00e789dd4ee44dcd7833a87a6e570fa11ba5823beb1cab3a56784ec2669 +DIST hashbrown-0.17.0.crate 154597 BLAKE2B 1fd03ebd3df85e88abbc498ae8166d3d15f3196c52ce17cd29751be5aaca18d62629b96c1a4fd431e8b38c313e4aefbf78dedbf65bc202d9e4e69dbc1b03f780 SHA512 248f5333b23cb83fd8e439a17df85d0f5bea6dadb0e7cf2cd2d3bd0049494c125ea4fdf74ce2623884d2a3884d444689a0a7cfc9b52ad3d8de40f7498c56ef06 +DIST hashbrown-0.17.1.crate 155512 BLAKE2B 748d3658bf40d6905b47f695e64b70a0c506b9fb0207e023cd50448d5febe92bcbdf19ad8b9be7588f12dad2aba82eab4c8a7a1815adf0a00e17c39f6188f4c6 SHA512 4b6a5a76ec2f020fe34cfa5f5bf4b518ab7d278ece657804663972b6a5ebd64f775bd75d229b7e202702bed9d5b63ddef4de6e274fafe3129809791c6802526a +DIST heck-0.5.0.crate 11517 BLAKE2B 5365ec43b2239a76b33a174f1a4292ece4147f9d382a68c6c60db78fdc8bad0afb1d51a65bcb25e96675372faa4ea37c318265030b0546ba51942f7c929e1835 SHA512 f044fc9c3d22466629fd8f772ec0555350fd611c0cfadca51d99a3d2f10e155f77c1091916c8a95a6b9b499f366c2e99a5fbf45b010f988bfb9b2501bf9f6a76 +DIST hermit-abi-0.5.2.crate 17435 BLAKE2B 695192149342273199ffb026de57e2d906249757b9b4bbceb6b40d3b2298a942a75390aeaa3ad4cad71e5d44687379dfc49598bacdb2cf989ab48864c4b2b517 SHA512 0392a8350288e5d500967bee8e98626024b47a7da331f833b9528bd7318cf43f41eefa46aa6aebd19febfadcbcb2d7c9f70d6ca3631c1618d63c60366dbe7c15 +DIST iana-time-zone-0.1.65.crate 34079 BLAKE2B 4d84dd4655dd42ed9cf49ed8d93d0ad244f42433faa2894a1f8240a49f65021864e8aadb816d5725984bcd5c1a6e8e1ac210b50751e3af8b3ad2a61421a74e4d SHA512 4443d5a01ef4b10eb27ed8c866ed71619ccb594dee81a0350106f39575b9373c6199d925b92112fdf0aaa20f5d955d09fab1867dc1b4cba2841c713d40cde6d6 +DIST iana-time-zone-haiku-0.1.2.crate 7185 BLAKE2B 37fa14b589ff092377b9271c414d4e584c5a531f13f70ac48df26df3cc03353db635b4630ba192fc65b800cce11823e91b91f03dfad85e4bed55aa18398156cb SHA512 448224ecafa935472ff6f0aab7cb71f9dabdbe71569c4b94fcc65baea925ef48841577687c9a31106a1826c2105e8dd73c748e9d27fd002648e5b0ce838af6b2 +DIST id-arena-2.3.0.crate 12883 BLAKE2B 2a7f498c3ea5632af4a369d46f90106e642bccbb8e36ac7fe37be05c2125989ea2cf625db92a782408ecb5f68d3efbf3006413b5b748815ee42b9dcfb28d0ba2 SHA512 99652279014e63680d66bc8022ec3d2373d6e476646ee5551346fc9e62d1fd94b28c945bfc30df14c85d085aefc7fbb9051fe11012f63a9254bc11f03133f116 +DIST indexmap-2.13.0.crate 102206 BLAKE2B 7f3d070b645741f5960647f64759840b1941c1e28f61ee04d44d7eba0d8f600949cf139bec5fddb1507e4d5a9e12fb709a16415aa014eaff8f5e87cce41a9394 SHA512 f5efe0010603a3f1da8955f5f97c9a39e4d2c5042c0829c057ad739687d990c100d1276022dec23e7cd70efecceca07ad735693bd8a1b21b507b8892110198ad +DIST indexmap-2.13.1.crate 104085 BLAKE2B e225be37fc18900aadc2d841e46e4e662bc55584e06fc3c41f68d06f30a16622e18c10ee7afafdd4afda9a56bf34bb025488861fd223ca86b57a7404dbd955c6 SHA512 58f54b7d2a05977c12cadcd80e6310e6e87cac5078cd33b16f368ef21b9f8843082556c2f1fe272673bc49ddd12640632e0ebb30148ed3f1b398b7284a8fdc02 +DIST indexmap-2.14.0.crate 104085 BLAKE2B 828d8eede906c2908baecac840757ca8795587a552cc9dbcccde89a3b81444d99395670fd71404c33033aa5a1b905ed0621fc39236024c8b8b385e5d29ca6b5e SHA512 fa6bcaaf1b9bacabc72ae9d0569065325a6741b9ba5dff168ada6ece460175be47741d906d9326b48d30f6c55805d33fb64bfb497490482b4e412ac15a8ea55f +DIST is_executable-1.0.5.crate 9227 BLAKE2B 03d1967099d75dd42b5031ef6eb75765194fac49f88c0b5a71d95091850d90c40888d567dd516a8327113eaae6f7447e58deb563d2c8451d19e243c38fee1d1f SHA512 59248290fb4598cf89c8c11d6b6ce7158c6acbe3404143c86a6790048dbd52cf6ec94481e65838c77745ae66166fa85b5e563f3668c851a5ec150f7f2996e446 +DIST is_terminal_polyfill-1.70.2.crate 7548 BLAKE2B d84c45a94bc0ede333843ddb5206379f1a7d9df742c7f7940374d6b17b0a9c300e32fed5fe2bc58e6b3bc5d18b5fc58dd4e283c01c2f3b4f10f254b3cf7668c3 SHA512 d62f444e83950bdd441215c0ce681ff774692b35fec2af7181dfa243dd43fe42ff7e10a6e3b1d578712e4130dbfdf471ecdae73a3a584a2856a848d387b6c261 +DIST itoa-1.0.18.crate 15935 BLAKE2B 8e41446056ccd94979f6f5a8fe8c48d6c47abaab99a41715cca31816f859b56e0cbacb998f300b62be8b719a6470f8a087f1439b72f2f6662d1cdd3d552ede5b SHA512 8dbad156e2863c28e2b380901a92414ef00e39f1fcdb06d91a0f3fb73108c2f7f36b699ccd93287808c24c29cca7f1783d48d5ca95f2173502963c0abcb2d09c +DIST js-sys-0.3.92.crate 101836 BLAKE2B 155682fcdde7976e234a3d8b023a3f7f1b1e3af0059f0791eccbfd96812aac26a125dbe3a1f5c33b8dd4f505e6eef67326a0bc1e1e5d248e10b2240321b812ee SHA512 6153a6c89d2693d777ac0a61a9df209b43046e0df5671bfc5ba2916ded62c9cf2d3689af480d43cf41f6984c452ed68efe57837c84fff26ce847ebab82dc3aad +DIST js-sys-0.3.94.crate 103723 BLAKE2B 6feacf184d9111ba10af7b9abe792cae47cea7718a290dadfe8a6aff3ea2374bfaf0af06213d1eeacf8bc52c38aafe823c17ddd1e469c98118bba92a57748199 SHA512 290a6ba146e5ff7865c7e6137113013417834c6d77aab24f9488576bf4b2c93bd39619b3bc03ab5b64127ec98d5095540ee6571f5bcf6abe6f9f12f78c3066d2 +DIST js-sys-0.3.95.crate 104031 BLAKE2B 20141a55de6ad577cf1d48efe79dd3ba4a36d7e2b43feec4ef90fefe522dace2146c4746d982cd93b41c410ce6357c7b0bfafcc81366e9f74e09ec5ff61cfb1d SHA512 3e7a3376d6edf12643ad4e75c075bbb4eabfc59e02b0246b88d3f46f2163c932fb08a21d825589a7bc78e0fe92eb5b96502da2a20b6beb39f2ec483fc0725a27 +DIST js-sys-0.3.98.crate 108519 BLAKE2B a41d6534bc87c4c265e01211d2f7c8f4c7ed137ac7001c2cbdad4f24784b4cafa4c689aa0c9b9801beb5c5bbd68818c3d4e7bdb78fefcad88020bfa88beb484f SHA512 afeec49d8a6894d1c7a10d80a6d6500d8677f0c769f74beae8da820932da8ff91ff0e9abcc48fde251e617903578e65af4a9cf88972510e78ae8e1284780675c +DIST just-1.48.1.crate 313794 BLAKE2B d14b5314e53e62a121b6d20c85ea4acd6339916a78dc03446cbadd361f01ec1176734412ae70d114a8493c9fce3d953c3b3e7284ec6a426a5d8c5b059c976162 SHA512 5a1f4e884a516fc06e1dcb8c7a696169aab2775daf24dc3cf0de69e85ea3e245786ae491cbbde2c49666c77d72f6c74ab48447382a1b35aa04f61f005875c03b +DIST just-1.49.0.crate 322480 BLAKE2B 1ceaba0b15244f54791f8a2b89089a83ccd77723723216e117264eb7c0276040eabb430830d52d9acce2e9342b0e2feade2ed9c8fe206c82c823c7cfd54a4439 SHA512 4992e94ddf2dff6472702eef05328e109e9532f4222d8a9888ea93019b5b3640e7b4aa98e87da87d5a53a984e8a2b2bec4da8d85fb5db12f1d384432fc444916 +DIST just-1.50.0.crate 324125 BLAKE2B d0746dde48ab43d99133c48f47c5488d6ed8c6b2299bc47c5997dfa2b1d06295fa4fccc4c2dc740a49085bc164f2113a16c8cb687427566cddf4e23aa2e89147 SHA512 5ac1d86bb188d8ded61e34742b321c7bf757f1b3977e85b1802be5781cd7e4a5ef13e5084de51a50ecd0322ec09b429030b74d8d4022810fd090e228cd28a9f0 +DIST just-1.51.0.crate 327031 BLAKE2B e7f00ded52de1f8e960e7677168cffd52324aa70acdf1464d004b9e13d46d3d91207a8f24943a9d644fec361c6ce239b5caba924cfb1869a917a0b7b4c958636 SHA512 d86540bbcb9f4e9bc45d67507c44df9ebd48219dddc7fd811901a21641ca8cf29d45a39f9b1226d20bc555888b135d27a925c9cedf7ebc4d492c6ddda5b991fe +DIST leb128fmt-0.1.0.crate 14138 BLAKE2B 6353a2520bb93e0a3cfaade09ffbd8cf981d2cf75579e865941f3fea0dc745c54472b369873b1ef4f26dd7f356860e563bc7ca6e7615d600b272c698a55e54eb SHA512 82fbc7f0786185453fbf11fb3ae58e71fce9780f81eb6a56d7b559e3a0c6825751dd8b64f1266aab73fe65f7483a206e42f31ee1a1b7b1801246c6dc9c2ea817 +DIST lexiclean-0.0.1.crate 5362 BLAKE2B c60a82de8de091263d24c8f5de8f04f7a0908b7689d24daff1f85548ca158cc7f81f84a55ec50f4499fea237a26a7892a594f6d5319b2232db06232a0428a291 SHA512 5f60056a6830fcd21ece4fbdbaba5cf4b8bf33d85aa520c32de44a2f821c6dab60d2c9ec108981bd081f394e216ae45b62c9aa7f223eaf6702dd0586157ec868 +DIST libc-0.2.183.crate 816918 BLAKE2B d0c26ca25b0808575aa540a5f0f43acaaa5a972269c5f101122538a1733b37b6aac3696a0d7298fe16974b06efb0b92072252eef40b17b977af24cc857963daf SHA512 017986d4fa8c362f8900c1c82c7381066382a7272cfe114243b8d47637d042c87b5ebef7881cf46727e00e541a0a8270a32db694ce8d78372672cf08224a90b2 +DIST libc-0.2.184.crate 820172 BLAKE2B 61c2c133b14e79a6871eed0fef248a063f19d41def5bdf72bc7f96c3b60eac24b52d13e16f28d68d750a16fe546c26f245cc088782fd26f8fac78da91b1d5c0f SHA512 46e22ca28ee3562bfa2475a944390cf2d864e11d533889c753c4888a56c02b981bf9507b7866bec65c1b1aa32801cc1c57b660bd93149111547ece7ddc55f31e +DIST libc-0.2.185.crate 821775 BLAKE2B e0e93466a29c9d19f7d9ab3581b491908d06873a9c57a96b0cae2eed0f0d1cb184ebe80bc61e36d5ab316ab35dca529a322b29e6895f7f339e72c79cca7f8ca2 SHA512 c8dbcaaf2e5d8377a4d1003af4a7210fbfe4f9b1e8497f07d88a231a8d5c9f67014e650a5e18e913e7b4d6a1835c4cbc9c31ce0cd224ea28acbdbb39034a300e +DIST libc-0.2.186.crate 821883 BLAKE2B ebe7aac5f8937a8064c64a0d4dc72e5fc794080e09b96c6d245bdec0fd9a19d49ab38e25306e22e47564764cf5dcde45855237cffc70230a143eca2626bd5c3c SHA512 6a58e671ec6811dff9a0d7d4db8f37d38bcbca9efff20dad4706190e5cdb77b426567754bcf0ef0f2d0c31d6506401f724f3ca500b9bed57bb8605b1141ed690 +DIST libredox-0.1.15.crate 9598 BLAKE2B 07a4220f93d083b4f1e9c49ffbf6c690cbca52866a19bdb455e6bb8b9a4c34391457f9c53a9a630b8c2963165cd35862fa89e905bb77498780f0d571ae7114d9 SHA512 b8162d77a9f32b710ddcc2da6c69d4ed0016c638fe613a204189ec77e48f47a53ff7432f949f053045a879f616718b9e66299fa00fa4bfadeec6529671730702 +DIST libredox-0.1.16.crate 9600 BLAKE2B 88e9e195d1fc59fc5fbc3465a4a30bfe45c79edc117f73f9002a89cc79265e6e890872dc3ab2c357bad26bf77799074cbf99add92b1e8db9748c061af17bd0a2 SHA512 847099a1fa297bfeb1c3b9fdf3dd16edcc494c39a42e38a653551ea6f8bb8a67cbf083bf49ce3980d66481bc9cfac411a5065dc64e12e6e3a8224e0afa4d8163 +DIST linux-raw-sys-0.12.1.crate 3006116 BLAKE2B e23efa27e6052034d41b2149f90d1ee7d6b905808605296ebed66f5fff210c4c18c51ee9c363bd0b93c8e17bc3b70857b594aaf51d44492051291c0e008f8cef SHA512 5cfe8f7e88a2125dda56a3f7a7213fb41cbdb51ddf4f7e44deec21f5b7aa05530e04f67d1b89b9d99d9fb204f27167d8c0e104e6ee6e62a780bcaa679155bb54 +DIST log-0.4.29.crate 51515 BLAKE2B 3f5dc889e895428f27ef107a63004c1b321793b865c29b20293adca81db4e25443e24354af37018c9a60dff1d54897c3b7b2c014a64280523f4a3586a7eeed24 SHA512 31bcf1669c27980f0a8500082c4d0cc500f6cc943518a3dacacc3ad4d8a0c238517f23c2c1969e5a22dbb5d25614adbf4e914c0557e45e1ebc8e7385b2ed14b3 +DIST memchr-2.8.0.crate 97780 BLAKE2B 228ce0b6fe8b168f5c31031690a5eb44466609b64c5c221e0b3f56fe331b4f25c0124d613c94ef030b225000978953641f5b07458d530c1d50eec3e1d54e4274 SHA512 8089238153493a0ff6adf980efd1ea2ba10eeff9f33fff200268692662d24152a8c14a4dac37fbc6a55dca741701fd256174f10a9838ca66f038f08e090de12f +DIST memmap2-0.9.10.crate 34846 BLAKE2B 9f8e59e9695b36b7d86a4caf14718cba2d609605ba4cf5edd3dd5d67ba04bd4a26de3a775220c190f21a0b81bcfc4f9850995bcbf4f45241250196aa783c09c8 SHA512 d119205790c5f724e7001562f0b5917aa36697cd626e9080e31f7aedc0e8c6027f6d9720b441b969cd1a3bf909720e815557d94ff84ae1d08b8ec0f8842ac9d8 +DIST nix-0.31.2.crate 346284 BLAKE2B 310de6bfc8b7bfdaaef0ac7b441e5fcda8b25722eeb8d91d28d24c08f52cebfbad5d005010af76ba544d0f79594eef8d9248b53346b986a9962f8cc3d3c56f6f SHA512 a7b000095cb1616b24feb12880ef9da3212cce894d70a94501a2bb200ac1d0b7e4b9dd5b993b90ea93304b192b6d28e10dbdb4509d1919ec9252b1a3433592b8 +DIST num-traits-0.2.19.crate 51631 BLAKE2B 78637360cbf32d172510a62bd9442708af9730c0296a2bb4ebd200c08facd49bc31bf8ddd58967e0df7273a938832b620265d9f8f4d26ad16049bf6dac1cb4e5 SHA512 180018a5eceb45085e4e8d103ff21bb4d5079cea874c42a0ad4c76c99d275d434bbc1cc289f0cdec172866daa89dbfe0871410b2cc3407233fe1129786905956 +DIST num_cpus-1.17.0.crate 15874 BLAKE2B 8b31104cb49696d8994fd05176556056db69ec3e2b7d61b6b0a88f8ea7f4395934df1187c86301a3a56c3dd6be02b5eb2baeb72a991fa3cbf61571767dd1ee76 SHA512 b2d7f664214bceb8acca0758bde4d516267c0c76a70fafa25ed6204eebedd69a110f045682f50cfe6759a9c2178b026df077c5f0f85d020712dab65cf65d0aff +DIST objc2-0.6.4.crate 275200 BLAKE2B 4cab717b3221aedbc98eedca4bbe722bed8603149737ba01f13fc866e8236c58767a5f8b81c9bcb3b4edd17abf0e621933c2d7ece16895659dbbfb795151766c SHA512 3176d8f44a3245d08972404b8c544962c02e6bb8f198660ee3bd532b376b5a2f7a5f5585f126968c414e58347011dc6ee919f881b78854a7a3d9bb3b190abae9 +DIST objc2-encode-4.1.0.crate 21004 BLAKE2B 6f3b11c96ea4941bd24f2949b8fef5c3bdd91037eb0a0d9af88a0798001e4164e252817fdad0ba7e150f1b2e0c9d4cc0fb976dc01def7ac19d308c989a92f714 SHA512 47a23fca26df26e1efa1045a9778322dc0b2cd232acc2be750a98a1ddaa7f264c39848b14a5d9821573495601dded2893a4bcbc36a0e21ae442b7c9de5c12303 +DIST once_cell-1.21.4.crate 35010 BLAKE2B 9117ed1d478e626b7b7be2e3ff8b68a382b051112c7ca4425367bdae86977671f8b5c576131c82fb437740b6d98b72501f718f4172d39781decac2385e8fbd4d SHA512 af67669b0107f44268ba74c355200cb2ed1aab235a6989a8bc54323eb2c9a45677010f8672e7790edadd4c981e939436e0c3a099d33c06dce9c14fd5ede86155 +DIST once_cell_polyfill-1.70.2.crate 7448 BLAKE2B 5a90f8eeff25a555987b84b9800f9e0b2aa94fb4827f76678ef45d344c4baeae5a079a288fd02a570d0f0099e9b2842d32dd206dbd609212496e77ede47a4d21 SHA512 9e0d07bcd40e4a5c271646d6fce71677acbfa4439b4e818bb4df823eb31eff976ba78239e3a7e0ad21e80ea8d0d3af3e74a7d0a0a55b308d4c777b9b5e1ef8ad +DIST option-ext-0.2.0.crate 7345 BLAKE2B cbfc03e7c960fe3023512a4ad816d657b4f54f8ecbde9f9c4df4c5fee3b36b68ab463c67ad650778279e01c7ffaa63a0dacbd0c080c8c3d15b1611de0e71f92d SHA512 f8539f97b01af97e0b80fc96556002251befa60f8ddd19613311e62f9dc9834d71c22f5d8e7c53c4925046e38cdcf834c3c28042a4da862d6f6a21ddff8d8e56 +DIST papergrid-0.14.0.crate 57733 BLAKE2B 7ebb798e60c73602c5a7948edc0e4162f13ecd9c90a356b8080da15ad1ace7ee87a5fde326241493b21db84eb95d7958451395d3b6aa84d27a3dce1d6e0a496f SHA512 ba75fe09f39a31b1d99dfcfa801e3797bc2742ceebc2ceb7ea81d15b71f86f907f0b8fcc43b264ea32088a78ca3c7a970496d453f4916042be0d6bc4db54298d +DIST percent-encoding-2.3.2.crate 11583 BLAKE2B 58925243b23a6a1decc3d92c4ce17d06af5206844ad283b49e69e523ac0db2c36c3f4407af4104ab92c029c2581c228bdf416a054a2531191a9e912448ba4408 SHA512 495b4aac88a7a46420811671d6bd82817e4eb2fe51d5068d11c5b50d0d927895d54c855cb07d4f4ad5a2d42b22f9419ad0183c14781dbfa240804fd49761035a +DIST pin-project-lite-0.2.17.crate 31034 BLAKE2B 1d3bb970100c2a27c456bf771b4884f3c91c048310d27608161d3a02adf2f9cdddbc8674257c6b58c4ad6c0953e11cddf2fdf5813d95e5ab8425e71032556159 SHA512 0cff4338e3c7b71600fb41db013efe0d01b9cb3fdf95192dc16c5bea58a0f157207ef285ceb01b6b30956f9e751577c5d2a3803103f89a8a0cc6ea728d97a4df +DIST pretty_assertions-1.4.1.crate 78952 BLAKE2B 016df9fb2f24304b68a6bf4fc8e144387f07a5a15fc8d92757cffad11b4a00e74559abf597d4ac8619a3dfea705c82df1b8c8620c5f32c61ea8f212fd9cbf9f5 SHA512 474f77c61cc17bbe9914c56b98a80e5918450205827cd059d693c2d603ff61a0897cad25dde645cb495200e61ddc14333d15eb8bf2de090a2eb68deeb9aec8b0 +DIST prettyplease-0.2.37.crate 72033 BLAKE2B 997c8d855023ba6dcc7aa3a8f1c0ac6f6ca72dab2804cfcfb0987832ae044ffc5f5d7541e66d7ff5b0679065e5217078a832333e6cb92d89a93660aedaf0b447 SHA512 3273621f42cd2f4f892ee81e130f50e7d30f7254f922a84e55e454c0157bd0a59c678ee352e05007fdb0a62cdab2d7693185990354b81d2b1f5d08b51cff77d0 +DIST proc-macro-error-attr2-2.0.0.crate 7745 BLAKE2B 6e0e6d0d19bc467550de90a075a602f0be1e6ba24b29b84e42f01ccc953dec4f841625a84930a84cc5c00a1959ebdde9919c8d6d21664dd2161ea4a18a6f1d08 SHA512 8dfdd6aa54b03cc3b29e97f6be2a2d0716cb52b751cb7cbce8ceaa9120f95f9567be5869d6c4467ad16560b6db037d2c48ecf5290817c4e06b6acec1d7aaec44 +DIST proc-macro-error2-2.0.1.crate 24807 BLAKE2B 20bc34aff566445280cc874fc0c2a43ef6ea2ff67f674107f816daceee712749fafcdd1a8fd52fc35f8b875375e5fe05a571b717629e6cbd250b42162c2b3837 SHA512 6406a792b780178e80597709fa34923b59f8a9e8ad22fddafd78b3495b943765f5657542078a88dafa0e904073a22fbd9722d45ee175bcb51725e566682a976b +DIST proc-macro2-1.0.106.crate 59765 BLAKE2B 87f95795621c4c992c370dc3a1240a2d5580e3362356525efe640f8f26ad0492b3c88755d575c080ff7db11376b0d82f31141bf6f86c895249b85e46c081220f SHA512 b726e2c92af434bfa88cd4f53c3fe6db647503567675fb439890dee3d15f5111137e3242b28d164114ce081c10acf3fd11950753ddb349190c87ee04e7d97744 +DIST pulldown-cmark-0.9.6.crate 117378 BLAKE2B 39376ce32138115e2def495b6d2761500da8045677dff9f919526b7c297e00e72484cca51f9b3d6e0cbacf12f681b1651209296845561324750f5544eff516bb SHA512 074d70722bb42cff59f85c209c3f0c00a739d76a22bcca123a33a0a899df49105887565d71525ec5926261efb74b912bcd024714617d83ca72bcef86bc428764 +DIST pulldown-cmark-to-cmark-10.0.4.crate 17917 BLAKE2B 956fec0f042b70754f681640b1ad90454da5376b246a56539a029c4c53f64c6743bf9e4e938cb75bedc2eb3d960a2cc577f78120eff1f9942d6e0b33d7833426 SHA512 00030ee97d0d69738fa160bb0b87cc5777769061775077e162e7daacc52b1558477048d2bc36485576c94bc05f03d01086137740f2f6ed92b13e2c75653bda12 +DIST quote-1.0.45.crate 31564 BLAKE2B 1b2c2c3e6ebabfe10affa4c43ca0bfd1f52d8fd49e1df463e13e63a82de41272089c8e09e4c02e8a33cfee768ace26d4d42a50752de8fb5a776c59806139ad5d SHA512 df96ede01ebd0ed642b758bf1d0862d0e116fc2b3343e14edb657ce5438ccabe743dec4a0a40de4dee98c134d169af9aba459faadf9c7a832b26377e755d49b0 +DIST r-efi-6.0.0.crate 65303 BLAKE2B 79a28aa1e41721ad39ad95837d60a7034f9eedf0f5a32017849e7f4abebf6eb55e79cc144cea52030cade11d6be6fc5ba863e711a74038ffcc67b0d6eef47bfd SHA512 65f8c75c0201c3b922e6bf032ba9e6c648840f60939615565287b9c64d44f3fccbde209d8fe691937949cd76307b59c53801e6bd43ed7b8ada46d5d8fccf7012 +DIST rand-0.10.0.crate 105828 BLAKE2B 070501bad8905263faccbf729cae157d79d17c8059637493e95c0f7c362de1b5a8f549e9857b6b94fc2a3526e88bbed46ef247256ff8aa72ed61e6f0d0413b25 SHA512 a22dad3045436e7a73125cf98e972496d3f896fd130b713233134c65d0cf81a9a3877d987a9c8a77fa1ae1e957d6a622717ca813f1d5c4a7d45f899277ca0ecc +DIST rand-0.10.1.crate 105801 BLAKE2B f442da8e90eace94adb0d7a1835d54091b0940d5ac75adf60b337edc1964776c06ed06f0e97fd719d7fce4c187d33d7fdc29fe74d5caea05eb2d81e12bb05882 SHA512 514af678610fd4a2abf7cfb8f9e0d738e600b492dce8dff0d30b5e637de5f84995cde4fc29e7ba4884361693087fe94c27544d2ddfc1960fa724d2e375de9f95 +DIST rand_core-0.10.0.crate 22778 BLAKE2B f27a8bc7d691a0f738fe5ae39aec1741f39cee34b02e75f3653e9efa7dd64760b858678ce3aab453968378a7d6a0e242ea921ae6c642f2bd779fe34a9c0b2ed8 SHA512 4b75b43183c0ee19b8c1dec3fa8a1eaebd11556569bd02eb2f5c0497a84543f77c6f4adaf7011d372628abcb7e187686236550a6a2d85b8b2091fe60c1ad4426 +DIST rand_core-0.10.1.crate 22833 BLAKE2B 2fb3972c7a83060afd88e3e1c97c26ac2236222c02259b421109406047fa7599e3408db34d22037eac42887d129692d163b5466190c87cb18b97ea6e12f1ea6b SHA512 7095ef3932cb731fd52a18208100aa01e27cc66aaafd933b70444158258ab2e9542ef0f1d0564f2db8846da597c9b4be5a3c0f865e68607b7d1725582282b94d +DIST rayon-core-1.13.0.crate 73151 BLAKE2B 31112b2f4ff2a0607daced97e234c6cad1356c79d21c7493f3b19b2747083eca85709d5548c9214bb5186a7e2e5fe0def27c45d69d597cac976bb0956da2aa70 SHA512 dce0adda8f5858d351f628f50168d9097ecca437b77fc0c63ad18fb8b3fcc87f2f513cbcbf57606862e30e81f293a05d245073be75292d1a536d6a4d3e2edb9b +DIST redox_users-0.5.2.crate 17280 BLAKE2B 7dcb0b6727d4d4a9b2e3b9a2410a53eaa1b0cca807010446f36a658f062f0f33b07475e61f549922a7c5ef4e7ee3693fc154ba33bf7aec710c8053d03ae284ed SHA512 0468d42c9a5aa9b8811d00b4126115bd7e92f96af4ee136cf5387939474e351fa2c01251473691aeb34f5e4c8e8804938adf1bc83b5edffb6d06869b4b816b7b +DIST regex-1.12.3.crate 153392 BLAKE2B 30f272fc2cda1e36219dfccf0338edacceb5bfada7ac81dd01429661b01b0fa72f6bb343e753e2388251aa0aadc0b5cf61e07670020c9ab351f418c23653ad47 SHA512 73ea9581c861490ad4c8c767c09f1f39be525f4298f5b19ba7b658dfade4c91f7ffd170214382ef4694855c0a48a4db57c39b75d8fa6a9312b07409170c66000 +DIST regex-automata-0.4.14.crate 618012 BLAKE2B f12b0f1e59d32711c113f5f2157a4e1dbd05095c386f0e104ef3d551cf029d0c3346d09f54d5b8a8bdc557ab4d91ab80a224d81b3c522b3c64ad1566972c46cf SHA512 58f8e7c41f71c1df50fc2f4e70ea7f5ab762170494497541b9a09076058f94a799b6fc4da13c40fc26a2f1a0b650b499cb9830338152e96a24e3a32b4994a5e0 +DIST regex-syntax-0.8.10.crate 358781 BLAKE2B fc7961b2c6e4d297f4dcc73cb3f6a82d7d9bf964808beacc86ec8c73f7b572f3d8c7503ccc4441a2d6283b8cfbbbfc49140b31207b5aeabe5a60c8870460c91e SHA512 ca9c36c963c81c2fa36e1105cdd193a9b99ee259de1765e6e8010fb4091e49ac100e2ba0cd117adb0890b32e74421581dd6397eb896772168c6eae9da0a938c3 +DIST roff-1.1.0.crate 13935 BLAKE2B caf1955e4cc0c0bdd250c991f0effbcc0e5ed0e56b7fe97c6cf92cac2619f983b9b15e891163922443231d2af8c55623097b85d361371260e7144790edc1441f SHA512 1ecf60e21d76a980e46c991f43a4e6e0b71056e7429d55e8ceac53efb6cbe446cfd37cdb619d98d96d1205b419444e3f055ce2526f81d86a0e106214c18d588e +DIST roff-1.1.1.crate 13932 BLAKE2B e9b75aa53900e82a75dc7b9ebfd62888a6864c631abd36f27dacd95442616190ce771dba8c73fbc59689191239c3629cb37be3f149f7aae52c265ebb4fab52d1 SHA512 24e0bbf24ae75f80343d9bbf59eef0dedd04c0ec96f930414d92e8cfdb652029e4ce22e78343683e16d8d51323586f46cb48b4aa17d5f173d498cf434c49c3ee +DIST rustix-1.1.4.crate 425241 BLAKE2B d0d710cecb9b20fa755e61a27d23b946a5b860211a9e63f34cfde2012bca2b9cc6952b546444a8a06a97ab8bb5817f87fd7fcdc7e3075640fbdb86f189f7f443 SHA512 33619ed2434963a98b0846414656bcc4945ca0e9b883821869fe0cc86db4a74c6961ce1375963ae49c6b5044ad0536eda807dac1320209739c9d669bd80fd75c +DIST rustversion-1.0.22.crate 21096 BLAKE2B cdf773cda21ebde50da897c0af0e4af14660ce953d3037054a99d8adc3db2dc6e30a57201a45676abfb183c62016a68069848e7537f711b1752339d194b0a378 SHA512 7929352df3e5279ac88cebb26ca89bb13c755f46986d2d1f514d18a3239a63638bf64f8ff153920569d173185d988d692ee676335afba0bf72d47f71babe0e15 +DIST ryu-1.0.23.crate 52823 BLAKE2B 20ab79357165c4fa0eb5139047ea9fb7190de888e7131d8be1860d9c3f81b9aa6eb74b8835d6a277a359ea8457cb9c3f3e10eb08ce696ea88b3c050f70426cce SHA512 46257bb145f9f083347b808ecf5932dc66ffa656550494788c1011116976ec811531cd27e3c28677cfb774fba5effc310bd232e697ebb4f25f059acfb9c82937 +DIST semver-1.0.27.crate 30081 BLAKE2B 760cd2994baba2ab8d63656b39f281304b309152cb3c576a0cf31ebf57294bdb6a10ad73e61f974688b0dd80490e0f4da004f3396cb6988bc90af8eee0961ed9 SHA512 8492a2ce5adf32cf6183d03509766f169b323a9376b061c9659a8752f69de5f45f7c64f474fa907fd9261fe3e9a7691a39c8a603d0c2e8d9484f5946bc27d78c +DIST semver-1.0.28.crate 33064 BLAKE2B 03bb56f4f0ec6f4cb208277500eba03cc81a7b2a115d64849b2d154066f723d46f8625df7c512cfbb2e402a36cbc5a1627e8041ac2de92daacd4a92a6943979c SHA512 bb44373e60fccb83bc95e4277ea0abdd756a3f77b3334cf6d6b5fceac086910661ab94eb326cdc8fefce0c09220933bdf03bfd142c1594a92c9c1e4e931114b7 +DIST serde-1.0.228.crate 83652 BLAKE2B d1909d671ea6d5c2eb4ce34ee4493ecaf665d416111b4cac754b5d33b85f916296110bae7aa961efd987a2ceb4a31ba645752ce99dd28dedb9f1eecdd4d7b1b2 SHA512 9b645d6214203533b303fc5e88ad4f7686c22df084878d18a0209a92304a340fcb62fdde88a7080cf7a7348d47b9b363885c4e1da90dba08cc99ff620f375e97 +DIST serde_core-1.0.228.crate 63111 BLAKE2B 8a64e4627ad21a3d16dd37d53fb809d11171bf337ec16bb1223075cbf81b6b85cd1c8d19abadf42460d0fbea323e2f351eeb6ef823389d519121b74e68edb215 SHA512 43897e3a7ebdc85d81d1cb30cda8f0a11610f6f551529c8a21462c24fb83110652b462846aa3e1bed5fbf8b5d7927018845a524ee9e079e2c8acf2c687efd6c4 +DIST serde_derive-1.0.228.crate 59605 BLAKE2B 166ee2f9ff9f7a0928d0a65a72db3d9226c377bca2a1771956e8ecd9c7faf0544673c9c21be2a5553e621b55c74c7b958052592a1cf6eb6427a2d4f3e3dc6bb8 SHA512 8bfdfeee10ee7ef0670972aa963ef63b13e8eb2c8a09b9e0b717f92551aa89b3dd2a0dcbae6ccf20a1caece07e6adb18f0db56fdac020e4e0281b0d24e376003 +DIST serde_json-1.0.149.crate 155994 BLAKE2B 7564c287a05c95feeba2b3a17e2e43ba047b0132b40fc4dd0c09141c2aac559c00bf4c63cbd24c17f12f5e6b49cf38b240d2c6c66677ee7a9edb197aba7d57fd SHA512 85fa8cb7b479f8241a4fd2255dd80e346fa5cde103aa7f25c14ccbcdf0e3276578fd0645e1d2542ee07c7e08c32058ff662bbf03926cd796c38622a12f423d43 +DIST serde_yaml-0.9.34+deprecated.crate 65290 BLAKE2B 1c1f8c7dd1a7952948596d8c727fb6fd36426c7b80ddaba2e6065db7551757e6fb170c77373ba9784f6b32de9f8aec94f90e1c85df98b9ac1f75a7cc8e5da174 SHA512 64329436d18bc3b1a0737afff7c8727f7e04c71b2bf6022f597a45f0860fa3a678eac688f61f0bf7a7846f98809f427c9907625e1d00c8691c383043c1cffaca +DIST sha2-0.10.9.crate 29271 BLAKE2B 1d614e0efe085cdb40e05726578a9b4ca6bce93f6d3324f5dc0444cb37054912cdaf5d28d468eac2c0046030d920fced2ccd006953b80865ce8a2d43ef3daa81 SHA512 963adeeb4ed8b0e7fc19085e8721ea13e9b3aea5d115ca1b3dbca495ad14810c6450991dd3753807c293c415aaeb1054b8b4124c72e7090cd9e86f09fcbb4f80 +DIST shellexpand-3.1.2.crate 26161 BLAKE2B e30e88b9fd0b62314664cf5a7ae93a648caf5a3edcfcf680378ced47de791bf04f77fed9b5296a241f6000de436a55d761ade701dbb8afc81ab5752f51ca9a12 SHA512 7af494875d469cbff41b0de99fed01b2ff13b9d9736cad591a93758b70e1a107e24d729d12a415cf63f9ddb4906b3d9f28d52e47eaf09d4a84a6f4b87bde8f6e +DIST shlex-1.3.0.crate 18713 BLAKE2B 18800c364d3a628f1a3125097ea82fe6286550c2997235df0bf8483a3906aacabc81308cb239887d46ba2f457cc6f8acd5aca78316707eea5098cd5666aea67d SHA512 5c8cedbe666a14b8a0874defb9208146ce64579cde52ed483e4a794cac5dde6a24bf8d684404edff582f842e1fd4fa3fbeddbe074f191e4ec4aa517aa456fe8a +DIST similar-2.7.0.crate 53928 BLAKE2B 41d6aec64403069dcf81a9a00b9db041967b89d09cf9f2371444928f32bbc2a8c6066adb93eaf25c72a257fab87e24c160265d687c4e33848728a4ddd374012a SHA512 4a2559d2e47e7747eb2bde0f02a0e652ff0e116d1d3c3756dd86fd48f114e2b42157b860165e5cc29c2123cf19c64ebd17f023aaa05950de03ab5752562206b3 +DIST similar-3.0.0.crate 77221 BLAKE2B d6f81eaa9aa043fc12069cd6815209383e935363c42bb2639f06eb515aa0136c2df0a676d4632c202b2ffd3818a270261783a254cd22f360bad1fa5f5c71ec43 SHA512 337daa362406235415c769f7fe08cf898c7d0c465d27cabac5617de9dfa567ffcaaf42c61783dc67fa214e73015e7153bba82456b4d6fe5130228629edf01a9d +DIST similar-3.1.0.crate 78442 BLAKE2B a68f2682af0876871cea3b0978a43285b07ea1050e01f0604e2aa1c016149f2619637ec4c34b9e0c8ee237b08449caa3b79f449cb6161d3f677ad3d25b71b110 SHA512 7c8d5f0a3ba376f1c4dd891772a0c87bed52027b8bcbaadfe30f0c79540e9058e68a706f6388dfc6a55f0970cdc8ef0b887eb924463d49a735e10b01bda0e727 +DIST slab-0.4.12.crate 19080 BLAKE2B 785a1b899fe01c8825f24d90b0b0bb31bded234810f59c71b7e44221387de33fcae220a7d0745f59f79c267673b76e7c8d9fa4c0dcbf8fc5d68be6562018d49b SHA512 cf7c971b99b043d8bc102732a109717cbbec114160e4f7cc4009c66739177778623403c33d6a32efd1620e0ac7b8743c36e0e5563082af7f92f1e4caeceea0d9 +DIST snafu-0.9.0.crate 77135 BLAKE2B 8aaf7065ab212445f290a626c11558e43f15ca68973299b757b911bc95b5329e080c42a79551225c13a4ffdfdc18bd634c3fa8cb25d3704d8ba675d3ad4e66c2 SHA512 3982887649d6c913dd597b4f5b5584f3135cdc4f3f56d57ba387ee538e52d746484d5877808f61631a801257427c329a16f57461b41c85797e45a86d79016b7e +DIST snafu-derive-0.9.0.crate 31370 BLAKE2B 2659a4707aa4d9bf9b080c88895a2befb029fe04005c9219650103845ddc92bf5464702ff94c744408697dbdfa52c0355a7237743c8fbc3a2e334b76007264a2 SHA512 4d0503bbcd3e469f2601c580dbc2f0d786b0ea6ccc426d11a85a75f2802dde71f02063666cb8493e62a7e03026a5808e49169234a448e5c92bc79f4b6f5e5089 +DIST strsim-0.11.1.crate 14266 BLAKE2B 252a9ede4241b165525486aa8855dece37af77f5b28e0e1858c4a5d2047db9fa958328db10989234aad69463ab51b2303785ec056c63ea8c95bf95e111ddabf2 SHA512 0cebe0155a92640e56db9a599ae62078cbb32e1d2da8bfa67ed0e8f410a7558dfcf7b3c2720ff5913282e291ecf076aed9fe9bf84c8d44e814a642b1bed3335c +DIST strum-0.28.0.crate 8550 BLAKE2B a43ac86204ffe8889e5ec8009bc742c9d13bb04001b92cf7e79faf84bbc4bfec2df3b0170faeede1de11f2c7826d8739fea29460a2c6918ed972ca747b4bffd5 SHA512 673d6aec90d89b1a31ec114723009748b2469c9c07b5e17e86fcd1655e745dfcda4dce7bc4423679903a4650a6693284454aba634cffdaa4735c63b0a475185a +DIST strum_macros-0.28.0.crate 30964 BLAKE2B b79612a6632a2f1b828a70e5c759e0fcc5996312e5d15adf43295bc04f570f09b91307e0e17941a1528d6eeb2fd640786c40fc4471616f622c310b9cd9890184 SHA512 a50f96bc94c2bfad8d9fd499a4f3f3f3c2cad07c92800867307c808efaf8ba192ee177e4bf7e67f19a717c89439df7773c1749047a9e0c3b0d5bf1d54a040d40 +DIST syn-2.0.117.crate 306011 BLAKE2B bbaec02c4322f522bdfc87caa4ce6fd1e09bbf8f4a102d9ed8728efacdd843a2750f616dce5b2d3a3e46bbb7d57439fbd10e328bc1d4a01e980986cd815798af SHA512 035c2e63542592b6a4058a2a82d4c2c1f5793f84fb1b04cbd393337a26fcf661a1f3bea439ce98a1fe943b1c4d36d2bda16df3bbc3fa6ca35e1548d530dc8416 +DIST tabled-0.18.0.crate 231662 BLAKE2B eb58977c5dfdced3ebd6c9744bf5a87e5ae2137162a3e9b23d1fcb59e1ba0a2a2ef1b73a3b499d6d149b9f8aa70ce2cd5250fb7c5f9295c54f54830ca6e45613 SHA512 85dda27d78b094a33c3d960bac9be72d28fc91325848a53c4583fa40a0caf09821bc832b88c298f63a18c6bdfa78e866ed6410e6557187105ab55065220f7f47 +DIST tabled_derive-0.10.0.crate 12251 BLAKE2B 4590bb63be8c38057ff9ac98c3a73e7bc462e5326d2725579e922b25bd7d5d482af961d75b1e9bc2e06cd9b22a55b6e9ca04d6030ab286594db18283dbdca266 SHA512 2a55dbcfd5cf2b8e4726ec1682c795008b7b95651c69da26ea8fb6f29d3930064f59c2788856fad4a9069927533c52cca0e5ee1e5d4def9dec37f09a3abc6d07 +DIST target-2.1.0.crate 6748 BLAKE2B 5bbe5afa835757063c1f7b8f8df05d2cbad5fb3a94a84c4677f9d63752ca6bc39ff588ffad22038493bcadfcdf80da16605a26d98cc6f772b1cb64ccbef66c59 SHA512 96506bd513a617060005f98c6354adcf66cfc733a73a7983e0061f5637aa915d9d8e987fc1430bbc9181bebbb956625c99912f5dae53492226b65cea8210c637 +DIST tempfile-3.27.0.crate 44780 BLAKE2B 898b8b00613c4617271febdd54dd1e5f66aca54c1e4b60067e508c87c15fe32f0ce2d30b3dd630ecf7083b046d579f31064fa72de09067981c920f4aab86f2ba SHA512 bb20b9b0c5d3301ad05f73f1de538ae240366d9aefa25ca823ba40041a8a11b4a7361a6a9ec03871b14230d42038d7af6d0b652c8c471935b481a1628b59314a +DIST temptree-0.2.0.crate 6520 BLAKE2B 8a1536fb0cd0d2e2e57d87fd0772f20432baf570f8d59c525687b2baafe363baccff603117152ab12e512a3b32c5b9197088fb1011b204b4eef8db5493d841e3 SHA512 4754a5842ffc9e2334f7a954c7596c46f68cea55c62a5d698653c6e84bcb401d825557f3875eb1f52904930141110c4f69c33f6b7eec07ce8d4a048ab60ba852 +DIST terminal_size-0.4.4.crate 10022 BLAKE2B 217873a3d3ff353e03c8612a4c428570b9ad10f1a01b7ecbf276082716e04934cd5d5a8f8fdf29f6eafa61a7909a4720bfa5b0ca139a4a25365b480dcf0877e9 SHA512 85061564489b4fcb8c5a958c66f6c26de4ac3ef7c95afc38464c0b294e56420a9a5bf533691db2282e6429de5405fe7b6273063c4e79c7c72ed0d00748e6008e +DIST thiserror-2.0.18.crate 28875 BLAKE2B 4edeb4a39f27204d417d673dd3e2c1dec67a5bcdf44aeea70a02715b6101da290b5ac1534908001bb7d758528777f5be30b428eaf13cf0d8afffdbece054f3f4 SHA512 5e20261c0f8898574b5668c743d292be1763a78f6431918f33eea2ee2badb40743af4f668ed245ad685a90c3ae23631a2ae8266569d8f1e7dea111f08ef12352 +DIST thiserror-impl-2.0.18.crate 21413 BLAKE2B 38d2dd849f6919b2735b23e32250c0750366f2a5ef9dc385262ec00fc8e0cef17ef902211bdacaffef4e59dfcde9ca2d84a0ce4d052a96b4233a21b168e6bfb3 SHA512 52a7b5a98cdc32f7d6911451d75f008599ba3775fecc1f7483b161cc4fa176e5b19659f10abf8189748d769fa23d3a22b774cc5102fce395c6f77a5f107b0553 +DIST typed-arena-2.0.2.crate 11848 BLAKE2B 1d2821519c959b8e5f32942fb106f836a9aa753a43058cad6898588f8e0d9abcbe7a94a91ec8d30c62e59833563df48229c6aeec8bf7a396de20895e39571d11 SHA512 33f43488ff63ab763e4330d124e3290ece41e50ab78b6f12dae3a2be4d7f5bdf6ec876ab3b1f8cd81874e335fc41f3a2254994f250d3d6aba682fce557a6a399 +DIST typenum-1.19.0.crate 76414 BLAKE2B 8083988e0bf1d7927377112b8939607f32af098f198a2bfcc2c5302170d9f6e5b29cf02d3cab16c1ecd0fb9f0a45ea3c6bd4a4e4baaf2dfdf8f694093300deeb SHA512 09ebcd7a2cc11f422469cf4fe706f1988bcd81d628e2bab3f54ae82b0aa5486d03a4392187a3736c13dc0c2027053387f89ac656caff72f36365c8be38bc7ff4 +DIST typenum-1.20.0.crate 105530 BLAKE2B cafd31fa726d6780e7c8eeb9a4785b8ecd1d846c49ad12d0d95666d9960066d16afeb0faab1d5ccd5a4dd47b98e0ae47efdc08fef953b0f2d254968084ed65b3 SHA512 2f511e72395ab9a3d3625de5d350e3a1d78d9192d69727cbb51efc1e41b2b6c28798a2a4347664b50978fdbe83e79568cfb6c53ff5f5656fd0cf0e3689803f54 +DIST unicase-2.9.0.crate 24368 BLAKE2B 6564ceec45d9bbac876cc12015e46f4efb415fdda4a37a62f8dc00ac93fa7a6a643887035caf0c6eb13b07571a2145e393080930fc5d1f71899794a942440409 SHA512 1255c6eb4cb7217f0ccb698f790115d88dac3dae3708832f9cdb135f6cd914b2653048463036bc396d0da0cf415251b53c70e27ad5a1cf39a9bb18d8112aae44 +DIST unicode-ident-1.0.24.crate 49298 BLAKE2B 34ba2906a3ebc06f52a4ba77dff96a8f3fb977718d260886fa9e051c5830765641b65a63977110f3a79f31fa177b385f81b01d56c80f6a0324d36eae72e2ebf0 SHA512 7be712d8d0075ac9341790180e312f66264d3e0255c91b38df0951baa5e446dec24551bb2125a66a1cb9b6ca2f1ea37c0cc15fa3dd74f398ecf4d5302c7dc259 +DIST unicode-segmentation-1.13.2.crate 111829 BLAKE2B dcca4af1f3d432c7f40366f7a29267a698cd0ee9a8d3fdb55c577c3456c75f1d664f8bd1f9a59f9b19b93f073a1af7f89bc7d70f87f7c8ade148187c9b8b4990 SHA512 79652f9c22e755530e3910e8a4e176cc882c4b9895755e1539e20820b6dd74cbd52dcc9185eb11f3f150214fb6a822a4aadb6fe967e9a590602008587c67cf77 +DIST unicode-width-0.2.2.crate 282768 BLAKE2B c03a04bb159969f32447c7823f50b2686c515dff4f7778d2cac07a87cb9488d44844b0bb0b51c6996d8fa1fcb65cf4e6a8a9e697d95c1be8373535bc8d7c4215 SHA512 a0ff6ccc1d154e5a100808d3109fe30afa048c3ff402f0a0de34dbff2d58a7403903002185b33bee7b04dcb578c9dea66225a8697f3cd997205680ae3abce965 +DIST unicode-xid-0.2.6.crate 15744 BLAKE2B b1bad25897717f6346f988d5a7c90c51fb842da113f19aa434a64add8f2e637258d9fab0f7b871fd2aac02e83c68359fc679b326232793cbc804523e2bff5056 SHA512 f68e78484479a5341b14d7e3391e691265851fa00feeca53af745479af6aa9b4ce3570456df785c8362043db9b04e2e57f9bad05d8305946f16af405bc611764 +DIST unsafe-libyaml-0.2.11.crate 62101 BLAKE2B 7ba17f2c19d96fc8999448594ba67bfc0eceaff47a39e560f856d13229ad5e69a9c8ba8794ec814e6b7c3cb7d597b7c7a366c8e880f17c0efc6a03a5677d82bf SHA512 a42c95eaed1ae2e438d3ba19ccd92337327c34f6174a43db80e1f37c507154249c7510e93f81726890c6032c89fe21b1876582afb7fbb811e3931480c4727712 +DIST utf8parse-0.2.2.crate 13499 BLAKE2B 095b5d219ab8ff04c06fd6303e03d913ae36a57845f0b2ca3217a40e31a54cb0fb5ecedbde165d28f5f60f1553d8252986d7098fa83befc84a7cb20bf3b76144 SHA512 f3dbf78fe924f1dc3cf9498b6e43fb10174699463f31091a7a8136d8f31ec84fc00e80e3d8551b7e86257e8b3573cfddb56fc0de797fdb2cde0e962a8f239266 +DIST uuid-1.23.0.crate 63006 BLAKE2B 77bcbf3c658f0bb5d09bed862b9a8720110d62094a2bf9065ab8f98e6c458e4213767a9152280bdd71941eae7077036deae56adbcdddc14fdcbbac4cbd030061 SHA512 60e476dcbc407a0447f362ee019abb128c0441503e0adacdcac5685ecc16aa680faa575b25fcce147e9c49bfb5b8fa04964a25c5d7e4e9870e0078bf8f18fabf +DIST uuid-1.23.1.crate 62932 BLAKE2B 8ff58079d6a1eacf2d1baaf1dba6ca5c5da84768a27e2f7f1f9843f6057ed634843ad96a6797b4fdee5a01716ebade8b99433a9b9b3dad794bb9a26d93c81059 SHA512 7f9222285c9e6635d9ed0b03ae945c2037bd7f7486bb05214355c19eb3fc0f7685b3f6b3bb58e158e1dd26cbf4772af7180420305f2ff001a69e90ea6f2c428e +DIST version_check-0.9.5.crate 15554 BLAKE2B 131e75cc287518831e142430e2a39b48e4275874f4473780d47a27552294097aa1cddb65c385583e1022478f940b495eb43c24a8b1617b8ac5a24af3340c0d72 SHA512 d11d5a2240ab0c67ea69db56561ce202201edeef9a8e5eda3d9ae7ab7bb5752d8f343fe7f6536d8383de8d55f9024efa84f66a0c21e69563b7a38c4a628014db +DIST wasi-0.11.1+wasi-snapshot-preview1.crate 28477 BLAKE2B bcc773ba28cbe8d820e9e9fbb275fb4451bc7f39b3bd88bcd93850bf2bdb5300489bd8eca27489ccc5f6269b00f4e1b505ae3a33a35d708cd5a414ad307be149 SHA512 29e3c903763db2580a15f50db487c5e1d4e90763e48d90a5b3f681e468a24f9df1a01773bd1ffa0e3cd293dd8cb4d6fbabfaa63c0e13889c811a56f4554ada49 +DIST wasip2-1.0.1+wasi-0.2.4.crate 132087 BLAKE2B 9ae5188981d55ab0cfc52668cd822bedde6b03104990bcd070f459a39ef75699a792bfbd33766cdfae852147c2f3ea236aa1d1b792e85c56be21b74aee2232af SHA512 56b88f97224b6b9763f4d2572e986609fc86a98f597930b5cbc8095d4184a0279286c8c79f6ace19bb08ba08854a408a61004bdc6b2f3b72d4f3fcb5e43edceb +DIST wasip3-0.4.0+wasi-0.3.0-rc-2026-01-06.crate 123354 BLAKE2B d8251ea31999f954eb1264bbc7792ba16a90aec3ed3112fe84b9a93dd8a0e493390b899be9e5e215ebebf644697d3bab680cb07d5e64617cbb57e6b2a28ae95f SHA512 fb136a5475fb4696902d4f4be43e0d5d28cf3bc1b6c83e5e7837499ee038f995c9f084064e2e4585dbc3bd260e0c7c95371526b04933f2c60fb6ce302416215d +DIST wasm-bindgen-0.2.115.crate 61610 BLAKE2B 6346ce8ddc8f4cbd8fe0365de9da7162cf2f64271b76bca907f46c94440afa52b302d76303fd0ead6964cf1db039fd6cfe13c20f1a7cbb6f6070978cbbc5d136 SHA512 a2cadff7677479be4ada7a725a3041de3a5d808bd9d0d731cfc9cefbfc5d43c5f6ab2561773ca83698f37dafd5b219599cde4095368c3c774365f323b1101171 +DIST wasm-bindgen-0.2.117.crate 61596 BLAKE2B c27f4e8965e4f802521d273ddbadd9fd4fb7582de15bf396f6cd098b53f55ff62cb28dbfa7aed8cdb2f9ef3dd41d5f7e35cd0cac5ae7c6a9e77616cf2039f68f SHA512 7be5118bbd15aeafdbd58af3889e7cd088031d3f1887a0bb5e86e808158dedbdb540f9d513db71adf0874ae93bc6e845ff70f59b98862ee1b76e8ffb53cf1226 +DIST wasm-bindgen-0.2.118.crate 61149 BLAKE2B 3d5655101b382f2870aebfa35eb38cee19402eae18cae102824876f01094e5f505b26ee6f1afafa786b0cbe6b94ecb5c292db54bb85cc453ecacf6fc602bf79f SHA512 a61545f1895fe5a6e9d33b321f8d6e888c73c44b524fc38ac667df4f0cf7cea785d072c3cffc7d7bb26d288ddce90683bcdab3ba09be929016cf1f742020e270 +DIST wasm-bindgen-0.2.121.crate 65838 BLAKE2B a112eae863aa19863974e72b1e204e921977efc5510e5ee17aa06ce02e746942deee967057f0de0887d29f5c88637f80150a6fc3e34a93058a07f259da607168 SHA512 a3420d0fc119b9e1b091afa24b08c9b3692bff28d0488426641c9478ca795a0fe3564120ddbdbb2856f44864e622bea715ce13012d45a6e1b0795ae7057b55df +DIST wasm-bindgen-macro-0.2.115.crate 9279 BLAKE2B e7ab76a9a125b6ffbd723b08fa461ad8be514011fc7af54a319600bbc258e7a9ec51726a4316e7b3fd75b5cbddf409663f7c908cafef08d30632f15799f98264 SHA512 353d04a52e8746ced675ac92c0cde0798c6b83e0e239b7ff81c46f172b33a5b9c36156a213e8069fd08db756b096e98c01f715005fde4af7fd261496484cbdf2 +DIST wasm-bindgen-macro-0.2.117.crate 9279 BLAKE2B 74bac5c375fd70c682a3fb7f80e45ec237af990d660e9d6bcff3ec117928edcb522c678abdda02de762ae1f593f8bb0a3a71800d1ed6f0e9383194026d8eb97e SHA512 0b736aa543abf13fc9fe1ff7159c22a3e1d208e11db68b229e807915169572b030640fb942a4f3327db170793d2b84d8268a19adca708dcaec90a2700fd54292 +DIST wasm-bindgen-macro-0.2.118.crate 9288 BLAKE2B fb4935cf037278752326a8ee4e78ca89738b426ebc14a90a63e1c37e7bb250e7bc4a08390448b1d49d7dfdc58d1e53ad98f08220c57187584740fa73950b365f SHA512 9370d4abeb445a0d8a89d0fa9156611dacdece4ff809e929987436ac2d6cfb1a3625b892a90f6c1e32f7541592415eb37259ada379b39b2aeddc8f3a2f8f1b3d +DIST wasm-bindgen-macro-0.2.121.crate 9294 BLAKE2B 762428020014a5d18e9bd8af1426be80553c573799c55792721c907c0136d77c98e21fdaee058136b0ffaa6e997c13599d0132d23ec8c91f8f330e5b7bad618f SHA512 844c4aceb5c1eef783d4ab678b189da004bbea4274de9744ea832d9644bbc08ea8b4a365ab2fcf33295fde235bfe53b21c29e7e30847d1cb0e265ed62302a1fe +DIST wasm-bindgen-macro-support-0.2.115.crate 63479 BLAKE2B 76fdf41d8f616ad193e4fff3f6d85d8699c9d8926549ea77b02966641c92b931b253bf8bb1a63c749a48a84995ceb2d53b55791ac1acf9344f43d97e09eeb89d SHA512 64111994ce01422726d57cbc564b503b8a8c5af77b7ccd72e23df05c8600ff1147ff8cd1ccc25b90ee08f353d2a286435a208d8b9a815ba7b79759f060d9832a +DIST wasm-bindgen-macro-support-0.2.117.crate 64391 BLAKE2B 8e35a4533f1c2984bb42e09402148eeca3c51a5e9f4312db4996b873c91456a3ca89eb35ac573e1711f46541bdb64c082365c6ba478ca31ac04814d14277cab9 SHA512 812d7c4842127547a0a0ab852036e43f9dfdf9cfce0535824e165d3016485517ee8cd2ce4979cfaee8ed389f8804ea654e72841873e28a1c7266069c72d0b358 +DIST wasm-bindgen-macro-support-0.2.118.crate 64823 BLAKE2B 22381eb0019bb582dd1b4aab1b33ac3684d6eb8b0a613d1f8909eea82a4df561844e340e81b7c0cadf452039889cb3c1b386aaa4f6c7d25d6852529bb28d8e09 SHA512 36896af83f1d9fc9f72b4709c600db787538b7e889b86a374ff933b5c29ef80d09a2599d54fec051b3559c896ed035243595fbdac834f909860ff47eab2f7185 +DIST wasm-bindgen-macro-support-0.2.121.crate 79901 BLAKE2B a2bf5277242d9f0e89583ed08e98c18e6f6f176342c4462379d00e12ebd7f442f8b157be015a36abaa541ad6a110acc0ff50c8f8b45aee29471568d4c741905f SHA512 ac01daf74ee83db1fd35a7733caeff29f29e1eace54b8b415c935b32b2d48d8802b30ffeea12f73f16785b670c25e5128c894a9bf173e2b112970c3ee1475197 +DIST wasm-bindgen-shared-0.2.115.crate 10545 BLAKE2B fc6a7f18366372be8d259ac4832273db5373cddb2857d42b1ec3f68deab6d63c122f2755252e9059e7e409deef259bb8cb5b9bfe762c57ab9a8631bc19512113 SHA512 260d8e205d4e9ea25b8a731305853dd726f00c3aa9f82d9494b99a4e869573b4ef3730b89818850bb22c1578278a5115fa202356e39f2d8622a5744c92f1e824 +DIST wasm-bindgen-shared-0.2.117.crate 10541 BLAKE2B b8e8bd84ed54f7512d5a96ba7afadbc04e3e1b045a5d11ea39cd66acf7de94d1dbc430313154cd9e84fb0e1c086520a8b0475c797eeea5240a86e159b50d6868 SHA512 74040fad00dc33dd86a5a5bdc6af549b7a31c2c7de6023547af0ae4af09192b48e4d3e11170ffe1fddea7962b7060144139cf13931c217af9e3aa61001593bda +DIST wasm-bindgen-shared-0.2.118.crate 10565 BLAKE2B a139fbbc5b63fec19708772d7f3cb457c2c24ca73a72618e4bdc65c8090390296e841a9ec5969d1cc0f90cd61351f43b5dd1d0462d08635d90bf01b24ef12b17 SHA512 916d6535f91aedf68b90d2491473d758244e664aee2d82734ed2bd377eaed90e929aa06ce95790ba120405337caea88624cf25fcedbe6af8b0820905e203fcd4 +DIST wasm-bindgen-shared-0.2.121.crate 11270 BLAKE2B 0b66cb8a2518ccf2faa14e292af265ae116304fdfe9fec284f856119c8168e9d0a05dbbcc945eed6bc9a0d4c25933e781a22a816cb43effe0497ad6702d57bcb SHA512 33c037993258552abebe2e3cb3fcd7064e768a4917c1ef3c87ba79b40a3201bdfd27793e78794ec09d7e257dae61a5a8ed283b7651be31c74c2384d4d62b8a86 +DIST wasm-encoder-0.244.0.crate 85804 BLAKE2B 6dabb55c635d13d1d56711a43c655dfcb74bb9f0be10bccd412c21b5dcd63a46b73ff40955ff28aa0fba9341fe22161c8d253762afd587eaf69a7ca49c06e285 SHA512 ab78662abd6bc9edcc14531a87a848eb6c26081ce9bcb9ff15415ceecb48dad98ab6066638947780c65d7689d11502d4dd2353ff3462b4f49e1c1a8c00d2c1d2 +DIST wasm-metadata-0.244.0.crate 21500 BLAKE2B 8da1035b6302c23b00792d90153f74f35eb9cbe913366b43ff7e5d81481c903396b32ad54a416a14b40ff8d4ba329c6fda8c203e4b16f1ab80b3bf4535cde72e SHA512 77677c68dafabacc9697c6090d01fdb171c33ca1663c86dcd3612630b2ea6c41232a7cee125ba416d373edb34ea8e0926d164012461e2ddca8d4d18597feb855 +DIST wasmparser-0.244.0.crate 265607 BLAKE2B fb982e84536afde140d972614bf6c2875ef169f0b68010393e61d8a1041e57d5355e8f0a57df0681ce4159f830e30a59affbd733656aa9c633ad959225007b11 SHA512 d1a1f549fe93e11cf4155a8f5840fa444505ca9184e28163917bd8ddb1d53cb4d2be0335e183ec24625a7db22dd5d7e22c93c697bdd4de0d537b54af4ed7d834 +DIST which-8.0.2.crate 27189 BLAKE2B c20c7c20a641888d273431087d3ea8d3334494fdc284a8c54698a84759e66c320869bdc30c9d9d0d66f264c1f1cfed3744f5da926608dc262ce09fbcfdc4716f SHA512 d3d08e991d3bd5aeb8dca5e3bca9f58c9917815d8ef51b1c9a11a02a12da08b8af0003fcaebc0b284e5d13b85c8d56b84cc4b6a29fa61ea408329e81b3099c0d +DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97 +DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2 +DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513 +DIST windows-core-0.62.2.crate 36932 BLAKE2B f291939153338efd768bee7cb3891814a1d46ed5cac1e2ea72a7ac66613842c02e1de89052a53e8b164d1055d9d4a138711929af897486b3a6da02e91aee3103 SHA512 b3b3e95b7ff6df91ebf866f8ec9c5e8f67134a26f1690d286f62fd756ebc5e2c59c583d4fdc213e5aaf6834f2693329f3eccbee83fa0567663cfa7d9d9ca549a +DIST windows-implement-0.60.2.crate 15325 BLAKE2B 1f4e5b6759224a74f006c3bfb9acd3bb5fb111fdcf6e4f5e838ca10ac200baf48261583386962d357deffbabea4f67f8e257b8ad8b01b5aee6fe67f3822a7c13 SHA512 212fd6c1f25da40f2131b07ce1c0a34c23177c4666bc518e00a9b4f2bd23c1d131bac565fde531c51f21167f9eb1591e381fc6bc44ce952f6945bad6547c1579 +DIST windows-interface-0.59.3.crate 11809 BLAKE2B c3f439e14e85175f12b4403295f063f53d03224ed1842ad3826fb2beb89c2884317105e28d9d9af2000e08b5bf2fd05befa48dcd0325baba168acb19c8341d86 SHA512 6fe54da90ca797a5e1927803febb07d1e2e4db0bdba5a9cd84d823dc9118390c0f988387e8c614949b9f3c3a0fd47743fd0ddec3200f897952c53a57bb34adee +DIST windows-link-0.2.1.crate 6133 BLAKE2B d1ca714178e6fe12bb3b4caeed9a52a36890989e77ae2dcd6f2d18ae4a21fb8479d304cdff63bb0a5f28acf44eaf104821cff83cd66b3a0406a5f33a800e3641 SHA512 afb0c87beb8914fd9a3e52db6f2f64a840470b9751b66c83892c24cb1c46cda63fb16b1aeafcaa5a1fc7c5ba01da46be63e5227cc108dede8b0bd27785498a6b +DIST windows-result-0.4.1.crate 13381 BLAKE2B 3960ffb7f15826bd2f8636133412872d7af9c2d89fde07d2183188083e22580ecbef11f423523aa864c0b199a494aabf1d6386d7c7fceeb7ad74575347efbd27 SHA512 a2b7cc53608b8243bf9b19adb75cdc1698b8caf78d939c3afc0c01b1e89f9cb951306cc1673f9b400b926437340681af641ee322f7e761a641ee40e52b21b9f2 +DIST windows-strings-0.5.1.crate 13966 BLAKE2B 9143cfa5a4184bf0aeb62f8c85d0629d7417b74727349cf46f0d1f28d0e255cc218ac5bc39fe1c7f0311c418f23644e84644b8e7833c5b1c8d1f523c3d38d728 SHA512 c1c3e620aeacbbba0159e789cf0a0261e943f626d21392a77ff00d321c867a0a6ea75054f594a63fcc86cb9ba6bb580d96c29e0a8fdffe90e73658aefc3472b2 +DIST windows-sys-0.60.2.crate 2518479 BLAKE2B c2e2f614066e5a9d7ec461d9d25bd441188797ad85e1e923baeb0193e82f5c138ae7fb4ad0255d483f60f7a94e3f5cd8373d01b7485c052c9498937bc40da992 SHA512 a48aa1b66479451e431032737b63dc62eac6f63c251534e258de75bbee4858829faf5e641756566f00e153b08548ba32beb437b5ea42e9531e3fcbd8eb25209d +DIST windows-sys-0.61.2.crate 2517186 BLAKE2B f4eab0b365aa1df8a353d634da5081237bef0f7b69f02ffcaba232a688e59dfe877c47114de64c81e3cbb929c2fea1143ed6bda56ce935e66d871a993ac29106 SHA512 e6c8f61f0724dafca7821ee9b9c07237ccfee69be269be2fa7318eb48b151285ecf63e860aa1fe303639222fe11268e3773f37c2dd79f923029af58c645edb3f +DIST windows-targets-0.53.5.crate 7126 BLAKE2B 17a0452fe72a42df4aec8b4ae7798bd611df4f3b093709aee7b8dc991fbc2351edd23e134d12412fb47e9930ae30476b55841d52be5e764fc42a7922e3134ad3 SHA512 285a2ad1c370d8485a84c3921b180416c79ad596ace5ce30a1100fe0d9725139e9302f5728d4874789d8abe5c53e9b30ff4738d969da1c07940bde2b01c7a203 +DIST windows_aarch64_gnullvm-0.53.1.crate 787748 BLAKE2B 78729e1107cf64ffc6a3d70c14cc93e7867578be51d3f6f442914a5f2d065fa86be843b72cd24d707eb59b779e9a719eb28d025619cdc219e379827acb4a16c2 SHA512 5e480e54af09c142ff75e77f733327dd3862f32620e0b075e02bf8119e955ef2f3acfa00f7c7a4d6a2b034d03d70c45e191a40c8af628484d0e76a0b15870cdc +DIST windows_aarch64_msvc-0.53.1.crate 838009 BLAKE2B 0a04f6d80bd0ab41964e9932040d6c748b6bf10d609bdd35074ba26d245a98281739c8ac68a3fe251d36148a53e1730b0ea2dd5347279e74dea881be43d67707 SHA512 81175036792cab41ede4e3a21ae324e638c39604e14c7a3dae8db4090cec45b385aca32416ccad50ab194ce06d3a71f2e12473767d680348795383dbb2d17426 +DIST windows_i686_gnu-0.53.1.crate 939775 BLAKE2B c6abfbe7b82c7fd95a483da467ce8f12a3777572e34c42777e6378976344c95e5a56e3e7ae47049e14de81aa26f276a723ac5cb61f2c62b141020a97a91f137b SHA512 5af8519d1e0d9947738d5aa339091695467a55b62fe97bac680eb469679180a54e9f65e2ef8d0c34d4e63ede8c16f34a0fbd1f54ff53924ebcd6cef17c3474d2 +DIST windows_i686_gnullvm-0.53.1.crate 857396 BLAKE2B 4fcc61c3634d7b905c946ccaa2f6d03ccf0feb6f8080337d5618959a532fddd5989dbc95d8559bbfb06335865387900e7cfe942cfb67a7724c3c00dc99b1d603 SHA512 492bee10b669c799a93b7ad98ee7a15c0ccde4d13697408612cd345cca2b7efc38b85c550eaf1b83470bee53ff3324045b7b751c3a31ac0e214b9965e05bbffc +DIST windows_i686_msvc-0.53.1.crate 907688 BLAKE2B f6ae6032836367e9a42261779661abd028d303cfb13c016dd1a745b21b58d62531dd0d7658a6c133d2bf1dd95c538cf24340bb50e6743a82d6be9a622ff371b7 SHA512 b78f2a21e88adb65bf8a81bfa8a133d6ebe18b8394220421bd5f10b619528f118a255dacf6e78014ddb4db8a27b936be7af6e137133d914e1cc0902139a0e0cd +DIST windows_x86_64_gnu-0.53.1.crate 903712 BLAKE2B b5a86bd4a760fb6d937dc5285d2c594245ed6bbc541ffd6cf6d169c7e4e8c4334523c06c7a59c52f100a05da7976193fbb535ff3bf7db30897d9940d4d5648a4 SHA512 e4c5bbc49202636c03953aa0fff1f1affed69970aae198cb4d1eeb5dda63b9e07b0cfaf46015bca3b8c48fd90d3552488a6a7b17b53aebf9776e996ccbf9c7d5 +DIST windows_x86_64_gnullvm-0.53.1.crate 787739 BLAKE2B b5e3aaba4ecd1e5e21a0b9ce5beaad3f9ef78249f21b3dbdb69af98d5f36d01f2ce65d3188788392b866f296548075857e2f904e30cb79db33fb3134fd78e946 SHA512 30b8919ee9ad36acfac4e28a3b22378ce11ee73d35de60dd9c9217adf14e85222da5526100b0252372e039e559a5bf734ba134b10f707657d542341056947588 +DIST windows_x86_64_msvc-0.53.1.crate 837950 BLAKE2B 5775d30ce763835fa26376d85e9ae6f598b817b8d32b01147e5d197c364a5071ce7b5b09ee6f611fcf30790af79c4e4282e04ced620190629eebcbccabb8d720 SHA512 bb724f4051db90ce49b552021e746769e5dfe3792b522416539960c27f9ace14f63c47f0f240d6563257377129b5f3ba2c262c6fea9610428aa860fe035f189c +DIST wit-bindgen-0.46.0.crate 60508 BLAKE2B 4422fb47880ecd70749d615ea6ed0a8bcb5941bd9de2c2164a6f1248574363408fcb634e0e9aa0af3e0f278c9311a81212818dff70ef39614646ffdd646b1fe7 SHA512 5d37ac5855797cfb906c983a70780d7cd29d70c4e5b6e54328fc18297feeb89ceda0aa732123280a12610015fbdb42bcd76aae12b1debb281b0a848016134548 +DIST wit-bindgen-0.51.0.crate 68035 BLAKE2B 0cb5e191f866c3782b6a1e822ecbae6e618e08371867462addb027dd5510638e72438d991777877d5754b2932afcb41f2edc1ec1426334a69311905f0f309b6a SHA512 61380c309630ad7f415d467daf1d639ad7a3e8dcd26e5f88aacf0230b52600f150e804821b6a1df9b79cc7fdd4f1d800d043ee7eca770b1947a3cf06f893711e +DIST wit-bindgen-core-0.51.0.crate 35048 BLAKE2B 1ce5f1bd6d1ceceaeb91d247f63745abfd25b539b57dc12321a2342f55da1207c697641a778ad6bff2bbece300fa52a788c7890e8dc49c5357f48292fed2a693 SHA512 eec78ac1566cc4f03b1d0d7d2e84c3d0fc2458a649c01a45c9c3781034078ed51b4a9852760fe96115006fb3415bcb31b1bf429cb3cac6e51e09a1c0cfc32ed0 +DIST wit-bindgen-rust-0.51.0.crate 57051 BLAKE2B 65c45b1b8b08681ded9bae2b4ac982770fa613bfe850128de1116a51ddd6366423c27e1f704817ad69dc05694e03aabb56af5bad3aeb0aba3cbc9415fad474e7 SHA512 7a5c29b92fa53ac8f8097b04a9507f471003edabcae0223d35180937b9254c62b24d9f4cef790000bd7bc7f6966af3aced2d7196359479480455baf5f4450f9f +DIST wit-bindgen-rust-macro-0.51.0.crate 14283 BLAKE2B 79bc4a4846ec73ae02fe69fcb7898297647a0c70526fbd555e79a4c76de968f0d4c9e2e497643d9c1e7403bb8176a2108ca25a7cef577b9db3ae04142a3bd1ba SHA512 bdf6ab20b484180bfde867b8c8b03c10fe02a9279895ece43fddbc20b1ffe771128590d3d4c72585e959512808682278e54983d11066e0192d84b7aee830e0e2 +DIST wit-component-0.244.0.crate 256882 BLAKE2B 5e9c706693e3064ffbbe28a23e64e5bc32f6772ed294dce3bd2972b8d951f2820ddcee5f9e651b1acc470740b021986cedb6f0ff7a9bdc2b6e13f997dd341024 SHA512 efbf91954b7c4fc9cf5835783245f3a8cda7e5883c6e244a3da85a64b6b2d74f44ffa5f73309de7451b5e6aaf614664869769b140872ab85913878e52e490a00 +DIST wit-parser-0.244.0.crate 159371 BLAKE2B f46db4840d3cbcd42e5d26b854247d172f8385810a10c437aaa6b67f3f72dcc230a8d75f4e5ccff6ea006c8a52c2fe92f39d9d90cb30ba594c02ae618fb66bb6 SHA512 c554a167ce9802fbc7537700376da70ed6a79f96adeba5a0e4c955a7cc4f2ae4f588071e25735903d4f509f2590341fa39b2edd018cf6d3bf8ad6477b2474b01 +DIST yansi-1.0.1.crate 75497 BLAKE2B c0d396c93a733ed6ec12aca3385d816f39b1f1fbed75da460f491f0cbfc30ba462842ebd1627fa8e5d2b7c0f37913a23747e5f5e23df1cb7c85d965e6c37159b SHA512 182c8c6c60a30a727d8f8b90bbf0527d91fa8ae9d8eb20e5414614b43ee6dc532f4b19241adbfb9299cb0004b39fe627036269b60b0c3860d9e1ea4413aca541 +DIST zmij-1.0.21.crate 26665 BLAKE2B e958b58e2213ad13185ec6df55d07e6c80169afa56133038fa66cefb4a9f49aa786249a486dc09b2d0a2f74e41c0d0d713135f38a84dff8f6239636a6bf3cadb SHA512 a488f11ec8721ddfe42e61d028a128818551de8fccd69d7824504e4ae2efccdc38f716fa5a10ef4de07a8a087e75e819c4a1e0790817e8539b5db697bde14585 diff --git a/dev-build/just/just-1.48.1.ebuild b/dev-build/just/just-1.48.1.ebuild new file mode 100644 index 000000000000..0b6aab84ea33 --- /dev/null +++ b/dev-build/just/just-1.48.1.ebuild @@ -0,0 +1,246 @@ +# Copyright 2024-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +RUST_MIN_VER="1.87.0" + +CRATES=" + aho-corasick@1.1.4 + android_system_properties@0.1.5 + ansi_term@0.12.1 + anstream@1.0.0 + anstyle-parse@1.0.0 + anstyle-query@1.1.5 + anstyle-wincon@3.0.11 + anstyle@1.0.14 + anyhow@1.0.102 + arrayref@0.3.9 + arrayvec@0.7.6 + autocfg@1.5.0 + bitflags@2.11.0 + blake3@1.8.3 + block-buffer@0.10.4 + block2@0.6.2 + bstr@1.12.1 + bumpalo@3.20.2 + bytecount@0.6.9 + camino@1.2.2 + cc@1.2.58 + cfg-if@1.0.4 + cfg_aliases@0.2.1 + chacha20@0.10.0 + chrono@0.4.44 + clap@4.6.0 + clap_builder@4.6.0 + clap_complete@4.6.0 + clap_derive@4.6.0 + clap_lex@1.1.0 + clap_mangen@0.3.0 + colorchoice@1.0.5 + constant_time_eq@0.4.2 + core-foundation-sys@0.8.7 + cpufeatures@0.2.17 + cpufeatures@0.3.0 + crossbeam-deque@0.8.6 + crossbeam-epoch@0.9.18 + crossbeam-utils@0.8.21 + crypto-common@0.1.7 + ctrlc@3.5.2 + derive-where@1.6.1 + diff@0.1.13 + digest@0.10.7 + dirs-sys@0.5.0 + dirs@6.0.0 + dispatch2@0.3.1 + dotenvy@0.15.7 + edit-distance@2.2.2 + equivalent@1.0.2 + errno@0.3.14 + fastrand@2.3.0 + find-msvc-tools@0.1.9 + fnv@1.0.7 + foldhash@0.1.5 + generic-array@0.14.7 + getopts@0.2.24 + getrandom@0.2.17 + getrandom@0.4.2 + hashbrown@0.15.5 + hashbrown@0.16.1 + heck@0.5.0 + hermit-abi@0.5.2 + iana-time-zone-haiku@0.1.2 + iana-time-zone@0.1.65 + id-arena@2.3.0 + indexmap@2.13.0 + is_executable@1.0.5 + is_terminal_polyfill@1.70.2 + itoa@1.0.18 + js-sys@0.3.92 + leb128fmt@0.1.0 + lexiclean@0.0.1 + libc@0.2.183 + libredox@0.1.15 + linux-raw-sys@0.12.1 + log@0.4.29 + memchr@2.8.0 + memmap2@0.9.10 + nix@0.31.2 + num-traits@0.2.19 + num_cpus@1.17.0 + objc2-encode@4.1.0 + objc2@0.6.4 + once_cell@1.21.4 + once_cell_polyfill@1.70.2 + option-ext@0.2.0 + papergrid@0.14.0 + percent-encoding@2.3.2 + pretty_assertions@1.4.1 + prettyplease@0.2.37 + proc-macro-error-attr2@2.0.0 + proc-macro-error2@2.0.1 + proc-macro2@1.0.106 + pulldown-cmark-to-cmark@10.0.4 + pulldown-cmark@0.9.6 + quote@1.0.45 + r-efi@6.0.0 + rand@0.10.0 + rand_core@0.10.0 + rayon-core@1.13.0 + redox_users@0.5.2 + regex-automata@0.4.14 + regex-syntax@0.8.10 + regex@1.12.3 + roff@1.1.0 + rustix@1.1.4 + rustversion@1.0.22 + ryu@1.0.23 + semver@1.0.27 + serde@1.0.228 + serde_core@1.0.228 + serde_derive@1.0.228 + serde_json@1.0.149 + serde_yaml@0.9.34+deprecated + sha2@0.10.9 + shellexpand@3.1.2 + shlex@1.3.0 + similar@2.7.0 + snafu-derive@0.9.0 + snafu@0.9.0 + strsim@0.11.1 + strum@0.28.0 + strum_macros@0.28.0 + syn@2.0.117 + tabled@0.18.0 + tabled_derive@0.10.0 + target@2.1.0 + tempfile@3.27.0 + temptree@0.2.0 + terminal_size@0.4.4 + thiserror-impl@2.0.18 + thiserror@2.0.18 + typed-arena@2.0.2 + typenum@1.19.0 + unicase@2.9.0 + unicode-ident@1.0.24 + unicode-segmentation@1.13.2 + unicode-width@0.2.2 + unicode-xid@0.2.6 + unsafe-libyaml@0.2.11 + utf8parse@0.2.2 + uuid@1.23.0 + version_check@0.9.5 + wasi@0.11.1+wasi-snapshot-preview1 + wasip2@1.0.1+wasi-0.2.4 + wasip3@0.4.0+wasi-0.3.0-rc-2026-01-06 + wasm-bindgen-macro-support@0.2.115 + wasm-bindgen-macro@0.2.115 + wasm-bindgen-shared@0.2.115 + wasm-bindgen@0.2.115 + wasm-encoder@0.244.0 + wasm-metadata@0.244.0 + wasmparser@0.244.0 + which@8.0.2 + winapi-i686-pc-windows-gnu@0.4.0 + winapi-x86_64-pc-windows-gnu@0.4.0 + winapi@0.3.9 + windows-core@0.62.2 + windows-implement@0.60.2 + windows-interface@0.59.3 + windows-link@0.2.1 + windows-result@0.4.1 + windows-strings@0.5.1 + windows-sys@0.60.2 + windows-sys@0.61.2 + windows-targets@0.53.5 + windows_aarch64_gnullvm@0.53.1 + windows_aarch64_msvc@0.53.1 + windows_i686_gnu@0.53.1 + windows_i686_gnullvm@0.53.1 + windows_i686_msvc@0.53.1 + windows_x86_64_gnu@0.53.1 + windows_x86_64_gnullvm@0.53.1 + windows_x86_64_msvc@0.53.1 + wit-bindgen-core@0.51.0 + wit-bindgen-rust-macro@0.51.0 + wit-bindgen-rust@0.51.0 + wit-bindgen@0.46.0 + wit-bindgen@0.51.0 + wit-component@0.244.0 + wit-parser@0.244.0 + yansi@1.0.1 + zmij@1.0.21 + ${PN}@${PV} +" + +inherit cargo shell-completion toolchain-funcs + +DESCRIPTION="Just a command runner (with syntax inspired by 'make')" +HOMEPAGE=" + https://just.systems/ + https://crates.io/crates/just + https://github.com/casey/just +" +SRC_URI="${CARGO_CRATE_URIS}" + +LICENSE="CC0-1.0" +# Dependent crate licenses +LICENSE+=" Apache-2.0 BSD-2 CC0-1.0 MIT MPL-2.0 Unicode-3.0 ZLIB" +SLOT="0" +KEYWORDS="amd64 ~arm64" + +QA_FLAGS_IGNORED="usr/bin/${PN}" + +src_test() { + default +} + +src_prepare() { + default + tc-export CC +} + +src_install() { + local DOCS=( README.md ) + + cargo_src_install + + mkdir man || die + $(cargo_target_dir)/just --man > man/just.1 || die + + doman man/* + + einstalldocs + + # bash-completion + $(cargo_target_dir)/just --completions bash > completions/just.bash || die + newbashcomp "completions/${PN}.bash" "${PN}" + + # zsh-completion + $(cargo_target_dir)/just --completions zsh > completions/just.zsh || die + newzshcomp "completions/${PN}.zsh" "_${PN}" + + # fish-completion + $(cargo_target_dir)/just --completions fish > completions/just.fish || die + dofishcomp "completions/${PN}.fish" +} diff --git a/dev-build/just/just-1.49.0.ebuild b/dev-build/just/just-1.49.0.ebuild new file mode 100644 index 000000000000..853b9739f9c3 --- /dev/null +++ b/dev-build/just/just-1.49.0.ebuild @@ -0,0 +1,245 @@ +# Copyright 2024-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +RUST_MIN_VER="1.87.0" + +CRATES=" + aho-corasick@1.1.4 + android_system_properties@0.1.5 + ansi_term@0.12.1 + anstream@1.0.0 + anstyle-parse@1.0.0 + anstyle-query@1.1.5 + anstyle-wincon@3.0.11 + anstyle@1.0.14 + anyhow@1.0.102 + arrayref@0.3.9 + arrayvec@0.7.6 + autocfg@1.5.0 + bitflags@2.11.0 + blake3@1.8.4 + block-buffer@0.10.4 + block2@0.6.2 + bstr@1.12.1 + bumpalo@3.20.2 + bytecount@0.6.9 + camino@1.2.2 + cc@1.2.59 + cfg-if@1.0.4 + cfg_aliases@0.2.1 + chacha20@0.10.0 + chrono@0.4.44 + clap@4.6.0 + clap_builder@4.6.0 + clap_complete@4.6.0 + clap_derive@4.6.0 + clap_lex@1.1.0 + clap_mangen@0.3.0 + colorchoice@1.0.5 + constant_time_eq@0.4.2 + core-foundation-sys@0.8.7 + cpufeatures@0.2.17 + cpufeatures@0.3.0 + crossbeam-deque@0.8.6 + crossbeam-epoch@0.9.18 + crossbeam-utils@0.8.21 + crypto-common@0.1.7 + ctrlc@3.5.2 + diff@0.1.13 + digest@0.10.7 + dirs-sys@0.5.0 + dirs@6.0.0 + dispatch2@0.3.1 + dotenvy@0.15.7 + edit-distance@2.2.2 + equivalent@1.0.2 + errno@0.3.14 + fastrand@2.4.0 + find-msvc-tools@0.1.9 + fnv@1.0.7 + foldhash@0.1.5 + generic-array@0.14.7 + getopts@0.2.24 + getrandom@0.2.17 + getrandom@0.4.2 + hashbrown@0.15.5 + hashbrown@0.16.1 + heck@0.5.0 + hermit-abi@0.5.2 + iana-time-zone-haiku@0.1.2 + iana-time-zone@0.1.65 + id-arena@2.3.0 + indexmap@2.13.1 + is_executable@1.0.5 + is_terminal_polyfill@1.70.2 + itoa@1.0.18 + js-sys@0.3.94 + leb128fmt@0.1.0 + lexiclean@0.0.1 + libc@0.2.184 + libredox@0.1.15 + linux-raw-sys@0.12.1 + log@0.4.29 + memchr@2.8.0 + memmap2@0.9.10 + nix@0.31.2 + num-traits@0.2.19 + num_cpus@1.17.0 + objc2-encode@4.1.0 + objc2@0.6.4 + once_cell@1.21.4 + once_cell_polyfill@1.70.2 + option-ext@0.2.0 + papergrid@0.14.0 + percent-encoding@2.3.2 + pretty_assertions@1.4.1 + prettyplease@0.2.37 + proc-macro-error-attr2@2.0.0 + proc-macro-error2@2.0.1 + proc-macro2@1.0.106 + pulldown-cmark-to-cmark@10.0.4 + pulldown-cmark@0.9.6 + quote@1.0.45 + r-efi@6.0.0 + rand@0.10.0 + rand_core@0.10.0 + rayon-core@1.13.0 + redox_users@0.5.2 + regex-automata@0.4.14 + regex-syntax@0.8.10 + regex@1.12.3 + roff@1.1.1 + rustix@1.1.4 + rustversion@1.0.22 + ryu@1.0.23 + semver@1.0.28 + serde@1.0.228 + serde_core@1.0.228 + serde_derive@1.0.228 + serde_json@1.0.149 + serde_yaml@0.9.34+deprecated + sha2@0.10.9 + shellexpand@3.1.2 + shlex@1.3.0 + similar@3.0.0 + snafu-derive@0.9.0 + snafu@0.9.0 + strsim@0.11.1 + strum@0.28.0 + strum_macros@0.28.0 + syn@2.0.117 + tabled@0.18.0 + tabled_derive@0.10.0 + target@2.1.0 + tempfile@3.27.0 + temptree@0.2.0 + terminal_size@0.4.4 + thiserror-impl@2.0.18 + thiserror@2.0.18 + typed-arena@2.0.2 + typenum@1.19.0 + unicase@2.9.0 + unicode-ident@1.0.24 + unicode-segmentation@1.13.2 + unicode-width@0.2.2 + unicode-xid@0.2.6 + unsafe-libyaml@0.2.11 + utf8parse@0.2.2 + uuid@1.23.0 + version_check@0.9.5 + wasi@0.11.1+wasi-snapshot-preview1 + wasip2@1.0.1+wasi-0.2.4 + wasip3@0.4.0+wasi-0.3.0-rc-2026-01-06 + wasm-bindgen-macro-support@0.2.117 + wasm-bindgen-macro@0.2.117 + wasm-bindgen-shared@0.2.117 + wasm-bindgen@0.2.117 + wasm-encoder@0.244.0 + wasm-metadata@0.244.0 + wasmparser@0.244.0 + which@8.0.2 + winapi-i686-pc-windows-gnu@0.4.0 + winapi-x86_64-pc-windows-gnu@0.4.0 + winapi@0.3.9 + windows-core@0.62.2 + windows-implement@0.60.2 + windows-interface@0.59.3 + windows-link@0.2.1 + windows-result@0.4.1 + windows-strings@0.5.1 + windows-sys@0.60.2 + windows-sys@0.61.2 + windows-targets@0.53.5 + windows_aarch64_gnullvm@0.53.1 + windows_aarch64_msvc@0.53.1 + windows_i686_gnu@0.53.1 + windows_i686_gnullvm@0.53.1 + windows_i686_msvc@0.53.1 + windows_x86_64_gnu@0.53.1 + windows_x86_64_gnullvm@0.53.1 + windows_x86_64_msvc@0.53.1 + wit-bindgen-core@0.51.0 + wit-bindgen-rust-macro@0.51.0 + wit-bindgen-rust@0.51.0 + wit-bindgen@0.46.0 + wit-bindgen@0.51.0 + wit-component@0.244.0 + wit-parser@0.244.0 + yansi@1.0.1 + zmij@1.0.21 + ${PN}@${PV} +" + +inherit cargo shell-completion toolchain-funcs + +DESCRIPTION="Just a command runner (with syntax inspired by 'make')" +HOMEPAGE=" + https://just.systems/ + https://crates.io/crates/just + https://github.com/casey/just +" +SRC_URI="${CARGO_CRATE_URIS}" + +LICENSE="CC0-1.0" +# Dependent crate licenses +LICENSE+=" Apache-2.0 BSD-2 CC0-1.0 MIT MPL-2.0 Unicode-3.0 ZLIB" +SLOT="0" +KEYWORDS="amd64 ~arm64" + +QA_FLAGS_IGNORED="usr/bin/${PN}" + +src_test() { + default +} + +src_prepare() { + default + tc-export CC +} + +src_install() { + local DOCS=( README.md ) + + cargo_src_install + + mkdir man || die + $(cargo_target_dir)/just --man > man/just.1 || die + + doman man/* + + einstalldocs + + # bash-completion + $(cargo_target_dir)/just --completions bash > completions/just.bash || die + newbashcomp "completions/${PN}.bash" "${PN}" + + # zsh-completion + $(cargo_target_dir)/just --completions zsh > completions/just.zsh || die + newzshcomp "completions/${PN}.zsh" "_${PN}" + + # fish-completion + $(cargo_target_dir)/just --completions fish > completions/just.fish || die + dofishcomp "completions/${PN}.fish" +} diff --git a/dev-build/just/just-1.50.0.ebuild b/dev-build/just/just-1.50.0.ebuild new file mode 100644 index 000000000000..b500da7a0191 --- /dev/null +++ b/dev-build/just/just-1.50.0.ebuild @@ -0,0 +1,245 @@ +# Copyright 2024-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +RUST_MIN_VER="1.87.0" + +CRATES=" + aho-corasick@1.1.4 + android_system_properties@0.1.5 + ansi_term@0.12.1 + anstream@1.0.0 + anstyle-parse@1.0.0 + anstyle-query@1.1.5 + anstyle-wincon@3.0.11 + anstyle@1.0.14 + anyhow@1.0.102 + arrayref@0.3.9 + arrayvec@0.7.6 + autocfg@1.5.0 + bitflags@2.11.1 + blake3@1.8.4 + block-buffer@0.10.4 + block2@0.6.2 + bstr@1.12.1 + bumpalo@3.20.2 + bytecount@0.6.9 + camino@1.2.2 + cc@1.2.60 + cfg-if@1.0.4 + cfg_aliases@0.2.1 + chacha20@0.10.0 + chrono@0.4.44 + clap@4.6.1 + clap_builder@4.6.0 + clap_complete@4.6.2 + clap_derive@4.6.1 + clap_lex@1.1.0 + clap_mangen@0.3.0 + colorchoice@1.0.5 + constant_time_eq@0.4.2 + core-foundation-sys@0.8.7 + cpufeatures@0.2.17 + cpufeatures@0.3.0 + crossbeam-deque@0.8.6 + crossbeam-epoch@0.9.18 + crossbeam-utils@0.8.21 + crypto-common@0.1.7 + ctrlc@3.5.2 + diff@0.1.13 + digest@0.10.7 + dirs-sys@0.5.0 + dirs@6.0.0 + dispatch2@0.3.1 + dotenvy@0.15.7 + edit-distance@2.2.2 + equivalent@1.0.2 + errno@0.3.14 + fastrand@2.4.1 + find-msvc-tools@0.1.9 + fnv@1.0.7 + foldhash@0.1.5 + generic-array@0.14.7 + getopts@0.2.24 + getrandom@0.2.17 + getrandom@0.4.2 + hashbrown@0.15.5 + hashbrown@0.17.0 + heck@0.5.0 + hermit-abi@0.5.2 + iana-time-zone-haiku@0.1.2 + iana-time-zone@0.1.65 + id-arena@2.3.0 + indexmap@2.14.0 + is_executable@1.0.5 + is_terminal_polyfill@1.70.2 + itoa@1.0.18 + js-sys@0.3.95 + leb128fmt@0.1.0 + lexiclean@0.0.1 + libc@0.2.185 + libredox@0.1.16 + linux-raw-sys@0.12.1 + log@0.4.29 + memchr@2.8.0 + memmap2@0.9.10 + nix@0.31.2 + num-traits@0.2.19 + num_cpus@1.17.0 + objc2-encode@4.1.0 + objc2@0.6.4 + once_cell@1.21.4 + once_cell_polyfill@1.70.2 + option-ext@0.2.0 + papergrid@0.14.0 + percent-encoding@2.3.2 + pretty_assertions@1.4.1 + prettyplease@0.2.37 + proc-macro-error-attr2@2.0.0 + proc-macro-error2@2.0.1 + proc-macro2@1.0.106 + pulldown-cmark-to-cmark@10.0.4 + pulldown-cmark@0.9.6 + quote@1.0.45 + r-efi@6.0.0 + rand@0.10.1 + rand_core@0.10.1 + rayon-core@1.13.0 + redox_users@0.5.2 + regex-automata@0.4.14 + regex-syntax@0.8.10 + regex@1.12.3 + roff@1.1.1 + rustix@1.1.4 + rustversion@1.0.22 + ryu@1.0.23 + semver@1.0.28 + serde@1.0.228 + serde_core@1.0.228 + serde_derive@1.0.228 + serde_json@1.0.149 + serde_yaml@0.9.34+deprecated + sha2@0.10.9 + shellexpand@3.1.2 + shlex@1.3.0 + similar@3.1.0 + snafu-derive@0.9.0 + snafu@0.9.0 + strsim@0.11.1 + strum@0.28.0 + strum_macros@0.28.0 + syn@2.0.117 + tabled@0.18.0 + tabled_derive@0.10.0 + target@2.1.0 + tempfile@3.27.0 + temptree@0.2.0 + terminal_size@0.4.4 + thiserror-impl@2.0.18 + thiserror@2.0.18 + typed-arena@2.0.2 + typenum@1.20.0 + unicase@2.9.0 + unicode-ident@1.0.24 + unicode-segmentation@1.13.2 + unicode-width@0.2.2 + unicode-xid@0.2.6 + unsafe-libyaml@0.2.11 + utf8parse@0.2.2 + uuid@1.23.1 + version_check@0.9.5 + wasi@0.11.1+wasi-snapshot-preview1 + wasip2@1.0.1+wasi-0.2.4 + wasip3@0.4.0+wasi-0.3.0-rc-2026-01-06 + wasm-bindgen-macro-support@0.2.118 + wasm-bindgen-macro@0.2.118 + wasm-bindgen-shared@0.2.118 + wasm-bindgen@0.2.118 + wasm-encoder@0.244.0 + wasm-metadata@0.244.0 + wasmparser@0.244.0 + which@8.0.2 + winapi-i686-pc-windows-gnu@0.4.0 + winapi-x86_64-pc-windows-gnu@0.4.0 + winapi@0.3.9 + windows-core@0.62.2 + windows-implement@0.60.2 + windows-interface@0.59.3 + windows-link@0.2.1 + windows-result@0.4.1 + windows-strings@0.5.1 + windows-sys@0.60.2 + windows-sys@0.61.2 + windows-targets@0.53.5 + windows_aarch64_gnullvm@0.53.1 + windows_aarch64_msvc@0.53.1 + windows_i686_gnu@0.53.1 + windows_i686_gnullvm@0.53.1 + windows_i686_msvc@0.53.1 + windows_x86_64_gnu@0.53.1 + windows_x86_64_gnullvm@0.53.1 + windows_x86_64_msvc@0.53.1 + wit-bindgen-core@0.51.0 + wit-bindgen-rust-macro@0.51.0 + wit-bindgen-rust@0.51.0 + wit-bindgen@0.46.0 + wit-bindgen@0.51.0 + wit-component@0.244.0 + wit-parser@0.244.0 + yansi@1.0.1 + zmij@1.0.21 + ${PN}@${PV} +" + +inherit cargo shell-completion toolchain-funcs + +DESCRIPTION="Just a command runner (with syntax inspired by 'make')" +HOMEPAGE=" + https://just.systems/ + https://crates.io/crates/just + https://github.com/casey/just +" +SRC_URI="${CARGO_CRATE_URIS}" + +LICENSE="CC0-1.0" +# Dependent crate licenses +LICENSE+=" Apache-2.0 BSD-2 CC0-1.0 MIT MPL-2.0 Unicode-3.0 ZLIB" +SLOT="0" +KEYWORDS="~amd64 ~arm64" + +QA_FLAGS_IGNORED="usr/bin/${PN}" + +src_test() { + default +} + +src_prepare() { + default + tc-export CC +} + +src_install() { + local DOCS=( README.md ) + + cargo_src_install + + mkdir man || die + $(cargo_target_dir)/just --man > man/just.1 || die + + doman man/* + + einstalldocs + + # bash-completion + $(cargo_target_dir)/just --completions bash > completions/just.bash || die + newbashcomp "completions/${PN}.bash" "${PN}" + + # zsh-completion + $(cargo_target_dir)/just --completions zsh > completions/just.zsh || die + newzshcomp "completions/${PN}.zsh" "_${PN}" + + # fish-completion + $(cargo_target_dir)/just --completions fish > completions/just.fish || die + dofishcomp "completions/${PN}.fish" +} diff --git a/dev-build/just/just-1.51.0.ebuild b/dev-build/just/just-1.51.0.ebuild new file mode 100644 index 000000000000..c0332ec02895 --- /dev/null +++ b/dev-build/just/just-1.51.0.ebuild @@ -0,0 +1,248 @@ +# Copyright 2024-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +RUST_MIN_VER="1.87.0" + +CRATES=" + aho-corasick@1.1.4 + android_system_properties@0.1.5 + ansi_term@0.12.1 + anstream@1.0.0 + anstyle-parse@1.0.0 + anstyle-query@1.1.5 + anstyle-wincon@3.0.11 + anstyle@1.0.14 + anyhow@1.0.102 + arrayref@0.3.9 + arrayvec@0.7.6 + autocfg@1.5.0 + bitflags@2.11.1 + blake3@1.8.5 + block-buffer@0.10.4 + block2@0.6.2 + bstr@1.12.1 + bumpalo@3.20.2 + bytecount@0.6.9 + camino@1.2.2 + cc@1.2.62 + cfg-if@1.0.4 + cfg_aliases@0.2.1 + chacha20@0.10.0 + chrono@0.4.44 + clap@4.6.1 + clap_builder@4.6.0 + clap_complete@4.6.4 + clap_derive@4.6.1 + clap_lex@1.1.0 + clap_mangen@0.3.0 + colorchoice@1.0.5 + constant_time_eq@0.4.2 + core-foundation-sys@0.8.7 + cpufeatures@0.2.17 + cpufeatures@0.3.0 + crossbeam-deque@0.8.6 + crossbeam-epoch@0.9.18 + crossbeam-utils@0.8.21 + crypto-common@0.1.7 + ctrlc@3.5.2 + diff@0.1.13 + digest@0.10.7 + dirs-sys@0.5.0 + dirs@6.0.0 + dispatch2@0.3.1 + dotenvy@0.15.7 + equivalent@1.0.2 + errno@0.3.14 + fastrand@2.4.1 + find-msvc-tools@0.1.9 + fnv@1.0.7 + foldhash@0.1.5 + futures-core@0.3.32 + futures-task@0.3.32 + futures-util@0.3.32 + generic-array@0.14.7 + getopts@0.2.24 + getrandom@0.2.17 + getrandom@0.4.2 + hashbrown@0.15.5 + hashbrown@0.17.1 + heck@0.5.0 + hermit-abi@0.5.2 + iana-time-zone-haiku@0.1.2 + iana-time-zone@0.1.65 + id-arena@2.3.0 + indexmap@2.14.0 + is_executable@1.0.5 + is_terminal_polyfill@1.70.2 + itoa@1.0.18 + js-sys@0.3.98 + leb128fmt@0.1.0 + lexiclean@0.0.1 + libc@0.2.186 + libredox@0.1.16 + linux-raw-sys@0.12.1 + log@0.4.29 + memchr@2.8.0 + memmap2@0.9.10 + nix@0.31.2 + num-traits@0.2.19 + num_cpus@1.17.0 + objc2-encode@4.1.0 + objc2@0.6.4 + once_cell@1.21.4 + once_cell_polyfill@1.70.2 + option-ext@0.2.0 + papergrid@0.14.0 + percent-encoding@2.3.2 + pin-project-lite@0.2.17 + pretty_assertions@1.4.1 + prettyplease@0.2.37 + proc-macro-error-attr2@2.0.0 + proc-macro-error2@2.0.1 + proc-macro2@1.0.106 + pulldown-cmark-to-cmark@10.0.4 + pulldown-cmark@0.9.6 + quote@1.0.45 + r-efi@6.0.0 + rand@0.10.1 + rand_core@0.10.1 + rayon-core@1.13.0 + redox_users@0.5.2 + regex-automata@0.4.14 + regex-syntax@0.8.10 + regex@1.12.3 + roff@1.1.1 + rustix@1.1.4 + rustversion@1.0.22 + ryu@1.0.23 + semver@1.0.28 + serde@1.0.228 + serde_core@1.0.228 + serde_derive@1.0.228 + serde_json@1.0.149 + serde_yaml@0.9.34+deprecated + sha2@0.10.9 + shellexpand@3.1.2 + shlex@1.3.0 + similar@3.1.0 + slab@0.4.12 + snafu-derive@0.9.0 + snafu@0.9.0 + strsim@0.11.1 + strum@0.28.0 + strum_macros@0.28.0 + syn@2.0.117 + tabled@0.18.0 + tabled_derive@0.10.0 + tempfile@3.27.0 + temptree@0.2.0 + terminal_size@0.4.4 + thiserror-impl@2.0.18 + thiserror@2.0.18 + typed-arena@2.0.2 + typenum@1.20.0 + unicase@2.9.0 + unicode-ident@1.0.24 + unicode-segmentation@1.13.2 + unicode-width@0.2.2 + unicode-xid@0.2.6 + unsafe-libyaml@0.2.11 + utf8parse@0.2.2 + uuid@1.23.1 + version_check@0.9.5 + wasi@0.11.1+wasi-snapshot-preview1 + wasip2@1.0.1+wasi-0.2.4 + wasip3@0.4.0+wasi-0.3.0-rc-2026-01-06 + wasm-bindgen-macro-support@0.2.121 + wasm-bindgen-macro@0.2.121 + wasm-bindgen-shared@0.2.121 + wasm-bindgen@0.2.121 + wasm-encoder@0.244.0 + wasm-metadata@0.244.0 + wasmparser@0.244.0 + which@8.0.2 + winapi-i686-pc-windows-gnu@0.4.0 + winapi-x86_64-pc-windows-gnu@0.4.0 + winapi@0.3.9 + windows-core@0.62.2 + windows-implement@0.60.2 + windows-interface@0.59.3 + windows-link@0.2.1 + windows-result@0.4.1 + windows-strings@0.5.1 + windows-sys@0.60.2 + windows-sys@0.61.2 + windows-targets@0.53.5 + windows_aarch64_gnullvm@0.53.1 + windows_aarch64_msvc@0.53.1 + windows_i686_gnu@0.53.1 + windows_i686_gnullvm@0.53.1 + windows_i686_msvc@0.53.1 + windows_x86_64_gnu@0.53.1 + windows_x86_64_gnullvm@0.53.1 + windows_x86_64_msvc@0.53.1 + wit-bindgen-core@0.51.0 + wit-bindgen-rust-macro@0.51.0 + wit-bindgen-rust@0.51.0 + wit-bindgen@0.46.0 + wit-bindgen@0.51.0 + wit-component@0.244.0 + wit-parser@0.244.0 + yansi@1.0.1 + zmij@1.0.21 + ${PN}@${PV} +" + +inherit cargo shell-completion toolchain-funcs + +DESCRIPTION="Just a command runner (with syntax inspired by 'make')" +HOMEPAGE=" + https://just.systems/ + https://crates.io/crates/just + https://github.com/casey/just +" +SRC_URI="${CARGO_CRATE_URIS}" + +LICENSE="CC0-1.0" +# Dependent crate licenses +LICENSE+=" Apache-2.0 BSD-2 CC0-1.0 MIT MPL-2.0 Unicode-3.0 ZLIB" +SLOT="0" +KEYWORDS="~amd64 ~arm64" + +QA_FLAGS_IGNORED="usr/bin/${PN}" + +src_test() { + default +} + +src_prepare() { + default + tc-export CC +} + +src_install() { + local DOCS=( README.md ) + + cargo_src_install + + mkdir man || die + $(cargo_target_dir)/just --man > man/just.1 || die + + doman man/* + + einstalldocs + + # bash-completion + $(cargo_target_dir)/just --completions bash > completions/just.bash || die + newbashcomp "completions/${PN}.bash" "${PN}" + + # zsh-completion + $(cargo_target_dir)/just --completions zsh > completions/just.zsh || die + newzshcomp "completions/${PN}.zsh" "_${PN}" + + # fish-completion + $(cargo_target_dir)/just --completions fish > completions/just.fish || die + dofishcomp "completions/${PN}.fish" +} diff --git a/dev-build/just/metadata.xml b/dev-build/just/metadata.xml new file mode 100644 index 000000000000..cdc3d7209ef1 --- /dev/null +++ b/dev-build/just/metadata.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person" proxied="yes"> + <email>joe@wt.gd</email> + <name>Joe Kappus</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> + <upstream> + <changelog>https://github.com/casey/just/raw/master/CHANGELOG.md</changelog> + <bugs-to>https://github.com/casey/just/issues</bugs-to> + <remote-id type="github">casey/just</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/kas/Manifest b/dev-build/kas/Manifest new file mode 100644 index 000000000000..c6b2ffb3327a --- /dev/null +++ b/dev-build/kas/Manifest @@ -0,0 +1,2 @@ +DIST kas-5.1.gh.tar.gz 141260 BLAKE2B 1168202fa2ff6d6b72fcde049add8030d963f9b4d25ea882f1d0fea62f6a7624a2de449d13f8925ddaa82b743ec9fac68cc8bc1f73b84feead6c83740940d9bf SHA512 a399f248eb9a1d39a95c525ae43f642db1096a57b2caf94397af80e99cbb218a905186661b850d72b1f3997b7b10782a53980cac793f7859ee95d633f355e583 +DIST kas-5.2.gh.tar.gz 143789 BLAKE2B dce3c92db2e7afcc1d05751e16859724e77eb262d4d21227be160eec7c7d6fb331bb734f5d112eb6b4b4bba05e8266a8b51c1059350cb20a0e81889ef54d9fda SHA512 c9f38f66f68d1b59e5f8bc629cd7808f2e0ca13173e21d0521eb382666c7f12cfd14dba072c5316aae997318044061606c4a0258fe32c6c824a488337e014b3d diff --git a/dev-build/kas/kas-5.1.ebuild b/dev-build/kas/kas-5.1.ebuild new file mode 100644 index 000000000000..7efa1e3be4a3 --- /dev/null +++ b/dev-build/kas/kas-5.1.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 optfeature + +DESCRIPTION="Setup tool for bitbake based projects" +HOMEPAGE=" + https://github.com/siemens/kas + https://kas.readthedocs.io/en/latest/ + https://pypi.org/project/kas/ +" +# pypi does not package tests +SRC_URI=" + https://github.com/siemens/kas/archive/refs/tags/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="amd64" + +RDEPEND=" + >=dev-python/pyyaml-3.0.0[${PYTHON_USEDEP}] + >=dev-python/distro-1.0.0[${PYTHON_USEDEP}] + >=dev-python/jsonschema-2.5.0[${PYTHON_USEDEP}] + >=dev-python/kconfiglib-14.1.0[${PYTHON_USEDEP}] + >=dev-python/gitpython-3.1.0[${PYTHON_USEDEP}] + dev-libs/newt[${PYTHON_USEDEP}] +" + +BDEPEND=" + ${RDEPEND} + test? ( + dev-python/python-gnupg[${PYTHON_USEDEP}] + dev-vcs/git + dev-vcs/mercurial + ) +" + +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + "tests/test_build.py::test_provenance" + "tests/test_commands.py::test_for_all_repos" + "tests/test_commands.py::test_checkout_with_ci_rewrite" + "tests/test_commands.py::test_checkout_create_refs[noenv]" + "tests/test_commands.py::test_checkout_shallow[noenv]" + "tests/test_commands.py::test_checkout[noenv]" + "tests/test_commands.py::test_repo_includes[noenv]" + "tests/test_commands.py::test_repo_includes" + "tests/test_commands.py::test_shallow_updates[noenv]" + "tests/test_refspec.py::test_refspec_switch[noenv]" + "tests/test_refspec.py::test_refspec_absolute[noenv]" + "tests/test_refspec.py::test_tag_commit_do_not_match[noenv] " + "tests/test_refspec.py::test_unsafe_tag_warning[noenv]" + "tests/test_refspec.py::test_tag_branch_same_name[noenv]" + "tests/test_refspec.py::test_refspec_warning[noenv]" + "tests/test_refspec.py::test_branch_and_tag[noenv]" + "tests/test_refspec.py::test_commit_expand[noenv]" + "tests/test_refspec.py::test_tag_commit_do_not_match[noenv]" + "tests/test_signature_verify.py::test_signed_gpg_invalid[noenv]" + "tests/test_signature_verify.py::test_signed_gpg_remove_key[noenv]" + "tests/test_signature_verify.py::test_signed_gpg_local_key" + "tests/test_commands.py::test_dump[noenv]" + "tests/test_commands.py::test_diff" + "tests/test_commands.py::test_lockfile" + "tests/test_environment_variables.py::test_env_section_export_bb_extra_white" + "tests/test_environment_variables.py::test_env_section_export_bb_env_passthrough_additions" + "tests/test_environment_variables.py::test_ssh_agent_setup" +) + +EPYTEST_IGNORE=( + "tests/test_layers.py" + "tests/test_menu.py" + "tests/test_patch.py" +) + +pkg_postinst() { + optfeature_header "Install optional tools to clone repositories:" + optfeature "git repository support" dev-vcs/git + optfeature "mercurial repository support" dev-vcs/mercurial +} diff --git a/dev-build/kas/kas-5.2.ebuild b/dev-build/kas/kas-5.2.ebuild new file mode 100644 index 000000000000..6f9701cb6df8 --- /dev/null +++ b/dev-build/kas/kas-5.2.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 optfeature + +DESCRIPTION="Setup tool for bitbake based projects" +HOMEPAGE=" + https://github.com/siemens/kas + https://kas.readthedocs.io/en/latest/ + https://pypi.org/project/kas/ +" +# pypi does not package tests +SRC_URI=" + https://github.com/siemens/kas/archive/refs/tags/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" + +RDEPEND=" + >=dev-python/pyyaml-3.0.0[${PYTHON_USEDEP}] + >=dev-python/distro-1.0.0[${PYTHON_USEDEP}] + >=dev-python/jsonschema-2.5.0[${PYTHON_USEDEP}] + >=dev-python/kconfiglib-14.1.0[${PYTHON_USEDEP}] + >=dev-python/gitpython-3.1.0[${PYTHON_USEDEP}] + dev-libs/newt[${PYTHON_USEDEP}] +" + +BDEPEND=" + ${RDEPEND} + test? ( + dev-python/python-gnupg[${PYTHON_USEDEP}] + dev-vcs/git + dev-vcs/mercurial + ) +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + "tests/test_build.py::test_provenance" + "tests/test_commands.py::test_for_all_repos" + "tests/test_commands.py::test_checkout_with_ci_rewrite" + "tests/test_commands.py::test_checkout_create_refs[noenv]" + "tests/test_commands.py::test_checkout_shallow[noenv]" + "tests/test_commands.py::test_checkout[noenv]" + "tests/test_commands.py::test_invalid_checkout[noenv-test-invalid-tag.yml-RepoRefError]" + "tests/test_commands.py::test_repo_includes[noenv]" + "tests/test_commands.py::test_repo_includes" + "tests/test_commands.py::test_shallow_updates[noenv]" + "tests/test_refspec.py::test_refspec_switch[noenv]" + "tests/test_refspec.py::test_refspec_absolute[noenv]" + "tests/test_refspec.py::test_tag_commit_do_not_match[noenv] " + "tests/test_refspec.py::test_unsafe_tag_warning[noenv]" + "tests/test_refspec.py::test_tag_branch_same_name[noenv]" + "tests/test_refspec.py::test_refspec_warning[noenv]" + "tests/test_refspec.py::test_branch_and_tag[noenv]" + "tests/test_refspec.py::test_commit_expand[noenv]" + "tests/test_refspec.py::test_tag_commit_do_not_match[noenv]" + "tests/test_signature_verify.py::test_signed_gpg_invalid[noenv]" + "tests/test_signature_verify.py::test_signed_gpg_remove_key[noenv]" + "tests/test_signature_verify.py::test_signed_gpg_local_key" + "tests/test_commands.py::test_dump[noenv]" + "tests/test_commands.py::test_diff" + "tests/test_commands.py::test_lockfile" + "tests/test_environment_variables.py::test_env_section_export_bb_extra_white" + "tests/test_environment_variables.py::test_env_section_export_bb_env_passthrough_additions" + "tests/test_environment_variables.py::test_ssh_agent_setup" +) + +EPYTEST_IGNORE=( + "tests/test_layers.py" + "tests/test_menu.py" + "tests/test_patch.py" +) + +pkg_postinst() { + optfeature_header "Install optional tools to clone repositories:" + optfeature "git repository support" dev-vcs/git + optfeature "mercurial repository support" dev-vcs/mercurial +} diff --git a/dev-build/kas/metadata.xml b/dev-build/kas/metadata.xml new file mode 100644 index 000000000000..569cfff38a08 --- /dev/null +++ b/dev-build/kas/metadata.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>mh@emlix.com</email> + <name>Martin Homuth</name> + </maintainer> + <maintainer type="person" proxied="yes"> + <email>stkw0@disroot.org</email> + <name>David Roman</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> + <upstream> + <bugs-to>https://github.com/siemens/kas/issues</bugs-to> + <changelog>https://github.com/siemens/kas/blob/master/CHANGELOG.md</changelog> + <remote-id type="github">siemens/kas</remote-id> + <remote-id type="pypi">kas</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/kbuild/Manifest b/dev-build/kbuild/Manifest new file mode 100644 index 000000000000..7c37bd96480f --- /dev/null +++ b/dev-build/kbuild/Manifest @@ -0,0 +1,2 @@ +DIST kbuild-0.1.9998.3660-r1-fix-clang-16.patch.bz2 11810 BLAKE2B a9f8c084a8b1b7fd76531ad882d5f29ca6bb8e287634e5eef194670dd7716781dc87a105f7765336cae6864864fe08ad9a71a4c608444d0662ebab808e383a10 SHA512 b76ed04f438058618e39748e8243cea98097bc478fe64d3faa4f3ffda8efe30d2bb75f9e9fb1ae0b1b5dac5428a07927095db37af77225dd8448b96866804e57 +DIST kbuild-0.1.9998.3660-src.tar.xz 5281800 BLAKE2B 6c8ca902efddbbdce4588a046edc243ad76bd56cc319c94b4ffb7c25dad7c3ad9e5f816c960c6d80a13374995469d6f1d4c91a20860321a2d12b2456c21ba26f SHA512 d993de9a481a30aef7f4db2bbd6c19ffbeba6e5e505ae2ea63e7479007198d3eb89308860b90a5df8728997fb239ff5e553e6050c136468522c780a2a1e593e2 diff --git a/dev-build/kbuild/files/kbuild-0.1.5-gentoo-docdir.patch b/dev-build/kbuild/files/kbuild-0.1.5-gentoo-docdir.patch new file mode 100644 index 000000000000..b074a984af4c --- /dev/null +++ b/dev-build/kbuild/files/kbuild-0.1.5-gentoo-docdir.patch @@ -0,0 +1,11 @@ +--- a/Config.kmk ++++ b/Config.kmk +@@ -147,7 +147,7 @@ + MY_INST_DATA := $(MY_INST_ROOT)share/kBuild/ + endif + ifndef MY_INST_DOC +- MY_INST_DOC := $(MY_INST_ROOT)share/doc/kBuild-$(KBUILD_VERSION)/ ++ MY_INST_DOC := $(MY_INST_ROOT)share/doc/$(PF)/ + endif + if !defined(MY_INST_BIN_MODE) && defined(MY_INST_MODE) + MY_INST_BIN_MODE := $(MY_INST_MODE),a+x diff --git a/dev-build/kbuild/files/kbuild-0.1.9998.3407-unknown_configure_opt.patch b/dev-build/kbuild/files/kbuild-0.1.9998.3407-unknown_configure_opt.patch new file mode 100644 index 000000000000..2714716b7806 --- /dev/null +++ b/dev-build/kbuild/files/kbuild-0.1.9998.3407-unknown_configure_opt.patch @@ -0,0 +1,20 @@ +--- kbuild-0.1.9998.3407/bootstrap.gmk ++++ kbuild-0.1.9998.3407/bootstrap.gmk +@@ -151,7 +151,7 @@ + $(OUTDIR)/kmk/ts-configured: \ + $(OUTDIR)/kmk/ts-autoreconf \ + $(OUTDIR)/kmk/fts.h +- cd $(OUTDIR)/kmk && $(SRCDIR)/src/kmk/configure --disable-load --without-guile ++ cd $(OUTDIR)/kmk && $(SRCDIR)/src/kmk/configure --disable-load + echo done > $@ + + ifeq ($(KBUILD_HOST),solaris) +@@ -182,7 +182,7 @@ + echo done > $@ + + $(OUTDIR)/sed/ts-configured: $(OUTDIR)/sed/ts-autoreconf +- cd $(OUTDIR)/sed && $(SRCDIR)/src/sed/configure --without-libintl --disable-nls ++ cd $(OUTDIR)/sed && $(SRCDIR)/src/sed/configure --disable-nls + echo done > $@ + + $(OUTDIR)/sed/config.h: $(OUTDIR)/sed/ts-configured diff --git a/dev-build/kbuild/files/kbuild-0.1.9998.3499-fix-CC.patch b/dev-build/kbuild/files/kbuild-0.1.9998.3499-fix-CC.patch new file mode 100644 index 000000000000..7d7f1f7232eb --- /dev/null +++ b/dev-build/kbuild/files/kbuild-0.1.9998.3499-fix-CC.patch @@ -0,0 +1,23 @@ +A few files are compiled with gcc regardless of setting CC + +This file seems to do some guesswork, override it with CC if set + +Bug: https://bugs.gentoo.org/734302 + +--- a/kBuild/tools/GCC3.kmk ++++ b/kBuild/tools/GCC3.kmk +@@ -84,6 +84,14 @@ + TOOL_GCC3_CXX += -fmessage-length=0 + endif + ++ifneq ($(CC),) ++ TOOL_GCC3_CC = $(CC) ++ TOOL_GCC3_LD = $(CC) ++endif ++ifneq ($(AR),) ++ TOOL_GCC3_AR = $(AR) ++endif ++ + # General Properties used by kBuild + TOOL_GCC3_COBJSUFF ?= .o + TOOL_GCC3_CFLAGS ?= diff --git a/dev-build/kbuild/files/kbuild-0.1.9998.3572-fix-bison.patch b/dev-build/kbuild/files/kbuild-0.1.9998.3572-fix-bison.patch new file mode 100644 index 000000000000..822194b1c98b --- /dev/null +++ b/dev-build/kbuild/files/kbuild-0.1.9998.3572-fix-bison.patch @@ -0,0 +1,15 @@ +--- a/src/kash/Makefile.kmk 2022-11-12 16:42:14.195927909 +0200 ++++ b/src/kash/Makefile.kmk 2022-11-12 17:09:46.212159615 +0200 +@@ -210,8 +210,11 @@ + kash_USES = lex yacc + kash_LEXTOOL = FLEX + kash_LEXFLAGS = -8 +-#kash_YACCTOOL = BISON ++ifneq (,$(shell bison -V)) ++kash_YACCTOOL = BISON ++else + kash_YACCTOOL = YACC ++endif + kash_YACCFLAGS = -ld + kash_SOURCES += \ + arith.y \ diff --git a/dev-build/kbuild/files/kbuild-0.1.9998.3572-fix-lto.patch b/dev-build/kbuild/files/kbuild-0.1.9998.3572-fix-lto.patch new file mode 100644 index 000000000000..94eb14ee6cb6 --- /dev/null +++ b/dev-build/kbuild/files/kbuild-0.1.9998.3572-fix-lto.patch @@ -0,0 +1,11 @@ +--- a/src/kmk/remake.c ++++ b/src/kmk/remake.c +@@ -417,7 +417,7 @@ + if (!keep_going_flag && file->parent == 0) + { + const char *msg_joke = 0; +- extern struct dep *goals; ++ extern struct goaldep *goals; + + /* classics */ + if (!strcmp (file->name, "fire") diff --git a/dev-build/kbuild/files/kbuild-0.1.9998.3660-gcc-15.patch b/dev-build/kbuild/files/kbuild-0.1.9998.3660-gcc-15.patch new file mode 100644 index 000000000000..0ab71235a982 --- /dev/null +++ b/dev-build/kbuild/files/kbuild-0.1.9998.3660-gcc-15.patch @@ -0,0 +1,19 @@ +diff --git a/src/kmk/glob/fnmatch.c b/src/kmk/glob/fnmatch.c +index b346e10..008a4a7 100644 +--- a/src/kmk/glob/fnmatch.c ++++ b/src/kmk/glob/fnmatch.c +@@ -120,14 +120,6 @@ USA. */ + /* Avoid depending on library functions or files + whose names are inconsistent. */ + +-# if !defined _LIBC && !defined getenv && !defined _MSC_VER +-extern char *getenv (); +-# endif +- +-# ifndef errno +-extern int errno; +-# endif +- + /* This function doesn't exist on most systems. */ + + # if !defined HAVE___STRCHRNUL && !defined _LIBC diff --git a/dev-build/kbuild/files/kbuild-0.1.9998.3660-int-conversion.patch b/dev-build/kbuild/files/kbuild-0.1.9998.3660-int-conversion.patch new file mode 100644 index 000000000000..9e472abbfdd6 --- /dev/null +++ b/dev-build/kbuild/files/kbuild-0.1.9998.3660-int-conversion.patch @@ -0,0 +1,17 @@ +Fix int to pointer conversion for clang + +Note - this parameter was not actually used inside eval_buffer because of a define. + +Bug: https://bugs.gentoo.org/875449 + +--- a/src/kmk/loadapi.c ++++ b/src/kmk/loadapi.c +@@ -20,6 +20,8 @@ + #include "variable.h" + #include "dep.h" + ++#include <string.h> ++ + /* Allocate a buffer in our context, so we can free it. */ + char * + gmk_alloc (unsigned int len) diff --git a/dev-build/kbuild/files/kbuild-0.1.9998_pre20110817-kash-link-pthread.patch b/dev-build/kbuild/files/kbuild-0.1.9998_pre20110817-kash-link-pthread.patch new file mode 100644 index 000000000000..d2b20176ca82 --- /dev/null +++ b/dev-build/kbuild/files/kbuild-0.1.9998_pre20110817-kash-link-pthread.patch @@ -0,0 +1,10 @@ +--- kBuild-0.1.9998-pre20110817/src/kash/Makefile.kmk ++++ kBuild-0.1.9998-pre20110817/src/kash/Makefile.kmk +@@ -59,6 +59,7 @@ + if "$(USER)" == "bird" && "$(KBUILD_TARGET)" != "win" + kash_CFLAGS += -std=gnu99 + endif ++kash_LIBS += pthread + kash_CFLAGS.win.amd64 = -GS- + kash_SOURCES = \ + main.c \ diff --git a/dev-build/kbuild/kbuild-0.1.9998.3660-r1.ebuild b/dev-build/kbuild/kbuild-0.1.9998.3660-r1.ebuild new file mode 100644 index 000000000000..35893b4ddb74 --- /dev/null +++ b/dev-build/kbuild/kbuild-0.1.9998.3660-r1.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools toolchain-funcs + +DESCRIPTION="A makefile framework for writing simple makefiles for complex tasks" +HOMEPAGE="https://trac.netlabs.org/kbuild/wiki" +SRC_URI=" + https://distfiles.gentoo.org/pub/dev/ceamac@gentoo.org/${CATEGORY}/${PN}/${P}-src.tar.xz + https://distfiles.gentoo.org/pub/dev/ceamac@gentoo.org/${CATEGORY}/${PN}/${PN}-0.1.9998.3660-r1-fix-clang-16.patch.bz2 +" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="amd64 ~arm64 x86" + +BDEPEND=" + sys-apps/texinfo + app-alternatives/lex + sys-devel/gettext + virtual/pkgconfig + app-alternatives/yacc +" + +PATCHES=( + "${FILESDIR}/${PN}-0.1.9998.3407-unknown_configure_opt.patch" + "${FILESDIR}/${PN}-0.1.5-gentoo-docdir.patch" + "${FILESDIR}/${PN}-0.1.9998_pre20110817-kash-link-pthread.patch" + "${FILESDIR}/${PN}-0.1.9998.3572-fix-bison.patch" + "${FILESDIR}/${PN}-0.1.9998.3572-fix-lto.patch" + "${FILESDIR}/${PN}-0.1.9998.3660-int-conversion.patch" + "${FILESDIR}/${PN}-0.1.9998.3499-fix-CC.patch" + "${FILESDIR}/${PN}-0.1.9998.3660-gcc-15.patch" + + "${WORKDIR}/${PN}-0.1.9998.3660-r1-fix-clang-16.patch" +) + +pkg_setup() { + # Package fails with distcc (bug #255371) + export DISTCC_DISABLE=1 +} + +src_prepare() { + default + + # 905419 - build fails if /bin/sh is something other than bash + sed 's:ln -s /bin/sh:ln -s /bin/bash:' -i bootstrap.gmk || die + + # Add a file with the svn revision this package was pulled from + printf '%s\n' "KBUILD_SVN_REV := $(ver_cut 4)" \ + > SvnInfo.kmk || die + + cd "${S}/src/kmk" || die + eautoreconf + cd "${S}/src/sed" || die + eautoreconf + + sed -e "s@_LDFLAGS\.$(tc-arch)*.*=@& ${LDFLAGS}@g" \ + -e "s@_CFLAGS\.$(tc-arch)*.*=@& ${CFLAGS}@g" \ + -e "s@_CXXFLAGS\.$(tc-arch)*.*=@& ${CXXFLAGS}@g" \ + -i "${S}"/Config.kmk || die #332225 + tc-export CC PKG_CONFIG RANLIB AR # bug #923130: AR must be both here and below +} + +src_compile() { + kBuild/env.sh --full emake -f bootstrap.gmk AUTORECONF=true AR="$(tc-getAR)" \ + || die "bootstrap failed" +} + +src_install() { + kBuild/env.sh kmk NIX_INSTALL_DIR=/usr PATH_INS="${D}" install \ + || die "install failed" +} diff --git a/dev-build/kbuild/kbuild-9999.ebuild b/dev-build/kbuild/kbuild-9999.ebuild new file mode 100644 index 000000000000..308b44b81180 --- /dev/null +++ b/dev-build/kbuild/kbuild-9999.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools subversion toolchain-funcs + +DESCRIPTION="A makefile framework for writing simple makefiles for complex tasks" +HOMEPAGE="https://trac.netlabs.org/kbuild/wiki" +ESVN_REPO_URI="http://svn.netlabs.org/repos/kbuild/trunk" + +LICENSE="GPL-3+" +SLOT="0" + +BDEPEND=" + sys-apps/texinfo + app-alternatives/lex + sys-devel/gettext + virtual/pkgconfig + app-alternatives/yacc +" + +PATCHES=( + "${FILESDIR}/${PN}-0.1.9998.3407-unknown_configure_opt.patch" + "${FILESDIR}/${PN}-0.1.5-gentoo-docdir.patch" + "${FILESDIR}/${PN}-0.1.9998_pre20110817-kash-link-pthread.patch" + "${FILESDIR}/${PN}-0.1.9998.3572-fix-bison.patch" + "${FILESDIR}/${PN}-0.1.9998.3572-fix-lto.patch" + "${FILESDIR}/${PN}-0.1.9998.3660-int-conversion.patch" + "${FILESDIR}/${PN}-0.1.9998.3499-fix-CC.patch" + "${FILESDIR}/${PN}-0.1.9998.3660-gcc-15.patch" +) + +pkg_setup() { + # Package fails with distcc (bug #255371) + export DISTCC_DISABLE=1 +} + +src_prepare() { + default + + if [[ "${PV}" != *9999 ]] ; then + # Add a file with the svn revision this package was pulled from + printf '%s\n' "KBUILD_SVN_REV := $(ver_cut 4)" \ + > SvnInfo.kmk || die + fi + + cd "${S}/src/kmk" || die + eautoreconf + cd "${S}/src/sed" || die + eautoreconf + + sed -e "s@_LDFLAGS\.$(tc-arch)*.*=@& ${LDFLAGS}@g" \ + -e "s@_CFLAGS\.$(tc-arch)*.*=@& ${CFLAGS}@g" \ + -e "s@_CXXFLAGS\.$(tc-arch)*.*=@& ${CXXFLAGS}@g" \ + -i "${S}"/Config.kmk || die #332225 + tc-export CC PKG_CONFIG RANLIB AR # bug #923130: AR must be both here and below +} + +src_compile() { + kBuild/env.sh --full emake -f bootstrap.gmk AUTORECONF=true AR="$(tc-getAR)" \ + || die "bootstrap failed" +} + +src_install() { + kBuild/env.sh kmk NIX_INSTALL_DIR=/usr PATH_INS="${D}" install \ + || die "install failed" +} diff --git a/dev-build/kbuild/metadata.xml b/dev-build/kbuild/metadata.xml new file mode 100644 index 000000000000..b22a815172dd --- /dev/null +++ b/dev-build/kbuild/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>ceamac@gentoo.org</email> + <name>Viorel Munteanu</name> + </maintainer> +</pkgmetadata> diff --git a/dev-build/libtool/Manifest b/dev-build/libtool/Manifest new file mode 100644 index 000000000000..d1c7c08acf4a --- /dev/null +++ b/dev-build/libtool/Manifest @@ -0,0 +1,2 @@ +DIST libtool-2.5.4.tar.xz 1056924 BLAKE2B 47de3c49a690d44d7ddd5e3b5e4090c91dc5fbb9c40fc4a3963e150fb7329326ee3e21b8c149974726171c4b0380028e0efc7a369c4f04357eea46f69852e1cc SHA512 eed207094bcc444f4bfbb13710e395e062e3f1d312ca8b186ab0cbd22dc92ddef176a0b3ecd43e02676e37bd9e328791c59a38ef15846d4eae15da4f20315724 +DIST libtool-2.6.0.tar.xz 1086020 BLAKE2B 33346f21fc5ad0e2925b2b12e3aa4715546683181c0323912f31ce9e3e7ac9ee103e2bd608d3d8b45fd82c59c6f2e082ac7baf3946d12169f05c760920ad1117 SHA512 79af0baf14d598b3091fc770b004a80ffb7ecf0cc8440b5947a41d3c8e603566783008deb3248235d87088810b69824003defed3e66dccb6c03c635095c9fb41 diff --git a/dev-build/libtool/files/libtool-2.2.10-eprefix.patch b/dev-build/libtool/files/libtool-2.2.10-eprefix.patch new file mode 100644 index 000000000000..c4693ee7feeb --- /dev/null +++ b/dev-build/libtool/files/libtool-2.2.10-eprefix.patch @@ -0,0 +1,11 @@ +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -2087,7 +2087,7 @@ + mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ + $SED 's,/\([[A-Za-z]]:\),\1,g'` ;; + esac +- sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` ++ sys_lib_search_path_spec=`$ECHO "@GENTOO_PORTAGE_EPREFIX@/lib @GENTOO_PORTAGE_EPREFIX@/usr/lib $lt_search_path_spec" | $lt_NL2SP` + else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + fi]) diff --git a/dev-build/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch b/dev-build/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch new file mode 100644 index 000000000000..81364d4d02af --- /dev/null +++ b/dev-build/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch @@ -0,0 +1,24 @@ +In Gentoo Prefix we go by Apple's convention to give modules the .bundle +extension. +http://developer.apple.com/documentation/DeveloperTools/Conceptual/XcodeBuildSystem/500-Linking/bs_linking.html +(Above link was removed by Apple, the link below contains a copy: +http://disanji.net/iOS_Doc/#documentation/DeveloperTools/Conceptual/XcodeBuildSystem/500-Linking/bs_linking.html, +in case it disappears also, the relevant quote: + +Bundle. Bundles are executable files that can be loaded at runtime by +other products. Plug-ins are implemented using bundles. The term bundle +in this context refers to the binary itself, not to a structured +hierarchy. Bundles have the .bundle extension; for example, +MyBundle.bundle.) + +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -2645,7 +2645,7 @@ + soname_spec='$libname$release$major$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH +- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' ++ shrext_cmds='`test .$module = .yes && echo .bundle || echo .dylib`' + m4_if([$1], [],[ + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' diff --git a/dev-build/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch b/dev-build/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch new file mode 100644 index 000000000000..aa1e870649b6 --- /dev/null +++ b/dev-build/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch @@ -0,0 +1,38 @@ +Force linux-style versioning when generating shared libraries on +Gentoo/FreeBSD hosts only. + +Patch by Diego Elio Pettenò + +http://bugs.gentoo.org/109105 + +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -2666,7 +2666,14 @@ + *) objformat=elf ;; + esac + fi +- version_type=freebsd-$objformat ++ # Handle Gentoo/FreeBSD as it was Linux ++ case $host_vendor in ++ gentoo) ++ version_type=linux ;; ++ *) ++ version_type=freebsd-$objformat ;; ++ esac ++ + case $version_type in + freebsd-elf*) + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' +@@ -2678,6 +2685,12 @@ + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + need_version=yes + ;; ++ linux) ++ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' ++ soname_spec='${libname}${release}${shared_ext}$major' ++ need_lib_prefix=no ++ need_version=no ++ ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in diff --git a/dev-build/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch b/dev-build/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch new file mode 100644 index 000000000000..aded304989d2 --- /dev/null +++ b/dev-build/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch @@ -0,0 +1,13 @@ +* revert old 1.5 behaviour + +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -2641,7 +2641,7 @@ + version_type=darwin + need_lib_prefix=no + need_version=no +- library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' ++ library_names_spec='$libname$release$versuffix$shared_ext $libname$release$major$shared_ext $libname$shared_ext' + soname_spec='$libname$release$major$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH diff --git a/dev-build/libtool/files/libtool-2.4.6-ppc64le.patch b/dev-build/libtool/files/libtool-2.4.6-ppc64le.patch new file mode 100644 index 000000000000..78d86c72956b --- /dev/null +++ b/dev-build/libtool/files/libtool-2.4.6-ppc64le.patch @@ -0,0 +1,111 @@ +From 020afd7d6410f73bc205206abe1b88b4890b83b1 Mon Sep 17 00:00:00 2001 +From: Leno Hou <lenohou@gmail.com> +Date: Sun, 24 Apr 2016 00:46:53 +0800 +Subject: [PATCH] [m4/libtool.m4] linker error for powerpc64le-unknown-linux-gnu + +Hi all, + + 1) As we might know, Gentoo has powerpc64le-unknown-linux-gnu compiler + +leno@localhost ~ $ powerpc64le-unknown-linux-gnu-gcc -v + +Using built-in specs. + +COLLECT_GCC=/usr/powerpc64le-unknown-linux-gnu/gcc-bin/5.3.0/powerpc64le-unknown-linux-gnu-gcc + +COLLECT_LTO_WRAPPER=/usr/libexec/gcc/powerpc64le-unknown-linux-gnu/5.3.0/lto-wrapper + +Target: powerpc64le-unknown-linux-gnu + +Configured with: +/var/tmp/portage/sys-devel/gcc-5.3.0/work/gcc-5.3.0/configure +--host=powerpc64le-unknown-linux-gnu --build=powerpc64le-unknown-linux-gnu +--prefix=/usr --bindir=/usr/powerpc64le-unknown-linux-gnu/gcc-bin/5.3.0 +--includedir=/usr/lib/gcc/powerpc64le-unknown-linux-gnu/5.3.0/include +--datadir=/usr/share/gcc-data/powerpc64le-unknown-linux-gnu/5.3.0 +--mandir=/usr/share/gcc-data/powerpc64le-unknown-linux-gnu/5.3.0/man +--infodir=/usr/share/gcc-data/powerpc64le-unknown-linux-gnu/5.3.0/info +--with-gxx-include-dir=/usr/lib/gcc/powerpc64le-unknown-linux-gnu/5.3.0/include/g++-v5 +--with-python-dir=/share/gcc-data/powerpc64le-unknown-linux-gnu/5.3.0/python +--enable-languages=c,c++,fortran --enable-obsolete --enable-secureplt +--disable-werror --with-system-zlib --enable-nls --without-included-gettext +--enable-checking=release --with-bugurl=https://bugs.gentoo.org/ +--with-pkgversion='Gentoo 5.3.0 p1.0, pie-0.6.5' --enable-libstdcxx-time +--enable-shared --enable-threads=posix --enable-__cxa_atexit +--enable-clocale=gnu --disable-multilib --enable-altivec +--disable-fixed-point --enable-targets=all --disable-libgcj +--enable-libgomp --disable-libmudflap --disable-libssp --disable-libcilkrts +--enable-lto --without-isl --enable-libsanitizer + +Thread model: posix + +gcc version 5.3.0 (Gentoo 5.3.0 p1.0, pie-0.6.5) + + 2) And the supported emulations + +leno@localhost ~ $ powerpc64le-unknown-linux-gnu-ld -V +GNU ld (Gentoo 2.25.1 p1.1) 2.25.1 + Supported emulations: + elf64lppc + elf32lppc + elf32lppclinux + elf32lppcsim + + 3) But when I set CHOST="powerpc64le-unkown-linux-gnu" in Gentoo and +execute aclocal, automake, libtoolize --copy --force, autoconf. When I +glance in the latest m4/libtool.m4 : + +if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.o` in + *32-bit*) + case $host in +... + powerpc64le-*linux*) + LD="${LD-ld} -m elf32lppclinux" + ;; + powerpc64-*linux*) + LD="${LD-ld} -m elf32ppclinux" + ;; +... + *64-bit*) + case $host in +... + powerpcle-*linux*) + LD="${LD-ld} -m elf64lppc" + ;; + powerpc-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; +... + +seems linked to $LD='$LD-ld -m elf64ppc' and failed to compile packages. + + 4) Below is my workaround patch and works fine for this case. If this is +OK for you, Could this to be merged in upstream? Thanks + +URL: https://debbugs.gnu.org/23348 +URL: https://bugs.gentoo.org/581314 +--- + m4/libtool.m4 | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/m4/libtool.m4 b/m4/libtool.m4 +index ee292aff5bca..758b6951ae07 100644 +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -1417,10 +1417,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; +- powerpcle-*linux*) ++ powerpcle-*linux*|powerpc64le-*linux*) + LD="${LD-ld} -m elf64lppc" + ;; +- powerpc-*linux*) ++ powerpc-*linux*|powerpc64-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*|s390*-*tpf*) +-- +2.11.1 + diff --git a/dev-build/libtool/files/libtool-2.4.6-pthread.patch b/dev-build/libtool/files/libtool-2.4.6-pthread.patch new file mode 100644 index 000000000000..49b81c1dcda6 --- /dev/null +++ b/dev-build/libtool/files/libtool-2.4.6-pthread.patch @@ -0,0 +1,43 @@ +http://permalink.gmane.org/gmane.comp.gnu.libtool.patches/11704 +https://bugs.gentoo.org/650876 + +From: Pavel Raiskup <praiskup <at> redhat.com> +Subject: [PATCH] libtool: handle the -pthread{,s} options for g++ +Newsgroups: gmane.comp.gnu.libtool.patches +Date: Thursday 28th November 2013 14:18:05 UTC (over 4 years ago) + +As we are forced to pass -nostdlib to g++ for linking, this option +expectedly disables the effectiveness of passed -pthread flag - so +add the -lpthread explicitly to $deplibs to link correctly. + +References: +http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25460 +https://bugzilla.redhat.com/show_bug.cgi?id=661333 +http://lists.gnu.org/archive/html/bug-libtool/2013-01/msg00018.htm + +* build-aux/ltmain.in (func_mode_link): Explicitly add -lpthread +flag into $deplibs when -pthread is passed (for g++ only). +--- + build-aux/ltmain.in | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in +index fba05c1..f202b80 100644 +--- a/build-aux/ltmain.in ++++ b/build-aux/ltmain.in +@@ -5113,6 +5113,16 @@ func_mode_link () + *" $arg "*) ;; + * ) func_append new_inherited_linker_flags " $arg" ;; + esac ++ ++ # As we are forced to pass -nostdlib to g++ during linking, the option ++ # -pthread{,s} is not in effect; add the -lpthread to $deplist ++ # explicitly to link correctly. ++ if test "$tagname" = CXX -a x"$with_gcc" = xyes; then ++ case "$arg" in ++ -pthread*) func_append deplibs " -lpthread" ;; ++ esac ++ fi ++ + continue + ;; diff --git a/dev-build/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch b/dev-build/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch new file mode 100644 index 000000000000..b093d74266f2 --- /dev/null +++ b/dev-build/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch @@ -0,0 +1,21 @@ +https://bugs.gentoo.org/650876 + +--- a/build-aux/ltmain.sh ++++ b/build-aux/ltmain.sh +@@ -7127,6 +7127,16 @@ + *" $arg "*) ;; + * ) func_append new_inherited_linker_flags " $arg" ;; + esac ++ ++ # As we are forced to pass -nostdlib to g++ during linking, the option ++ # -pthread{,s} is not in effect; add the -lpthread to $deplist ++ # explicitly to link correctly. ++ if test "$tagname" = CXX -a x"$with_gcc" = xyes; then ++ case "$arg" in ++ -pthread*) func_append deplibs " -lpthread" ;; ++ esac ++ fi ++ + continue + ;; + diff --git a/dev-build/libtool/libtool-2.5.4.ebuild b/dev-build/libtool/libtool-2.5.4.ebuild new file mode 100644 index 000000000000..d7896fb21db2 --- /dev/null +++ b/dev-build/libtool/libtool-2.5.4.ebuild @@ -0,0 +1,153 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please bump with dev-libs/libltdl. + +# bug #225559 +LIBTOOLIZE="true" +WANT_LIBTOOL="none" +inherit autotools flag-o-matic prefix multiprocessing + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/libtool.git" + inherit git-r3 +elif false && ! [[ $(( $(ver_cut 2) % 2 )) -eq 0 ]] ; then + SRC_URI="https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz" +else + SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +DESCRIPTION="A shared library tool for developers" +HOMEPAGE="https://www.gnu.org/software/libtool/" + +LICENSE="GPL-2+" +SLOT="2" +IUSE="vanilla" + +RDEPEND=" + sys-devel/gnuconfig + >=dev-build/autoconf-2.69:* + >=dev-build/automake-1.13:* +" +DEPEND="${RDEPEND}" +[[ ${PV} == *9999 ]] && BDEPEND="sys-apps/help2man" + +# Note that we have more patches in https://gitweb.gentoo.org/proj/elt-patches.git/ +# for package builds. The patches here are just those which are definitely fine +# for the system-wide libtool installation as well. +PATCHES=( + # bug #109105 + "${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch + # bug #581314 + "${FILESDIR}"/${PN}-2.4.6-ppc64le.patch + + "${FILESDIR}"/${PN}-2.2.6a-darwin-module-bundle.patch + "${FILESDIR}"/${PN}-2.4.6-darwin-use-linux-version.patch +) + +# In 2.5.3/2.5.4, the only difference is something harmless in Makefile.in (bug #940302) +QA_AM_MAINTAINER_MODE=".*libltdl.*autoconf" + +src_prepare() { + if [[ ${PV} == *9999 ]] ; then + eapply "${FILESDIR}"/${PN}-2.4.6-pthread.patch # bug #650876 + ./bootstrap || die + else + PATCHES+=( + "${FILESDIR}"/${PN}-2.4.6-pthread_bootstrapped.patch # bug #650876 + ) + fi + + # WARNING: File build-aux/ltmain.sh is read-only; trying to patch anyway + chmod +w build-aux/ltmain.sh || die + + if use vanilla ; then + eapply_user + return 0 + else + default + fi + + if use prefix ; then + # seems that libtool has to know about EPREFIX a little bit + # better, since it fails to find prefix paths to search libs + # from, resulting in some packages building static only, since + # libtool is fooled into thinking that libraries are unavailable + # (argh...). This could also be fixed by making the gcc wrapper + # return the correct result for -print-search-dirs (doesn't + # include prefix dirs ...). + eapply "${FILESDIR}"/${PN}-2.2.10-eprefix.patch + eprefixify m4/libtool.m4 + fi + + pushd libltdl >/dev/null || die + AT_NOELIBTOOLIZE=yes eautoreconf + popd >/dev/null || die + AT_NOELIBTOOLIZE=yes eautoreconf + + # Make sure timestamps don't trigger a rebuild of man pages. #556512 + if [[ ${PV} != *9999 ]] ; then + touch doc/*.1 || die + export HELP2MAN=true + fi +} + +src_configure() { + # the libtool script uses bash code in it and at configure time, tries + # to find a bash shell. if /bin/sh is bash, it uses that. this can + # cause problems for people who switch /bin/sh on the fly to other + # shells, so just force libtool to use /bin/bash all the time. + # Do not bother hardcoding the full path to sed. + # Just rely on $PATH. bug #574550 + export CONFIG_SHELL="${EPREFIX}"/bin/bash + export ac_cv_path_SED="sed" + export ac_cv_path_EGREP="grep -E" + export ac_cv_path_EGREP_TRADITIONAL="grep -E" + export ac_cv_path_FGREP="grep -F" + export ac_cv_path_GREP="grep" + export ac_cv_path_lt_DD="dd" + + local myeconfargs=( + # Split into dev-libs/libltdl + --disable-ltdl-install + + # Tests break otherwise (when porting to EAPI 8) + # https://lists.gnu.org/archive/html/bug-libtool/2014-10/msg00013.html + --enable-static + ) + + [[ ${CHOST} == *-darwin* ]] && myeconfargs+=( "--program-prefix=g" ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +src_test() { + ( + # The testsuite is sensitive to warnings, expects static + # archives to really be archives (not compiler IR), etc. + strip-flags + filter-flags -fno-semantic-interposition + filter-flags '-Wstrict-aliasing=*' '-Werror=*' + filter-lto + + emake -Onone check \ + CFLAGS="${CFLAGS}" \ + CXXFLAGS="${CXXFLAGS}" \ + FFLAGS="${FFLAGS}" \ + FCFLAGS="${FCFLAGS}" \ + LDFLAGS="${LDFLAGS}" \ + TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" + ) +} + +src_install() { + default + + local x + while read -d $'\0' -r x ; do + ln -sf "${EPREFIX}"/usr/share/gnuconfig/${x##*/} "${x}" || die + done < <(find "${ED}" '(' -name config.guess -o -name config.sub ')' -print0) +} diff --git a/dev-build/libtool/libtool-2.6.0.ebuild b/dev-build/libtool/libtool-2.6.0.ebuild new file mode 100644 index 000000000000..55d747089de7 --- /dev/null +++ b/dev-build/libtool/libtool-2.6.0.ebuild @@ -0,0 +1,154 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please bump with dev-libs/libltdl. + +# bug #225559 +LIBTOOLIZE="true" +WANT_LIBTOOL="none" +inherit autotools flag-o-matic prefix multiprocessing + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/libtool.git" + inherit git-r3 +elif true || ! [[ $(( $(ver_cut 2) % 2 )) -eq 0 ]] ; then + # 2.6.0 is an alpha release + SRC_URI="https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz" +else + SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +DESCRIPTION="A shared library tool for developers" +HOMEPAGE="https://www.gnu.org/software/libtool/" + +LICENSE="GPL-2+" +SLOT="2" +IUSE="vanilla" + +RDEPEND=" + sys-devel/gnuconfig + >=dev-build/autoconf-2.69:* + >=dev-build/automake-1.13:* +" +DEPEND="${RDEPEND}" +[[ ${PV} == *9999 ]] && BDEPEND="sys-apps/help2man" + +# Note that we have more patches in https://gitweb.gentoo.org/proj/elt-patches.git/ +# for package builds. The patches here are just those which are definitely fine +# for the system-wide libtool installation as well. +PATCHES=( + # bug #109105 + "${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch + # bug #581314 + "${FILESDIR}"/${PN}-2.4.6-ppc64le.patch + + "${FILESDIR}"/${PN}-2.2.6a-darwin-module-bundle.patch + "${FILESDIR}"/${PN}-2.4.6-darwin-use-linux-version.patch +) + +# In 2.5.3/2.5.4, the only difference is something harmless in Makefile.in (bug #940302) +QA_AM_MAINTAINER_MODE=".*libltdl.*autoconf" + +src_prepare() { + if [[ ${PV} == *9999 ]] ; then + eapply "${FILESDIR}"/${PN}-2.4.6-pthread.patch # bug #650876 + ./bootstrap || die + else + PATCHES+=( + "${FILESDIR}"/${PN}-2.4.6-pthread_bootstrapped.patch # bug #650876 + ) + fi + + # WARNING: File build-aux/ltmain.sh is read-only; trying to patch anyway + chmod +w build-aux/ltmain.sh || die + + if use vanilla ; then + eapply_user + return 0 + else + default + fi + + if use prefix ; then + # seems that libtool has to know about EPREFIX a little bit + # better, since it fails to find prefix paths to search libs + # from, resulting in some packages building static only, since + # libtool is fooled into thinking that libraries are unavailable + # (argh...). This could also be fixed by making the gcc wrapper + # return the correct result for -print-search-dirs (doesn't + # include prefix dirs ...). + eapply "${FILESDIR}"/${PN}-2.2.10-eprefix.patch + eprefixify m4/libtool.m4 + fi + + pushd libltdl >/dev/null || die + AT_NOELIBTOOLIZE=yes eautoreconf + popd >/dev/null || die + AT_NOELIBTOOLIZE=yes eautoreconf + + # Make sure timestamps don't trigger a rebuild of man pages. #556512 + if [[ ${PV} != *9999 ]] ; then + touch doc/*.1 || die + export HELP2MAN=true + fi +} + +src_configure() { + # the libtool script uses bash code in it and at configure time, tries + # to find a bash shell. if /bin/sh is bash, it uses that. this can + # cause problems for people who switch /bin/sh on the fly to other + # shells, so just force libtool to use /bin/bash all the time. + # Do not bother hardcoding the full path to sed. + # Just rely on $PATH. bug #574550 + export CONFIG_SHELL="${EPREFIX}"/bin/bash + export ac_cv_path_SED="sed" + export ac_cv_path_EGREP="grep -E" + export ac_cv_path_EGREP_TRADITIONAL="grep -E" + export ac_cv_path_FGREP="grep -F" + export ac_cv_path_GREP="grep" + export ac_cv_path_lt_DD="dd" + + local myeconfargs=( + # Split into dev-libs/libltdl + --disable-ltdl-install + + # Tests break otherwise (when porting to EAPI 8) + # https://lists.gnu.org/archive/html/bug-libtool/2014-10/msg00013.html + --enable-static + ) + + [[ ${CHOST} == *-darwin* ]] && myeconfargs+=( "--program-prefix=g" ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +src_test() { + ( + # The testsuite is sensitive to warnings, expects static + # archives to really be archives (not compiler IR), etc. + strip-flags + filter-flags -fno-semantic-interposition + filter-flags '-Wstrict-aliasing=*' '-Werror=*' + filter-lto + + emake -Onone check \ + CFLAGS="${CFLAGS}" \ + CXXFLAGS="${CXXFLAGS}" \ + FFLAGS="${FFLAGS}" \ + FCFLAGS="${FCFLAGS}" \ + LDFLAGS="${LDFLAGS}" \ + TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" + ) +} + +src_install() { + default + + local x + while read -d $'\0' -r x ; do + ln -sf "${EPREFIX}"/usr/share/gnuconfig/${x##*/} "${x}" || die + done < <(find "${ED}" '(' -name config.guess -o -name config.sub ')' -print0) +} diff --git a/dev-build/libtool/libtool-9999.ebuild b/dev-build/libtool/libtool-9999.ebuild new file mode 100644 index 000000000000..4a3cad397c03 --- /dev/null +++ b/dev-build/libtool/libtool-9999.ebuild @@ -0,0 +1,153 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please bump with dev-libs/libltdl. + +# bug #225559 +LIBTOOLIZE="true" +WANT_LIBTOOL="none" +inherit autotools flag-o-matic prefix multiprocessing + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/libtool.git" + inherit git-r3 +elif ! [[ $(( $(ver_cut 2) % 2 )) -eq 0 ]] ; then + SRC_URI="https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz" +else + SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +DESCRIPTION="A shared library tool for developers" +HOMEPAGE="https://www.gnu.org/software/libtool/" + +LICENSE="GPL-2+" +SLOT="2" +IUSE="vanilla" + +RDEPEND=" + sys-devel/gnuconfig + >=dev-build/autoconf-2.69:* + >=dev-build/automake-1.13:* +" +DEPEND="${RDEPEND}" +[[ ${PV} == *9999 ]] && BDEPEND="sys-apps/help2man" + +# Note that we have more patches in https://gitweb.gentoo.org/proj/elt-patches.git/ +# for package builds. The patches here are just those which are definitely fine +# for the system-wide libtool installation as well. +PATCHES=( + # bug #109105 + "${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch + # bug #581314 + "${FILESDIR}"/${PN}-2.4.6-ppc64le.patch + + "${FILESDIR}"/${PN}-2.2.6a-darwin-module-bundle.patch + "${FILESDIR}"/${PN}-2.4.6-darwin-use-linux-version.patch +) + +# In 2.5.3/2.5.4, the only difference is something harmless in Makefile.in (bug #940302) +QA_AM_MAINTAINER_MODE=".*libltdl.*autoconf" + +src_prepare() { + if [[ ${PV} == *9999 ]] ; then + eapply "${FILESDIR}"/${PN}-2.4.6-pthread.patch # bug #650876 + ./bootstrap || die + else + PATCHES+=( + "${FILESDIR}"/${PN}-2.4.6-pthread_bootstrapped.patch # bug #650876 + ) + fi + + # WARNING: File build-aux/ltmain.sh is read-only; trying to patch anyway + chmod +w build-aux/ltmain.sh || die + + if use vanilla ; then + eapply_user + return 0 + else + default + fi + + if use prefix ; then + # seems that libtool has to know about EPREFIX a little bit + # better, since it fails to find prefix paths to search libs + # from, resulting in some packages building static only, since + # libtool is fooled into thinking that libraries are unavailable + # (argh...). This could also be fixed by making the gcc wrapper + # return the correct result for -print-search-dirs (doesn't + # include prefix dirs ...). + eapply "${FILESDIR}"/${PN}-2.2.10-eprefix.patch + eprefixify m4/libtool.m4 + fi + + pushd libltdl >/dev/null || die + AT_NOELIBTOOLIZE=yes eautoreconf + popd >/dev/null || die + AT_NOELIBTOOLIZE=yes eautoreconf + + # Make sure timestamps don't trigger a rebuild of man pages. #556512 + if [[ ${PV} != *9999 ]] ; then + touch doc/*.1 || die + export HELP2MAN=true + fi +} + +src_configure() { + # the libtool script uses bash code in it and at configure time, tries + # to find a bash shell. if /bin/sh is bash, it uses that. this can + # cause problems for people who switch /bin/sh on the fly to other + # shells, so just force libtool to use /bin/bash all the time. + # Do not bother hardcoding the full path to sed. + # Just rely on $PATH. bug #574550 + export CONFIG_SHELL="${EPREFIX}"/bin/bash + export ac_cv_path_SED="sed" + export ac_cv_path_EGREP="grep -E" + export ac_cv_path_EGREP_TRADITIONAL="grep -E" + export ac_cv_path_FGREP="grep -F" + export ac_cv_path_GREP="grep" + export ac_cv_path_lt_DD="dd" + + local myeconfargs=( + # Split into dev-libs/libltdl + --disable-ltdl-install + + # Tests break otherwise (when porting to EAPI 8) + # https://lists.gnu.org/archive/html/bug-libtool/2014-10/msg00013.html + --enable-static + ) + + [[ ${CHOST} == *-darwin* ]] && myeconfargs+=( "--program-prefix=g" ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +src_test() { + ( + # The testsuite is sensitive to warnings, expects static + # archives to really be archives (not compiler IR), etc. + strip-flags + filter-flags -fno-semantic-interposition + filter-flags '-Wstrict-aliasing=*' '-Werror=*' + filter-lto + + emake -Onone check \ + CFLAGS="${CFLAGS}" \ + CXXFLAGS="${CXXFLAGS}" \ + FFLAGS="${FFLAGS}" \ + FCFLAGS="${FCFLAGS}" \ + LDFLAGS="${LDFLAGS}" \ + TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)" + ) +} + +src_install() { + default + + local x + while read -d $'\0' -r x ; do + ln -sf "${EPREFIX}"/usr/share/gnuconfig/${x##*/} "${x}" || die + done < <(find "${ED}" '(' -name config.guess -o -name config.sub ')' -print0) +} diff --git a/dev-build/libtool/metadata.xml b/dev-build/libtool/metadata.xml new file mode 100644 index 000000000000..3a9f14ae2105 --- /dev/null +++ b/dev-build/libtool/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <upstream> + <remote-id type="cpe">cpe:/a:gnu:libtool</remote-id> + <remote-id type="savannah">libtool</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/mage/Manifest b/dev-build/mage/Manifest new file mode 100644 index 000000000000..2e9773f5f8c2 --- /dev/null +++ b/dev-build/mage/Manifest @@ -0,0 +1,2 @@ +DIST mage-1.13.0.tar.gz 8802625 BLAKE2B eb31c6f69b3e4cefc5816489c4c641740b924fd9dfdb91bf7fb7af6e6e119c09097b5fd6bef4e7194f5eee37945e194c5ddbda939295f4b433605bac4708a268 SHA512 a393a0192ecaf8664f9dd35acfd994993ab1c028a08fb8c925fc569ce58dc9d58baeef4760b012563e3f3a6957c77d548bb33a6b577d12af2e030e2465e6d24b +DIST mage-1.15.0.tar.gz 8805332 BLAKE2B c94ac3dc00f47ccd46659ef4a83aee8609e101ef1436cc5c836426c0554c5264183e4c9640b257c0422c0301142afe7dd7a819d9796f4096490a66ec8221ebad SHA512 0ddc20d02f471fe9c12b48f53d4c09824741183d0c7e66e67556c0defd7210ae8821c054b4a992b88d4e005dac4a3089515d49e9c5cf989932144bf5e00e868c diff --git a/dev-build/mage/mage-1.13.0.ebuild b/dev-build/mage/mage-1.13.0.ebuild new file mode 100644 index 000000000000..521f66fd6e66 --- /dev/null +++ b/dev-build/mage/mage-1.13.0.ebuild @@ -0,0 +1,21 @@ +# Copyright 2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +inherit go-module + +DESCRIPTION="make/rake like tool using go" +HOMEPAGE="https://magefile.org" +SRC_URI="https://github.com/magefile/mage/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" + +src_compile() { + GOBIN="${S}/bin" go run bootstrap.go || die "build failed" +} + +src_install() { +dobin bin/mage +} diff --git a/dev-build/mage/mage-1.15.0.ebuild b/dev-build/mage/mage-1.15.0.ebuild new file mode 100644 index 000000000000..579e852a78a7 --- /dev/null +++ b/dev-build/mage/mage-1.15.0.ebuild @@ -0,0 +1,21 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +inherit go-module + +DESCRIPTION="make/rake like tool using go" +HOMEPAGE="https://magefile.org" +SRC_URI="https://github.com/magefile/mage/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" + +src_compile() { + GOBIN="${S}/bin" ego run bootstrap.go +} + +src_install() { +dobin bin/mage +} diff --git a/dev-build/mage/metadata.xml b/dev-build/mage/metadata.xml new file mode 100644 index 000000000000..2470b06def1e --- /dev/null +++ b/dev-build/mage/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>williamh@gentoo.org</email> + <name>William Hubbs</name> + </maintainer> + <upstream> + <remote-id type="github">magefile/mage</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/make/Manifest b/dev-build/make/Manifest new file mode 100644 index 000000000000..886bf48fa5dc --- /dev/null +++ b/dev-build/make/Manifest @@ -0,0 +1,2 @@ +DIST make-4.4.1.tar.lz 1305648 BLAKE2B b0c62a85a99b15e38ee9e08c38be9b1c4c6d81a01bc8ea94f83e7f1a93968b9c8c8b69c92bb4112646a58e38bb9d2effdd461fb2a82b1360681351e07c123a26 SHA512 591e9fab2f807bfda908f3376fdbf304c3377a6b15d13f3029456722972e361d205b692855de8ddbce64ff3f404873cbfb65f4097ca4a3b81029dc83bafcc67c +DIST make-4.4.1.tar.lz.sig 833 BLAKE2B f72d2afaec6f21f4c731a42408200c05ed56532cbee16c1f1a4db2f1d641d27fb3c41ff2becd717e94ded7d079e683ff320c795e5073a95aed731d99666173cd SHA512 a6e4d3ef63456031c357277f0867652776afd0bd801c3be67a3f81b03103dddc5c6471ce50a89a4fd379a535163f22758cadab25a5c2192a2332124bcbbe8d74 diff --git a/dev-build/make/files/make-4.4-default-cxx.patch b/dev-build/make/files/make-4.4-default-cxx.patch new file mode 100644 index 000000000000..4a56df5da2c8 --- /dev/null +++ b/dev-build/make/files/make-4.4-default-cxx.patch @@ -0,0 +1,11 @@ +--- a/src/default.c ++++ b/src/default.c +@@ -542,7 +542,7 @@ static const char *default_variables[] = + "CXX", "gcc", + # endif /* __MSDOS__ */ + # else +- "CXX", "g++", ++ "CXX", "c++", + # endif + #endif + /* This expands to $(CO) $(COFLAGS) $< $@ if $@ does not exist, diff --git a/dev-build/make/files/make-4.4.1-c23.patch b/dev-build/make/files/make-4.4.1-c23.patch new file mode 100644 index 000000000000..88481a15ae2f --- /dev/null +++ b/dev-build/make/files/make-4.4.1-c23.patch @@ -0,0 +1,58 @@ +From 31bc8976fb7bfdde8b9293e6a4eb2becb29a73bc Mon Sep 17 00:00:00 2001 +From: Bobby Bingham <koorogi@koorogi.info> +Date: Wed, 2 Jul 2025 18:09:28 -0500 +Subject: [PATCH] fix compilation on musl with gcc15 + +--- + lib/fnmatch.c | 2 +- + src/getopt.c | 2 +- + src/getopt.h | 7 ------- + 3 files changed, 2 insertions(+), 9 deletions(-) + +diff --git a/lib/fnmatch.c b/lib/fnmatch.c +index 01da376..9b54022 100644 +--- a/lib/fnmatch.c ++++ b/lib/fnmatch.c +@@ -121,7 +121,7 @@ USA. */ + whose names are inconsistent. */ + + # if !defined _LIBC && !defined getenv +-extern char *getenv (); ++extern char *getenv (const char*); + # endif + + # ifndef errno +diff --git a/src/getopt.c b/src/getopt.c +index 7a792de..9b56abe 100644 +--- a/src/getopt.c ++++ b/src/getopt.c +@@ -202,7 +202,7 @@ static char *posixly_correct; + whose names are inconsistent. */ + + #ifndef getenv +-extern char *getenv (); ++extern char *getenv (const char*); + #endif + + static char * +diff --git a/src/getopt.h b/src/getopt.h +index df18cee..a6cc621 100644 +--- a/src/getopt.h ++++ b/src/getopt.h +@@ -96,14 +96,7 @@ struct option + #define optional_argument 2 + + #if defined (__STDC__) && __STDC__ +-#ifdef __GNU_LIBRARY__ +-/* Many other libraries have conflicting prototypes for getopt, with +- differences in the consts, in stdlib.h. To avoid compilation +- errors, only prototype getopt for the GNU C library. */ + extern int getopt (int argc, char *const *argv, const char *shortopts); +-#else /* not __GNU_LIBRARY__ */ +-extern int getopt (); +-#endif /* __GNU_LIBRARY__ */ + extern int getopt_long (int argc, char *const *argv, const char *shortopts, + const struct option *longopts, int *longind); + extern int getopt_long_only (int argc, char *const *argv, +-- +2.50.0 diff --git a/dev-build/make/files/make-4.4.1-jobserver-kill-return-tokens.patch b/dev-build/make/files/make-4.4.1-jobserver-kill-return-tokens.patch new file mode 100644 index 000000000000..c64c7cb69d56 --- /dev/null +++ b/dev-build/make/files/make-4.4.1-jobserver-kill-return-tokens.patch @@ -0,0 +1,81 @@ +https://bugs.gentoo.org/966090 +https://savannah.gnu.org/bugs/index.php?67687#comment3 +https://file.savannah.gnu.org/file/sv67687_release_tokens.diff?file_id=57804 + +Rebased on make-4.4.1 because of test changes. + +commit 04a04b5dfe66de46353c9fe31dd64efab2516257 +Author: Dmitry Goncharov <dgoncharov@users.sf.net> +Date: Thu Nov 13 00:25:15 2025 -0500 + + [SV 67687] Release all jobserver tokens upon a fatal signal. + + * src/commands.c (fatal_error_signal): Call jobserver_clear after + reap_childen to let free_child run jobserver_release before the + pipe/fifo is closed. + * tests/scripts/features/jobserver: Add tests. + +--- a/src/commands.c ++++ b/src/commands.c +@@ -531,7 +531,6 @@ fatal_error_signal (int sig) + + temp_stdin_unlink (); + osync_clear (); +- jobserver_clear (); + + /* A termination signal won't be sent to the entire + process group, but it means we want to kill the children. */ +@@ -577,6 +576,8 @@ fatal_error_signal (int sig) + while (job_slots_used > 0) + reap_children (1, 1); + ++ jobserver_clear (); ++ + /* Delete any non-precious intermediate files that were made. */ + + remove_intermediates (1); +--- a/tests/scripts/features/jobserver ++++ b/tests/scripts/features/jobserver +@@ -198,4 +198,39 @@ all:;@echo "$$MAKEFLAGS" + run_make_test(q!all:;@echo hi!, "", "#MAKE#: cannot open jobserver nosuchfile: $ERR_no_such_file\n#MAKE#: $j1err\nhi\n"); + } + ++if ($port_type eq 'UNIX') { ++ # sv 67687. ++ # Test that make releases all jobserver tokens upon a fatal signal. ++ # ++ # When the submake releases all its tokens make prints something like ++ # ++ # "make[1]: *** [child.mk:2: a] Terminated ++ # make[1]: *** [child.mk:2: b] Terminated ++ # make: *** [t001.mk:2: all] Terminated". ++ # ++ # When make detects lost jobserver tokens, make prints something like ++ # ++ # "make[1]: *** [child.mk:2: a] Terminated ++ # make[1]: *** [child.mk:2: b] Terminated ++ # make: *** [t001.mk:2: all] Terminated ++ # INTERNAL: exiting with 1 jobserver tokens available; should be 3!". ++ # ++ # This test has to fail if the last line is "exiting with ...". ++ # Anchor \Z ensures that the regex won't match when the "exiting with ..." ++ # message is present, because the preceding "Terminated" message is ++ # followed by a new line. ++ # ++ # "[\w\d ]*" after "Terminated" is for macos. ++ create_file('child.mk', ++'all: a b c ++a b:; @sleep 180 ++c:; @sleep 2 && kill -term $$PPID'); ++ my $re = '/#MAKE#: \*\*\* \[#MAKEFILE#:2: all\] Terminated[\w\d ]*\Z/'; ++ run_make_test(q! ++all:; @$(MAKE) --no-print-directory -f child.mk ++!, '-j3', $re, 512); ++ run_make_test(undef, '--jobserver-style=pipe -j3', $re, 512); ++ unlink('child.mk') unless $keep; ++} ++ + 1; +-- +2.51.2 + diff --git a/dev-build/make/make-4.4.1-r100.ebuild b/dev-build/make/make-4.4.1-r100.ebuild new file mode 100644 index 000000000000..7f7c774f6694 --- /dev/null +++ b/dev-build/make/make-4.4.1-r100.ebuild @@ -0,0 +1,102 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/make.asc +GUILE_COMPAT=( 2-2 3-0 ) +inherit flag-o-matic unpacker verify-sig guile-single + +DESCRIPTION="Standard tool to compile source trees" +HOMEPAGE="https://www.gnu.org/software/make/make.html" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/make.git" + inherit autotools git-r3 +elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then + SRC_URI="https://alpha.gnu.org/gnu/make/${P}.tar.lz" + SRC_URI+=" verify-sig? ( https://alpha.gnu.org/gnu/make/${P}.tar.lz.sig )" +else + SRC_URI="mirror://gnu/make/${P}.tar.lz" + SRC_URI+=" verify-sig? ( mirror://gnu/make/${P}.tar.lz.sig )" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="doc guile nls static test" +RESTRICT="!test? ( test )" +REQUIRED_USE="guile? ( ${GUILE_REQUIRED_USE} )" + +DEPEND=" + guile? ( ${GUILE_DEPS} ) +" +RDEPEND=" + ${DEPEND} + nls? ( virtual/libintl ) +" +BDEPEND=" + $(unpacker_src_uri_depends) + doc? ( virtual/texi2dvi ) + nls? ( sys-devel/gettext ) + verify-sig? ( sec-keys/openpgp-keys-make ) + test? ( dev-lang/perl ) +" + +DOCS="AUTHORS NEWS README*" + +PATCHES=( + "${FILESDIR}"/${PN}-4.4-default-cxx.patch +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + + cd "${S}" || die + ./bootstrap || die + else + use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${P}.tar.lz{,.sig} + unpacker ${P}.tar.lz + fi +} + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + fi + + if use guile; then + guile_bump_sources + fi +} + +pkg_setup() { + if use guile; then + guile-single_pkg_setup + fi +} + +src_configure() { + use static && append-ldflags -static + local myeconfargs=( + --program-prefix=g + $(use_with guile) + $(use_enable nls) + ) + econf "${myeconfargs[@]}" +} + +src_compile() { + emake all $(usev doc 'pdf html') +} + +src_install() { + use doc && HTML_DOCS=( doc/make.html/. ) DOCS="${DOCS} doc/make.pdf" + default + + dosym gmake /usr/bin/make + dosym gmake.1 /usr/share/man/man1/make.1 + guile_unstrip_ccache +} diff --git a/dev-build/make/make-4.4.1-r101.ebuild b/dev-build/make/make-4.4.1-r101.ebuild new file mode 100644 index 000000000000..7a48ec68d94e --- /dev/null +++ b/dev-build/make/make-4.4.1-r101.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/make.asc +GUILE_COMPAT=( 2-2 3-0 ) +inherit flag-o-matic unpacker verify-sig guile-single + +DESCRIPTION="Standard tool to compile source trees" +HOMEPAGE="https://www.gnu.org/software/make/make.html" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/make.git" + inherit autotools git-r3 +elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then + SRC_URI="https://alpha.gnu.org/gnu/make/${P}.tar.lz" + SRC_URI+=" verify-sig? ( https://alpha.gnu.org/gnu/make/${P}.tar.lz.sig )" +else + SRC_URI="mirror://gnu/make/${P}.tar.lz" + SRC_URI+=" verify-sig? ( mirror://gnu/make/${P}.tar.lz.sig )" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="doc guile nls static test" +RESTRICT="!test? ( test )" +REQUIRED_USE="guile? ( ${GUILE_REQUIRED_USE} )" + +DEPEND=" + guile? ( ${GUILE_DEPS} ) +" +RDEPEND=" + ${DEPEND} + nls? ( virtual/libintl ) +" +BDEPEND=" + $(unpacker_src_uri_depends) + doc? ( virtual/texi2dvi ) + nls? ( sys-devel/gettext ) + verify-sig? ( sec-keys/openpgp-keys-make ) + test? ( dev-lang/perl ) +" + +DOCS="AUTHORS NEWS README*" + +PATCHES=( + "${FILESDIR}"/${PN}-4.4-default-cxx.patch + "${FILESDIR}"/${PN}-4.4.1-c23.patch +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + + cd "${S}" || die + ./bootstrap || die + else + use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${P}.tar.lz{,.sig} + unpacker ${P}.tar.lz + fi +} + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + fi + + if use guile; then + guile_bump_sources + fi +} + +pkg_setup() { + if use guile; then + guile-single_pkg_setup + fi +} + +src_configure() { + use static && append-ldflags -static + local myeconfargs=( + --program-prefix=g + $(use_with guile) + $(use_enable nls) + ) + econf "${myeconfargs[@]}" +} + +src_compile() { + emake all $(usev doc 'pdf html') +} + +src_install() { + use doc && HTML_DOCS=( doc/make.html/. ) DOCS="${DOCS} doc/make.pdf" + default + + dosym gmake /usr/bin/make + dosym gmake.1 /usr/share/man/man1/make.1 + guile_unstrip_ccache +} diff --git a/dev-build/make/make-4.4.1-r102.ebuild b/dev-build/make/make-4.4.1-r102.ebuild new file mode 100644 index 000000000000..72dd7812016b --- /dev/null +++ b/dev-build/make/make-4.4.1-r102.ebuild @@ -0,0 +1,104 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/make.asc +GUILE_COMPAT=( 2-2 3-0 ) +inherit flag-o-matic unpacker verify-sig guile-single + +DESCRIPTION="Standard tool to compile source trees" +HOMEPAGE="https://www.gnu.org/software/make/make.html" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/make.git" + inherit autotools git-r3 +elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then + SRC_URI="https://alpha.gnu.org/gnu/make/${P}.tar.lz" + SRC_URI+=" verify-sig? ( https://alpha.gnu.org/gnu/make/${P}.tar.lz.sig )" +else + SRC_URI="mirror://gnu/make/${P}.tar.lz" + SRC_URI+=" verify-sig? ( mirror://gnu/make/${P}.tar.lz.sig )" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="doc guile nls static test" +RESTRICT="!test? ( test )" +REQUIRED_USE="guile? ( ${GUILE_REQUIRED_USE} )" + +DEPEND=" + guile? ( ${GUILE_DEPS} ) +" +RDEPEND=" + ${DEPEND} + nls? ( virtual/libintl ) +" +BDEPEND=" + $(unpacker_src_uri_depends) + doc? ( virtual/texi2dvi ) + nls? ( sys-devel/gettext ) + verify-sig? ( sec-keys/openpgp-keys-make ) + test? ( dev-lang/perl ) +" + +DOCS="AUTHORS NEWS README*" + +PATCHES=( + "${FILESDIR}"/${PN}-4.4-default-cxx.patch + "${FILESDIR}"/${PN}-4.4.1-c23.patch + "${FILESDIR}"/${PN}-4.4.1-jobserver-kill-return-tokens.patch +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + + cd "${S}" || die + ./bootstrap || die + else + use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${P}.tar.lz{,.sig} + unpacker ${P}.tar.lz + fi +} + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + fi + + if use guile; then + guile_bump_sources + fi +} + +pkg_setup() { + if use guile; then + guile-single_pkg_setup + fi +} + +src_configure() { + use static && append-ldflags -static + local myeconfargs=( + --program-prefix=g + $(use_with guile) + $(use_enable nls) + ) + econf "${myeconfargs[@]}" +} + +src_compile() { + emake all $(usev doc 'pdf html') +} + +src_install() { + use doc && HTML_DOCS=( doc/make.html/. ) DOCS="${DOCS} doc/make.pdf" + default + + dosym gmake /usr/bin/make + dosym gmake.1 /usr/share/man/man1/make.1 + guile_unstrip_ccache +} diff --git a/dev-build/make/make-9999.ebuild b/dev-build/make/make-9999.ebuild new file mode 100644 index 000000000000..21e2c9546c2f --- /dev/null +++ b/dev-build/make/make-9999.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/make.asc +GUILE_COMPAT=( 2-2 3-0 ) +inherit flag-o-matic unpacker verify-sig guile-single + +DESCRIPTION="Standard tool to compile source trees" +HOMEPAGE="https://www.gnu.org/software/make/make.html" +if [[ ${PV} == 9999 ]] ; then + inherit autotools git-r3 +elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then + SRC_URI="https://alpha.gnu.org/gnu/make/${P}.tar.lz" + SRC_URI+=" verify-sig? ( https://alpha.gnu.org/gnu/make/${P}.tar.lz.sig )" +else + SRC_URI="mirror://gnu/make/${P}.tar.lz" + SRC_URI+=" verify-sig? ( mirror://gnu/make/${P}.tar.lz.sig )" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="doc guile nls static test" +RESTRICT="!test? ( test )" +REQUIRED_USE="guile? ( ${GUILE_REQUIRED_USE} )" + +DEPEND=" + guile? ( ${GUILE_DEPS} ) +" +RDEPEND=" + ${DEPEND} + nls? ( virtual/libintl ) +" +BDEPEND=" + $(unpacker_src_uri_depends) + doc? ( virtual/texi2dvi ) + nls? ( sys-devel/gettext ) + verify-sig? ( sec-keys/openpgp-keys-make ) + test? ( dev-lang/perl ) +" + +DOCS="AUTHORS NEWS README*" + +PATCHES=( + "${FILESDIR}"/${PN}-4.4-default-cxx.patch +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI=("https://git.savannah.gnu.org/git/make.git") + git-r3_src_unpack + + EGIT_REPO_URI=( + "https://github.com/coreutils/gnulib/" + "https://git.savannah.gnu.org/git/gnulib.git" + ) + EGIT_BRANCH=$(. "${S}/bootstrap.conf" && echo "${GNULIB_REVISION}" || die) + EGIT_CHECKOUT_DIR=${S}/gnulib + git-r3_src_unpack + + cd "${S}" || die + ./bootstrap || die + else + use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${P}.tar.lz{,.sig} + unpacker ${P}.tar.lz + fi +} + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + fi + + if use guile; then + guile_bump_sources + fi +} + +pkg_setup() { + if use guile; then + guile-single_pkg_setup + fi +} + +src_configure() { + use static && append-ldflags -static + local myeconfargs=( + --program-prefix=g + $(use_with guile) + $(use_enable nls) + ) + econf "${myeconfargs[@]}" +} + +src_compile() { + emake all $(usev doc 'pdf html') +} + +src_install() { + use doc && HTML_DOCS=( doc/make.html/. ) DOCS="${DOCS} doc/make.pdf" + default + + dosym gmake /usr/bin/make + dosym gmake.1 /usr/share/man/man1/make.1 +} diff --git a/dev-build/make/metadata.xml b/dev-build/make/metadata.xml new file mode 100644 index 000000000000..068fc3567c55 --- /dev/null +++ b/dev-build/make/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <upstream> + <remote-id type="cpe">cpe:/a:gnu:make</remote-id> + <remote-id type="savannah">make</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/melange/Manifest b/dev-build/melange/Manifest new file mode 100644 index 000000000000..3b42f5ce4695 --- /dev/null +++ b/dev-build/melange/Manifest @@ -0,0 +1,2 @@ +DIST melange-0.18.3-deps.tar.xz 424648416 BLAKE2B 2cf7e24f009e80bc774f70a99cd34776c0ab800d92434df3f555fc066603ae2fd2e83af9a0e6410d6c6bc6e509378285401b3d160295609de9c0af76dc91e8b8 SHA512 49d006dd4c8cd47a9e32e3be73270757f730878f2eabf64cdd71fec7cdb924daba73dcd3816760ed079de9bf91e444be04bdb6b4f287b74c1389df4e909c13d5 +DIST melange-0.18.3.tar.gz 1970781 BLAKE2B f646a0c0fe255ced2c2104b458a6b6983b0ea7c8b83f2a6fb65870d0104c91e7f9a8b37f1a0c85facdb8c292ea904a299e61fd4f699af474bdf534df44efbf6e SHA512 13f6e6bc86d49460572745506794abbe0a8ed071258c94e30f84c7b3739fbd6873a566871c28a503ef06593ebd6f2a7d7e1e82adafc0dea68f7ab2f40756e841 diff --git a/dev-build/melange/melange-0.18.3.ebuild b/dev-build/melange/melange-0.18.3.ebuild new file mode 100644 index 000000000000..2656728e1d1f --- /dev/null +++ b/dev-build/melange/melange-0.18.3.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit check-reqs go-module edo unpacker + +DESCRIPTION="Build APK packages from source code using declarative pipelines" +HOMEPAGE="https://github.com/chainguard-dev/melange/" +SRC_URI=" + https://github.com/chainguard-dev/${PN}/archive/refs/tags/v${PV}.tar.gz + -> ${P}.tar.gz + https://dev.gentoo.org/~xgqt/distfiles/deps/${P}-deps.tar.xz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" +RESTRICT="test" # Does not work inside Portage sandbox. + +CHECKREQS_DISK_BUILD="1800M" + +DOCS=( NEWS.md README.md examples ) + +pkg_setup() { + check-reqs_pkg_setup +} + +src_compile() { + local -a -r go_buildopts=( + -o ./ + ) + ego build "${go_buildopts[@]}" +} + +src_test() { + local -a -r melange_opts=( + ./pkg/sca/testdata/go-fips-bin/go-fips-bin.yaml + --arch="$(uname -m)" + --generate-index=false + --out-dir=pkg/sca/testdata/go-fips-bin/packages/ + --source-dir=pkg/sca/testdata/go-fips-bin/ + ) + edo ./melange build "${melange_opts[@]}" +} + +src_install() { + exeinto /usr/bin + doexe melange + + einstalldocs + docompress -x "/usr/share/doc/${PF}/examples" +} diff --git a/dev-build/melange/metadata.xml b/dev-build/melange/metadata.xml new file mode 100644 index 000000000000..98636cd43b51 --- /dev/null +++ b/dev-build/melange/metadata.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> + +<pkgmetadata> + <maintainer type="person"> + <email>xgqt@gentoo.org</email> + <name>Maciej Barć</name> + </maintainer> + <longdescription> + Melange can be used to build APK packages using declarative pipelines. It + is commonly used to provide custom packages for container images built with + apko. The majority of apks are built for use with either the Wolfi or + Alpine Linux ecosystems. It's key features are pipeline-oriented builds and + multi-architecture by default. + </longdescription> + <upstream> + <bugs-to>https://github.com/chainguard-dev/melange/issues/</bugs-to> + <remote-id type="github">chainguard-dev/melange</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/meson-format-array/files/meson-format-array.py b/dev-build/meson-format-array/files/meson-format-array.py new file mode 100644 index 000000000000..84a490cf29eb --- /dev/null +++ b/dev-build/meson-format-array/files/meson-format-array.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python3 +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +import itertools +import shlex +import sys + + +def quote(s): + """ Surround a value with quotes, escape embedded quotes. + >>> quote("foo'bar") + "'foo\\\\'bar'" + """ + + return "'" + s.replace("\\", "\\\\").replace("'", "\\'") + "'" + + +def format_array(args): + """ Format shell-compatible expressions as a meson array. + >>> format_array(['-O2 -pipe -DFOO="bar baz"']) + "['-O2', '-pipe', '-DFOO=bar baz']" + """ + + # Split each argument according to shell rules + args = (shlex.split(x) for x in args) + + # Flatten the resulting list of lists + args = itertools.chain.from_iterable(args) + + # Add quotes and escape embedded quotes + args = (quote(x) for x in args) + + # Format the result + return "[" + ", ".join(args) + "]" + + +def main(args): + print(format_array(args)) + + +if __name__ == "__main__": + main(sys.argv[1:]) diff --git a/dev-build/meson-format-array/meson-format-array-0.ebuild b/dev-build/meson-format-array/meson-format-array-0.ebuild new file mode 100644 index 000000000000..0b50df97577e --- /dev/null +++ b/dev-build/meson-format-array/meson-format-array-0.ebuild @@ -0,0 +1,30 @@ +# Copyright 2020-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit edo python-r1 + +DESCRIPTION="Format shell expressions into a meson array" +HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage" +S="${WORKDIR}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RDEPEND="${PYTHON_DEPS}" + +src_test() { + run_doctest() { + edo ${EPYTHON} -B -m doctest "${FILESDIR}/meson-format-array.py" + } + python_foreach_impl run_doctest +} + +src_install() { + python_foreach_impl python_newscript "${FILESDIR}"/meson-format-array.py meson-format-array +} diff --git a/dev-build/meson-format-array/metadata.xml b/dev-build/meson-format-array/metadata.xml new file mode 100644 index 000000000000..f684895450ba --- /dev/null +++ b/dev-build/meson-format-array/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>floppym@gentoo.org</email> + <name>Mike Gilbert</name> + </maintainer> + <stabilize-allarches/> +</pkgmetadata> diff --git a/dev-build/meson/Manifest b/dev-build/meson/Manifest new file mode 100644 index 000000000000..d8e9d339368d --- /dev/null +++ b/dev-build/meson/Manifest @@ -0,0 +1,12 @@ +DIST meson-1.10.2.tar.gz 2422765 BLAKE2B 0c6966640988985f8c0af165cb89e0302b0d5e2d506a4c24639971b854dd7e2fe2ea4e4f52be65e0a1524a2c9a4ed71d13093f4881612c82e885ab34d5c46a7a SHA512 43d408fde7390c81eaef63b835deb4acfcae279cf05bcd63a368c4bc1de69b7fb620f801a7700345d4c41e155a4429a43cdef12e60322aa20a33edfaeb5ce7e9 +DIST meson-1.10.2.tar.gz.asc 833 BLAKE2B f4609f3e51f32d290582f3b339e7b008bf244c3cded918fc115393d0f4644485eb7da1b3b56f1743ca3690665f5314486bbbdfa36ecc65019fca14958ef2c4f8 SHA512 55dbfe41eb8b29206536fa71d36eb483a4be35b7528f15ef00c660b828816c72deb34e63bca52c2641f4134917494ff55761835a9dae187986aa9cef7989bf06 +DIST meson-1.11.0.tar.gz 2461494 BLAKE2B 121589b9d5e42430b28a3226f6bdd46697e2b9271c512ae849aa648ba4268359b85daf11717666a78cff021cf710fc907fd3aa172275d6553767d5b8f1909f69 SHA512 9a4c678c523388d51e47ae1f1a506368f539fab0a9c1eb51ae6e148aeb6418ab26bae758c10c4c3d6f41bfc00949003ec52aabbcd7a9dc7bd33de8fa02477926 +DIST meson-1.11.0.tar.gz.asc 833 BLAKE2B 21d00c6901384c79c2c028a0a64e61fd552054c67287f20bcafec24998aea44e5483fc2407b7408c3274f88b51d2ba272c587510c788fa13a218469d73a20186 SHA512 f8e7868cfbfa322e9ff82b53de89130e064e21a80a7b9a70d15490a564b3050c954251395895aa6b278a6a77911cf18bdfdaefd766c59c418d5e91734c4f7a9e +DIST meson-1.11.1.tar.gz 5190321 BLAKE2B 3fcedb28ae3646e1c6bc1b9596ec3f04af1752bef7de9a0a1086aa103d8e0e91b22c66b85f66751447571d2d8815cf3582aacb1e252ea4af59aa18ae1bbede13 SHA512 c30c98714ab595ca1b5241fbb546c9c5fbb3eada53bfe782652a5734b04d45d66944a5fc8673ee602797c8173e27473036bcb01e09032bbc518567ee89dd6d70 +DIST meson-1.11.1.tar.gz.asc 395 BLAKE2B ed30367a763c06bc4dd241629b31dd416c9ff898a12e72ce4285608f0b1b66ff62a06b42bb90682f45e9d3298a112342fd451ca45fbf2397b30668ff28e5d5e6 SHA512 9115834e1dffefd5468206fb4539ebd4bdbe94d35a86ef2d62947d9268ffab6848994e75878d73d4b7b5880bdb0ab9ed648b77dd37321020461aaa89f11b6b45 +DIST meson-1.9.2.tar.gz 2382854 BLAKE2B f099352abbc0fa8d358cbe406955ddf817453cdc244b36f322e11b5b3020013641d162c68c9bce119cf866e8082a14a3f7db9930b66dfba15805afb32440f555 SHA512 3237e55bb8374f65f40dccd8a93493a42fc425337758b8600b377c5e9795a1bdc97942fc19fedd4c3cb697f87c1d54364a637110704a5dc1a391d712be1463bc +DIST meson-1.9.2.tar.gz.asc 833 BLAKE2B f161b2918c341172de5f141ac367d7d62a60f2d0eadd793f71fb6a19e8944b4ad6bbfbb25d233862066eec8e422295d46e03ce8aca26e1081f2bcb456b7c1057 SHA512 c8cace334e31d5ba3e4f2da687ed945182e3039dc8bbea94015caa82d373c4b4d96a425eccb7617793fd471040705711b00ab37705dcd2070be6ba089586652b +DIST meson-reference-1.10.2.3 366569 BLAKE2B 28b37c33cb94f3cad8de68eeaaf210a470d14df68fa00d8fe18b79ab9acee71a725fa9cbcf57c9c470f98acd540123612dfd9974fb67121ce72fdc70168cfab8 SHA512 1defa912aeac9a5768e7f3ad669d4471a457c6fc70ead30c428ecc335d3a06db56314a5ad343aff7805b1a46388cbfba5b4188e2ef55d10b35767c046dcb0f36 +DIST meson-reference-1.11.0.3 383896 BLAKE2B 76f4a93c9f168bb2b2bb852918b4f4bd506df3c49ef31d34541a312a0ebb812abde4bc15e3525f795289b80a6a83df7827d10850e83fc32544a0aa0731119172 SHA512 0f9c095a41cb1a050439e68e1478ffccc4147094455103e4929275ffb0233e28fb8f7e6f8948b039bcc5a9ea3879156305a3e1b795760ac5bf54ac524c430b08 +DIST meson-reference-1.11.1.3 383896 BLAKE2B 6262239b32c9be67eb426f2c208f7395ddb7894869d2d96618aec035a60e1529273c0e22f8fe141393465a96a962f3f307cad2353569dd0d7006e79cd9e36f41 SHA512 52a6efd4b52b389986c7ce346b5ccb2abc9e2afc66dcc83ee3b2d981a81c7052520afbbc34c483e6db53660048fb14925ca6fb5718c76768c6773458b8adf814 +DIST meson-reference-1.9.2.3 347286 BLAKE2B ece5e2075e1d1aabe9daf09e8dbdd4c22d0940b957cc61443c9ea0136e54c9f39244cc082f7a784209bb1bb81b116acae74f02501a9cd16df6d06ff9dcda08c0 SHA512 dbf57730e6c6ac6d3ebfba70f4c4b479d8e1a502854343c776f5ba0e9c7a4ba10bf75758b3434dd418041019ab7d704fe1424f49adaf41e260f652b58fd9cb23 diff --git a/dev-build/meson/files/meson-1.10.0-python-path.patch b/dev-build/meson/files/meson-1.10.0-python-path.patch new file mode 100644 index 000000000000..3de84046e05d --- /dev/null +++ b/dev-build/meson/files/meson-1.10.0-python-path.patch @@ -0,0 +1,39 @@ +From fbe4477ac8937253fe027486a28700f4f035b42b Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <chewi@gentoo.org> +Date: Sat, 12 Aug 2023 09:56:44 +0100 +Subject: [PATCH 2/2] python module: Respect PATH when python is not given in + machine file + +We should only fall back to the Python interpreter running Meson itself +if `python3` is not found in the PATH. + +A couple of tests relied on the old behaviour. Under Arch/PyPy, the +PATH's `python3` does not point to PyPy. Unfortunately, other +Python-based tools like g-ir-scanner are installed with a shebang of +`/usr/bin/env python3` on Arch, so adjusting the PATH to point to a +different Python breaks such tools. We must therefore specify `python` +in a machine file instead. + +We also have to now exclude "test cases/frameworks/1 boost" on Arch/PyPy +because it cannot work against PyPy. It was previously using CPython, +despite Meson itself running under PyPy, but the machine file has +changed that. +--- + mesonbuild/modules/python.py | 4 +++- + 6 files changed, 18 insertions(+), 9 deletions(-) + +diff --git a/mesonbuild/modules/python.py b/mesonbuild/modules/python.py +index 9c1ad86cb170..ad1260ca5015 100644 +--- a/mesonbuild/modules/python.py ++++ b/mesonbuild/modules/python.py +@@ -460,7 +460,9 @@ def _find_installation_impl(self, state: 'ModuleState', display_name: str, name_ + build_config = self.interpreter.environment.coredata.optstore.get_value_for(OptionKey('python.build_config')) + + if not name_or_path: +- python = PythonExternalProgram('python3', mesonlib.python_command, build_config_path=build_config) ++ python = PythonExternalProgram('python3', build_config_path=build_config) ++ if not python.found(): ++ python = PythonExternalProgram('python3', mesonlib.python_command, build_config_path=build_config) + else: + tmp_python = ExternalProgram.from_entry(display_name, name_or_path) + python = PythonExternalProgram(display_name, ext_prog=tmp_python, build_config_path=build_config) diff --git a/dev-build/meson/files/meson-1.2.1-python-path.patch b/dev-build/meson/files/meson-1.2.1-python-path.patch new file mode 100644 index 000000000000..d6151881f83f --- /dev/null +++ b/dev-build/meson/files/meson-1.2.1-python-path.patch @@ -0,0 +1,26 @@ +From 2b33c94e6315e9a397dd48a58a5becb0df3b8aba Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <chewi@gentoo.org> +Date: Sat, 12 Aug 2023 09:56:44 +0100 +Subject: [PATCH 2/2] python module: Respect PATH when python is not given in + machine file + +We should only fall back to the Python interpreter running Meson itself +if `python3` is not found in the PATH. + +https://github.com/mesonbuild/meson/pull/12116 + +diff --git a/mesonbuild/modules/python.py b/mesonbuild/modules/python.py +index 5654e4231..2b2395a9b 100644 +--- a/mesonbuild/modules/python.py ++++ b/mesonbuild/modules/python.py +@@ -381,7 +381,9 @@ class PythonModule(ExtensionModule): + + def _find_installation_impl(self, state: 'ModuleState', display_name: str, name_or_path: str, required: bool) -> MaybePythonProg: + if not name_or_path: +- python = PythonExternalProgram('python3', mesonlib.python_command) ++ python = PythonExternalProgram('python3') ++ if not python.found(): ++ python = PythonExternalProgram('python3', mesonlib.python_command) + else: + tmp_python = ExternalProgram.from_entry(display_name, name_or_path) + python = PythonExternalProgram(display_name, ext_prog=tmp_python) diff --git a/dev-build/meson/meson-1.10.2.ebuild b/dev-build/meson/meson-1.10.2.ebuild new file mode 100644 index 000000000000..693481f6c00c --- /dev/null +++ b/dev-build/meson/meson-1.10.2.ebuild @@ -0,0 +1,239 @@ +# Copyright 2016-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +DISTUTILS_USE_PEP517=setuptools + +inherit shell-completion edo distutils-r1 flag-o-matic toolchain-funcs + +if [[ ${PV} = *9999* ]]; then + EGIT_REPO_URI="https://github.com/mesonbuild/meson" + inherit ninja-utils git-r3 + + BDEPEND=" + ${NINJA_DEPEND} + $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') + " + +else + inherit verify-sig + + MY_PV=${PV/_/} + MY_P=${P/_/} + S=${WORKDIR}/${MY_P} + + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/meson-reference.3 -> meson-reference-${MY_PV}.3 + " + # Releases may be signed by those listed in Releasing.md. Jussi + # remains the default release manager. + # https://github.com/mesonbuild/meson/commit/c2d795735fa1c46c54d6aed4d4a30f36a1f853cb + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-eschwartz-20250723-r1 sec-keys/openpgp-keys-jpakkane )" + #VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/eschwartz.asc + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi +fi + +DESCRIPTION="Open source build system" +HOMEPAGE="https://mesonbuild.com/" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="test test-full" +RESTRICT="!test? ( test )" +REQUIRED_USE="test-full? ( test )" + +# test-full contains various test dependencies, for optional test cases of +# frameworks Meson has support for. These will *usually* get skipped +# automatically if uninstalled. The dep allows: +# - guaranteeing the whole test suite runs transparently without skips +# - reducing brittleness of frameworks that straddle multiple packages +# - Qt is a particular example of this. qt5 is deprecated, but we need qtbase +# consistently installed as long as it isn't masked for removal. TODO: drop +# dev-qt/*:5 from DEPEND once they are masked. + +DEPEND=" + test? ( + dev-libs/glib:2 + >=dev-libs/gobject-introspection-1.82.0-r2 + app-alternatives/ninja + dev-vcs/git + virtual/zlib:=[static-libs(+)] + virtual/pkgconfig + dev-build/cmake + ) + test-full? ( + || ( dev-lang/rust dev-lang/rust-bin ) + dev-lang/nasm + >=dev-lang/pypy-3 + dev-lang/vala + dev-python/cython + virtual/fortran + virtual/jdk + + app-text/doxygen + dev-cpp/gtest + dev-libs/protobuf + dev-util/bindgen + dev-util/gtk-doc + dev-util/itstool + llvm-core/llvm + media-libs/libsdl2 + media-libs/libwmf + net-libs/libpcap + sci-libs/hdf5[cxx,fortran] + sci-libs/netcdf + sys-cluster/openmpi[fortran] + sys-devel/bison + sys-devel/flex + + dev-qt/qtbase:6[gui,widgets] + dev-qt/qtdeclarative:6 + dev-qt/qttools:6 + >=dev-util/gdbus-codegen-2.80.5-r1 + x11-libs/gtk+:3 + + dev-libs/wayland + dev-util/wayland-scanner + ) +" +RDEPEND=" + !<dev-build/muon-0.2.0-r2[man(-)] + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.10.0-python-path.patch +) + +src_unpack() { + if [[ ${PV} = *9999* ]]; then + git-r3_src_unpack + else + default + use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.gz{,.asc} + fi +} + +python_prepare_all() { + local disable_unittests=( + # ASAN and sandbox both want control over LD_PRELOAD + # https://bugs.gentoo.org/673016 + -e 's/test_generate_gir_with_address_sanitizer/_&/' + -e 's/test_env_cflags_ldflags/_&/' + -e 's/test_c_link_args_and_env/_&/' + + # ASAN is unsupported on some targets + # https://bugs.gentoo.org/692822 + -e 's/test_pch_with_address_sanitizer/_&/' + + # clippy-driver fails, but only when run via portage. + # + # error[E0463]: can't find crate for `std` + # error: requires `sized` lang_item + -e 's/test_rust_clippy/_&/' + ) + + sed -i "${disable_unittests[@]}" unittests/*.py || die + + # Broken due to python2 script created by python_wrapper_setup + rm -r "test cases/frameworks/1 boost" || die + # nvcc breaks on essentially any LDFLAGS + # https://bugs.gentoo.org/936757 + # https://github.com/mesonbuild/meson/issues/11234 + rm -r "test cases/cuda"/* || die + + distutils-r1_python_prepare_all +} + +python_check_deps() { + if [[ ${PV} = *9999* ]]; then + python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" + fi +} + +python_configure_all() { + if [[ ${PV} = *9999* ]]; then + # We use the unsafe_yaml loader because strictyaml is not packaged. In + # theory they produce the same results, but pyyaml is faster and + # without safety checks. + edo ./meson.py setup \ + --prefix "${EPREFIX}/usr" \ + -Dhtml=false \ + -Dunsafe_yaml=true \ + docs/ docs/builddir + fi +} + +python_compile_all() { + if [[ ${PV} = *9999* ]]; then + eninja -C docs/builddir + fi +} + +src_test() { + tc-export PKG_CONFIG + if ${PKG_CONFIG} --exists Qt5Core && ! ${PKG_CONFIG} --exists Qt5Gui; then + ewarn "Found Qt5Core but not Qt5Gui; skipping tests" + else + distutils-r1_src_test + fi +} + +python_test() { + ( + # meson has its own tests for LTO support. We don't need to verify that + # all tests work when they happen to use it. And in particular, this + # breaks rust. + filter-lto + + # remove unwanted python_wrapper_setup contents + # We actually do want to non-error if python2 is installed and tested. + remove="${T}/${EPYTHON}/bin:" + PATH=${PATH/${remove}/} + + # test_meson_installed + unset PYTHONDONTWRITEBYTECODE + + # https://bugs.gentoo.org/687792 + unset PKG_CONFIG + + # test_cross_file_system_paths + unset XDG_DATA_HOME + + # 'test cases/unit/73 summary' expects 80 columns + export COLUMNS=80 + + # If JAVA_HOME is not set, meson looks for javac in PATH. + # If javac is in /usr/bin, meson assumes /usr/include is a valid + # JDK include path. Setting JAVA_HOME works around this broken + # autodetection. If no JDK is installed, we should end up with an empty + # value in JAVA_HOME, and the tests should get skipped. + export JAVA_HOME=$(java-config -O 2>/dev/null) + + ${EPYTHON} -u run_tests.py + ) || die "Testing failed with ${EPYTHON}" +} + +python_install_all() { + distutils-r1_python_install_all + + insinto /usr/share/vim/vimfiles + doins -r data/syntax-highlighting/vim/{ftdetect,indent,syntax} + + dozshcomp data/shell-completions/zsh/_meson + dobashcomp data/shell-completions/bash/meson + + if [[ ${PV} = *9999* ]]; then + DESTDIR="${ED}" eninja -C docs/builddir install + else + newman "${DISTDIR}"/meson-reference-${MY_PV}.3 meson-reference.3 + fi +} diff --git a/dev-build/meson/meson-1.11.0.ebuild b/dev-build/meson/meson-1.11.0.ebuild new file mode 100644 index 000000000000..693481f6c00c --- /dev/null +++ b/dev-build/meson/meson-1.11.0.ebuild @@ -0,0 +1,239 @@ +# Copyright 2016-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +DISTUTILS_USE_PEP517=setuptools + +inherit shell-completion edo distutils-r1 flag-o-matic toolchain-funcs + +if [[ ${PV} = *9999* ]]; then + EGIT_REPO_URI="https://github.com/mesonbuild/meson" + inherit ninja-utils git-r3 + + BDEPEND=" + ${NINJA_DEPEND} + $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') + " + +else + inherit verify-sig + + MY_PV=${PV/_/} + MY_P=${P/_/} + S=${WORKDIR}/${MY_P} + + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/meson-reference.3 -> meson-reference-${MY_PV}.3 + " + # Releases may be signed by those listed in Releasing.md. Jussi + # remains the default release manager. + # https://github.com/mesonbuild/meson/commit/c2d795735fa1c46c54d6aed4d4a30f36a1f853cb + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-eschwartz-20250723-r1 sec-keys/openpgp-keys-jpakkane )" + #VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/eschwartz.asc + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi +fi + +DESCRIPTION="Open source build system" +HOMEPAGE="https://mesonbuild.com/" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="test test-full" +RESTRICT="!test? ( test )" +REQUIRED_USE="test-full? ( test )" + +# test-full contains various test dependencies, for optional test cases of +# frameworks Meson has support for. These will *usually* get skipped +# automatically if uninstalled. The dep allows: +# - guaranteeing the whole test suite runs transparently without skips +# - reducing brittleness of frameworks that straddle multiple packages +# - Qt is a particular example of this. qt5 is deprecated, but we need qtbase +# consistently installed as long as it isn't masked for removal. TODO: drop +# dev-qt/*:5 from DEPEND once they are masked. + +DEPEND=" + test? ( + dev-libs/glib:2 + >=dev-libs/gobject-introspection-1.82.0-r2 + app-alternatives/ninja + dev-vcs/git + virtual/zlib:=[static-libs(+)] + virtual/pkgconfig + dev-build/cmake + ) + test-full? ( + || ( dev-lang/rust dev-lang/rust-bin ) + dev-lang/nasm + >=dev-lang/pypy-3 + dev-lang/vala + dev-python/cython + virtual/fortran + virtual/jdk + + app-text/doxygen + dev-cpp/gtest + dev-libs/protobuf + dev-util/bindgen + dev-util/gtk-doc + dev-util/itstool + llvm-core/llvm + media-libs/libsdl2 + media-libs/libwmf + net-libs/libpcap + sci-libs/hdf5[cxx,fortran] + sci-libs/netcdf + sys-cluster/openmpi[fortran] + sys-devel/bison + sys-devel/flex + + dev-qt/qtbase:6[gui,widgets] + dev-qt/qtdeclarative:6 + dev-qt/qttools:6 + >=dev-util/gdbus-codegen-2.80.5-r1 + x11-libs/gtk+:3 + + dev-libs/wayland + dev-util/wayland-scanner + ) +" +RDEPEND=" + !<dev-build/muon-0.2.0-r2[man(-)] + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.10.0-python-path.patch +) + +src_unpack() { + if [[ ${PV} = *9999* ]]; then + git-r3_src_unpack + else + default + use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.gz{,.asc} + fi +} + +python_prepare_all() { + local disable_unittests=( + # ASAN and sandbox both want control over LD_PRELOAD + # https://bugs.gentoo.org/673016 + -e 's/test_generate_gir_with_address_sanitizer/_&/' + -e 's/test_env_cflags_ldflags/_&/' + -e 's/test_c_link_args_and_env/_&/' + + # ASAN is unsupported on some targets + # https://bugs.gentoo.org/692822 + -e 's/test_pch_with_address_sanitizer/_&/' + + # clippy-driver fails, but only when run via portage. + # + # error[E0463]: can't find crate for `std` + # error: requires `sized` lang_item + -e 's/test_rust_clippy/_&/' + ) + + sed -i "${disable_unittests[@]}" unittests/*.py || die + + # Broken due to python2 script created by python_wrapper_setup + rm -r "test cases/frameworks/1 boost" || die + # nvcc breaks on essentially any LDFLAGS + # https://bugs.gentoo.org/936757 + # https://github.com/mesonbuild/meson/issues/11234 + rm -r "test cases/cuda"/* || die + + distutils-r1_python_prepare_all +} + +python_check_deps() { + if [[ ${PV} = *9999* ]]; then + python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" + fi +} + +python_configure_all() { + if [[ ${PV} = *9999* ]]; then + # We use the unsafe_yaml loader because strictyaml is not packaged. In + # theory they produce the same results, but pyyaml is faster and + # without safety checks. + edo ./meson.py setup \ + --prefix "${EPREFIX}/usr" \ + -Dhtml=false \ + -Dunsafe_yaml=true \ + docs/ docs/builddir + fi +} + +python_compile_all() { + if [[ ${PV} = *9999* ]]; then + eninja -C docs/builddir + fi +} + +src_test() { + tc-export PKG_CONFIG + if ${PKG_CONFIG} --exists Qt5Core && ! ${PKG_CONFIG} --exists Qt5Gui; then + ewarn "Found Qt5Core but not Qt5Gui; skipping tests" + else + distutils-r1_src_test + fi +} + +python_test() { + ( + # meson has its own tests for LTO support. We don't need to verify that + # all tests work when they happen to use it. And in particular, this + # breaks rust. + filter-lto + + # remove unwanted python_wrapper_setup contents + # We actually do want to non-error if python2 is installed and tested. + remove="${T}/${EPYTHON}/bin:" + PATH=${PATH/${remove}/} + + # test_meson_installed + unset PYTHONDONTWRITEBYTECODE + + # https://bugs.gentoo.org/687792 + unset PKG_CONFIG + + # test_cross_file_system_paths + unset XDG_DATA_HOME + + # 'test cases/unit/73 summary' expects 80 columns + export COLUMNS=80 + + # If JAVA_HOME is not set, meson looks for javac in PATH. + # If javac is in /usr/bin, meson assumes /usr/include is a valid + # JDK include path. Setting JAVA_HOME works around this broken + # autodetection. If no JDK is installed, we should end up with an empty + # value in JAVA_HOME, and the tests should get skipped. + export JAVA_HOME=$(java-config -O 2>/dev/null) + + ${EPYTHON} -u run_tests.py + ) || die "Testing failed with ${EPYTHON}" +} + +python_install_all() { + distutils-r1_python_install_all + + insinto /usr/share/vim/vimfiles + doins -r data/syntax-highlighting/vim/{ftdetect,indent,syntax} + + dozshcomp data/shell-completions/zsh/_meson + dobashcomp data/shell-completions/bash/meson + + if [[ ${PV} = *9999* ]]; then + DESTDIR="${ED}" eninja -C docs/builddir install + else + newman "${DISTDIR}"/meson-reference-${MY_PV}.3 meson-reference.3 + fi +} diff --git a/dev-build/meson/meson-1.11.1.ebuild b/dev-build/meson/meson-1.11.1.ebuild new file mode 100644 index 000000000000..7ee8fb47e7d9 --- /dev/null +++ b/dev-build/meson/meson-1.11.1.ebuild @@ -0,0 +1,242 @@ +# Copyright 2016-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +DISTUTILS_USE_PEP517=setuptools + +inherit shell-completion edo distutils-r1 flag-o-matic toolchain-funcs vala + +if [[ ${PV} = *9999* ]]; then + EGIT_REPO_URI="https://github.com/mesonbuild/meson" + inherit ninja-utils git-r3 + + BDEPEND=" + ${NINJA_DEPEND} + $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') + " + +else + inherit verify-sig + + MY_PV=${PV/_/} + MY_P=${P/_/} + S=${WORKDIR}/${MY_P} + + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/meson-reference.3 -> meson-reference-${MY_PV}.3 + " + # Releases may be signed by those listed in Releasing.md. Jussi + # remains the default release manager. + # https://github.com/mesonbuild/meson/commit/c2d795735fa1c46c54d6aed4d4a30f36a1f853cb + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-eschwartz-20250723-r1 sec-keys/openpgp-keys-jpakkane )" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/eschwartz.asc + #VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi +fi + +DESCRIPTION="Open source build system" +HOMEPAGE="https://mesonbuild.com/" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="test test-full" +RESTRICT="!test? ( test )" +REQUIRED_USE="test-full? ( test )" + +# test-full contains various test dependencies, for optional test cases of +# frameworks Meson has support for. These will *usually* get skipped +# automatically if uninstalled. The dep allows: +# - guaranteeing the whole test suite runs transparently without skips +# - reducing brittleness of frameworks that straddle multiple packages +# - Qt is a particular example of this. qt5 is deprecated, but we need qtbase +# consistently installed as long as it isn't masked for removal. TODO: drop +# dev-qt/*:5 from DEPEND once they are masked. + +DEPEND=" + test? ( + dev-libs/glib:2 + >=dev-libs/gobject-introspection-1.82.0-r2 + app-alternatives/ninja + dev-vcs/git + virtual/zlib:=[static-libs(+)] + virtual/pkgconfig + dev-build/cmake + ) + test-full? ( + || ( dev-lang/rust dev-lang/rust-bin ) + dev-lang/nasm + >=dev-lang/pypy-3 + $(vala_depend) + dev-python/cython + virtual/fortran + virtual/jdk + + app-text/doxygen + dev-cpp/gtest + dev-libs/protobuf + dev-util/bindgen + dev-util/gtk-doc + dev-util/itstool + llvm-core/llvm + media-libs/libsdl2 + media-libs/libwmf + net-libs/libpcap + sci-libs/hdf5[cxx,fortran] + sci-libs/netcdf + sys-cluster/openmpi[fortran] + sys-devel/bison + sys-devel/flex + + dev-qt/qtbase:6[gui,widgets] + dev-qt/qtdeclarative:6 + dev-qt/qttools:6 + >=dev-util/gdbus-codegen-2.80.5-r1 + x11-libs/gtk+:3 + + dev-libs/wayland + dev-util/wayland-scanner + ) +" +RDEPEND=" + !<dev-build/muon-0.2.0-r2[man(-)] + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.10.0-python-path.patch +) + +src_unpack() { + if [[ ${PV} = *9999* ]]; then + git-r3_src_unpack + else + default + use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.gz{,.asc} + fi +} + +python_prepare_all() { + local disable_unittests=( + # ASAN and sandbox both want control over LD_PRELOAD + # https://bugs.gentoo.org/673016 + -e 's/test_generate_gir_with_address_sanitizer/_&/' + -e 's/test_env_cflags_ldflags/_&/' + -e 's/test_c_link_args_and_env/_&/' + + # ASAN is unsupported on some targets + # https://bugs.gentoo.org/692822 + -e 's/test_pch_with_address_sanitizer/_&/' + + # clippy-driver fails, but only when run via portage. + # + # error[E0463]: can't find crate for `std` + # error: requires `sized` lang_item + -e 's/test_rust_clippy/_&/' + ) + + sed -i "${disable_unittests[@]}" unittests/*.py || die + + # Broken due to python2 script created by python_wrapper_setup + rm -r "test cases/frameworks/1 boost" || die + # nvcc breaks on essentially any LDFLAGS + # https://bugs.gentoo.org/936757 + # https://github.com/mesonbuild/meson/issues/11234 + rm -r "test cases/cuda"/* || die + + distutils-r1_python_prepare_all +} + +python_check_deps() { + if [[ ${PV} = *9999* ]]; then + python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" + fi +} + +python_configure_all() { + if [[ ${PV} = *9999* ]]; then + # We use the unsafe_yaml loader because strictyaml is not packaged. In + # theory they produce the same results, but pyyaml is faster and + # without safety checks. + edo ./meson.py setup \ + --prefix "${EPREFIX}/usr" \ + -Dhtml=false \ + -Dunsafe_yaml=true \ + docs/ docs/builddir + fi +} + +python_compile_all() { + if [[ ${PV} = *9999* ]]; then + eninja -C docs/builddir + fi +} + +src_test() { + tc-export PKG_CONFIG + if ${PKG_CONFIG} --exists Qt5Core && ! ${PKG_CONFIG} --exists Qt5Gui; then + ewarn "Found Qt5Core but not Qt5Gui; skipping tests" + else + distutils-r1_src_test + fi +} + +python_test() { + ( + # meson has its own tests for LTO support. We don't need to verify that + # all tests work when they happen to use it. And in particular, this + # breaks rust. + filter-lto + + # bug 513658 + has_version -b dev-lang/vala && vala_setup + + # remove unwanted python_wrapper_setup contents + # We actually do want to non-error if python2 is installed and tested. + remove="${T}/${EPYTHON}/bin:" + PATH=${PATH/${remove}/} + + # test_meson_installed + unset PYTHONDONTWRITEBYTECODE + + # https://bugs.gentoo.org/687792 + unset PKG_CONFIG + + # test_cross_file_system_paths + unset XDG_DATA_HOME + + # 'test cases/unit/73 summary' expects 80 columns + export COLUMNS=80 + + # If JAVA_HOME is not set, meson looks for javac in PATH. + # If javac is in /usr/bin, meson assumes /usr/include is a valid + # JDK include path. Setting JAVA_HOME works around this broken + # autodetection. If no JDK is installed, we should end up with an empty + # value in JAVA_HOME, and the tests should get skipped. + export JAVA_HOME=$(java-config -O 2>/dev/null) + + ${EPYTHON} -u run_tests.py + ) || die "Testing failed with ${EPYTHON}" +} + +python_install_all() { + distutils-r1_python_install_all + + insinto /usr/share/vim/vimfiles + doins -r data/syntax-highlighting/vim/{ftdetect,indent,syntax} + + dozshcomp data/shell-completions/zsh/_meson + dobashcomp data/shell-completions/bash/meson + + if [[ ${PV} = *9999* ]]; then + DESTDIR="${ED}" eninja -C docs/builddir install + else + newman "${DISTDIR}"/meson-reference-${MY_PV}.3 meson-reference.3 + fi +} diff --git a/dev-build/meson/meson-1.9.2.ebuild b/dev-build/meson/meson-1.9.2.ebuild new file mode 100644 index 000000000000..2605d33b17d2 --- /dev/null +++ b/dev-build/meson/meson-1.9.2.ebuild @@ -0,0 +1,239 @@ +# Copyright 2016-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +DISTUTILS_USE_PEP517=setuptools + +inherit shell-completion edo distutils-r1 flag-o-matic toolchain-funcs + +if [[ ${PV} = *9999* ]]; then + EGIT_REPO_URI="https://github.com/mesonbuild/meson" + inherit ninja-utils git-r3 + + BDEPEND=" + ${NINJA_DEPEND} + $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') + " + +else + inherit verify-sig + + MY_PV=${PV/_/} + MY_P=${P/_/} + S=${WORKDIR}/${MY_P} + + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/meson-reference.3 -> meson-reference-${MY_PV}.3 + " + # Releases may be signed by those listed in Releasing.md. Jussi + # remains the default release manager. + # https://github.com/mesonbuild/meson/commit/c2d795735fa1c46c54d6aed4d4a30f36a1f853cb + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-eschwartz-20250723-r1 sec-keys/openpgp-keys-jpakkane )" + #VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/eschwartz.asc + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi +fi + +DESCRIPTION="Open source build system" +HOMEPAGE="https://mesonbuild.com/" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="test test-full" +RESTRICT="!test? ( test )" +REQUIRED_USE="test-full? ( test )" + +# test-full contains various test dependencies, for optional test cases of +# frameworks Meson has support for. These will *usually* get skipped +# automatically if uninstalled. The dep allows: +# - guaranteeing the whole test suite runs transparently without skips +# - reducing brittleness of frameworks that straddle multiple packages +# - Qt is a particular example of this. qt5 is deprecated, but we need qtbase +# consistently installed as long as it isn't masked for removal. TODO: drop +# dev-qt/*:5 from DEPEND once they are masked. + +DEPEND=" + test? ( + dev-libs/glib:2 + >=dev-libs/gobject-introspection-1.82.0-r2 + app-alternatives/ninja + dev-vcs/git + virtual/zlib:=[static-libs(+)] + virtual/pkgconfig + dev-build/cmake + ) + test-full? ( + || ( dev-lang/rust dev-lang/rust-bin ) + dev-lang/nasm + >=dev-lang/pypy-3 + dev-lang/vala + dev-python/cython + virtual/fortran + virtual/jdk + + app-text/doxygen + dev-cpp/gtest + dev-libs/protobuf + dev-util/bindgen + dev-util/gtk-doc + dev-util/itstool + llvm-core/llvm + media-libs/libsdl2 + media-libs/libwmf + net-libs/libpcap + sci-libs/hdf5[cxx,fortran] + sci-libs/netcdf + sys-cluster/openmpi[fortran] + sys-devel/bison + sys-devel/flex + + dev-qt/qtbase:6[gui,widgets] + dev-qt/qtdeclarative:6 + dev-qt/qttools:6 + >=dev-util/gdbus-codegen-2.80.5-r1 + x11-libs/gtk+:3 + + dev-libs/wayland + dev-util/wayland-scanner + ) +" +RDEPEND=" + !<dev-build/muon-0.2.0-r2[man(-)] + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.2.1-python-path.patch +) + +src_unpack() { + if [[ ${PV} = *9999* ]]; then + git-r3_src_unpack + else + default + use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.gz{,.asc} + fi +} + +python_prepare_all() { + local disable_unittests=( + # ASAN and sandbox both want control over LD_PRELOAD + # https://bugs.gentoo.org/673016 + -e 's/test_generate_gir_with_address_sanitizer/_&/' + -e 's/test_env_cflags_ldflags/_&/' + -e 's/test_c_link_args_and_env/_&/' + + # ASAN is unsupported on some targets + # https://bugs.gentoo.org/692822 + -e 's/test_pch_with_address_sanitizer/_&/' + + # clippy-driver fails, but only when run via portage. + # + # error[E0463]: can't find crate for `std` + # error: requires `sized` lang_item + -e 's/test_rust_clippy/_&/' + ) + + sed -i "${disable_unittests[@]}" unittests/*.py || die + + # Broken due to python2 script created by python_wrapper_setup + rm -r "test cases/frameworks/1 boost" || die + # nvcc breaks on essentially any LDFLAGS + # https://bugs.gentoo.org/936757 + # https://github.com/mesonbuild/meson/issues/11234 + rm -r "test cases/cuda"/* || die + + distutils-r1_python_prepare_all +} + +python_check_deps() { + if [[ ${PV} = *9999* ]]; then + python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" + fi +} + +python_configure_all() { + if [[ ${PV} = *9999* ]]; then + # We use the unsafe_yaml loader because strictyaml is not packaged. In + # theory they produce the same results, but pyyaml is faster and + # without safety checks. + edo ./meson.py setup \ + --prefix "${EPREFIX}/usr" \ + -Dhtml=false \ + -Dunsafe_yaml=true \ + docs/ docs/builddir + fi +} + +python_compile_all() { + if [[ ${PV} = *9999* ]]; then + eninja -C docs/builddir + fi +} + +src_test() { + tc-export PKG_CONFIG + if ${PKG_CONFIG} --exists Qt5Core && ! ${PKG_CONFIG} --exists Qt5Gui; then + ewarn "Found Qt5Core but not Qt5Gui; skipping tests" + else + distutils-r1_src_test + fi +} + +python_test() { + ( + # meson has its own tests for LTO support. We don't need to verify that + # all tests work when they happen to use it. And in particular, this + # breaks rust. + filter-lto + + # remove unwanted python_wrapper_setup contents + # We actually do want to non-error if python2 is installed and tested. + remove="${T}/${EPYTHON}/bin:" + PATH=${PATH/${remove}/} + + # test_meson_installed + unset PYTHONDONTWRITEBYTECODE + + # https://bugs.gentoo.org/687792 + unset PKG_CONFIG + + # test_cross_file_system_paths + unset XDG_DATA_HOME + + # 'test cases/unit/73 summary' expects 80 columns + export COLUMNS=80 + + # If JAVA_HOME is not set, meson looks for javac in PATH. + # If javac is in /usr/bin, meson assumes /usr/include is a valid + # JDK include path. Setting JAVA_HOME works around this broken + # autodetection. If no JDK is installed, we should end up with an empty + # value in JAVA_HOME, and the tests should get skipped. + export JAVA_HOME=$(java-config -O 2>/dev/null) + + ${EPYTHON} -u run_tests.py + ) || die "Testing failed with ${EPYTHON}" +} + +python_install_all() { + distutils-r1_python_install_all + + insinto /usr/share/vim/vimfiles + doins -r data/syntax-highlighting/vim/{ftdetect,indent,syntax} + + dozshcomp data/shell-completions/zsh/_meson + dobashcomp data/shell-completions/bash/meson + + if [[ ${PV} = *9999* ]]; then + DESTDIR="${ED}" eninja -C docs/builddir install + else + newman "${DISTDIR}"/meson-reference-${MY_PV}.3 meson-reference.3 + fi +} diff --git a/dev-build/meson/meson-9999.ebuild b/dev-build/meson/meson-9999.ebuild new file mode 100644 index 000000000000..70db66a97775 --- /dev/null +++ b/dev-build/meson/meson-9999.ebuild @@ -0,0 +1,242 @@ +# Copyright 2016-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +DISTUTILS_USE_PEP517=setuptools + +inherit shell-completion edo distutils-r1 flag-o-matic toolchain-funcs vala + +if [[ ${PV} = *9999* ]]; then + EGIT_REPO_URI="https://github.com/mesonbuild/meson" + inherit ninja-utils git-r3 + + BDEPEND=" + ${NINJA_DEPEND} + $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') + " + +else + inherit verify-sig + + MY_PV=${PV/_/} + MY_P=${P/_/} + S=${WORKDIR}/${MY_P} + + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/meson-reference.3 -> meson-reference-${MY_PV}.3 + " + # Releases may be signed by those listed in Releasing.md. Jussi + # remains the default release manager. + # https://github.com/mesonbuild/meson/commit/c2d795735fa1c46c54d6aed4d4a30f36a1f853cb + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-eschwartz-20250723-r1 sec-keys/openpgp-keys-jpakkane )" + #VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/eschwartz.asc + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + fi +fi + +DESCRIPTION="Open source build system" +HOMEPAGE="https://mesonbuild.com/" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="test test-full" +RESTRICT="!test? ( test )" +REQUIRED_USE="test-full? ( test )" + +# test-full contains various test dependencies, for optional test cases of +# frameworks Meson has support for. These will *usually* get skipped +# automatically if uninstalled. The dep allows: +# - guaranteeing the whole test suite runs transparently without skips +# - reducing brittleness of frameworks that straddle multiple packages +# - Qt is a particular example of this. qt5 is deprecated, but we need qtbase +# consistently installed as long as it isn't masked for removal. TODO: drop +# dev-qt/*:5 from DEPEND once they are masked. + +DEPEND=" + test? ( + dev-libs/glib:2 + >=dev-libs/gobject-introspection-1.82.0-r2 + app-alternatives/ninja + dev-vcs/git + virtual/zlib:=[static-libs(+)] + virtual/pkgconfig + dev-build/cmake + ) + test-full? ( + || ( dev-lang/rust dev-lang/rust-bin ) + dev-lang/nasm + >=dev-lang/pypy-3 + $(vala_depend) + dev-python/cython + virtual/fortran + virtual/jdk + + app-text/doxygen + dev-cpp/gtest + dev-libs/protobuf + dev-util/bindgen + dev-util/gtk-doc + dev-util/itstool + llvm-core/llvm + media-libs/libsdl2 + media-libs/libwmf + net-libs/libpcap + sci-libs/hdf5[cxx,fortran] + sci-libs/netcdf + sys-cluster/openmpi[fortran] + sys-devel/bison + sys-devel/flex + + dev-qt/qtbase:6[gui,widgets] + dev-qt/qtdeclarative:6 + dev-qt/qttools:6 + >=dev-util/gdbus-codegen-2.80.5-r1 + x11-libs/gtk+:3 + + dev-libs/wayland + dev-util/wayland-scanner + ) +" +RDEPEND=" + !<dev-build/muon-0.2.0-r2[man(-)] + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.10.0-python-path.patch +) + +src_unpack() { + if [[ ${PV} = *9999* ]]; then + git-r3_src_unpack + else + default + use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.gz{,.asc} + fi +} + +python_prepare_all() { + local disable_unittests=( + # ASAN and sandbox both want control over LD_PRELOAD + # https://bugs.gentoo.org/673016 + -e 's/test_generate_gir_with_address_sanitizer/_&/' + -e 's/test_env_cflags_ldflags/_&/' + -e 's/test_c_link_args_and_env/_&/' + + # ASAN is unsupported on some targets + # https://bugs.gentoo.org/692822 + -e 's/test_pch_with_address_sanitizer/_&/' + + # clippy-driver fails, but only when run via portage. + # + # error[E0463]: can't find crate for `std` + # error: requires `sized` lang_item + -e 's/test_rust_clippy/_&/' + ) + + sed -i "${disable_unittests[@]}" unittests/*.py || die + + # Broken due to python2 script created by python_wrapper_setup + rm -r "test cases/frameworks/1 boost" || die + # nvcc breaks on essentially any LDFLAGS + # https://bugs.gentoo.org/936757 + # https://github.com/mesonbuild/meson/issues/11234 + rm -r "test cases/cuda"/* || die + + distutils-r1_python_prepare_all +} + +python_check_deps() { + if [[ ${PV} = *9999* ]]; then + python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" + fi +} + +python_configure_all() { + if [[ ${PV} = *9999* ]]; then + # We use the unsafe_yaml loader because strictyaml is not packaged. In + # theory they produce the same results, but pyyaml is faster and + # without safety checks. + edo ./meson.py setup \ + --prefix "${EPREFIX}/usr" \ + -Dhtml=false \ + -Dunsafe_yaml=true \ + docs/ docs/builddir + fi +} + +python_compile_all() { + if [[ ${PV} = *9999* ]]; then + eninja -C docs/builddir + fi +} + +src_test() { + tc-export PKG_CONFIG + if ${PKG_CONFIG} --exists Qt5Core && ! ${PKG_CONFIG} --exists Qt5Gui; then + ewarn "Found Qt5Core but not Qt5Gui; skipping tests" + else + distutils-r1_src_test + fi +} + +python_test() { + ( + # meson has its own tests for LTO support. We don't need to verify that + # all tests work when they happen to use it. And in particular, this + # breaks rust. + filter-lto + + # bug 513658 + has_version -b dev-lang/vala && vala_setup + + # remove unwanted python_wrapper_setup contents + # We actually do want to non-error if python2 is installed and tested. + remove="${T}/${EPYTHON}/bin:" + PATH=${PATH/${remove}/} + + # test_meson_installed + unset PYTHONDONTWRITEBYTECODE + + # https://bugs.gentoo.org/687792 + unset PKG_CONFIG + + # test_cross_file_system_paths + unset XDG_DATA_HOME + + # 'test cases/unit/73 summary' expects 80 columns + export COLUMNS=80 + + # If JAVA_HOME is not set, meson looks for javac in PATH. + # If javac is in /usr/bin, meson assumes /usr/include is a valid + # JDK include path. Setting JAVA_HOME works around this broken + # autodetection. If no JDK is installed, we should end up with an empty + # value in JAVA_HOME, and the tests should get skipped. + export JAVA_HOME=$(java-config -O 2>/dev/null) + + ${EPYTHON} -u run_tests.py + ) || die "Testing failed with ${EPYTHON}" +} + +python_install_all() { + distutils-r1_python_install_all + + insinto /usr/share/vim/vimfiles + doins -r data/syntax-highlighting/vim/{ftdetect,indent,syntax} + + dozshcomp data/shell-completions/zsh/_meson + dobashcomp data/shell-completions/bash/meson + + if [[ ${PV} = *9999* ]]; then + DESTDIR="${ED}" eninja -C docs/builddir install + else + newman "${DISTDIR}"/meson-reference-${MY_PV}.3 meson-reference.3 + fi +} diff --git a/dev-build/meson/metadata.xml b/dev-build/meson/metadata.xml new file mode 100644 index 000000000000..4cd5b8f68b1a --- /dev/null +++ b/dev-build/meson/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + </maintainer> + <maintainer type="person"> + <email>eschwartz@gentoo.org</email> + <name>Eli Schwartz</name> + </maintainer> + <upstream> + <remote-id type="github">mesonbuild/meson</remote-id> + <remote-id type="pypi">meson</remote-id> + </upstream> + <use> + <flag name="test-full">pull in dependencies to run all tests</flag> + </use> +</pkgmetadata> diff --git a/dev-build/metadata.xml b/dev-build/metadata.xml new file mode 100644 index 000000000000..8ffb230b9648 --- /dev/null +++ b/dev-build/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE catmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<catmetadata> + <longdescription lang="en"> + Build systems and related tools. + </longdescription> + <longdescription lang="de"> + Build-Systeme und zugehörige Werkzeuge. + </longdescription> + <longdescription lang="pl"> + Systemy budowania i powiązane narzędzia. + </longdescription> +</catmetadata> diff --git a/dev-build/muon/Manifest b/dev-build/muon/Manifest new file mode 100644 index 000000000000..8bf19adfa791 --- /dev/null +++ b/dev-build/muon/Manifest @@ -0,0 +1,7 @@ +DIST meson-tests-1e565931348f15f3f9b654f46ab4bf5fa009ca4f.tar.gz 229885 BLAKE2B d53bbc854da00c1a91189f6c4539da782f4ff49d2a57d86c56b9512b8b832f32d094d750055bb0602fe60aff58821e10c5f00663be9479420e29f75fbfba01c9 SHA512 25fdb657a17a33140029600d84cb3182e635749b99af85c432da611349c10576e15d2f79d1f9eaa21e3359b65dd057ef388925c54ebdc9c072e4b24bec3be8f8 +DIST muon-0.2.0.tar.gz 510533 BLAKE2B 6ec67f8875e84fbc2f23f412825dd47b820cd44e97a16d9ac0ab0ba9db6e755a604b66b79d3dbe13d99440daf21c2f0ccbe69661b1fb3c7df3f636c61a0e4dcb SHA512 b2e90048756bdc26bdea24fe227a87ad4d0e57176e217e22ea492a55229c62e2a70243f60af1e162e2dde8468fdda9662a32ea5cfadd69fab95a83499efa077b +DIST muon-0.4.0-man.tar.gz 8006 BLAKE2B 0ce395ddbcccc83f5cdf8e74a7690fe0c0016ba28f7d6a05795e09833a03e8d7a281012ec2c26974b46d9883059623443034c86e08dd188458775ed2ad5fd8ae SHA512 d511ad3e3510092183993ac373ac09b6d47e9ab91ee6d5c6c98c5051eb059cef99762065cd1b24b4b45fe2a242768666ca968ab270d824ce9b74ff24799d0bdc +DIST muon-0.5.0-man.tar.gz 8172 BLAKE2B aff24024050f8834bc024c87a4b8f599be376651c156bd9702c804175fd0aaa941a7eb2f0fd29c7016145c67dae17e48ecfd69ee286e3ba2be9147aa5faf6e00 SHA512 3d8973ab907838be6f40532983536023e280ed9624da003eb278ecbd5cd9f17b067d74a6646b6eecff0ebbd6de4b6a53f78e96a9f7c13d436543569d91c05b17 +DIST muon-v0.3.0.tar.gz 688544 BLAKE2B 6f5e9f91c1221135d8452b54bd781fb4324586d88503579af243c9889e17330d3d746a0e9fa4480a98d36ec5d55d1c335813bd19da81eaf2ef40dda42d32c418 SHA512 10d8d3d8d5df3898de22ed43fef234766e1884561d797a6462d614fd7be0f22eb7bbf40e096fe44d3e58f72e1fc631ef510f53a1e8ec36d4602ad7d5fe2771b3 +DIST muon-v0.4.0.tar.gz 3435753 BLAKE2B 0eb685ebd22a6314cfa02ab716ae8a1899363d1ce4dc6fd0b42a3fab1ff62358d21abd6c6d2682a78df1fffd2d6cc72abaacfa7eb5174a10d50bdd5dbbf0825c SHA512 2ab817bfe886fff5a9cd00935f19c7c73cc4556aa11a538ca496bdad4cced4dc1608efd05d58b6971640d0543bd7d4486185ed93a26522690cf2e1d348342bb8 +DIST muon-v0.5.0.tar.gz 1262546 BLAKE2B e43c12a3558108a2b3c35438db8cbf38fec50974f63392c32a48a76273c1896a2347bc475fb0e9282b85a3128367006840da3bfb1f9b49359428fe467e0744b1 SHA512 1575aa928b88fd5f17c1cdf9f46359b4dde407ec11800813eb1c9d4b4a4d201f6ee0a715d2e6f693bf6dda63073980a7207086d4195e51eda96dd27af3319078 diff --git a/dev-build/muon/files/muon-0.3.0-fix-summary-call.patch b/dev-build/muon/files/muon-0.3.0-fix-summary-call.patch new file mode 100644 index 000000000000..fabc9edcdd82 --- /dev/null +++ b/dev-build/muon/files/muon-0.3.0-fix-summary-call.patch @@ -0,0 +1,28 @@ +From c7128efaabf82c1503e2ae30fed7c3c3dbe91f2b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@gentoo.org> +Date: Fri, 27 Sep 2024 15:08:01 +0200 +Subject: [PATCH] build: fix summary call for bestline in src/external + +Fixes the following error: + + src/external/meson.build:74:4: ERROR: Summary section '' already have key 'libpkgconf' +--- + src/external/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/external/meson.build b/src/external/meson.build +index 421dea76..853bf91e 100644 +--- a/src/external/meson.build ++++ b/src/external/meson.build +@@ -71,7 +71,7 @@ readline_opt = get_option('readline') + dep_sources += files(f'readline_@readline_opt@.c') + if readline_opt != 'builtin' + dep = dependency(readline_opt) +- summary(name, dep.found()) ++ summary(readline_opt, dep.found()) + dep_dict += {name: dep.found()} + external_deps += [dep] + endif +-- +2.46.1 + diff --git a/dev-build/muon/files/muon-0.5.0-workaround-meson-15093.patch b/dev-build/muon/files/muon-0.5.0-workaround-meson-15093.patch new file mode 100644 index 000000000000..24d85513edb2 --- /dev/null +++ b/dev-build/muon/files/muon-0.5.0-workaround-meson-15093.patch @@ -0,0 +1,28 @@ +Workaround for a meson bug: https://github.com/mesonbuild/meson/issues/15093 + +diff --git i/tests/project/meson.build w/tests/project/meson.build +index f409198d..b582d83b 100644 +--- i/tests/project/meson.build ++++ w/tests/project/meson.build +@@ -45,7 +45,7 @@ foreach t : tests + endif + + test_source = props.get('source_root', meson.current_source_dir()) / name +- kwargs = props.get('kwargs', {}) ++ kwargs = props.get('kwargs_', {}) + suites = ['project', name.split('/')[0]] + + # skip objc tests on non darwin platforms +diff --git i/subprojects/meson-tests/meson.build w/subprojects/meson-tests/meson.build +index 861e57b..eb540a2 100644 +--- i/subprojects/meson-tests/meson.build ++++ w/subprojects/meson-tests/meson.build +@@ -252,7 +252,7 @@ foreach t : [ + ['common/235 invalid standard overridden to valid'], + [ + 'common/236 proper args splitting', +- {'kwargs': {'env': {'CFLAGS': '-DFOO -DBAR'}}}, ++ {'kwargs_': {'env': {'CFLAGS': '-DFOO -DBAR'}}}, + ], + ['common/237 fstrings'], + ['common/238 dependency include_type inconsistency'], diff --git a/dev-build/muon/metadata.xml b/dev-build/muon/metadata.xml new file mode 100644 index 000000000000..244b76153784 --- /dev/null +++ b/dev-build/muon/metadata.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>arsen@gentoo.org</email> + <name>Arsen Arsenović</name> + </maintainer> + <use> + <flag name="archive"> + Enable extracting wraps using <pkg>app-arch/libarchive</pkg>. + </flag> + <flag name="libpkgconf"> + Enable looking up packages via <pkg>dev-util/pkgconf</pkg>. + </flag> + </use> + <upstream> + <remote-id type="sourcehut">~lattis/muon</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/muon/muon-0.2.0-r2.ebuild b/dev-build/muon/muon-0.2.0-r2.ebuild new file mode 100644 index 000000000000..6f2e8fcbdd8d --- /dev/null +++ b/dev-build/muon/muon-0.2.0-r2.ebuild @@ -0,0 +1,49 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson + +COMMIT_HASH="${PV}" +MESON_DOCS_TAR=meson-docs-0.64.1-19-g39c6fa4bc.tar.gz + +DESCRIPTION="A meson-compatible build system" +HOMEPAGE="https://muon.build/" +SRC_URI=" + https://git.sr.ht/~lattis/muon/archive/${COMMIT_HASH}.tar.gz -> ${P}.tar.gz +" + +# Apache-2.0 for meson-docs +LICENSE="GPL-3 Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64" +IUSE="+archive +curl +libpkgconf" + +S="${WORKDIR}/${PN}-${COMMIT_HASH}" + +DEPEND=" + curl? ( net-misc/curl ) + archive? ( app-arch/libarchive:= ) + libpkgconf? ( dev-util/pkgconf:= ) +" +RDEPEND="${DEPEND}" +BDEPEND=" + app-text/scdoc +" + +src_prepare() { + default +} + +src_configure() { + local emesonargs=( + $(meson_feature curl libcurl) + $(meson_feature archive libarchive) + $(meson_feature libpkgconf) + -Ddocs=enabled + -Dsamurai=disabled # patched version of samurai downloaded via wraps + -Dbestline=enabled # vendored bestline, an insignificant addition + ) + meson_src_configure +} diff --git a/dev-build/muon/muon-0.3.0.ebuild b/dev-build/muon/muon-0.3.0.ebuild new file mode 100644 index 000000000000..0d59cb98c195 --- /dev/null +++ b/dev-build/muon/muon-0.3.0.ebuild @@ -0,0 +1,71 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit edo meson + +MESON_TESTS_HASH=1e565931348f15f3f9b654f46ab4bf5fa009ca4f +MESON_TESTS_DIRNAME="meson-tests-${MESON_TESTS_HASH}" + +DESCRIPTION="A meson-compatible build system" +HOMEPAGE="https://muon.build/" +SRC_URI=" + https://muon.build/releases/v${PV}/${PN}-v${PV}.tar.gz + test? ( + https://git.sr.ht/~lattis/meson-tests/archive/${MESON_TESTS_HASH}.tar.gz + -> ${MESON_TESTS_DIRNAME}.tar.gz + ) +" +S="${WORKDIR}/${PN}-v${PV}" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64" +IUSE="+archive +curl +libpkgconf test" + +DEPEND=" + curl? ( net-misc/curl ) + archive? ( app-arch/libarchive:= ) + libpkgconf? ( dev-util/pkgconf:= ) +" +RDEPEND="${DEPEND}" +BDEPEND=" + app-text/scdoc +" +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}/${PN}"-0.3.0-fix-summary-call.patch +) + +src_unpack() { + default + + if use test; then + edo mv "${WORKDIR}/${MESON_TESTS_DIRNAME}" \ + "${S}"/tests/project/meson-tests + fi +} + +src_prepare() { + default +} + +src_configure() { + cat >"${T}/program-file.ini" <<-EOF + [binaries] + git = 'if this exists youre a bad person' + EOF + local emesonargs=( + --native-file="${T}/program-file.ini" + $(meson_feature curl libcurl) + $(meson_feature archive libarchive) + $(meson_feature libpkgconf) + -Ddocs=enabled + -Dtracy=disabled # not in repos + -Dsamurai=disabled # patched version of samurai downloaded via wraps + -Dreadline=bestline # small vendored dependency + ) + meson_src_configure +} diff --git a/dev-build/muon/muon-0.4.0.ebuild b/dev-build/muon/muon-0.4.0.ebuild new file mode 100644 index 000000000000..86384793bb58 --- /dev/null +++ b/dev-build/muon/muon-0.4.0.ebuild @@ -0,0 +1,79 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit edo meson + +MESON_TESTS_HASH=1e565931348f15f3f9b654f46ab4bf5fa009ca4f +MESON_TESTS_DIRNAME="meson-tests-${MESON_TESTS_HASH}" + +DESCRIPTION="A meson-compatible build system" +HOMEPAGE="https://muon.build/" +SRC_URI=" + https://muon.build/releases/v${PV}/${PN}-v${PV}.tar.gz + https://muon.build/releases/v${PV}/docs/man.tar.gz -> ${P}-man.tar.gz + test? ( + https://git.sr.ht/~lattis/meson-tests/archive/${MESON_TESTS_HASH}.tar.gz + -> ${MESON_TESTS_DIRNAME}.tar.gz + ) +" +S="${WORKDIR}/${PN}-v${PV}" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="+archive +curl +libpkgconf test" + +DEPEND=" + curl? ( net-misc/curl ) + archive? ( app-arch/libarchive:= ) + libpkgconf? ( dev-util/pkgconf:= ) +" +RDEPEND="${DEPEND}" +BDEPEND=" + test? ( + >=dev-util/gdbus-codegen-2.80.5-r1 + dev-util/glib-utils + ) +" +RESTRICT="!test? ( test )" + +src_unpack() { + default + + if use test; then + edo mv "${WORKDIR}/${MESON_TESTS_DIRNAME}" \ + "${S}"/tests/project/meson-tests + fi +} + +src_prepare() { + default +} + +src_configure() { + cat >"${T}/program-file.ini" <<-EOF + [binaries] + git = 'if this exists youre a bad person' + EOF + local emesonargs=( + --native-file="${T}/program-file.ini" + $(meson_feature curl libcurl) + $(meson_feature archive libarchive) + $(meson_feature libpkgconf) + -Ddocs=disabled + -Dtracy=disabled # not in repos + -Dsamurai=disabled # patched version of samurai downloaded via wraps + -Dreadline=bestline # small vendored dependency + ) + meson_src_configure +} + +src_install() { + meson_install + + einstalldocs + doman "${WORKDIR}/man/muon.1" + doman "${WORKDIR}/man/meson.build.5" +} diff --git a/dev-build/muon/muon-0.5.0.ebuild b/dev-build/muon/muon-0.5.0.ebuild new file mode 100644 index 000000000000..06dfc91c7c00 --- /dev/null +++ b/dev-build/muon/muon-0.5.0.ebuild @@ -0,0 +1,66 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson + +DESCRIPTION="A meson-compatible build system" +HOMEPAGE="https://muon.build/" +SRC_URI=" + https://muon.build/releases/v${PV}/${PN}-v${PV}.tar.gz + https://muon.build/releases/v${PV}/docs/man.tar.gz -> ${P}-man.tar.gz +" +S="${WORKDIR}/${PN}-v${PV}" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="+archive +curl +libpkgconf test" + +DEPEND=" + curl? ( net-misc/curl ) + archive? ( app-arch/libarchive:= ) + libpkgconf? ( dev-util/pkgconf:= ) +" +RDEPEND="${DEPEND}" +BDEPEND=" + test? ( >=dev-util/gdbus-codegen-2.80.5-r1 ) +" +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}/${PN}"-0.5.0-workaround-meson-15093.patch +) + +src_configure() { + cat >"${T}/program-file.ini" <<-EOF + [binaries] + git = 'if this exists youre a bad person' + EOF + local emesonargs=( + --native-file="${T}/program-file.ini" + $(meson_feature curl libcurl) + $(meson_feature archive libarchive) + $(meson_feature libpkgconf) + -Dman-pages=disabled + -Dmeson-docs=disabled + -Dtracy=disabled # not in repos + -Dsamurai=disabled # patched version of samurai downloaded via wraps + -Dreadline=bestline # small vendored dependency + -Dwebsite=disabled # unneeded + -Dui=disabled # too many vendored depdendencies + + # Pulled into the right directory above. + $(meson_feature test meson-tests) + ) + meson_src_configure +} + +src_install() { + meson_install + + einstalldocs + doman "${WORKDIR}/man/muon.1" + doman "${WORKDIR}/man/meson.build.5" +} diff --git a/dev-build/netsurf-buildsystem/Manifest b/dev-build/netsurf-buildsystem/Manifest new file mode 100644 index 000000000000..04e085157cb2 --- /dev/null +++ b/dev-build/netsurf-buildsystem/Manifest @@ -0,0 +1 @@ +DIST buildsystem-1.10.tar.gz 39221 BLAKE2B 99843f0af4c57af2edc78a5ba1a4d0e3988fa622234235b4adc6f556e0550916187f385d2017cbeb42aa8136ee9cb5a987f6b29919b6b37b6b19ec58e62a0a5d SHA512 0b0f9114567e5c0807bbf066f1c507f386dfb43bf993e3fe487b3c77edc6cee8ea573ca1105558e48b78b2c97857791fe1fe65af8e95fa0f4e205ef701677670 diff --git a/dev-build/netsurf-buildsystem/files/gentoo-helpers-r2.sh b/dev-build/netsurf-buildsystem/files/gentoo-helpers-r2.sh new file mode 100644 index 000000000000..403279ecc5f6 --- /dev/null +++ b/dev-build/netsurf-buildsystem/files/gentoo-helpers-r2.sh @@ -0,0 +1,22 @@ +#!/bin/bash + +netsurf_define_makeconf() { + NETSURF_MAKECONF=( + PREFIX="${EPREFIX}/usr" + NSSHARED="${EPREFIX}/usr/share/netsurf-buildsystem" + LIBDIR="$(get_libdir)" + Q= + CC="$(tc-getCC)" + LD="$(tc-getLD)" + HOST_CC="\$(CC)" + BUILD_CC="$(tc-getBUILD_CC)" + CXX="$(tc-getCXX)" + BUILD_CXX="$(tc-getBUILD_CXX)" + CCOPT= + CCNOOPT= + CCDBG= + LDDBG= + AR="$(tc-getAR)" + WARNFLAGS= + ) +} diff --git a/dev-build/netsurf-buildsystem/metadata.xml b/dev-build/netsurf-buildsystem/metadata.xml new file mode 100644 index 000000000000..f2908ee10b59 --- /dev/null +++ b/dev-build/netsurf-buildsystem/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>mjo@gentoo.org</email> + <name>Michael Orlitzky</name> + </maintainer> +</pkgmetadata> diff --git a/dev-build/netsurf-buildsystem/netsurf-buildsystem-1.10.ebuild b/dev-build/netsurf-buildsystem/netsurf-buildsystem-1.10.ebuild new file mode 100644 index 000000000000..8a588601815c --- /dev/null +++ b/dev-build/netsurf-buildsystem/netsurf-buildsystem-1.10.ebuild @@ -0,0 +1,26 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_P="buildsystem-${PV}" +DESCRIPTION="Build system used for netsurf and its libraries" +HOMEPAGE="https://www.netsurf-browser.org" +SRC_URI="https://download.netsurf-browser.org/libs/releases/${MY_P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + default + sed -e 's:/bin/which:which:' -i "makefiles/Makefile.tools" || die +} + +src_install() { + emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install + insinto /usr/share/netsurf-buildsystem + newins "${FILESDIR}/gentoo-helpers-r2.sh" gentoo-helpers.sh +} diff --git a/dev-build/ninja/Manifest b/dev-build/ninja/Manifest new file mode 100644 index 000000000000..1b75adec5ae0 --- /dev/null +++ b/dev-build/ninja/Manifest @@ -0,0 +1,3 @@ +DIST gtest-1.16.0.tar.gz 876245 BLAKE2B e5f301987fd4b73cfc8e900ac476b38444994c63bd2f334fdc58704f9e6e966cc03a2dba7ddc033624e89853a15b2592530a1180c3e56be7a28928ed370a9e27 SHA512 bec8dad2a5abbea8e9e5f0ceedd8c9dbdb8939e9f74785476b0948f21f5db5901018157e78387e106c6717326558d6642fc0e39379c62af57bf1205a9df8a18b +DIST ninja-1.13.1.tar.gz 292098 BLAKE2B 610faa82e23ad23ec949f8a75cb4d8533c654bbfea63f2105e214d49cbf739af29d3ceebb4ead52693c7d925220817970073cd14ac8e948c5130b9ecfbac26ba SHA512 ec94d42967b962d66ab0747fcb9d095510117159de0473ec08df47a657895aa2523f920798e4608d0c6cf0e2e382512c14aec8a54ea58b6cd4b01edd3a7c8e62 +DIST ninja-1.13.2.tar.gz 292385 BLAKE2B 3418c756386a277f2a280b39f378e1bb944c4f9664254c69066de0d73a274b7faa9b688c475337b28ef24e279b5533ed990479c0cc900dcf38b0562acbdaa322 SHA512 c0b401b4db91a2eea01a474ee979b2c6f1daa97b4c8d1f856871ce5f6d567c4b26d6246bc57e2a5f914329302abcd9c00ab0d4394a25f2ad502b6b00a07903d2 diff --git a/dev-build/ninja/files/ninja-1.13.2-allow-psuedo-fifo.patch b/dev-build/ninja/files/ninja-1.13.2-allow-psuedo-fifo.patch new file mode 100644 index 000000000000..612038a1c58b --- /dev/null +++ b/dev-build/ninja/files/ninja-1.13.2-allow-psuedo-fifo.patch @@ -0,0 +1,88 @@ +https://github.com/ninja-build/ninja/pull/2692 + +From 9f1f01d7d03b84342dda511aad0ef3e3fcf4ea7c Mon Sep 17 00:00:00 2001 +From: Sam James <sam@gentoo.org> +Date: Sat, 22 Nov 2025 12:49:35 +0000 +Subject: [PATCH] Don't require a FIFO to be identifiable as such + +The jobserver specification [0] currently suggests that the FIFO must be a +genuine FIFO. + +For some work we're doing [1][2], we're emulating a FIFO using CUSE/FUSE to allow +tracking when consumers disappear to avoid lost tokens. nixos had a similar +idea in the past too [3]. + +There doesn't seem to be a good reason to check that any FIFO passed by +the user is actually identifiable as such by `stat()`, so drop the check. + +make already does not perform such a check, just the specification isn't +clear about it, so we've asked them to clarify it [4]. + +[0] https://www.gnu.org/software/make/manual/html_node/POSIX-Jobserver.html +[1] https://codeberg.org/amonakov/guildmaster +[2] https://gitweb.gentoo.org/proj/steve.git/ +[3] https://github.com/NixOS/nixpkgs/pull/314888 +[4] https://savannah.gnu.org/bugs/index.php?67726 +--- + src/jobserver-posix.cc | 12 ------------ + src/jobserver_test.cc | 10 +--------- + 2 files changed, 1 insertion(+), 21 deletions(-) + +diff --git a/src/jobserver-posix.cc b/src/jobserver-posix.cc +index 0e3c7e250c..95208c09b6 100644 +--- a/src/jobserver-posix.cc ++++ b/src/jobserver-posix.cc +@@ -26,13 +26,6 @@ + + namespace { + +-// Return true if |fd| is a fifo or pipe descriptor. +-bool IsFifoDescriptor(int fd) { +- struct stat info; +- int ret = ::fstat(fd, &info); +- return (ret == 0) && ((info.st_mode & S_IFMT) == S_IFIFO); +-} +- + // Implementation of Jobserver::Client for Posix systems + class PosixJobserverClient : public Jobserver::Client { + public: +@@ -89,11 +82,6 @@ class PosixJobserverClient : public Jobserver::Client { + std::string("Error opening fifo for reading: ") + strerror(errno); + return false; + } +- if (!IsFifoDescriptor(read_fd_)) { +- *error = "Not a fifo path: " + fifo_path; +- // Let destructor close read_fd_. +- return false; +- } + write_fd_ = ::open(fifo_path.c_str(), O_WRONLY | O_NONBLOCK | O_CLOEXEC); + if (write_fd_ < 0) { + *error = +diff --git a/src/jobserver_test.cc b/src/jobserver_test.cc +index 850a8b13fd..9e180e6e39 100644 +--- a/src/jobserver_test.cc ++++ b/src/jobserver_test.cc +@@ -379,21 +379,13 @@ TEST(Jobserver, PosixFifoClientWithWrongPath) { + ASSERT_GE(fd, 0) << "Could not create file: " << strerror(errno); + ::close(fd); + +- // Create new client instance, passing the file path for the fifo. ++ // Create new client instance, with an empty file path. + Jobserver::Config config; + config.mode = Jobserver::Config::kModePosixFifo; +- config.path = file_path; +- + std::string error; + std::unique_ptr<Jobserver::Client> client = + Jobserver::Client::Create(config, &error); +- EXPECT_FALSE(client.get()); +- EXPECT_FALSE(error.empty()); +- EXPECT_EQ("Not a fifo path: " + file_path, error); + +- // Do the same with an empty file path. +- error.clear(); +- config.path.clear(); + client = Jobserver::Client::Create(config, &error); + EXPECT_FALSE(client.get()); + EXPECT_FALSE(error.empty()); + diff --git a/dev-build/ninja/files/ninja-cflags.patch b/dev-build/ninja/files/ninja-cflags.patch new file mode 100644 index 000000000000..0c4ef2813bb7 --- /dev/null +++ b/dev-build/ninja/files/ninja-cflags.patch @@ -0,0 +1,25 @@ +From e4530769ef6a497f8f5f06159f6be049dc20e2ea Mon Sep 17 00:00:00 2001 +From: Mike Gilbert <floppym@gentoo.org> +Date: Thu, 19 Mar 2020 11:21:29 -0400 +Subject: [PATCH] Avoid adding -O2 -DNDEBUG to cflags + +--- + configure.py | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/configure.py b/configure.py +index 7d8ce90..7566147 100755 +--- a/configure.py ++++ b/configure.py +@@ -344,8 +344,6 @@ else: + if options.debug: + cflags += ['-D_GLIBCXX_DEBUG', '-D_GLIBCXX_DEBUG_PEDANTIC'] + cflags.remove('-fno-rtti') # Needed for above pedanticness. +- else: +- cflags += ['-O2', '-DNDEBUG'] + try: + proc = subprocess.Popen( + [CXX, '-fdiagnostics-color', '-c', '-x', 'c++', '/dev/null', +-- +2.25.1 + diff --git a/dev-build/ninja/metadata.xml b/dev-build/ninja/metadata.xml new file mode 100644 index 000000000000..674485d1018e --- /dev/null +++ b/dev-build/ninja/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <maintainer type="project"> + <email>chromium@gentoo.org</email> + <name>Chromium in Gentoo Project</name> + </maintainer> + <upstream> + <remote-id type="github">ninja-build/ninja</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/ninja/ninja-1.13.1.ebuild b/dev-build/ninja/ninja-1.13.1.ebuild new file mode 100644 index 000000000000..0b47762c94a8 --- /dev/null +++ b/dev-build/ninja/ninja-1.13.1.ebuild @@ -0,0 +1,132 @@ +# Copyright 2012-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit bash-completion-r1 edo python-any-r1 toolchain-funcs + +DESCRIPTION="A small build system similar to make" +HOMEPAGE="https://ninja-build.org/" + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://github.com/ninja-build/ninja.git" + inherit git-r3 +else + SRC_URI="https://github.com/ninja-build/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +GTEST_VER=1.16.0 +SRC_URI+=" test? ( https://github.com/google/googletest/archive/refs/tags/v${GTEST_VER}.tar.gz -> gtest-${GTEST_VER}.tar.gz )" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="doc test" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${PYTHON_DEPS} + dev-util/re2c + doc? ( + app-text/asciidoc + app-text/doxygen + dev-libs/libxslt + media-gfx/graphviz + ) +" +PDEPEND=" + app-alternatives/ninja +" + +PATCHES=( + "${FILESDIR}"/ninja-cflags.patch +) + +pkg_setup() { + : +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + fi + + default +} + +bootstrap() { + if tc-is-cross-compiler; then + local -x AR=$(tc-getBUILD_AR) + local -x CXX=$(tc-getBUILD_CXX) + local -x CFLAGS= + local -x CXXFLAGS="${BUILD_CXXFLAGS} -D_FILE_OFFSET_BITS=64" + local -x LDFLAGS=${BUILD_LDFLAGS} + fi + + local bootstrap_args=( + --with-python=python + --bootstrap + --verbose + $(usev test --gtest-source-dir="${WORKDIR}"/googletest-${GTEST_VER}) + ) + + edo ${EPYTHON} configure.py "${bootstrap_args[@]}" +} + +src_compile() { + python_setup + + tc-export AR CXX + unset CFLAGS + export CXXFLAGS="${CXXFLAGS} -D_FILE_OFFSET_BITS=64" + + bootstrap + + if use doc; then + edo ./ninja -v doxygen manual + fi + + if tc-is-cross-compiler; then + edo ${EPYTHON} configure.py --with-python=python + edo ./ninja -v ninja + fi +} + +src_test() { + if ! tc-is-cross-compiler; then + # Bug 485772 + ulimit -n 2048 + edo ./ninja -v ninja_test + edo ./ninja_test + fi +} + +src_install() { + newbin ninja{,-reference} + + if use doc; then + docinto html + dodoc -r doc/doxygen/html/. + dodoc doc/manual.html + fi + + newbashcomp misc/bash-completion ${PN} + + insinto /usr/share/vim/vimfiles/syntax/ + doins misc/ninja.vim + + echo 'au BufNewFile,BufRead *.ninja set ft=ninja' > "${T}"/ninja.vim || die + insinto /usr/share/vim/vimfiles/ftdetect + doins "${T}"/ninja.vim + + insinto /usr/share/zsh/site-functions + newins misc/zsh-completion _ninja +} + +pkg_postinst() { + if ! [[ -e "${EROOT}/usr/bin/ninja" ]]; then + ln -s ninja-reference "${EROOT}/usr/bin/ninja" || die + fi +} diff --git a/dev-build/ninja/ninja-1.13.2-r1.ebuild b/dev-build/ninja/ninja-1.13.2-r1.ebuild new file mode 100644 index 000000000000..3a5c2c74a479 --- /dev/null +++ b/dev-build/ninja/ninja-1.13.2-r1.ebuild @@ -0,0 +1,133 @@ +# Copyright 2012-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit bash-completion-r1 edo python-any-r1 toolchain-funcs + +DESCRIPTION="A small build system similar to make" +HOMEPAGE="https://ninja-build.org/" + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://github.com/ninja-build/ninja.git" + inherit git-r3 +else + SRC_URI="https://github.com/ninja-build/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +GTEST_VER=1.16.0 +SRC_URI+=" test? ( https://github.com/google/googletest/archive/refs/tags/v${GTEST_VER}.tar.gz -> gtest-${GTEST_VER}.tar.gz )" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="doc test" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${PYTHON_DEPS} + dev-util/re2c + doc? ( + app-text/asciidoc + app-text/doxygen + dev-libs/libxslt + media-gfx/graphviz + ) +" +PDEPEND=" + app-alternatives/ninja +" + +PATCHES=( + "${FILESDIR}"/ninja-cflags.patch + "${FILESDIR}"/${PN}-1.13.2-allow-psuedo-fifo.patch +) + +pkg_setup() { + : +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + fi + + default +} + +bootstrap() { + if tc-is-cross-compiler; then + local -x AR=$(tc-getBUILD_AR) + local -x CXX=$(tc-getBUILD_CXX) + local -x CFLAGS= + local -x CXXFLAGS="${BUILD_CXXFLAGS} -D_FILE_OFFSET_BITS=64" + local -x LDFLAGS=${BUILD_LDFLAGS} + fi + + local bootstrap_args=( + --with-python=python + --bootstrap + --verbose + $(usev test --gtest-source-dir="${WORKDIR}"/googletest-${GTEST_VER}) + ) + + edo ${EPYTHON} configure.py "${bootstrap_args[@]}" +} + +src_compile() { + python_setup + + tc-export AR CXX + unset CFLAGS + export CXXFLAGS="${CXXFLAGS} -D_FILE_OFFSET_BITS=64" + + bootstrap + + if use doc; then + edo ./ninja -v doxygen manual + fi + + if tc-is-cross-compiler; then + edo ${EPYTHON} configure.py --with-python=python + edo ./ninja -v ninja + fi +} + +src_test() { + if ! tc-is-cross-compiler; then + # Bug 485772 + ulimit -n 2048 + edo ./ninja -v ninja_test + edo ./ninja_test + fi +} + +src_install() { + newbin ninja{,-reference} + + if use doc; then + docinto html + dodoc -r doc/doxygen/html/. + dodoc doc/manual.html + fi + + newbashcomp misc/bash-completion ${PN} + + insinto /usr/share/vim/vimfiles/syntax/ + doins misc/ninja.vim + + echo 'au BufNewFile,BufRead *.ninja set ft=ninja' > "${T}"/ninja.vim || die + insinto /usr/share/vim/vimfiles/ftdetect + doins "${T}"/ninja.vim + + insinto /usr/share/zsh/site-functions + newins misc/zsh-completion _ninja +} + +pkg_postinst() { + if ! [[ -e "${EROOT}/usr/bin/ninja" ]]; then + ln -s ninja-reference "${EROOT}/usr/bin/ninja" || die + fi +} diff --git a/dev-build/ninja/ninja-1.13.2.ebuild b/dev-build/ninja/ninja-1.13.2.ebuild new file mode 100644 index 000000000000..610a5367942a --- /dev/null +++ b/dev-build/ninja/ninja-1.13.2.ebuild @@ -0,0 +1,132 @@ +# Copyright 2012-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit bash-completion-r1 edo python-any-r1 toolchain-funcs + +DESCRIPTION="A small build system similar to make" +HOMEPAGE="https://ninja-build.org/" + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://github.com/ninja-build/ninja.git" + inherit git-r3 +else + SRC_URI="https://github.com/ninja-build/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +GTEST_VER=1.16.0 +SRC_URI+=" test? ( https://github.com/google/googletest/archive/refs/tags/v${GTEST_VER}.tar.gz -> gtest-${GTEST_VER}.tar.gz )" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="doc test" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${PYTHON_DEPS} + dev-util/re2c + doc? ( + app-text/asciidoc + app-text/doxygen + dev-libs/libxslt + media-gfx/graphviz + ) +" +PDEPEND=" + app-alternatives/ninja +" + +PATCHES=( + "${FILESDIR}"/ninja-cflags.patch +) + +pkg_setup() { + : +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + fi + + default +} + +bootstrap() { + if tc-is-cross-compiler; then + local -x AR=$(tc-getBUILD_AR) + local -x CXX=$(tc-getBUILD_CXX) + local -x CFLAGS= + local -x CXXFLAGS="${BUILD_CXXFLAGS} -D_FILE_OFFSET_BITS=64" + local -x LDFLAGS=${BUILD_LDFLAGS} + fi + + local bootstrap_args=( + --with-python=python + --bootstrap + --verbose + $(usev test --gtest-source-dir="${WORKDIR}"/googletest-${GTEST_VER}) + ) + + edo ${EPYTHON} configure.py "${bootstrap_args[@]}" +} + +src_compile() { + python_setup + + tc-export AR CXX + unset CFLAGS + export CXXFLAGS="${CXXFLAGS} -D_FILE_OFFSET_BITS=64" + + bootstrap + + if use doc; then + edo ./ninja -v doxygen manual + fi + + if tc-is-cross-compiler; then + edo ${EPYTHON} configure.py --with-python=python + edo ./ninja -v ninja + fi +} + +src_test() { + if ! tc-is-cross-compiler; then + # Bug 485772 + ulimit -n 2048 + edo ./ninja -v ninja_test + edo ./ninja_test + fi +} + +src_install() { + newbin ninja{,-reference} + + if use doc; then + docinto html + dodoc -r doc/doxygen/html/. + dodoc doc/manual.html + fi + + newbashcomp misc/bash-completion ${PN} + + insinto /usr/share/vim/vimfiles/syntax/ + doins misc/ninja.vim + + echo 'au BufNewFile,BufRead *.ninja set ft=ninja' > "${T}"/ninja.vim || die + insinto /usr/share/vim/vimfiles/ftdetect + doins "${T}"/ninja.vim + + insinto /usr/share/zsh/site-functions + newins misc/zsh-completion _ninja +} + +pkg_postinst() { + if ! [[ -e "${EROOT}/usr/bin/ninja" ]]; then + ln -s ninja-reference "${EROOT}/usr/bin/ninja" || die + fi +} diff --git a/dev-build/ninja/ninja-9999.ebuild b/dev-build/ninja/ninja-9999.ebuild new file mode 100644 index 000000000000..610a5367942a --- /dev/null +++ b/dev-build/ninja/ninja-9999.ebuild @@ -0,0 +1,132 @@ +# Copyright 2012-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit bash-completion-r1 edo python-any-r1 toolchain-funcs + +DESCRIPTION="A small build system similar to make" +HOMEPAGE="https://ninja-build.org/" + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://github.com/ninja-build/ninja.git" + inherit git-r3 +else + SRC_URI="https://github.com/ninja-build/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +GTEST_VER=1.16.0 +SRC_URI+=" test? ( https://github.com/google/googletest/archive/refs/tags/v${GTEST_VER}.tar.gz -> gtest-${GTEST_VER}.tar.gz )" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="doc test" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${PYTHON_DEPS} + dev-util/re2c + doc? ( + app-text/asciidoc + app-text/doxygen + dev-libs/libxslt + media-gfx/graphviz + ) +" +PDEPEND=" + app-alternatives/ninja +" + +PATCHES=( + "${FILESDIR}"/ninja-cflags.patch +) + +pkg_setup() { + : +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + fi + + default +} + +bootstrap() { + if tc-is-cross-compiler; then + local -x AR=$(tc-getBUILD_AR) + local -x CXX=$(tc-getBUILD_CXX) + local -x CFLAGS= + local -x CXXFLAGS="${BUILD_CXXFLAGS} -D_FILE_OFFSET_BITS=64" + local -x LDFLAGS=${BUILD_LDFLAGS} + fi + + local bootstrap_args=( + --with-python=python + --bootstrap + --verbose + $(usev test --gtest-source-dir="${WORKDIR}"/googletest-${GTEST_VER}) + ) + + edo ${EPYTHON} configure.py "${bootstrap_args[@]}" +} + +src_compile() { + python_setup + + tc-export AR CXX + unset CFLAGS + export CXXFLAGS="${CXXFLAGS} -D_FILE_OFFSET_BITS=64" + + bootstrap + + if use doc; then + edo ./ninja -v doxygen manual + fi + + if tc-is-cross-compiler; then + edo ${EPYTHON} configure.py --with-python=python + edo ./ninja -v ninja + fi +} + +src_test() { + if ! tc-is-cross-compiler; then + # Bug 485772 + ulimit -n 2048 + edo ./ninja -v ninja_test + edo ./ninja_test + fi +} + +src_install() { + newbin ninja{,-reference} + + if use doc; then + docinto html + dodoc -r doc/doxygen/html/. + dodoc doc/manual.html + fi + + newbashcomp misc/bash-completion ${PN} + + insinto /usr/share/vim/vimfiles/syntax/ + doins misc/ninja.vim + + echo 'au BufNewFile,BufRead *.ninja set ft=ninja' > "${T}"/ninja.vim || die + insinto /usr/share/vim/vimfiles/ftdetect + doins "${T}"/ninja.vim + + insinto /usr/share/zsh/site-functions + newins misc/zsh-completion _ninja +} + +pkg_postinst() { + if ! [[ -e "${EROOT}/usr/bin/ninja" ]]; then + ln -s ninja-reference "${EROOT}/usr/bin/ninja" || die + fi +} diff --git a/dev-build/parmasan-remake/Manifest b/dev-build/parmasan-remake/Manifest new file mode 100644 index 000000000000..675831b6e44e --- /dev/null +++ b/dev-build/parmasan-remake/Manifest @@ -0,0 +1 @@ +DIST parmasan-remake-4.3_p20240220.gh.tar.gz 1587763 BLAKE2B 901f0ca125b4f4dbfa71a175dfc42a0d4d239530563e3cbf971c7156aa51382f0e0ca5e5117c18b082f142842be16fce70b24a889c5f5ecf28e7541c06a467b9 SHA512 50deea4d526abb3de20009a54593f71995caa16e270a6b6343a965d91f285be6b6ba1a7f8ebea0c856fcee8785747a5ee7a9e4a166fe64bc99bec989a187f095 diff --git a/dev-build/parmasan-remake/metadata.xml b/dev-build/parmasan-remake/metadata.xml new file mode 100644 index 000000000000..a39c8f8b5258 --- /dev/null +++ b/dev-build/parmasan-remake/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>sam@gentoo.org</email> + <name>Sam James</name> + </maintainer> + <upstream> + <remote-id type="github">ispras/parmasan-remake</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/parmasan-remake/parmasan-remake-4.3_p20240220.ebuild b/dev-build/parmasan-remake/parmasan-remake-4.3_p20240220.ebuild new file mode 100644 index 000000000000..0c8a73122f11 --- /dev/null +++ b/dev-build/parmasan-remake/parmasan-remake-4.3_p20240220.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic + +REMAKE_COMMIT="ff799578de24cf4be6ec230702ff5f978432ca51" +DESCRIPTION="Patched dev-build/remake for dev-build/parmasan, a parallel make sanitizer" +HOMEPAGE="https://github.com/ispras/parmasan-remake" +SRC_URI="https://github.com/ispras/parmasan-remake/archive/${REMAKE_COMMIT}.tar.gz -> ${P}.gh.tar.gz" +S="${WORKDIR}"/${PN}-${REMAKE_COMMIT} + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="readline" + +# Test failures caused by '--parmasan-strategy' appearing which is the point +# of the project. The tests could possibly be adapted but aren't right now. +RESTRICT="test" + +RDEPEND=" + readline? ( sys-libs/readline:= ) +" +DEPEND="${RDEPEND}" + +src_prepare() { + default + + eautoreconf +} + +src_configure() { + # Fixed in upstream gnulib but not yet propagated into make (bug #938934) + append-cflags -std=gnu17 + # Fixed in upstream make/gnulib, just not yet propagated into remake (bug #863827) + filter-lto + + use readline || export vl_cv_lib_readline=no + + local myeconfargs=( + --without-guile + --disable-nls + + --with-make-name=${PN} + # parmasan doesn't support it, turn it off + # https://github.com/ispras/parmasan?tab=readme-ov-file#building + --disable-posix-spawn + + # Fails to install w/ 'make.texi:5: @include: could not find version.texi' + MAKEINFO=: + ) + + econf "${myeconfargs[@]}" + +} + +src_install() { + default + + # Avoid collision with dev-build/remake, not that parmasan seems + # to need this file anyway. + mv "${ED}"/usr/include/gnuremake.h "${ED}"/usr/include/gnuparmasan-remake.h || die +} diff --git a/dev-build/parmasan/Manifest b/dev-build/parmasan/Manifest new file mode 100644 index 000000000000..eb22670f1a93 --- /dev/null +++ b/dev-build/parmasan/Manifest @@ -0,0 +1 @@ +DIST parmasan-0_pre20250221.gh.tar.gz 48700 BLAKE2B b77b724226fd05739177c5171dadc1d5c7cc3549daf5256cf6bdd50755399b4bbbdb1a9ffe92d480353abd8542e93bf1240faa412d537a10cf2e39944fb4f7a0 SHA512 7cbe3619d990fdb5da2980b13aeb6a63d0cc66028f093e2770884bca992c8db250b961e5f1bac59dc799426d72c4d591a918228c9f8005c8308dff2f9a8238d6 diff --git a/dev-build/parmasan/metadata.xml b/dev-build/parmasan/metadata.xml new file mode 100644 index 000000000000..216ef4cb9302 --- /dev/null +++ b/dev-build/parmasan/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>sam@gentoo.org</email> + <name>Sam James</name> + </maintainer> + <upstream> + <remote-id type="github">ispras/parmasan</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/parmasan/parmasan-0_pre20250221-r1.ebuild b/dev-build/parmasan/parmasan-0_pre20250221-r1.ebuild new file mode 100644 index 000000000000..bbbaec0af94e --- /dev/null +++ b/dev-build/parmasan/parmasan-0_pre20250221-r1.ebuild @@ -0,0 +1,26 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +PARMASAN_COMMIT="a313a554e2e288764b6f83761416c90990a00cee" +DESCRIPTION="Parallel make sanitizer" +HOMEPAGE="https://github.com/ispras/parmasan" +SRC_URI="https://github.com/ispras/parmasan/archive/${PARMASAN_COMMIT}.tar.gz -> ${P}.gh.tar.gz" +S="${WORKDIR}"/${PN}-${PARMASAN_COMMIT} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" + +RDEPEND="dev-build/parmasan-remake" + +src_install() { + cmake_src_install + + # Let's make it less likely to collide and it's then common + # with parmasan-remake. + mv "${ED}"/usr/bin/{,parmasan-}tracer || die +} diff --git a/dev-build/pdpmake/Manifest b/dev-build/pdpmake/Manifest new file mode 100644 index 000000000000..d1fcbe99117b --- /dev/null +++ b/dev-build/pdpmake/Manifest @@ -0,0 +1 @@ +DIST pdpmake-2.0.4.tgz 47337 BLAKE2B 776b83a31946ee1a689444a7d0439b7506cfac293c0ff9bb2b57f8c981c9895cada7ece279459996c14050b8ff602c23ca1d7489280d2542aeb57ac2cc6db3da SHA512 0e2e2fb1a39983b8c2bc54d4892ddac834319953128fcebd7162b12328e1a27d3aaad57e8512ea8e80fb200c5cacf8116d0936804d9e21f10dce411df855fda7 diff --git a/dev-build/pdpmake/metadata.xml b/dev-build/pdpmake/metadata.xml new file mode 100644 index 000000000000..2092bcc33a7c --- /dev/null +++ b/dev-build/pdpmake/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>contact@hacktivis.me</email> + <name>Haelwenn (lanodan) Monnier</name> + </maintainer> +</pkgmetadata> diff --git a/dev-build/pdpmake/pdpmake-2.0.4.ebuild b/dev-build/pdpmake/pdpmake-2.0.4.ebuild new file mode 100644 index 000000000000..da617d88c79d --- /dev/null +++ b/dev-build/pdpmake/pdpmake-2.0.4.ebuild @@ -0,0 +1,26 @@ +# Copyright 2024 Haelwenn (lanodan) Monnier <contact@hacktivis.me> +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Public domain POSIX make" +HOMEPAGE="https://frippery.org/make" +SRC_URI="https://frippery.org/make/${P}.tgz" +LICENSE="Unlicense" +SLOT="0" +KEYWORDS="~amd64" + +src_test() { + pushd ./testsuite || die + + # Call manually instead of using `make test` + # Seems to run in POSIX mode otherwise, leading to POSIX 2024 tests being skipped + ./runtest || die + + popd +} + +src_install() { + doman pdpmake.1 + emake install DESTDIR="${ED}" PREFIX=/usr +} diff --git a/dev-build/pmake/Manifest b/dev-build/pmake/Manifest new file mode 100644 index 000000000000..149a5aafe345 --- /dev/null +++ b/dev-build/pmake/Manifest @@ -0,0 +1,2 @@ +DIST pmake_1.111-3.3.debian.tar.gz 31648 BLAKE2B 31aca433bbeac4275d4c2af0cfd33ef81b0086b0dec107edfc1fba55b15480367ebf62abccd6e2e48f0c7ccc25c59f0b07eed7ac950a5037b73c267b066a9638 SHA512 b22a1d9e371712732f196d91ac3eb9239fa98ee8ee05754576e7a5878cab88976cb10bb6be90706df5ac738373f519468403c23f6a3ff3860a2968b3222a66ed +DIST pmake_1.111.orig.tar.gz 264383 BLAKE2B 54dd510251441b54c9f5d7f6061109b0222191b3acdded1394b51b72b87bbd4255edd80fab46976d92c58929693b6809a9f2c4f001cab8c9cdaabfac9f3adac9 SHA512 ad48708ea014d6a38ad36303504c52992b51a1e815564f1710849d859b1fc3cd58c4a1a71f54ec902c9b69112e9cd1e1a64282ff738439cdb209a4f75c364c22 diff --git a/dev-build/pmake/files/pmake-1.111.1-ldflags.patch b/dev-build/pmake/files/pmake-1.111.1-ldflags.patch new file mode 100644 index 000000000000..d6047d48994b --- /dev/null +++ b/dev-build/pmake/files/pmake-1.111.1-ldflags.patch @@ -0,0 +1,13 @@ +Index: pmake/Makefile.boot +=================================================================== +--- pmake.orig/Makefile.boot ++++ pmake/Makefile.boot +@@ -36,7 +36,7 @@ LIBOBJ= lst.lib/lstAppend.o lst.lib/lstA + + bmake: ${OBJ} ${LIBOBJ} + # @echo 'make of make and make.0 started.' +- ${CC} ${CFLAGS} ${OBJ} ${LIBOBJ} -o bmake ${LIBS} ++ ${CC} ${LDFLAGS} ${CFLAGS} ${OBJ} ${LIBOBJ} -o bmake ${LIBS} + @ls -l $@ + # nroff -h -man make.1 > make.0 + # @echo 'make of make and make.0 completed.' diff --git a/dev-build/pmake/files/pmake-1.98-skipdots.patch b/dev-build/pmake/files/pmake-1.98-skipdots.patch new file mode 100644 index 000000000000..6783a9799919 --- /dev/null +++ b/dev-build/pmake/files/pmake-1.98-skipdots.patch @@ -0,0 +1,12 @@ +diff -urN pmake-2.0.orig/dir.c pmake-2.0/dir.c +--- pmake-2.0.orig/dir.c 2005-02-08 09:26:28.932978574 -0500 ++++ pmake-2.0/dir.c 2005-02-08 09:36:18.208704201 -0500 +@@ -1528,6 +1528,8 @@ + Hash_InitTable (&p->files, -1); + + while ((dp = readdir (d)) != (struct dirent *) NULL) { ++ if (!strcmp(dp->d_name, ".") || !strcmp(dp->d_name, "..")) ++ continue; + #if defined(sun) && defined(d_ino) /* d_ino is a sunos4 #define for d_fileno */ + /* + * The sun directory library doesn't check for a 0 inode diff --git a/dev-build/pmake/metadata.xml b/dev-build/pmake/metadata.xml new file mode 100644 index 000000000000..85e4ed814fa2 --- /dev/null +++ b/dev-build/pmake/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<!-- maintainer-needed --> +</pkgmetadata> diff --git a/dev-build/pmake/pmake-1.111.3.3-r1.ebuild b/dev-build/pmake/pmake-1.111.3.3-r1.ebuild new file mode 100644 index 000000000000..ffe5d785b0a0 --- /dev/null +++ b/dev-build/pmake/pmake-1.111.3.3-r1.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs linux-info + +MY_P="${PN}-$(ver_cut 1-2)" +DEBIAN_SOURCE="${PN}_$(ver_cut 1-2).orig.tar.gz" +DEBIAN_PATCH="${PN}_$(ver_rs 2 '-').debian.tar.gz" + +DESCRIPTION="BSD build tool to create programs in parallel. Debian's version of NetBSD's make" +HOMEPAGE="http://www.netbsd.org/" +SRC_URI=" + mirror://debian/pool/main/p/pmake/${DEBIAN_SOURCE} + mirror://debian/pool/main/p/pmake/${DEBIAN_PATCH}" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha amd64 arm ~arm64 ~mips ppc ppc64 ~sparc x86" + +S="${WORKDIR}/${PN}" + +PATCHES=( + "${WORKDIR}"/debian/patches + + # pmake makes the assumption that . and .. are the first two + # entries in a directory, which doesn't always appear to be the + # case on ext3... (05 Apr 2004 agriffis) + "${FILESDIR}"/${PN}-1.98-skipdots.patch + + # Don't ignore ldflags + "${FILESDIR}"/${PN}-1.111.1-ldflags.patch +) + +src_compile() { + # The following CFLAGS are almost directly from Red Hat 8.0 and + # debian/rules, so assume it's okay to void out the __COPYRIGHT + # and __RCSID. I've checked the source and don't see the point, + # but whatever... (07 Feb 2004 agriffis) + CFLAGS="${CFLAGS} -Wall -Wno-unused -D_GNU_SOURCE \ + -DHAVE_STRERROR -DHAVE_STRDUP -DHAVE_SETENV \ + -D__COPYRIGHT\(x\)= -D__RCSID\(x\)= -I. \ + -DMACHINE=\\\"gentoo\\\" -DMACHINE_ARCH=\\\"$(tc-arch-kernel)\\\" \ + -D_PATH_DEFSHELLDIR=\\\"${EPREFIX}/bin\\\" \ + -D_PATH_DEFSYSPATH=\\\"${EPREFIX}/usr/share/mk\\\" \ + -DHAVE_VSNPRINTF -D_PATH_DEFSYSPATH=\\\"${EPREFIX}/usr/share/mk/${PN}\\\"" + + emake -f Makefile.boot \ + CC="$(tc-getCC)" \ + CFLAGS="${CFLAGS}" +} + +src_install() { + insinto /usr/share/mk/${PN} + doins -r mk/. + + newbin bmake pmake + dobin mkdep + + doman mkdep.1 + newman make.1 pmake.1 + + dodoc PSD.doc/tutorial.ms +} diff --git a/dev-build/qtilitools/Manifest b/dev-build/qtilitools/Manifest new file mode 100644 index 000000000000..98e23b506a71 --- /dev/null +++ b/dev-build/qtilitools/Manifest @@ -0,0 +1 @@ +DIST qtilitools-0.1.2.tar.gz 6964 BLAKE2B a67b90944ea9168702c71f846cd6c228f6f997d68ca18b367913ab67d67fb5ea10a588c5dbacb61dc3ff5827ebe9a4c8a8cc2e9910a1e65959f6147b67f29229 SHA512 fc4313ab29ce0da8cc62fe30626acfe2782ce05699be871c3e90c813631ca69db7245863fa7ae66a3b9d7ec4194cb15e532cdc45e83db51004172df8662ef2e2 diff --git a/dev-build/qtilitools/metadata.xml b/dev-build/qtilitools/metadata.xml new file mode 100644 index 000000000000..88b2f8380273 --- /dev/null +++ b/dev-build/qtilitools/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <!-- maintainer-needed --> + <upstream> + <remote-id type="github">qtilities/qtilitools</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/qtilitools/qtilitools-0.1.2.ebuild b/dev-build/qtilitools/qtilitools-0.1.2.ebuild new file mode 100644 index 000000000000..76b92d7f6fb3 --- /dev/null +++ b/dev-build/qtilitools/qtilitools-0.1.2.ebuild @@ -0,0 +1,14 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Scripts/commands used in the Qtilities organization " +HOMEPAGE="https://qtilities.github.io/" +SRC_URI="https://github.com/qtilities/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64" diff --git a/dev-build/remake/Manifest b/dev-build/remake/Manifest new file mode 100644 index 000000000000..9961da6f3e01 --- /dev/null +++ b/dev-build/remake/Manifest @@ -0,0 +1,2 @@ +DIST remake-4.3+dbg-1.6.tar.gz 2596911 BLAKE2B 4d4e90bc9b6e0c36eea3b8b2c419ea1af8e37b3dc575969fe853f683da983e0ea73a0a3668adf448dfdf4b2dffc079f197fcb66139cac382df551cf34ea4d813 SHA512 d4f0ed0afa0bebf49e0cf6ef3fcfb0915fd457477424b6ffb5f06c6d2faf8d79bbdc9119a736c24c0787b23ceaeccf072e03a654dc01d05c08c88e030ae33539 +DIST remake-4.4_pre20250217.gh.tar.gz 1586468 BLAKE2B cfdb818c517b7416018c789160426dd20775c19f95875a98c261aec8c9b2f6eaca309ebfdb9df41014b2bf95a49eb96dc52c1a10fc30a9acd18f61ba710055f0 SHA512 10387591f61bc2704be9cdf41503b6e4c97e7b19039a2e106cc6f643be11c8dc7db139c765fcdebba820047a4ad470af7c5bcd57a30d54a8fad8302acb5f148e diff --git a/dev-build/remake/files/remake-4.3.1.1.6-configure.patch b/dev-build/remake/files/remake-4.3.1.1.6-configure.patch new file mode 100644 index 000000000000..4aa0927a9b68 --- /dev/null +++ b/dev-build/remake/files/remake-4.3.1.1.6-configure.patch @@ -0,0 +1,30 @@ +https://bugs.gentoo.org/926824 +Patch from upstream, configure regenerated + +commit 371ed0ac8bf3c1d25775c8b025229f490363f4ab +Author: rocky <rocky@gnu.org> +Date: Sun, 26 Mar 2023 14:35:39 -0400 + + Fix some small typos + +--- a/configure.ac ++++ b/configure.ac +@@ -434,7 +434,7 @@ AC_ARG_WITH([profiler_resolution], + [prof_res="1000"]) + + AS_IF([test "x$prof_res" = "xno"], +- [],_ ++ [], + [AC_DEFINE_UNQUOTED([PROFILER_MIN_RES], + [$prof_res], + [Minimum profiler resolution in nanoseconds])]) +--- a/configure ++++ b/configure +@@ -18444,7 +18444,6 @@ + if test "x$prof_res" = "xno"; then : + + else +- _ + + cat >>confdefs.h <<_ACEOF + #define PROFILER_MIN_RES $prof_res diff --git a/dev-build/remake/metadata.xml b/dev-build/remake/metadata.xml new file mode 100644 index 000000000000..49575d00c251 --- /dev/null +++ b/dev-build/remake/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <!-- maintainer-needed --> + <upstream> + <remote-id type="github">Trepan-Debuggers/remake</remote-id> + <remote-id type="sourceforge">bashdb</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/remake/remake-4.3.1.1.6-r100.ebuild b/dev-build/remake/remake-4.3.1.1.6-r100.ebuild new file mode 100644 index 000000000000..1586a112b504 --- /dev/null +++ b/dev-build/remake/remake-4.3.1.1.6-r100.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GUILE_COMPAT=( 2-2 3-0 ) + +inherit guile-single flag-o-matic + +MY_MAKE_BASE=$(ver_cut 1-2) +MY_REMAKE_PATCH=$(ver_cut 4-) +MY_P="${PN}-${MY_MAKE_BASE}+dbg-${MY_REMAKE_PATCH}" + +DESCRIPTION="Patched version of GNU Make with improved error reporting, tracing and debugging" +HOMEPAGE="http://bashdb.sourceforge.net/remake/" +SRC_URI="https://github.com/Trepan-Debuggers/remake/releases/download/${MY_P}/${MY_P}.tar.gz" +S="${WORKDIR}"/${MY_P} + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~m68k ~mips ppc ~ppc64 ~s390 ~sparc x86" +IUSE="guile readline" + +REQUIRED_USE="guile? ( ${GUILE_REQUIRED_USE} )" + +RDEPEND=" + guile? ( ${GUILE_DEPS} ) + readline? ( sys-libs/readline:0= ) +" +DEPEND="${RDEPEND}" + +PATCHES=( "${FILESDIR}"/${P}-configure.patch ) + +pkg_setup() { + use guile && guile-single_pkg_setup +} + +src_prepare() { + default + + use guile && guile_bump_sources +} + +src_configure() { + # Fixed in upstream make/gnulib, just not yet propagated into remake (bug #863827) + filter-lto + + use readline || export vl_cv_lib_readline=no + econf $(use_with guile) +} + +src_install() { + default + + use guile && guile_unstrip_ccache + + # delete files GNU make owns and remake doesn't care about. + rm -r "${ED}"/usr/include || die + rm "${ED}"/usr/share/info/make.info* || die +} diff --git a/dev-build/remake/remake-4.4_pre20250217.ebuild b/dev-build/remake/remake-4.4_pre20250217.ebuild new file mode 100644 index 000000000000..7ceb156992ad --- /dev/null +++ b/dev-build/remake/remake-4.4_pre20250217.ebuild @@ -0,0 +1,79 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_P="${PN}-${PV:0:3}-${PV:4}" + +GUILE_COMPAT=( 2-2 3-0 ) + +inherit guile-single flag-o-matic + +DESCRIPTION="Patched version of GNU Make with improved error reporting, tracing and debugging" +HOMEPAGE="https://bashdb.sourceforge.net/remake/" + +if [[ ${PV} == *_pre* ]] ; then + inherit autotools + + # remake for newer remake versions doesn't (yet?) have tags, so we + # take snapshots. Make sure to pick the right branch. + REMAKE_COMMIT="4ad367fd62caec8fcaa4dc1cc481a1e4d8bf6a7d" + SRC_URI=" + https://github.com/Trepan-Debuggers/remake/archive/${REMAKE_COMMIT}.tar.gz -> ${P}.gh.tar.gz + " + S="${WORKDIR}"/${PN}-${REMAKE_COMMIT} +else + SRC_URI="https://github.com/rocky/remake/releases/download/${MY_P}/${MY_P}.tar.gz" + S="${WORKDIR}"/${MY_P} +fi + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="guile readline" +REQUIRED_USE="guile? ( ${GUILE_REQUIRED_USE} )" + +# Tests fail with a link error +RESTRICT="test" + +RDEPEND=" + guile? ( ${GUILE_DEPS} ) + readline? ( sys-libs/readline:= ) +" +DEPEND="${RDEPEND}" + +pkg_setup() { + use guile && guile-single_pkg_setup +} + +src_prepare() { + default + + [[ ${PV} == *_pre* ]] && eautoreconf + + use guile && guile_bump_sources +} + +src_configure() { + # Fixed in upstream gnulib but not yet propagated into make (bug #938934) + append-cflags -std=gnu17 + # Fixed in upstream make/gnulib, just not yet propagated into remake (bug #863827) + filter-lto + + use readline || export vl_cv_lib_readline=no + econf \ + $(use_with guile) \ + --disable-nls \ + MAKEINFO=: +} + +src_install() { + default + + use guile && guile_unstrip_ccache + + # delete files GNU make owns and remake doesn't care about. + # (commented out in *_pre, but may be needed on proper releases) + #rm -r "${ED}"/usr/include || die + #rm "${ED}"/usr/share/info/remake.info* || die +} diff --git a/dev-build/rocm-cmake/Manifest b/dev-build/rocm-cmake/Manifest new file mode 100644 index 000000000000..e41023d2012b --- /dev/null +++ b/dev-build/rocm-cmake/Manifest @@ -0,0 +1,5 @@ +DIST rocm-cmake-6.3.3.tar.gz 88828 BLAKE2B a6c1b8eed57c3bbc641e617cfa3189c98d55c9468d232fd0fa5d3f19d8930f994ddd8af27ba818776078075340d514ce83899a3799224a06a59fd0d1ba40d89f SHA512 1ffac8fc4d8ecff781e214684b0e892d9d886d839282ff59dc458194850479453e059f63959a0042e26a2a623a50b421ca4ddddd604da0404c760e7649006c31 +DIST rocm-cmake-6.4.3.tar.gz 89082 BLAKE2B 0368fa4baf32e725d734a9861fe89be050b4219fb1300f1f5a748f6927a1b8fd25e79e068d8dd31a8516d790a5cef1430992c5e9e11c9c1dd6463ed7d3a0db70 SHA512 356aa272d20deed8c0da8ed088079dd8530f23362ff22a563e91380bc543a0d68d2058ba6ec8f7355d1ad0d03578afeff474845ab1f78f23ee553cfccb1791bc +DIST rocm-cmake-7.0.2.tar.gz 89918 BLAKE2B 6379fd89b4cefb108cde8197da4bb689bf5792f10ff2ac5a33dcf5dc9b3d25bc493261226ed1403c631e71f8e03bb14fa42d83a67b629cefe85f513c2e38ec98 SHA512 644fb7f9c09189fb7f5420d318c03ed41fb7513f35de915f35a713919af75f4cfe926e4ea20996cb5880cc3460c163fc49bb45f7669a2d36f5ff9bec4cf12565 +DIST rocm-cmake-7.1.0.tar.gz 89936 BLAKE2B 26f66878c54e5f2fe03c1c3e290df2a607c772957248fd77d420020f6dc811da9ff61e1883288e69b35a797446f9fc26bf710243f2391ba45a76b9db3b80c4e1 SHA512 aff7c67da7d705b92b9d7ad77f31e4a0ceeab19bf10313a472168de3e6e016a1b69c1e7a0ca6fae69996b0b9c74dcf47bbbf6bcf71a5492c801ca23c14aa8df0 +DIST rocm-cmake-7.2.0.tar.gz 90958 BLAKE2B 553d0912f2d140dea12e2b1480cc0a69725c7be4c4ae8336b65e3f348912fa02c2864d39eb5727a2c879b4a09fe955d606c53991dce2a20885c3cbca4a21e182 SHA512 8de003a2fe852baa3037e4a24ffd20bd46e7f938abb9309820a27ae5727c39393aea900008349f41c53a56fd34ab318c568bc08ba8cd574436e007adaff2b221 diff --git a/dev-build/rocm-cmake/files/rocm-cmake-6.1.1-license.patch b/dev-build/rocm-cmake/files/rocm-cmake-6.1.1-license.patch new file mode 100644 index 000000000000..f8770b345f85 --- /dev/null +++ b/dev-build/rocm-cmake/files/rocm-cmake-6.1.1-license.patch @@ -0,0 +1,12 @@ +This is not needed. Gentoo will collect license files into +the documentation directory in ebuild. +--- a/share/rocmcmakebuildtools/cmake/ROCMCreatePackage.cmake ++++ b/share/rocmcmakebuildtools/cmake/ROCMCreatePackage.cmake +@@ -409,7 +409,6 @@ macro(rocm_create_package) + if(PARSE_PTH) + rocm_parse_python_syspath(${LIB_DIR} ${PARSE_NAME}) + endif() +- rocm_setup_license(${PARSE_HEADER_ONLY}) + if(PARSE_COMPONENTS) + rocm_set_comp_cpackvar(PARSE_HEADER_ONLY "${PARSE_COMPONENTS}") + endif() diff --git a/dev-build/rocm-cmake/files/rocm-cmake-6.1.1-no-rocmchecks-warnings.patch b/dev-build/rocm-cmake/files/rocm-cmake-6.1.1-no-rocmchecks-warnings.patch new file mode 100644 index 000000000000..73030e7b9b20 --- /dev/null +++ b/dev-build/rocm-cmake/files/rocm-cmake-6.1.1-no-rocmchecks-warnings.patch @@ -0,0 +1,25 @@ +Gentoo uses cmake -C <...>/gentoo_common_config.cmake approach to set toolchain variables. +There is nothing wrong there, so there is no need to print huge ROCMChecks warnings. +--- a/share/rocmcmakebuildtools/cmake/ROCMChecks.cmake ++++ b/share/rocmcmakebuildtools/cmake/ROCMChecks.cmake +@@ -34,20 +34,6 @@ function(rocm_check_toolchain_var var access value list_file) + elseif("${base}" MATCHES ".*/CMakeFiles/${CMAKE_VERSION}$") + set(cmake_module On) + endif() +- if(NOT cmake_module) +- message( " +-******************************************************************************* +-*------------------------------- ${message_title} --------------------------* +- Options and properties should be set on a cmake target where possible. The +- variable '${var}' may be set by the cmake toolchain, either by +- calling 'cmake -D${var}=\"${value}\"' +- or set in a toolchain file and added with +- 'cmake -DCMAKE_TOOLCHAIN_FILE=<toolchain-file>'. ROCMChecks now calling:") +- message(${message_type} "'${var}' is set at ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt:<line#> shown below:") +- message( "*-----------------------------------------------------------------------------* +-******************************************************************************* +-") +- endif() + endif() + endfunction() + if(UNIX AND (ROCM_WARN_TOOLCHAIN_VAR OR ROCM_ERROR_TOOLCHAIN_VAR)) diff --git a/dev-build/rocm-cmake/metadata.xml b/dev-build/rocm-cmake/metadata.xml new file mode 100644 index 000000000000..116fab6d0e4a --- /dev/null +++ b/dev-build/rocm-cmake/metadata.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person" proxied="yes"> + <email>lockalsash@gmail.com</email> + <name>Sv. Lockal</name> + <description>Primary maintainer</description> + </maintainer> + <maintainer type="person" proxied="yes"> + <email>xgreenlandforwyy@gmail.com</email> + <name>Yiyang Wu</name> + </maintainer> + <maintainer type="person" proxied="yes"> + <email>negril.nx+gentoo@gmail.com</email> + <name>Paul Zander</name> + <description>General GPGPU stuff</description> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>sci@gentoo.org</email> + <name>Gentoo Science Project</name> + </maintainer> + <upstream> + <remote-id type="github">ROCm/rocm-cmake</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/rocm-cmake/rocm-cmake-6.3.3.ebuild b/dev-build/rocm-cmake/rocm-cmake-6.3.3.ebuild new file mode 100644 index 000000000000..9044ffb3a125 --- /dev/null +++ b/dev-build/rocm-cmake/rocm-cmake-6.3.3.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/ROCm/rocm-cmake.git" + inherit git-r3 +else + SRC_URI="https://github.com/ROCm/rocm-cmake/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64" + S="${WORKDIR}/rocm-cmake-rocm-${PV}" +fi + +DESCRIPTION="Radeon Open Compute CMake Modules" +HOMEPAGE="https://github.com/ROCm/rocm-cmake" +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +RESTRICT="test" + +DOCS=( CHANGELOG.md LICENSE README.md ) + +PATCHES=( + "${FILESDIR}"/${PN}-6.1.1-license.patch + "${FILESDIR}"/${PN}-6.1.1-no-rocmchecks-warnings.patch +) + +src_prepare() { + sed -e "/CMAKE_INSTALL_LIBDIR/s:lib:$(get_libdir):" \ + -i "share/rocmcmakebuildtools/cmake/ROCMCreatePackage.cmake" \ + -i "share/rocmcmakebuildtools/cmake/ROCMInstallTargets.cmake" || die + cmake_src_prepare +} diff --git a/dev-build/rocm-cmake/rocm-cmake-6.4.3.ebuild b/dev-build/rocm-cmake/rocm-cmake-6.4.3.ebuild new file mode 100644 index 000000000000..9044ffb3a125 --- /dev/null +++ b/dev-build/rocm-cmake/rocm-cmake-6.4.3.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/ROCm/rocm-cmake.git" + inherit git-r3 +else + SRC_URI="https://github.com/ROCm/rocm-cmake/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64" + S="${WORKDIR}/rocm-cmake-rocm-${PV}" +fi + +DESCRIPTION="Radeon Open Compute CMake Modules" +HOMEPAGE="https://github.com/ROCm/rocm-cmake" +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +RESTRICT="test" + +DOCS=( CHANGELOG.md LICENSE README.md ) + +PATCHES=( + "${FILESDIR}"/${PN}-6.1.1-license.patch + "${FILESDIR}"/${PN}-6.1.1-no-rocmchecks-warnings.patch +) + +src_prepare() { + sed -e "/CMAKE_INSTALL_LIBDIR/s:lib:$(get_libdir):" \ + -i "share/rocmcmakebuildtools/cmake/ROCMCreatePackage.cmake" \ + -i "share/rocmcmakebuildtools/cmake/ROCMInstallTargets.cmake" || die + cmake_src_prepare +} diff --git a/dev-build/rocm-cmake/rocm-cmake-7.0.2.ebuild b/dev-build/rocm-cmake/rocm-cmake-7.0.2.ebuild new file mode 100644 index 000000000000..db7ac9cb1907 --- /dev/null +++ b/dev-build/rocm-cmake/rocm-cmake-7.0.2.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/ROCm/rocm-cmake.git" + inherit git-r3 +else + SRC_URI="https://github.com/ROCm/rocm-cmake/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64" + S="${WORKDIR}/rocm-cmake-rocm-${PV}" +fi + +DESCRIPTION="Radeon Open Compute CMake Modules" +HOMEPAGE="https://github.com/ROCm/rocm-cmake" +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +RESTRICT="test" + +DOCS=( CHANGELOG.md LICENSE README.md ) + +PATCHES=( + "${FILESDIR}"/${PN}-6.1.1-license.patch + "${FILESDIR}"/${PN}-6.1.1-no-rocmchecks-warnings.patch +) + +src_prepare() { + sed -e "/CMAKE_INSTALL_LIBDIR/s:lib:$(get_libdir):" \ + -i "share/rocmcmakebuildtools/cmake/ROCMCreatePackage.cmake" \ + -i "share/rocmcmakebuildtools/cmake/ROCMInstallTargets.cmake" || die + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -Wno-dev + ) + cmake_src_configure +} diff --git a/dev-build/rocm-cmake/rocm-cmake-7.1.0.ebuild b/dev-build/rocm-cmake/rocm-cmake-7.1.0.ebuild new file mode 100644 index 000000000000..db7ac9cb1907 --- /dev/null +++ b/dev-build/rocm-cmake/rocm-cmake-7.1.0.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/ROCm/rocm-cmake.git" + inherit git-r3 +else + SRC_URI="https://github.com/ROCm/rocm-cmake/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64" + S="${WORKDIR}/rocm-cmake-rocm-${PV}" +fi + +DESCRIPTION="Radeon Open Compute CMake Modules" +HOMEPAGE="https://github.com/ROCm/rocm-cmake" +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +RESTRICT="test" + +DOCS=( CHANGELOG.md LICENSE README.md ) + +PATCHES=( + "${FILESDIR}"/${PN}-6.1.1-license.patch + "${FILESDIR}"/${PN}-6.1.1-no-rocmchecks-warnings.patch +) + +src_prepare() { + sed -e "/CMAKE_INSTALL_LIBDIR/s:lib:$(get_libdir):" \ + -i "share/rocmcmakebuildtools/cmake/ROCMCreatePackage.cmake" \ + -i "share/rocmcmakebuildtools/cmake/ROCMInstallTargets.cmake" || die + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -Wno-dev + ) + cmake_src_configure +} diff --git a/dev-build/rocm-cmake/rocm-cmake-7.2.0.ebuild b/dev-build/rocm-cmake/rocm-cmake-7.2.0.ebuild new file mode 100644 index 000000000000..eb3aabba1255 --- /dev/null +++ b/dev-build/rocm-cmake/rocm-cmake-7.2.0.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/ROCm/rocm-cmake.git" + inherit git-r3 +else + SRC_URI="https://github.com/ROCm/rocm-cmake/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64" + S="${WORKDIR}/rocm-cmake-rocm-${PV}" +fi + +DESCRIPTION="Radeon Open Compute CMake Modules" +HOMEPAGE="https://github.com/ROCm/rocm-cmake" +LICENSE="MIT" +SLOT="0/$(ver_cut 1-2)" +RESTRICT="test" + +DOCS=( CHANGELOG.md LICENSE README.md ) + +PATCHES=( + "${FILESDIR}"/${PN}-6.1.1-license.patch + "${FILESDIR}"/${PN}-6.1.1-no-rocmchecks-warnings.patch +) + +src_prepare() { + sed -e "/CMAKE_INSTALL_LIBDIR/s:lib:$(get_libdir):" \ + -i "share/rocmcmakebuildtools/cmake/ROCMCreatePackage.cmake" \ + -i "share/rocmcmakebuildtools/cmake/ROCMInstallTargets.cmake" || die + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -Wno-dev + ) + cmake_src_configure +} diff --git a/dev-build/samurai/Manifest b/dev-build/samurai/Manifest new file mode 100644 index 000000000000..6d0eaf52319a --- /dev/null +++ b/dev-build/samurai/Manifest @@ -0,0 +1,2 @@ +DIST samurai-1.2.tar.gz 32709 BLAKE2B 86ed79f7d6ab492216cf3bf0e19ff8be8c1ca37e5c99de84b457875fa710d720624bd0de53105ed0b1d382c417aeb7397929cb9a35a8d1b36a11e053bf8d7ff5 SHA512 bbe6a582c34b04f1df53b76c1647aa3e03c4698ebf7591a203935f11ffa05971bbcb86dc1a8c06aeb904cdc741abb08918122810fc47216fed0a6d9f87fd1225 +DIST samurai-1.3.tar.gz 33562 BLAKE2B 82d1c27fce5c21769e241ae15e5143e064847c65d6681fdd5d3f2df0ec9d36e8d71645e5cf44370ca5d2a56d6037a4452389d04583f227aaaeae48c2bdcfff54 SHA512 f155745fdb90cca07d8e7178e60337173fee3a8f1dadc3773a80fe189f5864229afb409d946fb2a418820d7e6ef8332cd9e3e3627abd170146802277f30b4b4e diff --git a/dev-build/samurai/files/samurai-1.2-null_pointer_fix.patch b/dev-build/samurai/files/samurai-1.2-null_pointer_fix.patch new file mode 100644 index 000000000000..76ffc8cd350f --- /dev/null +++ b/dev-build/samurai/files/samurai-1.2-null_pointer_fix.patch @@ -0,0 +1,60 @@ +CVE-2021-30218 + CVE-2021-30219 +Bug: https://bugs.gentoo.org/786951 + +Upstream-Commit: https://github.com/michaelforney/samurai/commit/e84b6d99c85043fa1ba54851ee500540ec206918 +From e84b6d99c85043fa1ba54851ee500540ec206918 Mon Sep 17 00:00:00 2001 +From: Michael Forney <mforney@mforney.org> +Date: Fri, 2 Apr 2021 17:27:48 -0700 +Subject: [PATCH] util: Check for NULL string in writefile + +This check was there previously, but was removed in f549b757 with +the addition of a check during parse that every rule has rspfile +if and only if it has rspfile_content. However, this fails to +consider the possibility of those variables coming from the edge +or global environment. So, re-add the check. + +Fixes #67 (https://github.com/michaelforney/samurai/issues/67). +--- + util.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/util.c b/util.c +index ea5c3ce..2a59881 100644 +--- a/util.c ++++ b/util.c +@@ -258,7 +258,7 @@ writefile(const char *name, struct string *s) + return -1; + } + ret = 0; +- if (fwrite(s->s, 1, s->n, f) != s->n || fflush(f) != 0) { ++ if (s && (fwrite(s->s, 1, s->n, f) != s->n || fflush(f) != 0)) { + warn("write %s:", name); + ret = -1; + } +Upstream-Commit: https://github.com/michaelforney/samurai/commit/d2af3bc375e2a77139c3a28d6128c60cd8d08655 +From d2af3bc375e2a77139c3a28d6128c60cd8d08655 Mon Sep 17 00:00:00 2001 +From: Michael Forney <mforney@mforney.org> +Date: Sun, 4 Apr 2021 03:50:09 -0700 +Subject: [PATCH] parse: Check for non-empty command/rspfile/rspfile_content + +This matches ninja behavior and prevents the possibility of a rule +with an empty (NULL) command string. + +Fixes #68 (https://github.com/michaelforney/samurai/issues/68). +--- + parse.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/parse.c b/parse.c +index f79a5ee..b4b98a1 100644 +--- a/parse.c ++++ b/parse.c +@@ -42,6 +42,8 @@ parserule(struct scanner *s, struct environment *env) + var = scanname(s); + parselet(s, &val); + ruleaddvar(r, var, val); ++ if (!val) ++ continue; + if (strcmp(var, "command") == 0) + hascommand = true; + else if (strcmp(var, "rspfile") == 0) diff --git a/dev-build/samurai/files/samurai-1.2-phony_targets_fix.patch b/dev-build/samurai/files/samurai-1.2-phony_targets_fix.patch new file mode 100644 index 000000000000..8794850a7285 --- /dev/null +++ b/dev-build/samurai/files/samurai-1.2-phony_targets_fix.patch @@ -0,0 +1,30 @@ +https://github.com/michaelforney/samurai/issues/66 +https://github.com/michaelforney/samurai/issues/81 +https://github.com/michaelforney/samurai/commit/fb61f22c7e690715d309c41812412c4f432ef53a + +From fb61f22c7e690715d309c41812412c4f432ef53a Mon Sep 17 00:00:00 2001 +From: Michael Forney <mforney@mforney.org> +Date: Wed, 31 Mar 2021 14:04:29 -0700 +Subject: [PATCH] build: Don't try to print phony edges during dry-run + +This causes a segfault since phony edges have no command. It also +messes up the nstarted/nfinished counts. + +Fixes #66. +--- + build.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/build.c b/build.c +index 368e5f9..1cb736f 100644 +--- a/build.c ++++ b/build.c +@@ -540,7 +540,7 @@ build(void) + while (work && numjobs < buildopts.maxjobs && numfail < buildopts.maxfail) { + e = work; + work = work->worknext; +- if (buildopts.dryrun) { ++ if (e->rule != &phonyrule && buildopts.dryrun) { + ++nstarted; + printstatus(e, edgevar(e, "command", true)); + ++nfinished; diff --git a/dev-build/samurai/metadata.xml b/dev-build/samurai/metadata.xml new file mode 100644 index 000000000000..915803b8c390 --- /dev/null +++ b/dev-build/samurai/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person" proxied="yes"> + <email>orbea@riseup.net</email> + <name>orbea</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> + <upstream> + <remote-id type="github">michaelforney/samurai</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/samurai/samurai-1.2-r3.ebuild b/dev-build/samurai/samurai-1.2-r3.ebuild new file mode 100644 index 000000000000..63fb7ce74dca --- /dev/null +++ b/dev-build/samurai/samurai-1.2-r3.ebuild @@ -0,0 +1,33 @@ +# Copyright 2021-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="ninja-compatible build tool written in C" +HOMEPAGE="https://github.com/michaelforney/samurai" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/michaelforney/samurai.git" +else + SRC_URI="https://github.com/michaelforney/samurai/releases/download/${PV}/${P}.tar.gz" + KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~sparc x86" +fi + +LICENSE="ISC Apache-2.0 MIT" +SLOT="0" + +PATCHES=( + "${FILESDIR}/${P}-null_pointer_fix.patch" # 786951 + "${FILESDIR}/${P}-phony_targets_fix.patch" +) + +src_compile() { + emake CC="$(tc-getCC)" +} + +src_install() { + emake DESTDIR="${D}" PREFIX="${EPREFIX}"/usr install + dodoc README.md +} diff --git a/dev-build/samurai/samurai-1.3.ebuild b/dev-build/samurai/samurai-1.3.ebuild new file mode 100644 index 000000000000..edb10f90a55c --- /dev/null +++ b/dev-build/samurai/samurai-1.3.ebuild @@ -0,0 +1,28 @@ +# Copyright 2021-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="ninja-compatible build tool written in C" +HOMEPAGE="https://github.com/michaelforney/samurai" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/michaelforney/samurai.git" +else + SRC_URI="https://github.com/michaelforney/samurai/releases/download/${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi + +LICENSE="ISC Apache-2.0 MIT" +SLOT="0" + +src_compile() { + emake CC="$(tc-getCC)" +} + +src_install() { + emake DESTDIR="${D}" PREFIX="${EPREFIX}"/usr install + dodoc README.md +} diff --git a/dev-build/samurai/samurai-9999.ebuild b/dev-build/samurai/samurai-9999.ebuild new file mode 100644 index 000000000000..ddd44b78fab1 --- /dev/null +++ b/dev-build/samurai/samurai-9999.ebuild @@ -0,0 +1,28 @@ +# Copyright 2021-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +DESCRIPTION="ninja-compatible build tool written in C" +HOMEPAGE="https://github.com/michaelforney/samurai" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/michaelforney/samurai.git" +else + SRC_URI="https://github.com/michaelforney/samurai/releases/download/${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" +fi + +LICENSE="ISC Apache-2.0 MIT" +SLOT="0" + +src_compile() { + emake CC="$(tc-getCC)" +} + +src_install() { + emake DESTDIR="${D}" PREFIX="${EPREFIX}"/usr install + dodoc README.md +} diff --git a/dev-build/scons/Manifest b/dev-build/scons/Manifest new file mode 100644 index 000000000000..811c2ef9c80d --- /dev/null +++ b/dev-build/scons/Manifest @@ -0,0 +1,3 @@ +DIST SCons-4.10.1.tar.gz 3258403 BLAKE2B c3954478e3a6795c04975a50afbca269add686284c50461e8ca71dc338c1b160f4a766ca82557a1cbfc95bd9f668648bcd637f1aa30e0410ca1b41b2e2292ae7 SHA512 4c64070714ba16c8e231ecfac9c1df6fad252b5509e0d260cc05f28865e3068f58c169d73c1559373b7a2d517bcb94a07593ab00781afd9a6a55893455471bc4 +DIST scons-4.10.1-user.pdf 3128752 BLAKE2B 91050cc519f86e909f49dd84a744133d253376c3d9f649779c9257127c9e1ab05ab699bbac74828bd54bd6f047e94baa0b880b86d501c5b7b5ac1b8d8457b5bf SHA512 1592a9d33d4cee5970d0cb0872882583bbe1d213305c2f9f7dee5acd3d703a0ec999b580785391cae498cc47fc07118da2efa956b1b77b84d994a36104efdcc3 +DIST scons-4.10.1.gh.tar.gz 5981560 BLAKE2B c2fa46729300f63debcfe8e982e347ed7d486e9d2d0889470be4553702d3123ae813487f934735bb980732df83894bec5f18f731e83bf75a4bd0c2230c60ea03 SHA512 e47000c4fe770c84c1c97ed4e7feee9305669cfbbd1aac06e158d15b08383dbdcbd5397ff62519478204c07d064337fe8101d81e17e0c8d5d611e453ed6d4da2 diff --git a/dev-build/scons/files/scons-4.1.0-env-passthrough.patch b/dev-build/scons/files/scons-4.1.0-env-passthrough.patch new file mode 100644 index 000000000000..06ec2f217611 --- /dev/null +++ b/dev-build/scons/files/scons-4.1.0-env-passthrough.patch @@ -0,0 +1,41 @@ +From fb07dc4b4fa178b0c424c5f400b18669abd8960e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Wed, 9 May 2018 17:04:49 +0200 +Subject: [PATCH] posix: Support GENTOO_SCONS_ENV_PASSTHROUGH=1 + +Support GENTOO_SCONS_ENV_PASSTHROUGH=1 variable to override the default +of wiping the environment and resetting PATH to default, and instead +pass all variables through. +--- + SCons/Platform/posix.py | 15 ++++++++++++--- + 1 file changed, 12 insertions(+), 3 deletions(-) + +diff --git a/SCons/Platform/posix.py b/SCons/Platform/posix.py +index 4c9f8f9ba..fbc81196d 100644 +--- a/src/SCons/Platform/posix.py ++++ b/src/SCons/Platform/posix.py +@@ -82,9 +82,18 @@ def generate(env): + pspawn = piped_env_spawn + # Note that this means that 'escape' is no longer used + +- if 'ENV' not in env: +- env['ENV'] = {} +- env['ENV']['PATH'] = '/usr/local/bin:/opt/bin:/bin:/usr/bin:/snap/bin' ++ # Force pass-through of environment variables in Gentoo builds ++ import os ++ if os.environ.get('GENTOO_SCONS_ENV_PASSTHROUGH', False): ++ new_env = os.environ.copy() ++ if 'ENV' in env: ++ new_env.update(env['ENV']) ++ env['ENV'] = new_env ++ else: ++ if 'ENV' not in env: ++ env['ENV'] = {} ++ env['ENV']['PATH'] = '/usr/local/bin:/opt/bin:/bin:/usr/bin:/snap/bin' ++ + env['OBJPREFIX'] = '' + env['OBJSUFFIX'] = '.o' + env['SHOBJPREFIX'] = '$OBJPREFIX' +-- +2.30.0 + diff --git a/dev-build/scons/files/scons-4.2.0-respect-cc-etc.patch b/dev-build/scons/files/scons-4.2.0-respect-cc-etc.patch new file mode 100644 index 000000000000..a075fec91d22 --- /dev/null +++ b/dev-build/scons/files/scons-4.2.0-respect-cc-etc.patch @@ -0,0 +1,96 @@ +From b6ba1f2b1feda529eca20fb8980f7c6c52397df6 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Thu, 10 May 2018 08:01:08 +0200 +Subject: [PATCH] posix: Also force common toolchain vars for Gentoo + +--- + SCons/Platform/posix.py | 21 +++++++++++++++++++++ + SCons/Tool/cc.py | 3 ++- + SCons/Tool/cxx.py | 3 ++- + SCons/Tool/link.py | 3 ++- + 4 files changed, 27 insertions(+), 3 deletions(-) + +diff --git a/src/SCons/Platform/posix.py b/src/SCons/Platform/posix.py +index 37cd2377f..1246781de 100644 +--- a/src/SCons/Platform/posix.py ++++ b/src/SCons/Platform/posix.py +@@ -33,6 +33,7 @@ import subprocess + from SCons.Platform import TempFileMunge + from SCons.Platform.virtualenv import ImportVirtualenv + from SCons.Platform.virtualenv import ignore_virtualenv, enable_virtualenv ++import SCons.Util + + exitvalmap = { + 2 : 127, +@@ -86,6 +87,26 @@ def generate(env): + if 'ENV' in env: + new_env.update(env['ENV']) + env['ENV'] = new_env ++ ++ # Furthermore, force common compiler/linker variables as well ++ envvar_mapping = { ++ 'AR': 'AR', ++ 'AS': 'AS', ++ 'ASFLAGS': 'ASFLAGS', ++ 'CC': 'CC', ++ 'CXX': 'CXX', ++ 'CFLAGS': 'CFLAGS', ++ 'CXXFLAGS': 'CXXFLAGS', ++ 'CPPFLAGS': 'CPPFLAGS', ++ 'LDFLAGS': 'LINKFLAGS', ++ } ++ ++ for envvar, toolvar in envvar_mapping.items(): ++ if toolvar not in env and envvar in env['ENV']: ++ val = env['ENV'][envvar] ++ if toolvar.endswith('FLAGS'): ++ val = SCons.Util.CLVar(val) ++ env[toolvar] = val + else: + if 'ENV' not in env: + env['ENV'] = {} +diff --git a/src/SCons/Tool/cc.py b/src/SCons/Tool/cc.py +index 590ec5fd3..5f9229a02 100644 +--- a/src/SCons/Tool/cc.py ++++ b/src/SCons/Tool/cc.py +@@ -80,7 +80,8 @@ def generate(env): + + if 'CC' not in env: + env['CC'] = env.Detect(compilers) or compilers[0] +- env['CFLAGS'] = SCons.Util.CLVar('') ++ if 'CFLAGS' not in env: ++ env['CFLAGS'] = SCons.Util.CLVar('') + env['CCCOM'] = '$CC -o $TARGET -c $CFLAGS $CCFLAGS $_CCCOMCOM $SOURCES' + env['SHCC'] = '$CC' + env['SHCFLAGS'] = SCons.Util.CLVar('$CFLAGS') +diff --git a/src/SCons/Tool/cxx.py b/src/SCons/Tool/cxx.py +index 128cdc4f6..1f852b64c 100644 +--- a/src/SCons/Tool/cxx.py ++++ b/src/SCons/Tool/cxx.py +@@ -69,7 +69,8 @@ def generate(env): + + if 'CXX' not in env: + env['CXX'] = env.Detect(compilers) or compilers[0] +- env['CXXFLAGS'] = SCons.Util.CLVar('') ++ if 'CXXFLAGS' not in env: ++ env['CXXFLAGS'] = SCons.Util.CLVar('') + env['CXXCOM'] = '$CXX -o $TARGET -c $CXXFLAGS $CCFLAGS $_CCCOMCOM $SOURCES' + env['SHCXX'] = '$CXX' + env['SHCXXFLAGS'] = SCons.Util.CLVar('$CXXFLAGS') +diff --git a/src/SCons/Tool/link.py b/src/SCons/Tool/link.py +index 24d17a31f..4ea9917e8 100644 +--- a/src/SCons/Tool/link.py ++++ b/src/SCons/Tool/link.py +@@ -49,7 +49,8 @@ def generate(env): + + env['SMARTLINK'] = smart_link + env['LINK'] = "$SMARTLINK" +- env['LINKFLAGS'] = SCons.Util.CLVar('') ++ if 'LINKFLAGS' not in env: ++ env['LINKFLAGS'] = SCons.Util.CLVar('') + + # __RPATH is only set to something ($_RPATH typically) on platforms that support it. + env['LINKCOM'] = '$LINK -o $TARGET $LINKFLAGS $__RPATH $SOURCES $_LIBDIRFLAGS $_LIBFLAGS' +-- +2.32.0 + diff --git a/dev-build/scons/metadata.xml b/dev-build/scons/metadata.xml new file mode 100644 index 000000000000..aacbf74f7fb9 --- /dev/null +++ b/dev-build/scons/metadata.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>mgorny@gentoo.org</email> + <name>Michał Górny</name> + </maintainer> + <longdescription lang="en"> + SCons is a make replacement providing a range of enhanced + features such as automated dependency generation and built in + compilation cache support. SCons rule sets are Python scripts so + as well as the features it provides itself SCons allows you to use + the full power of Python to control compilation. + </longdescription> + <upstream> + <remote-id type="github">SCons/scons</remote-id> + <remote-id type="pypi">SCons</remote-id> + <remote-id type="sourceforge">scons</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/scons/scons-4.10.1.ebuild b/dev-build/scons/scons-4.10.1.ebuild new file mode 100644 index 000000000000..6935fb6f1307 --- /dev/null +++ b/dev-build/scons/scons-4.10.1.ebuild @@ -0,0 +1,159 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 multiprocessing + +MY_P="SCons-${PV}" +DESCRIPTION="Extensible Python-based build utility" +HOMEPAGE=" + https://www.scons.org/ + https://github.com/SCons/scons/ + https://pypi.org/project/SCons/ +" +SRC_URI=" + https://downloads.sourceforge.net/project/${PN}/${PN}/${PV}/${MY_P}.tar.gz + doc? ( + https://www.scons.org/doc/${PV}/PDF/${PN}-user.pdf + -> ${P}-user.pdf + ) + test? ( + https://github.com/SCons/scons/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + ) +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x64-solaris" +IUSE="doc test" +RESTRICT="!test? ( test )" + +BDEPEND=" + test? ( + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/psutil[${PYTHON_USEDEP}] + ) +" + +src_unpack() { + # use the git directory structure, then unpack the pypi tarball + # on top of it to make our life easier + if use test; then + unpack "${P}.gh.tar.gz" + else + mkdir -p "${P}" || die + fi + + tar -C "${P}" --strip-components=1 --no-same-owner \ + -xzf "${DISTDIR}/${MY_P}.tar.gz" || die +} + +src_prepare() { + distutils-r1_src_prepare + + # TODO: rebase the patches <4.5.1-r2 is gone + # support env passthrough for Gentoo ebuilds + eapply -p2 "${FILESDIR}"/scons-4.1.0-env-passthrough.patch + # respect CC, CXX, C*FLAGS, LDFLAGS by default + eapply -p2 "${FILESDIR}"/scons-4.2.0-respect-cc-etc.patch + + if use test; then + local remove_tests=( + # TODO: does not respect PATH? + test/Clang + # broken + test/DVIPDF/DVIPDFFLAGS.py + test/Java/swig-dependencies.py + test/Java/multi-step.py + test/TEX/newglossary.py + test/TEX/variant_dir_newglossary.py + test/Configure/option--config.py + test/D/HSTeoh/sconstest-linkingProblem_gdc.py + # broken by commas in date, sic! + test/option/option-v.py + test/Interactive/version.py + # warnings from new binutils? + test/AS/as-live.py + test/AS/nasm.py + # hangs + test/KeyboardInterrupt.py + # requires f77 executable + test/Fortran/F77PATH.py + test/Fortran/FORTRANPATH.py + test/Fortran/gfortran.py + # TODO, these seem to be caused by our patches + test/Repository/include.py + test/Repository/multi-dir.py + test/Repository/variants.py + test/virtualenv/activated/option/ignore-virtualenv.py + # broken by CC being set? *facepalm* + test/LINK/applelink.py + test/ToolSurrogate.py + # no clue but why would we care about rpm? + test/packaging/option--package-type.py + test/packaging/rpm/cleanup.py + test/packaging/rpm/internationalization.py + test/packaging/rpm/multipackage.py + test/packaging/rpm/package.py + test/packaging/rpm/tagging.py + # apparently fragile to... limits? + # https://bugs.gentoo.org/908347#c7 + test/builderrors.py + # unhappy about jre-25 + test/Java/nested-classes.py + # flaky + test/leaky-handles.py + ) + + if ! use amd64 && ! use x86 ; then + # These tests are currently broken on arm and other non-amd64/x86 platforms + # Work seems to be ongoing in e.g. https://github.com/SCons/scons/pull/4022 to + # better plumb up the MSVC tests for alternative arches. + # Try again after 4.2.0. + # See also: https://pairlist4.pair.net/pipermail/scons-users/2020-November/008452.html + # bug #757534 + remove_tests+=( + test/MSVS/vs-7.0-scc-files.py + test/MSVS/vs-7.0-scc-legacy-files.py + test/MSVS/vs-7.1-scc-files.py + test/MSVS/vs-7.1-scc-legacy-files.py + test/MSVS/vs-scc-files.py + test/MSVS/vs-scc-legacy-files.py + ) + fi + + rm -r "${remove_tests[@]}" || die + fi +} + +python_test() { + local -x COLUMNS=80 + # set variable from escons() of scons-util.eclass to make env-passthrough patch work within test env + local -x GENTOO_SCONS_ENV_PASSTHROUGH=1 + # unset some env variables to pass appropriate tests + unset AR AS ASFLAGS CC CXX CFLAGS CXXFLAGS CPPFLAGS LDFLAGS + cd "${WORKDIR}/${P}" || die + "${EPYTHON}" runtest.py -a --passed \ + -j "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")" + + # runtest.py script returns "0" if all tests are passed + # and returns "2" if there are any tests with "no result" + # (i.e. in case if some tools are not installed or it's Windows specific tests) + [[ ${?} == [02] ]] || die "Tests fail with ${EPYTHON}" + + # sigh + rm "${BUILD_DIR}/install/usr/bin/.sconsign" || die +} + +python_install_all() { + distutils-r1_python_install_all + + doman *.1 + use doc && dodoc "${DISTDIR}/${P}"-user.pdf +} diff --git a/dev-build/slibtool/Manifest b/dev-build/slibtool/Manifest new file mode 100644 index 000000000000..dd9821ffb45c --- /dev/null +++ b/dev-build/slibtool/Manifest @@ -0,0 +1,12 @@ +DIST slibtool-0.6.1.tar.xz 129584 BLAKE2B 99c90f580a45d450c9c213519c761dbdca1dcac916cc85782e71f7214584c1232f8d183f8ebb8afe91e39b5244a9bf7386eb93082044297c07320dbca3ec5f11 SHA512 71c36243c3a8c3dc63304b07a64ba8c948b8ec463783a63426c74ea6a51702ddd9a52c2397948300db4ddaa0851ef8c7cca3cef6b4d185d2cbc47a45212bcfe8 +DIST slibtool-0.6.1.tar.xz.sig 833 BLAKE2B 135a34d295b2b8ceef3e41edfa0901b99026a503c025859d1364108bb8e12fe378d24bc77ae5c85f831c69c69cf005f1ea880e27d53538fc7cd5dd13641ba526 SHA512 82318cdfd15c8f103255b086921902ff3fcf01e4273fffeddf0515292644f0b677d4580be9810ffce85447b7a069a4c936e4bc42b346bd56f2bd755b38355ea6 +DIST slibtool-0.7.0.tar.xz 129996 BLAKE2B b3f0c6cd188b4824b63cf8a0636f7ae514f09a342601d46571527a81f0681d9d657aac702a0d773ed532011227de513d9cd26e312551784203dad913b46d1f04 SHA512 5c5ca11ab5a60df5adb33037c0b2835c965ebc0c3589ac5f4c2e61aebd8aa51d7609125263d3e665c14a916dedad4340816e4c3d70d55090dbb9941d1c2d8522 +DIST slibtool-0.7.0.tar.xz.sig 833 BLAKE2B 2985b8acb6871fb90d62759ba91fe0e5f7211af0203bb3580a23f015381779242ba3a490e0fb8004500bfcdb0f7669cf2be4df83451ed1b01d168a68f42a3f1e SHA512 91431527b7378d9792f9e4173fad3f8fbfcec25d0f81fac631f80bc8ff51524ce27d2599ca48a8a0f807fb9beedc9462511a36599ab0fbbb649431ebe4e42192 +DIST slibtool-0.7.1.tar.xz 131700 BLAKE2B 9483f82feb0eb77346d88945fea3eee29f268ff78d4f1dd7e58f35c10d5f63fc8020fdec2c9bb25f3dbefe390aeecce0227dbaa386942694c4cd0f30971e8262 SHA512 78669f288306a2bf39933b0618d0ec76ec7cbfaf32ac3a06018b6036131f0ccba4af049e1292d2fa7aff946409fbdd76ff8a6e19091431e410c8554e52855afe +DIST slibtool-0.7.1.tar.xz.sig 833 BLAKE2B 94ccbdab005e35438897e982983fd9f7dfa4f93fea936a04b638445e9aa1a5f2c2a1d5b141289f4ca2d9406fccdfeb79a65196bb75721d35fd5a1cf77fb713c4 SHA512 72ace9fa7fe3b528fa588825a9f605f4e55e87c05e2eda724d36022c8cfc54d16bf5ea1904f1fa0b13141d05a15ce4b68ef192c86b89fbb6e2a2fab7e1e47407 +DIST slibtool-0.7.2.tar.xz 132012 BLAKE2B 242fc4a8ca64ce05d750985c0fe5f81271cd636879752d73f1802002effee4e6c47268dfbd8eae216ef42c45a3845ff489f00ea2883fb0841bc2ad89511cd86b SHA512 d5338b663bddf7337eefd4959394b13986cddb4ee3ab594d3909200775191133998621bb2651fb0977dadfd404f850924ff99c08b418835d97805b7bf4a6329b +DIST slibtool-0.7.2.tar.xz.sig 833 BLAKE2B 06a7b1dbd2ece6357e9cf018a5e89990bfb6b408eb359f7c50cd81431a7bb3678a4b9262bfef8b45c470d8b9292da35d3528ea02551f0617afa088839a919097 SHA512 f133affd899ccdda35d7e42fb01b00bd1177609e95dcaa893a28d2b2faf4f9fd8e594ede36634bb0246129e39b0fcd39fb121ce4d6b8f725178a8e658fa88b6d +DIST slibtool-0.7.3.tar.xz 134000 BLAKE2B 6d869724f45ec18f07a31280d837ee426bd1c65d8d7691a6980babc5f55a10bd6d43bf6788bac028f82ca6a0350555c6c4fac3c76f785ab2b7a94bb4e5565c5d SHA512 9fa0faeeaceb19bf2cbe4a3d3add63839b9ce2c4698abb44df55d426109f64477f89465f07b5e8a762817afe582e139cc9ead6b8f031d13b606857b30dad0ba8 +DIST slibtool-0.7.3.tar.xz.sig 833 BLAKE2B f81bce68779eae47e51f8b8dd03ee59e6f1edd743f309d978b18193b00f4afd8911bffd94b389dc3b12702920a086370f13f776864aeabb9157e497b6e86578e SHA512 03bfe84a27765f7dac8a2fd4d426e54474af451ad9dd108b51ca997ff9ea89b842990ecd615d4bb8cb2c39ac5c54a24fdf5e1906d1340af22df4658b33169330 +DIST slibtool-0.7.4.tar.xz 135580 BLAKE2B 4f8cfb0d757470170fb6636679e8e591fed554cd621c393e8a538cd5230361f48e6f6e5fadc2d550ab371bf0b23c04dbab360c8199d1b2e8d01ee557796f0d23 SHA512 f7a37877455d0a7ca2b3e672d2d4e7b11581da0b29fd2923ad6ca79941b018f181a80ea2700751cbb1de531900ee9da2460203a1fad420047d42a76fb596df06 +DIST slibtool-0.7.4.tar.xz.sig 833 BLAKE2B a6ca4042d2c4d328301210728e66797c0e30fd0e1154aff8695da44479d64b7ebbd0f1a1480cda163c9f07f416397401e85b20f04e9db6e6d3789f4476e7d38e SHA512 a1536f64f22b037556f2144b9e9597482cf55a3ef369f12840c39ac04956a537c3d12f5d095192d25f3230b770124e2c5da2a5dcd0339bf53b0f71bb2a96747f diff --git a/dev-build/slibtool/metadata.xml b/dev-build/slibtool/metadata.xml new file mode 100644 index 000000000000..26b0002e202f --- /dev/null +++ b/dev-build/slibtool/metadata.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person" proxied="yes"> + <email>felix.janda@posteo.de</email> + <name>Felix Janda</name> + </maintainer> + <maintainer type="person"> + <email>sam@gentoo.org</email> + <name>Sam James</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> +</pkgmetadata> diff --git a/dev-build/slibtool/slibtool-0.6.1.ebuild b/dev-build/slibtool/slibtool-0.6.1.ebuild new file mode 100644 index 000000000000..60e33ad51cc8 --- /dev/null +++ b/dev-build/slibtool/slibtool-0.6.1.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +# git.foss21.org is the official repository per upstream +DESCRIPTION="A strong libtool implementation, written in C" +HOMEPAGE="https://git.foss21.org/slibtool" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://git.foss21.org/slibtool" +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/midipix.asc + inherit verify-sig + + SRC_URI="https://dl.foss21.org/slibtool/${P}.tar.xz" + SRC_URI+=" verify-sig? ( https://dl.foss21.org/slibtool/${P}.tar.xz.sig )" + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" +fi + +BDEPEND="sys-devel/m4" + +if [[ ${PV} != *9999 ]] ; then + BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-midipix-20240315 )" +fi + +LICENSE="MIT" +SLOT="0" + +src_configure() { + # Custom configure script (not generated by autoconf) + ./configure \ + --compiler="$(tc-getCC)" \ + --host=${CHOST} \ + --prefix="${EPREFIX}"/usr \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + || die +} diff --git a/dev-build/slibtool/slibtool-0.7.0.ebuild b/dev-build/slibtool/slibtool-0.7.0.ebuild new file mode 100644 index 000000000000..42799c3e9614 --- /dev/null +++ b/dev-build/slibtool/slibtool-0.7.0.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +# git.foss21.org is the official repository per upstream +DESCRIPTION="A strong libtool implementation, written in C" +HOMEPAGE="https://git.foss21.org/slibtool" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://git.foss21.org/slibtool" +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/midipix.asc + inherit verify-sig + + SRC_URI="https://dl.foss21.org/slibtool/${P}.tar.xz" + SRC_URI+=" verify-sig? ( https://dl.foss21.org/slibtool/${P}.tar.xz.sig )" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +fi + +BDEPEND="sys-devel/m4" + +if [[ ${PV} != *9999 ]] ; then + BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-midipix-20250517 )" +fi + +LICENSE="MIT" +SLOT="0" + +src_configure() { + # Custom configure script (not generated by autoconf) + ./configure \ + --compiler="$(tc-getCC)" \ + --host=${CHOST} \ + --prefix="${EPREFIX}"/usr \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + || die +} diff --git a/dev-build/slibtool/slibtool-0.7.1.ebuild b/dev-build/slibtool/slibtool-0.7.1.ebuild new file mode 100644 index 000000000000..42799c3e9614 --- /dev/null +++ b/dev-build/slibtool/slibtool-0.7.1.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +# git.foss21.org is the official repository per upstream +DESCRIPTION="A strong libtool implementation, written in C" +HOMEPAGE="https://git.foss21.org/slibtool" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://git.foss21.org/slibtool" +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/midipix.asc + inherit verify-sig + + SRC_URI="https://dl.foss21.org/slibtool/${P}.tar.xz" + SRC_URI+=" verify-sig? ( https://dl.foss21.org/slibtool/${P}.tar.xz.sig )" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +fi + +BDEPEND="sys-devel/m4" + +if [[ ${PV} != *9999 ]] ; then + BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-midipix-20250517 )" +fi + +LICENSE="MIT" +SLOT="0" + +src_configure() { + # Custom configure script (not generated by autoconf) + ./configure \ + --compiler="$(tc-getCC)" \ + --host=${CHOST} \ + --prefix="${EPREFIX}"/usr \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + || die +} diff --git a/dev-build/slibtool/slibtool-0.7.2.ebuild b/dev-build/slibtool/slibtool-0.7.2.ebuild new file mode 100644 index 000000000000..42799c3e9614 --- /dev/null +++ b/dev-build/slibtool/slibtool-0.7.2.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +# git.foss21.org is the official repository per upstream +DESCRIPTION="A strong libtool implementation, written in C" +HOMEPAGE="https://git.foss21.org/slibtool" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://git.foss21.org/slibtool" +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/midipix.asc + inherit verify-sig + + SRC_URI="https://dl.foss21.org/slibtool/${P}.tar.xz" + SRC_URI+=" verify-sig? ( https://dl.foss21.org/slibtool/${P}.tar.xz.sig )" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +fi + +BDEPEND="sys-devel/m4" + +if [[ ${PV} != *9999 ]] ; then + BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-midipix-20250517 )" +fi + +LICENSE="MIT" +SLOT="0" + +src_configure() { + # Custom configure script (not generated by autoconf) + ./configure \ + --compiler="$(tc-getCC)" \ + --host=${CHOST} \ + --prefix="${EPREFIX}"/usr \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + || die +} diff --git a/dev-build/slibtool/slibtool-0.7.3.ebuild b/dev-build/slibtool/slibtool-0.7.3.ebuild new file mode 100644 index 000000000000..1c193092ffcb --- /dev/null +++ b/dev-build/slibtool/slibtool-0.7.3.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +# git.foss21.org is the official repository per upstream +DESCRIPTION="A strong libtool implementation, written in C" +HOMEPAGE="https://git.foss21.org/slibtool" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://git.foss21.org/slibtool" +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/midipix.asc + inherit verify-sig + + SRC_URI="https://dl.foss21.org/slibtool/${P}.tar.xz" + SRC_URI+=" verify-sig? ( https://dl.foss21.org/slibtool/${P}.tar.xz.sig )" + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" +fi + +BDEPEND="sys-devel/m4" + +if [[ ${PV} != *9999 ]] ; then + BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-midipix-20250517 )" +fi + +LICENSE="MIT" +SLOT="0" + +src_configure() { + # Custom configure script (not generated by autoconf) + ./configure \ + --compiler="$(tc-getCC)" \ + --host=${CHOST} \ + --prefix="${EPREFIX}"/usr \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + || die +} diff --git a/dev-build/slibtool/slibtool-0.7.4.ebuild b/dev-build/slibtool/slibtool-0.7.4.ebuild new file mode 100644 index 000000000000..1c193092ffcb --- /dev/null +++ b/dev-build/slibtool/slibtool-0.7.4.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +# git.foss21.org is the official repository per upstream +DESCRIPTION="A strong libtool implementation, written in C" +HOMEPAGE="https://git.foss21.org/slibtool" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://git.foss21.org/slibtool" +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/midipix.asc + inherit verify-sig + + SRC_URI="https://dl.foss21.org/slibtool/${P}.tar.xz" + SRC_URI+=" verify-sig? ( https://dl.foss21.org/slibtool/${P}.tar.xz.sig )" + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" +fi + +BDEPEND="sys-devel/m4" + +if [[ ${PV} != *9999 ]] ; then + BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-midipix-20250517 )" +fi + +LICENSE="MIT" +SLOT="0" + +src_configure() { + # Custom configure script (not generated by autoconf) + ./configure \ + --compiler="$(tc-getCC)" \ + --host=${CHOST} \ + --prefix="${EPREFIX}"/usr \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + || die +} diff --git a/dev-build/slibtool/slibtool-9999.ebuild b/dev-build/slibtool/slibtool-9999.ebuild new file mode 100644 index 000000000000..42799c3e9614 --- /dev/null +++ b/dev-build/slibtool/slibtool-9999.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +# git.foss21.org is the official repository per upstream +DESCRIPTION="A strong libtool implementation, written in C" +HOMEPAGE="https://git.foss21.org/slibtool" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://git.foss21.org/slibtool" +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/midipix.asc + inherit verify-sig + + SRC_URI="https://dl.foss21.org/slibtool/${P}.tar.xz" + SRC_URI+=" verify-sig? ( https://dl.foss21.org/slibtool/${P}.tar.xz.sig )" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +fi + +BDEPEND="sys-devel/m4" + +if [[ ${PV} != *9999 ]] ; then + BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-midipix-20250517 )" +fi + +LICENSE="MIT" +SLOT="0" + +src_configure() { + # Custom configure script (not generated by autoconf) + ./configure \ + --compiler="$(tc-getCC)" \ + --host=${CHOST} \ + --prefix="${EPREFIX}"/usr \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + || die +} diff --git a/dev-build/steve/Manifest b/dev-build/steve/Manifest new file mode 100644 index 000000000000..feb526d78aad --- /dev/null +++ b/dev-build/steve/Manifest @@ -0,0 +1 @@ +DIST steve-1.5.0.tar.xz 22732 BLAKE2B 2506d9de0fd5415f40ddb85de71acfd5dbdc89672ac86e3c30c7c3c61117d610e469cdc50e2a8bfaafb35443f9aec316846d71336721490827a207a2dd97419b SHA512 bdde7ca302a09eea430ffa34f3b68ee40ae014ca7798f81672dda492a8e2caf289394c61560c882a2cc0409a25864d0d28997462bfe01521ed0777f585a76721 diff --git a/dev-build/steve/metadata.xml b/dev-build/steve/metadata.xml new file mode 100644 index 000000000000..076793e3f54b --- /dev/null +++ b/dev-build/steve/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>mgorny@gentoo.org</email> + <name>Michał Górny</name> + </maintainer> +</pkgmetadata> diff --git a/dev-build/steve/steve-1.5.0.ebuild b/dev-build/steve/steve-1.5.0.ebuild new file mode 100644 index 000000000000..80ca0e04f4e6 --- /dev/null +++ b/dev-build/steve/steve-1.5.0.ebuild @@ -0,0 +1,109 @@ +# Copyright 2025-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit linux-info meson python-any-r1 systemd udev + +DESCRIPTION="A load-balancing jobserver for Gentoo" +HOMEPAGE="https://gitweb.gentoo.org/proj/steve.git/" +SRC_URI="https://dev.gentoo.org/~mgorny/dist/${P}.tar.xz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 ~sparc x86" +IUSE="debug test" +RESTRICT="test" +PROPERTIES="test? ( test_privileged )" + +DEPEND=" + dev-libs/libevent:= + sys-fs/fuse:3= +" +RDEPEND=" + ${DEPEND} + acct-group/jobserver + acct-user/steve + >=sys-fs/fuse-common-3.10.4-r2 +" +BDEPEND=" + virtual/pkgconfig + test? ( + $(python_gen_any_dep ' + dev-python/pytest[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + ') + ) +" + +python_check_deps() { + python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" && + python_has_version "dev-python/pytest-timeout[${PYTHON_USEDEP}]" +} + +pkg_pretend() { + local CONFIG_CHECK="~CUSE" + check_extra_config +} + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_configure() { + local emesonargs=( + $(meson_use !debug b_ndebug) + $(meson_use test) + ) + + meson_src_configure +} + +src_test() { + addwrite /dev/cuse + addwrite /dev/steve.test + if [[ ! -w /dev/cuse ]]; then + die "Testing steve requires /dev/cuse" + fi + + local -x STEVE=${BUILD_DIR}/steve + local EPYTEST_PLUGINS=( pytest-timeout ) + epytest +} + +src_install() { + meson_src_install + + # TODO: move these to meson + systemd_dounit data/steve.service + newconfd data/steve.confd steve + newinitd data/steve.initd steve + insinto /etc/sandbox.d + newins data/sandbox.conf 90steve + udev_newrules data/steve.udev 90-steve.rules +} + +pkg_postinst() { + udev_reload + + if ! grep -q -s -R -- '--jobserver-auth=fifo:/dev/steve' "${EROOT}"/etc/portage/make.conf + then + elog "In order to use the system-wide steve instance, enable the service:" + elog + elog " systemctl enable --now steve" + elog + elog "Then add to your make.conf:" + elog + elog ' MAKEFLAGS="--jobserver-auth=fifo:/dev/steve"' + elog ' NINJAOPTS=""' + elog + elog "You can use -l in NINJAOPTS but *do not* use -j, as it disables" + elog "jobserver support." + fi +} + +pkg_postrm() { + udev_reload +} diff --git a/dev-build/steve/steve-9999.ebuild b/dev-build/steve/steve-9999.ebuild new file mode 100644 index 000000000000..2c489813f46c --- /dev/null +++ b/dev-build/steve/steve-9999.ebuild @@ -0,0 +1,108 @@ +# Copyright 2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit git-r3 linux-info meson python-any-r1 systemd udev + +DESCRIPTION="A load-balancing jobserver for Gentoo" +HOMEPAGE="https://gitweb.gentoo.org/proj/steve.git/" +EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/steve.git" + +LICENSE="GPL-2+" +SLOT="0" +IUSE="debug test" +RESTRICT="test" +PROPERTIES="test? ( test_privileged )" + +DEPEND=" + dev-libs/libevent:= + sys-fs/fuse:3= +" +RDEPEND=" + ${DEPEND} + acct-group/jobserver + acct-user/steve + >=sys-fs/fuse-common-3.10.4-r2 +" +BDEPEND=" + virtual/pkgconfig + test? ( + $(python_gen_any_dep ' + dev-python/pytest[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + ') + ) +" + +python_check_deps() { + python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" && + python_has_version "dev-python/pytest-timeout[${PYTHON_USEDEP}]" +} + +pkg_pretend() { + local CONFIG_CHECK="~CUSE" + check_extra_config +} + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_configure() { + local emesonargs=( + $(meson_use !debug b_ndebug) + $(meson_use test) + ) + + meson_src_configure +} + +src_test() { + addwrite /dev/cuse + addwrite /dev/steve.test + if [[ ! -w /dev/cuse ]]; then + die "Testing steve requires /dev/cuse" + fi + + local -x STEVE=${BUILD_DIR}/steve + local EPYTEST_PLUGINS=( pytest-timeout ) + epytest +} + +src_install() { + meson_src_install + + # TODO: move these to meson + systemd_dounit data/steve.service + newconfd data/steve.confd steve + newinitd data/steve.initd steve + insinto /etc/sandbox.d + newins data/sandbox.conf 90steve + udev_newrules data/steve.udev 90-steve.rules +} + +pkg_postinst() { + udev_reload + + if ! grep -q -s -R -- '--jobserver-auth=fifo:/dev/steve' "${EROOT}"/etc/portage/make.conf + then + elog "In order to use the system-wide steve instance, enable the service:" + elog + elog " systemctl enable --now steve" + elog + elog "Then add to your make.conf:" + elog + elog ' MAKEFLAGS="--jobserver-auth=fifo:/dev/steve"' + elog ' NINJAOPTS=""' + elog + elog "You can use -l in NINJAOPTS but *do not* use -j, as it disables" + elog "jobserver support." + fi +} + +pkg_postrm() { + udev_reload +} diff --git a/dev-build/tinycmmc/Manifest b/dev-build/tinycmmc/Manifest new file mode 100644 index 000000000000..4b84d407313d --- /dev/null +++ b/dev-build/tinycmmc/Manifest @@ -0,0 +1 @@ +DIST tinycmmc-0.1.0.tar.gz 10559 BLAKE2B 9708c6c95c5746d000bb02b46bc40b788b8b18d55d3bd2e97e88789f4b084e145db39e038b4d619c75273b8fd23713f6906a8618fa248664a468c60e1073000c SHA512 cf1e8108be2f5c8a23e08756b6f50a2493a688ffa8bd7a06a59330cdd74046035705f18d5f53a00d6779dafb76a2c529b4ca9be7e53ff2660d718e8f68544769 diff --git a/dev-build/tinycmmc/files/tinycmmc-0.1.0-cmake4.patch b/dev-build/tinycmmc/files/tinycmmc-0.1.0-cmake4.patch new file mode 100644 index 000000000000..a9cc457273f7 --- /dev/null +++ b/dev-build/tinycmmc/files/tinycmmc-0.1.0-cmake4.patch @@ -0,0 +1,48 @@ +https://github.com/Grumbel/tinycmmc/pull/2 +https://github.com/Grumbel/tinycmmc/commit/8238a6c1b90536e211fddf356dc3af26ea7c2f2c + +From 01e81cdeb672d57f050594517a3ec4de4298615c Mon Sep 17 00:00:00 2001 +From: orbea <orbea@riseup.net> +Date: Wed, 26 Mar 2025 07:45:32 -0700 +Subject: [PATCH] cmake: require 3.10 as the minimum version + +With cmake 4 it now errors unless the minimum version is at least 3.5 +and it will warn if the version is not at least 3.10. + +Gentoo-Issue: https://bugs.gentoo.org/952072 +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +https://github.com/Grumbel/tinycmmc/pull/3 +https://github.com/Grumbel/tinycmmc/commit/2ad2d2ab7dce012bb1c9d1dbb8bdb5abd9232ecd + +From cffa9348fd2afd9874c733beb9c93a88720085cc Mon Sep 17 00:00:00 2001 +From: orbea <orbea@riseup.net> +Date: Fri, 24 Oct 2025 09:10:31 -0700 +Subject: [PATCH] build: set the cmake_minimum_required as a range + +From the cmake documentation: + + This uses the <min>...<max> syntax to enable the NEW behaviors of + policies introduced in CMake 4.1 and earlier while only requiring + a minimum version of CMake 3.10. + +Resource: https://cmake.org/cmake/help/latest/manual/cmake-policies.7.html#updating-projects +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 2344961..12af9d2 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -16,7 +16,7 @@ + # misrepresented as being the original software. + # 3. This notice may not be removed or altered from any source distribution. + +-cmake_minimum_required(VERSION 3.0) ++cmake_minimum_required(VERSION 3.10...4.1) + project(tinycmmc VERSION 0.1.0) + + include(GNUInstallDirs) diff --git a/dev-build/tinycmmc/metadata.xml b/dev-build/tinycmmc/metadata.xml new file mode 100644 index 000000000000..a85353b5969e --- /dev/null +++ b/dev-build/tinycmmc/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'> +<pkgmetadata> + <maintainer type="person" proxied="yes"> + <email>orbea@riseup.net</email> + <name>orbea</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> + <upstream> + <remote-id type="github">Grumbel/tinycmmc</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/tinycmmc/tinycmmc-0.1.0.ebuild b/dev-build/tinycmmc/tinycmmc-0.1.0.ebuild new file mode 100644 index 000000000000..416794357f05 --- /dev/null +++ b/dev-build/tinycmmc/tinycmmc-0.1.0.ebuild @@ -0,0 +1,22 @@ +# Copyright 2023-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +if [[ ${PV} == 9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/Grumbel/${PN}.git" +else + SRC_URI="https://github.com/Grumbel/${PN}/archive/v${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~riscv" +fi + +DESCRIPTION="Tiny CMake Module Collections" +HOMEPAGE="https://github.com/Grumbel/tinycmmc" + +LICENSE="GPL-3+" +SLOT="0" + +PATCHES=( "${FILESDIR}"/${PN}-0.1.0-cmake4.patch ) diff --git a/dev-build/tinycmmc/tinycmmc-9999.ebuild b/dev-build/tinycmmc/tinycmmc-9999.ebuild new file mode 100644 index 000000000000..52908346886d --- /dev/null +++ b/dev-build/tinycmmc/tinycmmc-9999.ebuild @@ -0,0 +1,20 @@ +# Copyright 2023-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +if [[ ${PV} == 9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/Grumbel/${PN}.git" +else + SRC_URI="https://github.com/Grumbel/${PN}/archive/v${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~riscv" +fi + +DESCRIPTION="Tiny CMake Module Collections" +HOMEPAGE="https://github.com/Grumbel/tinycmmc" + +LICENSE="ZLIB" +SLOT="0" diff --git a/dev-build/xfce4-dev-tools/Manifest b/dev-build/xfce4-dev-tools/Manifest new file mode 100644 index 000000000000..fe543f430756 --- /dev/null +++ b/dev-build/xfce4-dev-tools/Manifest @@ -0,0 +1,2 @@ +DIST xfce4-dev-tools-4.20.0.tar.bz2 380344 BLAKE2B 9444857000bd35c0118656abda28ad155632edba441316093a0075ce06f6146bc028e023d11f2f6380f6c89a66e9ae2b2470f4c7b0ded3eab32d25532d0b528a SHA512 2ee8d0e4512c326ad404310f15081a8c6eec026634bcc2e76873cecc5b4356c3425d883c07f05e5a76a500c135d62809e6323f318ac6fc33d16023a9c5bd5441 +DIST xfce4-dev-tools-4.21.0.tar.bz2 402865 BLAKE2B 333ad5e9ddfd4d9ad4a60e26dc2b24966c8ed1117dd5ee8a642a1672046c179743229eeaa3a89dfe6b4016e58463b53d9b99b12a7de75a3e711fed8d5eb67ec4 SHA512 0416ad6afde2babe8e4694cc76742feaf575ae45b3cf3439139ec99cedee8f0132ceb1336f0c34af7d3fb36a047d74423a171089735eb91a11473497a2142103 diff --git a/dev-build/xfce4-dev-tools/metadata.xml b/dev-build/xfce4-dev-tools/metadata.xml new file mode 100644 index 000000000000..2b8ef06e9a39 --- /dev/null +++ b/dev-build/xfce4-dev-tools/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>xfce@gentoo.org</email> + <name>XFCE Team</name> + </maintainer> +</pkgmetadata> diff --git a/dev-build/xfce4-dev-tools/xfce4-dev-tools-4.20.0.ebuild b/dev-build/xfce4-dev-tools/xfce4-dev-tools-4.20.0.ebuild new file mode 100644 index 000000000000..fea4a05cdcfc --- /dev/null +++ b/dev-build/xfce4-dev-tools/xfce4-dev-tools-4.20.0.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="A set of scripts and m4/autoconf macros that ease build system maintenance" +HOMEPAGE=" + https://docs.xfce.org/xfce/xfce4-dev-tools/start + https://gitlab.xfce.org/xfce/xfce4-dev-tools/ +" +SRC_URI="https://archive.xfce.org/src/xfce/${PN}/${PV%.*}/${P}.tar.bz2" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86 ~x64-solaris" + +DEPEND=" + >=dev-libs/glib-2.72.0 +" +RDEPEND=" + ${DEPEND} + dev-build/meson +" +# libxslt for xsltproc +BDEPEND=" + dev-build/meson + dev-libs/libxslt + virtual/pkgconfig +" diff --git a/dev-build/xfce4-dev-tools/xfce4-dev-tools-4.21.0.ebuild b/dev-build/xfce4-dev-tools/xfce4-dev-tools-4.21.0.ebuild new file mode 100644 index 000000000000..9e47cb07761d --- /dev/null +++ b/dev-build/xfce4-dev-tools/xfce4-dev-tools-4.21.0.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="A set of scripts and m4/autoconf macros that ease build system maintenance" +HOMEPAGE=" + https://docs.xfce.org/xfce/xfce4-dev-tools/start + https://gitlab.xfce.org/xfce/xfce4-dev-tools/ +" +SRC_URI="https://archive.xfce.org/src/xfce/${PN}/${PV%.*}/${P}.tar.bz2" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-solaris" + +DEPEND=" + >=dev-libs/glib-2.72.0 +" +RDEPEND=" + ${DEPEND} + dev-build/meson +" +# libxslt for xsltproc +BDEPEND=" + dev-build/meson + dev-libs/libxslt + virtual/pkgconfig +" diff --git a/dev-build/xmake/Manifest b/dev-build/xmake/Manifest new file mode 100644 index 000000000000..816a7d628a67 --- /dev/null +++ b/dev-build/xmake/Manifest @@ -0,0 +1 @@ +DIST xmake-v3.0.9.tar.gz 3290252 BLAKE2B 3bcc1b51d3c3cb5ef8b5e79eba7ca7b57000ee1dff54a1cffcc256c24e3c3c8a849ac7d354b80d5bc11f7dd603f93882d9d6a74dc2e63eeaf7692cd38cda9603 SHA512 c94481c9a922571b8f533830ddc10441c584d41000e49bdabaf12a7e573bc9c9c0335a4a6189c6ea7d4522e755502a2d3fe3308731eb12bf3fe10b72659997ec diff --git a/dev-build/xmake/metadata.xml b/dev-build/xmake/metadata.xml new file mode 100644 index 000000000000..8fb6884938dd --- /dev/null +++ b/dev-build/xmake/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <upstream> + <bugs-to>https://github.com/xmake-io/xmake/issues</bugs-to> + <remote-id type="github">xmake-io/xmake</remote-id> + </upstream> + <longdescription lang="en"> + xmake is a lightweight cross-platform build utility based on Lua. It uses + xmake.lua to maintain project builds. Compared with makefile/CMakeLists.txt, + the configuration syntax is more concise and intuitive. It is very friendly + to novices and can quickly get started in a short time. Let users focus more + on actual project development. + It can compile the project directly like Make/Ninja, or generate project + files like CMake/Meson, and it also has a built-in package management system + to help users solve the integrated use of C/C++ dependent libraries. + </longdescription> +</pkgmetadata> diff --git a/dev-build/xmake/xmake-3.0.9.ebuild b/dev-build/xmake/xmake-3.0.9.ebuild new file mode 100644 index 000000000000..d165a44324d4 --- /dev/null +++ b/dev-build/xmake/xmake-3.0.9.ebuild @@ -0,0 +1,68 @@ +# Copyright 2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit optfeature shell-completion + +DESCRIPTION="A cross-platform build utility based on Lua" +HOMEPAGE="https://xmake.io" + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/xmake-io/${PN}.git" +else + SRC_URI="https://github.com/xmake-io/${PN}/releases/download/v${PV}/${PN}-v${PV}.tar.gz" + KEYWORDS="~amd64 ~riscv ~x86" +fi + +LICENSE="Apache-2.0" +SLOT="0" +# tarball doesn't provide tests +RESTRICT="test" + +DEPEND=" + sys-libs/ncurses:= + sys-libs/readline:= +" +BDEPEND=" + virtual/pkgconfig +" +RDEPEND=" + ${DEPEND} + ${BDEPEND} +" + +DOCS=( + CHANGELOG.md CODE_OF_CONDUCT.md CONTRIBUTING.md + NOTICE.md README.md README_zh.md +) + +src_prepare() { + default + + # Don't strip binaries + sed -i 's/"-s"/""/' configure || die +} + +src_configure() { + econf --prefix="${EPREFIX}"/usr \ + --plat=linux + # --plat=linux is necessary, which enables correct directory: + # build/linux/ARCH other than build/ARCH/ARCH +} + +src_install() { + default + + doman scripts/man/* + + newbashcomp xmake/scripts/completions/register-completions.bash xmake + bashcomp_alias xmake xrepo + newzshcomp xmake/scripts/completions/register-completions.zsh _xmake + newfishcomp xmake/scripts/completions/register-completions.fish xmake.fish +} + +pkg_postinst() { + optfeature "cached compilation for your xmake projects" dev-util/ccache +} diff --git a/dev-build/xmake/xmake-9999.ebuild b/dev-build/xmake/xmake-9999.ebuild new file mode 100644 index 000000000000..d165a44324d4 --- /dev/null +++ b/dev-build/xmake/xmake-9999.ebuild @@ -0,0 +1,68 @@ +# Copyright 2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit optfeature shell-completion + +DESCRIPTION="A cross-platform build utility based on Lua" +HOMEPAGE="https://xmake.io" + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/xmake-io/${PN}.git" +else + SRC_URI="https://github.com/xmake-io/${PN}/releases/download/v${PV}/${PN}-v${PV}.tar.gz" + KEYWORDS="~amd64 ~riscv ~x86" +fi + +LICENSE="Apache-2.0" +SLOT="0" +# tarball doesn't provide tests +RESTRICT="test" + +DEPEND=" + sys-libs/ncurses:= + sys-libs/readline:= +" +BDEPEND=" + virtual/pkgconfig +" +RDEPEND=" + ${DEPEND} + ${BDEPEND} +" + +DOCS=( + CHANGELOG.md CODE_OF_CONDUCT.md CONTRIBUTING.md + NOTICE.md README.md README_zh.md +) + +src_prepare() { + default + + # Don't strip binaries + sed -i 's/"-s"/""/' configure || die +} + +src_configure() { + econf --prefix="${EPREFIX}"/usr \ + --plat=linux + # --plat=linux is necessary, which enables correct directory: + # build/linux/ARCH other than build/ARCH/ARCH +} + +src_install() { + default + + doman scripts/man/* + + newbashcomp xmake/scripts/completions/register-completions.bash xmake + bashcomp_alias xmake xrepo + newzshcomp xmake/scripts/completions/register-completions.zsh _xmake + newfishcomp xmake/scripts/completions/register-completions.fish xmake.fish +} + +pkg_postinst() { + optfeature "cached compilation for your xmake projects" dev-util/ccache +} |
