diff options
author | Wilken Gottwalt | 2023-08-05 07:26:18 +0200 |
---|---|---|
committer | Wilken Gottwalt | 2023-08-05 07:26:18 +0200 |
commit | 1baae65b69d2092accb018a501142cb1f8d8339b (patch) | |
tree | 953b458e612763834f2d55869ad5d760077a8aa0 | |
parent | b6633ff7bad86aff1852e7242326c14292041082 (diff) | |
download | aur-1baae65b69d2092accb018a501142cb1f8d8339b.tar.gz |
update to version 2.38
- PKGBUILD cleanup
- changed packaging to avoid complaining by makepkg
-rw-r--r-- | .SRCINFO | 21 | ||||
-rw-r--r-- | .gitignore | 7 | ||||
-rw-r--r-- | PKGBUILD | 73 | ||||
-rw-r--r-- | reenable_DT_HASH.patch | 145 | ||||
-rw-r--r-- | sdt.h | 2 |
5 files changed, 42 insertions, 206 deletions
@@ -1,16 +1,15 @@ pkgbase = arm-linux-gnueabihf-glibc - pkgdesc = GNU C Library (arm-linux-gnueabihf) - pkgver = 2.36 + pkgdesc = GNU C Library + pkgver = 2.38 pkgrel = 1 url = https://www.gnu.org/software/libc/ arch = any license = GPL license = LGPL - makedepends = arm-linux-gnueabihf-gcc-stage2>=12.1.0-1 + makedepends = arm-linux-gnueabihf-gcc-stage2>=13.2.0 makedepends = python - makedepends = gperf - depends = arm-linux-gnueabihf-linux-api-headers>=5.14.9-1 - provides = arm-linux-gnueabihf-glibc-headers=2.36 + depends = arm-linux-gnueabihf-linux-api-headers>=6.1 + provides = arm-linux-gnueabihf-glibc-headers=2.38 provides = arm-linux-gnueabihf-eglibc conflicts = arm-linux-gnueabihf-glibc-headers conflicts = arm-linux-gnueabihf-eglibc @@ -19,17 +18,15 @@ pkgbase = arm-linux-gnueabihf-glibc options = !strip options = !lto options = staticlibs - source = https://ftp.gnu.org/gnu/glibc/glibc-2.36.tar.xz - source = https://ftp.gnu.org/gnu/glibc/glibc-2.36.tar.xz.sig + source = https://ftp.gnu.org/gnu/glibc/glibc-2.38.tar.xz + source = https://ftp.gnu.org/gnu/glibc/glibc-2.38.tar.xz.sig source = sdt.h source = sdt-config.h - source = reenable_DT_HASH.patch validpgpkeys = 7273542B39962DF7B299931416792B4EA25340F8 validpgpkeys = BC7C7372637EC10C57D7AA6579C43DFBF1CF2187 - md5sums = 00e9b89e043340f688bc93ec03239b57 + md5sums = 778cce0ea6bf7f84ca8caacf4a01f45b md5sums = SKIP - md5sums = 91fec3b7e75510ae2ac42533aa2e695e + md5sums = 55e32bca61fcf621143090fc33cde970 md5sums = 680df504c683640b02ed4a805797c0b2 - md5sums = 4a3e4243338481bb5e70b74281347ae8 pkgname = arm-linux-gnueabihf-glibc diff --git a/.gitignore b/.gitignore deleted file mode 100644 index c14ca8a5b418..000000000000 --- a/.gitignore +++ /dev/null @@ -1,7 +0,0 @@ -*.pkg.* -src/ -pkg/ -glibc-*.tar.xz -*.sig -*.sign -*.part @@ -1,50 +1,37 @@ -# Maintainer: Vyacheslav Razykov <v.razykov@gmail.com> # Contributor: Alexander 'hatred' Drozdov <adrozdoff@gmail.com> # Contributor: toha257 <toha257@gmail.com> # Contributor: Allan McRae <allan@archlinux.org> # Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org> # Contributor: Kevin Mihelich <kevin@archlinuxarm.org> # Contributor: Tavian Barnes <tavianator@tavianator.com> +# Contributor: Vyacheslav Razykov <v.razykov@gmail.com> +# Maintainer: Wilken Gottwalt <wilken dot gottwalt at posteo dot net> -_target="arm-linux-gnueabihf" +_target=arm-linux-gnueabihf pkgname=${_target}-glibc -pkgver=2.36 +pkgver=2.38 pkgrel=1 -pkgdesc="GNU C Library (${_target})" +pkgdesc="GNU C Library" arch=('any') url="https://www.gnu.org/software/libc/" license=(GPL LGPL) -depends=("${_target}-linux-api-headers>=5.14.9-1") -makedepends=("${_target}-gcc-stage2>=12.1.0-1" python gperf) +depends=("${_target}-linux-api-headers>=6.1") +makedepends=("${_target}-gcc-stage2>=13.2.0" python) provides=("${_target}-glibc-headers=${pkgver}" "${_target}-eglibc") conflicts=("${_target}-glibc-headers" "${_target}-eglibc") replaces=("${_target}-glibc-headers") options=(!buildflags !strip !lto staticlibs) source=(https://ftp.gnu.org/gnu/glibc/glibc-${pkgver}.tar.xz{,.sig} - sdt.h sdt-config.h - reenable_DT_HASH.patch) + sdt.h sdt-config.h) validpgpkeys=(7273542B39962DF7B299931416792B4EA25340F8 # Carlos O'Donell BC7C7372637EC10C57D7AA6579C43DFBF1CF2187) # Siddhesh Poyarekar -md5sums=('00e9b89e043340f688bc93ec03239b57' +md5sums=('778cce0ea6bf7f84ca8caacf4a01f45b' 'SKIP' - '91fec3b7e75510ae2ac42533aa2e695e' - '680df504c683640b02ed4a805797c0b2' - '4a3e4243338481bb5e70b74281347ae8') + '55e32bca61fcf621143090fc33cde970' + '680df504c683640b02ed4a805797c0b2') prepare() { mkdir -p glibc-build - - [[ -d glibc-${pkgver} ]] && ln -s glibc-${pkgver} glibc - cd glibc - - local i; for i in ${source[@]}; do - case ${i%::*} in - *.patch) - echo "Applying ${i}" - patch -p1 -i "${srcdir}/${i}" - ;; - esac - done } build() { @@ -54,10 +41,10 @@ build() { --enable-add-ons --enable-bind-now --enable-lock-elision - --disable-multi-arch --enable-stack-protector=strong --enable-stackguard-randomization --enable-systemtap + --disable-multi-arch --disable-profile --disable-werror ) @@ -75,7 +62,7 @@ build() { # CFLAGS="${CFLAGS/-fno-plt/} -g -O2" CXXFLAGS="${CXXFLAGS/-fno-plt/} -g -O2" - LDFLAGS=${LDFLAGS/,-z,now/} + LDFLAGS="${LDFLAGS/,-z,now/}" export BUILD_CC=gcc export CC=${_target}-gcc @@ -83,13 +70,13 @@ build() { export AR=${_target}-ar export RANLIB=${_target}-ranlib - "${srcdir}/glibc-${pkgver}/configure" \ - --libdir=/lib \ - --libexecdir=/lib \ - ${_configure_flags[@]} \ - --target=${_target} \ - --host=${_target} \ - --build=${CHOST} + ../glibc-${pkgver}/configure \ + --target=${_target} \ + --host=${_target} \ + --build=${CHOST} \ + --libdir=/lib \ + --libexecdir=/lib \ + ${_configure_flags[@]} echo "build-programs=no" >> configparms make @@ -98,16 +85,20 @@ build() { package() { cd glibc-build - make install_root="${pkgdir}/usr/${_target}" install + make install_root="${pkgdir}"/usr/"${_target}" install - mkdir -p "${pkgdir}/usr/${_target}/usr" - ln -s ../{include,lib} "${pkgdir}/usr/${_target}/usr" + mkdir -p "${pkgdir}"/usr/"${_target}"/usr + ln -s ../{include,lib} "${pkgdir}"/usr/"${_target}"/usr - # Remove unneeded for compilation files - rm -rf "${pkgdir}/usr/${_target}/"{bin,sbin,etc,share,var} + # remove unneeded for compilation files + rm -rf "${pkgdir}"/usr/"${_target}"/{bin,sbin,etc,share,var} - # Provide tracing probes to libstdc++ for exceptions, possibly for other + # provide tracing probes to libstdc++ for exceptions, possibly for other # libraries too. Useful for gdb's catch command. - install -Dm644 "${srcdir}/sdt.h" "${pkgdir}/usr/${_target}/include/sys/sdt.h" - install -Dm644 "${srcdir}/sdt-config.h" "${pkgdir}/usr/${_target}/include/sys/sdt-config.h" + install -Dm644 "${srcdir}"/sdt.h "${pkgdir}"/usr/"${_target}"/include/sys/sdt.h + install -Dm644 "${srcdir}"/sdt-config.h "${pkgdir}"/usr/"${_target}"/include/sys/sdt-config.h + + # strip it manually to prevent makepkg complaining about srcdir references + strip "${pkgdir}"/usr/"${_target}"/lib/* 2>/dev/null || true + find "${pkgdir}"/usr/"${_target}"/lib -type f -exec /usr/bin/"${_target}"-strip --strip-unneeded {} \; 2>/dev/null || true } diff --git a/reenable_DT_HASH.patch b/reenable_DT_HASH.patch deleted file mode 100644 index f828b011bd9f..000000000000 --- a/reenable_DT_HASH.patch +++ /dev/null @@ -1,145 +0,0 @@ -From e47de5cb2d4dbecb58f569ed241e8e95c568f03c Mon Sep 17 00:00:00 2001 -From: Florian Weimer <fweimer@redhat.com> -Date: Fri, 29 Apr 2022 16:37:51 +0200 -Subject: [PATCH] Do not use --hash-style=both for building glibc shared - objects - -The comment indicates that --hash-style=both was used to maintain -compatibility with static dlopen, but we had many internal ABI -changes since then, so this compatiblity does not add value anymore. - -Reviewed-by: Carlos O'Donell <carlos@redhat.com> ---- - Makeconfig | 9 +++++++++ - Makerules | 7 +++++++ - config.make.in | 1 + - configure | 28 ++++++++++++++++++++++++++++ - configure.ac | 16 ++++++++++++++++ - 5 files changed, 61 insertions(+) - -diff --git b/Makeconfig a/Makeconfig -index 760f14e92f..0aa5fb0099 100644 ---- b/Makeconfig -+++ a/Makeconfig -@@ -362,6 +362,15 @@ relro-LDFLAGS = -Wl,-z,relro - LDFLAGS.so += $(relro-LDFLAGS) - LDFLAGS-rtld += $(relro-LDFLAGS) - -+ifeq (yes,$(have-hash-style)) -+# For the time being we unconditionally use 'both'. At some time we -+# should declare statically linked code as 'out of luck' and compile -+# with --hash-style=gnu only. -+hashstyle-LDFLAGS = -Wl,--hash-style=both -+LDFLAGS.so += $(hashstyle-LDFLAGS) -+LDFLAGS-rtld += $(hashstyle-LDFLAGS) -+endif -+ - ifeq (no,$(build-pie-default)) - pie-default = $(no-pie-ccflag) - else # build-pie-default -diff --git b/Makerules a/Makerules -index 354528b8c7..428464f092 100644 ---- b/Makerules -+++ a/Makerules -@@ -557,6 +557,13 @@ $(common-objpfx)shlib.lds: $(common-objpfx)config.make $(..)Makerules - -Wl,--verbose 2>/dev/null | \ - sed > $@T \ - -e '/^=========/,/^=========/!d;/^=========/d' \ -+ $(if $(filter yes,$(have-hash-style)), \ -+ -e 's/^.*\.gnu\.hash[ ]*:.*$$/ .note.ABI-tag : { *(.note.ABI-tag) } &/' \ -+ -e '/^[ ]*\.hash[ ]*:.*$$/{h;d;}' \ -+ -e '/DATA_SEGMENT_ALIGN/{H;g}' \ -+ , \ -+ -e 's/^.*\.hash[ ]*:.*$$/ .note.ABI-tag : { *(.note.ABI-tag) } &/' \ -+ ) \ - -e 's/^.*\*(\.dynbss).*$$/& \ - PROVIDE(__start___libc_freeres_ptrs = .); \ - *(__libc_freeres_ptrs) \ -diff --git b/config.make.in a/config.make.in -index fff4c78dd0..bf728c71c0 100644 ---- b/config.make.in -+++ a/config.make.in -@@ -70,6 +70,7 @@ have-libcap = @have_libcap@ - have-cc-with-libunwind = @libc_cv_cc_with_libunwind@ - fno-unit-at-a-time = @fno_unit_at_a_time@ - bind-now = @bindnow@ -+have-hash-style = @libc_cv_hashstyle@ - use-default-link = @use_default_link@ - have-cxx-thread_local = @libc_cv_cxx_thread_local@ - have-loop-to-function = @libc_cv_cc_loop_to_function@ -diff --git b/configure a/configure -index 716dc041b6..5a730dc5fc 100755 ---- b/configure -+++ a/configure -@@ -622,6 +622,7 @@ libc_cv_cc_nofma - libc_cv_mtls_dialect_gnu2 - fno_unit_at_a_time - libc_cv_has_glob_dat -+libc_cv_hashstyle - libc_cv_fpie - libc_cv_z_execstack - ASFLAGS_config -@@ -6193,6 +6194,33 @@ $as_echo "$libc_cv_fpie" >&6; } - - - -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --hash-style option" >&5 -+$as_echo_n "checking for --hash-style option... " >&6; } -+if ${libc_cv_hashstyle+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ cat > conftest.c <<EOF -+int _start (void) { return 42; } -+EOF -+if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS $no_ssp -+ -fPIC -shared -o conftest.so conftest.c -+ -Wl,--hash-style=both -nostdlib 1>&5' -+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -+ test $ac_status = 0; }; } -+then -+ libc_cv_hashstyle=yes -+else -+ libc_cv_hashstyle=no -+fi -+rm -f conftest* -+fi -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_hashstyle" >&5 -+$as_echo "$libc_cv_hashstyle" >&6; } -+ -+ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLOB_DAT reloc" >&5 - $as_echo_n "checking for GLOB_DAT reloc... " >&6; } - if ${libc_cv_has_glob_dat+:} false; then : -diff --git b/configure.ac a/configure.ac -index d08ad4d64e..a045f6608e 100644 ---- b/configure.ac -+++ a/configure.ac -@@ -1360,6 +1360,22 @@ LIBC_TRY_CC_OPTION([-fpie], [libc_cv_fpie=yes], [libc_cv_fpie=no]) - - AC_SUBST(libc_cv_fpie) - -+AC_CACHE_CHECK(for --hash-style option, -+ libc_cv_hashstyle, [dnl -+cat > conftest.c <<EOF -+int _start (void) { return 42; } -+EOF -+if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS $no_ssp -+ -fPIC -shared -o conftest.so conftest.c -+ -Wl,--hash-style=both -nostdlib 1>&AS_MESSAGE_LOG_FD]) -+then -+ libc_cv_hashstyle=yes -+else -+ libc_cv_hashstyle=no -+fi -+rm -f conftest*]) -+AC_SUBST(libc_cv_hashstyle) -+ - AC_CACHE_CHECK(for GLOB_DAT reloc, - libc_cv_has_glob_dat, [dnl - cat > conftest.c <<EOF --- -2.37.1 - @@ -116,7 +116,7 @@ struct __sdt_type { static const bool __sdt_signed = false; }; - + #define __SDT_ALWAYS_SIGNED(T) \ template<> struct __sdt_type<T> { static const bool __sdt_signed = true; }; #define __SDT_COND_SIGNED(T,CT) \ |