summaryrefslogtreecommitdiff
path: root/sys-libs
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-01-03 06:31:16 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-01-03 06:31:16 +0000
commit5087ee3bf0055aae666159351774f2fb3610e571 (patch)
tree203f4d869518e7391a255055ca9a4b874e7b2d19 /sys-libs
parentff733bfb4d0bd82175e03255004faef8721b53ea (diff)
gentoo auto-resync : 03:01:2025 - 06:31:16
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/Manifest.gzbin13725 -> 13724 bytes
-rw-r--r--sys-libs/glibc/Manifest4
-rw-r--r--sys-libs/glibc/glibc-2.40-r7.ebuild28
-rw-r--r--sys-libs/glibc/glibc-9999.ebuild28
-rw-r--r--sys-libs/newlib/Manifest2
-rw-r--r--sys-libs/newlib/newlib-4.5.0.20241231.ebuild178
6 files changed, 190 insertions, 50 deletions
diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz
index 218a8c6d47a0..ca5f95334cef 100644
--- a/sys-libs/Manifest.gz
+++ b/sys-libs/Manifest.gz
Binary files differ
diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest
index 695826e2d93e..50500a723eba 100644
--- a/sys-libs/glibc/Manifest
+++ b/sys-libs/glibc/Manifest
@@ -52,6 +52,6 @@ EBUILD glibc-2.37-r10.ebuild 53322 BLAKE2B 301a9c47f4149e927764cc132e6ec2a20b90a
EBUILD glibc-2.38-r13.ebuild 55028 BLAKE2B fcee988603b8bcec9cf184c54e040c9190a98170170665c56998e9a14bec55b34e25fc1002b2aaa8bae29392968a8f543f2f68f1e564c52d9e7a0fcf5c829317 SHA512 9bd2e1fe3709f4b792575d37c6b343e2db3b4bb60090281521ac3b9c4e5b9bed2367453933a2df8c1fa9cc988a71e97d797c009f7bb9fabde6c2821ab61102dd
EBUILD glibc-2.39-r11.ebuild 54663 BLAKE2B ef95a8014c990f42738c5b66b73416a55fab1b433af10d879a60d4d798ed3b9fca747242fb09d110f6a258e37bdbb384a85cc59dd8dc80f375c6faaa30ab4932 SHA512 3e8c216ac02f129a37de9d475980d911fb1ff77d09949f87ff6c5ffa666afdc6a35004d32d60d8a78b1abc17a823083442a68cbea6df35d4409897648ce8783f
EBUILD glibc-2.40-r5.ebuild 54662 BLAKE2B 62dd423d70cd8598bc4e69dc49e9b5442d283af497b80c58a99fcc6d4977936b0171c0c76325978fd43ddccd7e3c6496984c90a171bfd7b27ce5296bd204f7e9 SHA512 4daab8f45afa47660e9edce14ce5733702a5c229e1dea24e702858425d30201686eb62b0fd2d6a9c99343e4c6e138352f18eacde24d99aada8ce610f001c5b33
-EBUILD glibc-2.40-r7.ebuild 55811 BLAKE2B acfceb338224a38741d4f2802041fbeb89ec0cc8d1326d14e4a9b7ae799e9a077fef3c1b0b72c2616f6cabf7763b425582745e53656ef121eec8f9ff174595df SHA512 6e036c5977c6bc4c095396b054df3397a01e2320683158c09387e3af18eb7cbec8c252b69ee478f8015881d81c03f4637a67af8806d2ca20293a9de2e3125c5e
-EBUILD glibc-9999.ebuild 56078 BLAKE2B 21360b5d2946393f32e5e7ce9cf62e18598f991f337b607b290be9f2b1bed14af07656c1a1e58ac3971957890bf907ec5730072f172030e471fae482b9b26530 SHA512 9cfb30da99db7e500158f8933a7b77e34c1f67da6e72c399be12191a82924677c220f0de0ed69057cff72f5798f94ce4d948729bbef4d437c06a6682a9d9bbf2
+EBUILD glibc-2.40-r7.ebuild 55082 BLAKE2B 77720d61dc27850eee428d03ea2be5d66a24a1068d0eb489ea4ecef5b9f115d075342fc8d1f1f88978f6e683530d7e2f506bb30276a814a72d4409cf7f260643 SHA512 e210980f0f1ed540afddecc3108386ea2cef4b5d334133fc5ea01294aed7257f387679cfca5c7b482d709e2c7855fb0a47eb13fbef14189cf47e6dc81088c2ad
+EBUILD glibc-9999.ebuild 55349 BLAKE2B fbf33cd94c24f68742d80c5e166844a499fc848af56f31d52e64278b09cccef853cd5863408a9b4a8ea3b606aa91168a21d387a1f8371a2eac7562208947901b SHA512 f7eb28cba747a9d6c8c60b7082275132bd85468c6a2f18a2e63df8897f7bf8a6b7ee6eb110b81b5004fc8cc9e16b5adc1ac16bd63442ea163dd9a8b72f5c6895
MISC metadata.xml 2142 BLAKE2B 765ba540eb10afccd1bade4de56f0c13ce269225500a62d1d17328194de69e7fa15d359a14eac6bfa8a36df45344db3d52f5e1811b174cf1fa2bfb95ad7760a7 SHA512 2f4a148c076a0967663d14e76b85a698ddae7093ff299b0dc95a6c3b00957c9bf73443f2bace9670eb62a45465efbcca892bb52b6aac8577acb2bc5f74a7397c
diff --git a/sys-libs/glibc/glibc-2.40-r7.ebuild b/sys-libs/glibc/glibc-2.40-r7.ebuild
index c24d663d40e0..66f7383c954d 100644
--- a/sys-libs/glibc/glibc-2.40-r7.ebuild
+++ b/sys-libs/glibc/glibc-2.40-r7.ebuild
@@ -248,29 +248,9 @@ build_eprefix() {
is_crosscompile && echo "${EPREFIX}"
}
-# We need to be able to set alternative headers for compiling for non-native
-# platform. Will also become useful for testing kernel-headers without screwing
-# up the whole system.
alt_headers() {
- echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
+ echo $(alt_prefix)/usr/include
}
-
-alt_build_headers() {
- if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
- ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)"
- if tc-is-cross-compiler ; then
- ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
- if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
- local header_path=$(echo '#include <linux/version.h>' \
- | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 \
- | grep -o '[^"]*linux/version.h')
- ALT_BUILD_HEADERS=${header_path%/linux/version.h}
- fi
- fi
- fi
- echo "${ALT_BUILD_HEADERS}"
-}
-
alt_libdir() {
echo $(alt_prefix)/$(get_libdir)
}
@@ -792,7 +772,7 @@ eend_KV() {
get_kheader_version() {
printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
- $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \
+ $(tc-getCPP ${CTARGET}) -I "${ESYSROOT}$(alt_headers)" - | \
tail -n 1
}
@@ -1065,7 +1045,7 @@ glibc_do_configure() {
--host=${CTARGET_OPT:-${CTARGET}}
$(use_enable profile)
$(use_with gd)
- --with-headers=$(build_eprefix)$(alt_build_headers)
+ --with-headers="${ESYSROOT}$(alt_headers)"
--prefix="$(host_eprefix)/usr"
--sysconfdir="$(host_eprefix)/etc"
--localstatedir="$(host_eprefix)/var"
@@ -1228,7 +1208,7 @@ glibc_headers_configure() {
--enable-bind-now
--build=${CBUILD_OPT:-${CBUILD}}
--host=${CTARGET_OPT:-${CTARGET}}
- --with-headers=$(build_eprefix)$(alt_build_headers)
+ --with-headers="${ESYSROOT}$(alt_headers)"
--prefix="$(host_eprefix)/usr"
${EXTRA_ECONF}
)
diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild
index 68c5b9325049..39f4cd3f2872 100644
--- a/sys-libs/glibc/glibc-9999.ebuild
+++ b/sys-libs/glibc/glibc-9999.ebuild
@@ -250,29 +250,9 @@ build_eprefix() {
is_crosscompile && echo "${EPREFIX}"
}
-# We need to be able to set alternative headers for compiling for non-native
-# platform. Will also become useful for testing kernel-headers without screwing
-# up the whole system.
alt_headers() {
- echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
+ echo $(alt_prefix)/usr/include
}
-
-alt_build_headers() {
- if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
- ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)"
- if tc-is-cross-compiler ; then
- ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
- if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
- local header_path=$(echo '#include <linux/version.h>' \
- | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 \
- | grep -o '[^"]*linux/version.h')
- ALT_BUILD_HEADERS=${header_path%/linux/version.h}
- fi
- fi
- fi
- echo "${ALT_BUILD_HEADERS}"
-}
-
alt_libdir() {
echo $(alt_prefix)/$(get_libdir)
}
@@ -798,7 +778,7 @@ eend_KV() {
get_kheader_version() {
printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
- $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \
+ $(tc-getCPP ${CTARGET}) -I "${ESYSROOT}$(alt_headers)" - | \
tail -n 1
}
@@ -1077,7 +1057,7 @@ glibc_do_configure() {
--host=${CTARGET_OPT:-${CTARGET}}
$(use_enable profile)
$(use_with gd)
- --with-headers=$(build_eprefix)$(alt_build_headers)
+ --with-headers="${ESYSROOT}$(alt_headers)"
--prefix="$(host_eprefix)/usr"
--sysconfdir="$(host_eprefix)/etc"
--localstatedir="$(host_eprefix)/var"
@@ -1240,7 +1220,7 @@ glibc_headers_configure() {
--enable-bind-now
--build=${CBUILD_OPT:-${CBUILD}}
--host=${CTARGET_OPT:-${CTARGET}}
- --with-headers=$(build_eprefix)$(alt_build_headers)
+ --with-headers="${ESYSROOT}$(alt_headers)"
--prefix="$(host_eprefix)/usr"
${EXTRA_ECONF}
)
diff --git a/sys-libs/newlib/Manifest b/sys-libs/newlib/Manifest
index 37b686c5c4a1..0eaf7de5113f 100644
--- a/sys-libs/newlib/Manifest
+++ b/sys-libs/newlib/Manifest
@@ -2,7 +2,9 @@ AUX newlib-3.3.0-no-nano-cxx.patch 1338 BLAKE2B ff16751b01784a38dc07aa79120c38f0
AUX newlib-4.3.0.20230120-libc-arm-setjmp-gcc-backwards-compat.patch 2411 BLAKE2B db79f5e534f70bc6338a647a242498d0e175624671c41ae9abf9030b046ffc50e576c7a25fe44e6607cdf42c072995e7d685889ae442097ad1c469919d59936c SHA512 91c684078904a38b0791bf788f48145eff9ccb393a8d1e181d5a66b3e359732576f257bd5908cd02844459cf12bbb2b43fbcd9b9095c36c08e6408aa68be95d1
DIST newlib-4.3.0.20230120.tar.gz 8832922 BLAKE2B b5493f25e44049f4e1222698894e7e67756928062e05f5d16bcd52b2221e5c04a80a9e0cbc3fc6e92d67fe6b3813e06b6d3a6d39e8742e02b8f13ff84d809de1 SHA512 4a06309d36c2255fef8fc8f2d133cafa850f1ed2eddfb27b5d45f5d16af69e0fca829a0b4c9b34af4ed3a28c6fcc929761e0ee823a4229f35c2853d432b5e7ef
DIST newlib-4.4.0.20231231.tar.gz 9022406 BLAKE2B 1df810c7776aa1fe2806682509ab45df642f5e80d6069b7c6ca513b3d820440fc73abdf7505d1f3149d0a07f0c5558a48620d2824f1698c2f1df5f6473105eb4 SHA512 ea3baa0b7c9175aae024f0b7d272be092ef2c07483239a99329203e18a44bc23093d29e0ffcbe14bc591f610f0829eacd646cabb06d1c34aa23239cb1b814b46
+DIST newlib-4.5.0.20241231.tar.gz 9081514 BLAKE2B 8b019d50ef30e736eaf5de8a6ad2f9aee25757162cfc38fca4ad33496b98394292c013d1e3de3309cd81514b3738472405a0841b965b92ec092d2e7f618021fe SHA512 d391ea3ac68ddb722909ef790f81ba4d6c35d9b2e0fcdb029f91a6c47db9ee94a686a2bdff211fb84025e1a317e257acfa59abda3fd2bc6609966798e1c604dc
EBUILD newlib-4.3.0.20230120-r2.ebuild 4519 BLAKE2B 9db3b20c71eb0a64914497fe39df11cada6f60376a1677f8875b10853cfc6264102e314c2ebf34357a700e4549eda6fe3dc969151ecc9339a9d501820cf8b485 SHA512 8fd374c92ed35b6f6ca5d782ca343c6fbce0594f6585fae96f5000da287c78c8f7d15502e7394fdf3890d5865099e3d01ae9a67bc5f009071ac3c78782994d17
EBUILD newlib-4.4.0.20231231.ebuild 4906 BLAKE2B 48d0923da559914a2b36618111eedc6610dbb75c8982596d5f1ff8bd048bb7fa4872ead719f7a81622ee92a51969e96d01c68a4b8b57445d45a4cbf4145054d6 SHA512 d9609c845b667160f289ba2c9d1f36c91a06dc0afad8dcb72c80b231eb0456fb99cb8fdcb9ceaf2d471e331fbf30daa13fa352a6e0ab988d72478681b6998deb
+EBUILD newlib-4.5.0.20241231.ebuild 4906 BLAKE2B 6bc11b707039b319ab93d9fa2585a60feeb9636d393889039737fe7dd1e4e6f2f002839ece0159f16e5577a4c5a12c9fafd612a0913beb7f1cd98b92fafb7ad9 SHA512 e07f3e2122664eaff1b86b8c63f05b256a29141271f347e7c306c602c32ea636a4ab946e7a675ec8345bea4db75ce2895a58426ebc31e33abf0ddf7116c0f72b
EBUILD newlib-9999.ebuild 4906 BLAKE2B 48d0923da559914a2b36618111eedc6610dbb75c8982596d5f1ff8bd048bb7fa4872ead719f7a81622ee92a51969e96d01c68a4b8b57445d45a4cbf4145054d6 SHA512 d9609c845b667160f289ba2c9d1f36c91a06dc0afad8dcb72c80b231eb0456fb99cb8fdcb9ceaf2d471e331fbf30daa13fa352a6e0ab988d72478681b6998deb
MISC metadata.xml 502 BLAKE2B c9a9b25addc0f08e3ce84c063ec9a3a94de8ba15b91dabade89a05e81bc841ea95395a6aa715e0d431338a47973e6d7a203a6ba0c41fba66c743364fb8ce70b6 SHA512 7684d64003c900fff73681b3401de172f0b6278801f7984c2e60773a9a9f6e8788780cb28810b11643db7a37c1529df6d54a8ceac381991c79e9fd344612e445
diff --git a/sys-libs/newlib/newlib-4.5.0.20241231.ebuild b/sys-libs/newlib/newlib-4.5.0.20241231.ebuild
new file mode 100644
index 000000000000..3a1f6a3d13af
--- /dev/null
+++ b/sys-libs/newlib/newlib-4.5.0.20241231.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+inherit flag-o-matic toolchain-funcs
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://sourceware.org/git/newlib-cygwin.git"
+ inherit git-r3
+else
+ SRC_URI="https://sourceware.org/pub/newlib/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+fi
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+ if [[ ${CATEGORY} == cross-* ]] ; then
+ export CTARGET=${CATEGORY#cross-}
+ fi
+fi
+
+DESCRIPTION="Newlib is a C library intended for use on embedded systems"
+HOMEPAGE="https://sourceware.org/newlib/"
+
+LICENSE="NEWLIB LIBGLOSS GPL-2"
+SLOT="0"
+IUSE="nls threads unicode headers-only nano"
+RESTRICT="strip"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.3.0-no-nano-cxx.patch
+)
+
+NEWLIBBUILD="${WORKDIR}/build"
+NEWLIBNANOBUILD="${WORKDIR}/build.nano"
+NEWLIBNANOTMPINSTALL="${WORKDIR}/nano_tmp_install"
+
+CFLAGS_FULL="-ffunction-sections -fdata-sections"
+CFLAGS_NANO="-Os -ffunction-sections -fdata-sections"
+
+pkg_setup() {
+ # Reject newlib-on-glibc type installs
+ if [[ ${CTARGET} == ${CHOST} ]] ; then
+ case ${CHOST} in
+ *-newlib|*-elf) ;;
+ *) die "Use sys-devel/crossdev to build a newlib toolchain" ;;
+ esac
+ fi
+
+ case ${CTARGET} in
+ msp430*)
+ if ver_test $(gcc-version ${CTARGET}) -lt 10.1; then
+ # bug #717610
+ die "gcc for ${CTARGET} has to be 10.1 or above"
+ fi
+ ;;
+ esac
+}
+
+src_configure() {
+ # TODO: we should fix this
+ unset LDFLAGS
+ CHOST=${CTARGET} strip-unsupported-flags
+ CCASFLAGS_ORIG="${CCASFLAGS}"
+ CFLAGS_ORIG="${CFLAGS}"
+
+ local myconf=(
+ # The top-level configure doesn't utilize this flag, but subdirs do,
+ # so autodetection for econf doesn't work. Add ourselves.
+ --disable-dependency-tracking
+ --disable-silent-rules
+ # Disable legacy syscall stub code in newlib. These have been
+ # moved to libgloss for a long time now, so the code in newlib
+ # itself just gets in the way.
+ --disable-newlib-supplied-syscalls
+ )
+ [[ ${CTARGET} == "spu" ]] \
+ && myconf+=( --disable-newlib-multithread ) \
+ || myconf+=( $(use_enable threads newlib-multithread) )
+
+ mkdir -p "${NEWLIBBUILD}"
+ cd "${NEWLIBBUILD}"
+
+ export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_FULL}"
+ export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_FULL}"
+
+ [[ ${CTARGET} == nvptx* ]] && {
+ CFLAGS_FOR_TARGET+=" -Wa,--no-verify"
+ CCASFLAGS+=" -Wa,--no-verify"
+ }
+
+ ECONF_SOURCE=${S} \
+ econf \
+ $(use_enable unicode newlib-mb) \
+ $(use_enable nls) \
+ "${myconf[@]}"
+
+ # Build newlib-nano beside newlib (original)
+ # Based on https://tracker.debian.org/media/packages/n/newlib/rules-2.1.0%2Bgit20140818.1a8323b-2
+ if use nano ; then
+ mkdir -p "${NEWLIBNANOBUILD}" || die
+ cd "${NEWLIBNANOBUILD}" || die
+ export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_NANO}"
+ export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_NANO}"
+
+ [[ ${CTARGET} == nvptx* ]] && {
+ CFLAGS_FOR_TARGET+=" -Wa,--no-verify"
+ CCASFLAGS+=" -Wa,--no-verify"
+ }
+
+ ECONF_SOURCE=${S} \
+ econf \
+ $(use_enable unicode newlib-mb) \
+ $(use_enable nls) \
+ --enable-newlib-reent-small \
+ --disable-newlib-fvwrite-in-streamio \
+ --disable-newlib-fseek-optimization \
+ --disable-newlib-wide-orient \
+ --enable-newlib-nano-malloc \
+ --disable-newlib-unbuf-stream-opt \
+ --enable-lite-exit \
+ --enable-newlib-global-atexit \
+ --enable-newlib-nano-formatted-io \
+ "${myconf[@]}"
+ fi
+}
+
+src_compile() {
+ export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_FULL}"
+ export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_FULL}"
+
+ [[ ${CTARGET} == nvptx* ]] && {
+ CFLAGS_FOR_TARGET+=" -Wa,--no-verify"
+ CCASFLAGS+=" -Wa,--no-verify"
+ }
+
+ emake -C "${NEWLIBBUILD}"
+
+ if use nano ; then
+ export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_NANO}"
+ export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_NANO}"
+
+ [[ ${CTARGET} == nvptx* ]] && {
+ CFLAGS_FOR_TARGET+=" -Wa,--no-verify"
+ CCASFLAGS+=" -Wa,--no-verify"
+ }
+
+ emake -C "${NEWLIBNANOBUILD}"
+ fi
+}
+
+src_install() {
+ cd "${NEWLIBBUILD}" || die
+ emake DESTDIR="${D}" install
+
+ if use nano ; then
+ cd "${NEWLIBNANOBUILD}" || die
+ emake DESTDIR="${NEWLIBNANOTMPINSTALL}" install
+ # Rename nano lib* files to lib*_nano and move to the real ${D}
+ local nanolibfiles=""
+ nanolibfiles=$(find "${NEWLIBNANOTMPINSTALL}" -regex ".*/lib\(c\|g\|m\|rdimon\|gloss\)\.a" -print)
+ for f in ${nanolibfiles}; do
+ local l="${f##${NEWLIBNANOTMPINSTALL}}"
+ mv -v "${f}" "${D}/${l%%\.a}_nano.a" || die
+ done
+
+ # Move newlib-nano's version of newlib.h to newlib-nano/newlib.h
+ mkdir -p "${ED}/usr/${CTARGET}/include/newlib-nano" || die
+ mv "${NEWLIBNANOTMPINSTALL}/${EPREFIX}/usr/${CTARGET}/include/newlib.h" \
+ "${ED}/usr/${CTARGET}/include/newlib-nano/newlib.h" || die
+ fi
+
+ # minor hack to keep things clean
+ rm -rf "${D}"/usr/share/info || die
+ rm -rf "${D}"/usr/info || die
+}