diff --git a/binutils/PKGBUILD b/binutils/PKGBUILD index d3a0598..ddb9d8b 100644 --- a/binutils/PKGBUILD +++ b/binutils/PKGBUILD @@ -6,9 +6,9 @@ #-----------------------------------------| DESCRIPTION |--------------------------------------- pkgname=binutils -pkgver=2.41 -_commit=31b78cc991781265d9404bd55151691bedd6d556 -pkgrel=03 +pkgver=2.42 +_commit=48942a586ebc056bd059d3f63a5eed3a2fa46ab3 +pkgrel=01 pkgdesc='A set of programs to assemble and manipulate binary and object files' #url='https://www.gnu.org/software/binutils' url='https://ftp.gnu.org/gnu/binutils' @@ -133,12 +133,13 @@ EOS arch=(x86_64) -license=('GPL3' 'GPL' 'FDL1.3' 'custom:FSFAP') +#license=('GPL3' 'GPL' 'FDL1.3' 'custom:FSFAP') +license=(GPL-2.0-or-later GPL-3.0-or-later LGPL-2.0-or-later LGPL-3.0-or-later GFDL-1.3 FSFAP) validpgpkeys=(3A24BC1E8FB409FA9F14371813FCEF89DD9E3C4F) sha256sums=(SKIP 2d430b66f84a19c154725ec535280c493be1d34f1a90f95208dce02fecd0e4e4) # gold-warn-unsupported.patch -## 2fe847fbc4bb048ceda5e9d5e3efebad5efec11527886f0eb94dbf17b6d0b8fe binutils-2.41-03-x86_64.pkg.tar.lz +## 0ea07fa6957a85c192098759bcce2fe55fb83e15f5ca0100030bcc2caf0a0b95 binutils-2.42-01-x86_64.pkg.tar.lz diff --git a/binutils/PKGBUILD-arch b/binutils/PKGBUILD-arch index f1b8129..d449051 100644 --- a/binutils/PKGBUILD-arch +++ b/binutils/PKGBUILD-arch @@ -6,13 +6,13 @@ # toolchain build order: linux-api-headers->glibc->binutils->gcc->glibc->binutils->gcc pkgname=binutils -pkgver=2.41 -_commit=31b78cc991781265d9404bd55151691bedd6d556 -pkgrel=3 +pkgver=2.42 +_commit=48942a586ebc056bd059d3f63a5eed3a2fa46ab3 +pkgrel=1 pkgdesc='A set of programs to assemble and manipulate binary and object files' arch=(x86_64) url='https://www.gnu.org/software/binutils/' -license=('GPL3' 'GPL' 'FDL1.3' 'custom:FSFAP') +license=(GPL-2.0-or-later GPL-3.0-or-later LGPL-2.0-or-later LGPL-3.0-or-later GFDL-1.3 FSFAP) depends=(glibc jansson libelf zlib zstd) makedepends=(git) checkdepends=(dejagnu debuginfod bc) diff --git a/curl/PKGBUILD b/curl/PKGBUILD index cfbcb8c..b9e2116 100644 --- a/curl/PKGBUILD +++ b/curl/PKGBUILD @@ -7,8 +7,8 @@ pkgbase=curl pkgname=(curl libcurl-compat libcurl-gnutls) -_tag='55b5fafb094ebe07ca8a5d4f79813c8b40670795' # git rev-parse v${_tag_name} -_tag_name='8_5_0' +_tag='8cd1397d3c5c9b1526c8d74530266a7a9a22294b' # git rev-parse v${_tag_name} +_tag_name='8_6_0' pkgver="${_tag_name//_/.}" pkgrel=01 pkgdesc='command line tool and library for transferring data with URLs - w/o ipv6 & zstd' @@ -16,9 +16,8 @@ url='https://curl.se' #options=(debug) # uncomment this to produce debug package depends=('ca-certificates' 'brotli' 'libbrotlidec.so' 'krb5' 'libgssapi_krb5.so' 'libidn2' 'libidn2.so' 'libnghttp2' 'libpsl' 'libpsl.so' 'libssh2' 'libssh2.so' - 'openssl' 'zlib') + 'zlib') makedepends=('patchelf' 'git') -provides=('libcurl.so') #source=("https://curl.haxx.se/download/${pkgname}-${pkgver}.tar.gz"{,.asc} # '0001-Revert-http2-minor-buffer-and-error-path-fixes.patch') source=("git+https://github.com/bagder/curl.git#tag=${_tag}?signed") @@ -97,6 +96,7 @@ build() { --disable-versioned-symbols sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool make -C lib + patchelf --set-soname 'libcurl-compat.so.4' ./lib/.libs/libcurl.so # build libcurl-gnutls cd "${srcdir}"/build-curl-gnutls @@ -116,6 +116,9 @@ build() { package_curl() { cd build-curl + depends+=('openssl' 'libcrypto.so' 'libssl.so') + provides=('libcurl.so') + make DESTDIR="${pkgdir}" install make DESTDIR="${pkgdir}" install -C scripts @@ -128,7 +131,7 @@ package_curl() { package_libcurl-compat() { pkgdesc='command line tool and library for transferring data with URLs (no versioned symbols)' - depends=('curl' 'openssl') + depends=('curl') provides=('libcurl-compat.so') cd "${srcdir}"/build-curl-compat @@ -139,6 +142,7 @@ package_libcurl-compat() { rm "${pkgdir}"/usr/lib/libcurl.{a,so}* for version in 3 4.0.0 4.1.0 4.2.0 4.3.0 4.4.0 4.5.0 4.6.0 4.7.0; do ln -s libcurl-compat.so.4.8.0 "${pkgdir}"/usr/lib/libcurl.so.${version} + ln -s libcurl-compat.so.4.8.0 "${pkgdir}"/usr/lib/libcurl-compat.so.${version} done install -dm 0755 "${pkgdir}"/usr/share/licenses @@ -175,7 +179,7 @@ validpgpkeys=('27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2') # Daniel Stenberg sha256sums=(SKIP) -## 9f099f16009f2c7d412290a8b134d83055e35796189b3881f3b0b3b7bd61257d curl-8.5.0-01-x86_64.pkg.tar.lz -## d7f4cf687ec3bca5408fd86fa53e1a9e0546926484e04c30967afdf7692b4d37 libcurl-compat-8.5.0-01-x86_64.pkg.tar.lz -## fc904c2ae259193ba16ac44898ac31319cb772f89f43fceca289ed9a9e5d6018 libcurl-gnutls-8.5.0-01-x86_64.pkg.tar.lz +## b0715436af8cb7b3db726eb55bd2515e6553e77a73d2c87e0b624ac1d86769a5 curl-8.6.0-01-x86_64.pkg.tar.lz +## cb33d7c85d89ed5ddae60c0159a3b2added8ffd8dd2d9bb2500d6f3cd670c511 libcurl-compat-8.6.0-01-x86_64.pkg.tar.lz +## d720971c8eaa3a825ac2731730b7ef2a6a9533d36381aaccb074551603bb1021 libcurl-gnutls-8.6.0-01-x86_64.pkg.tar.lz diff --git a/curl/PKGBUILD-arch b/curl/PKGBUILD-arch index 381544e..5833432 100644 --- a/curl/PKGBUILD-arch +++ b/curl/PKGBUILD-arch @@ -6,19 +6,24 @@ pkgbase=curl pkgname=(curl libcurl-compat libcurl-gnutls) -_tag='55b5fafb094ebe07ca8a5d4f79813c8b40670795' # git rev-parse v${_tag_name} -_tag_name='8_5_0' +_tag='8cd1397d3c5c9b1526c8d74530266a7a9a22294b' # git rev-parse v${_tag_name} +_tag_name='8_6_0' pkgver="${_tag_name//_/.}" pkgrel=1 pkgdesc='command line tool and library for transferring data with URLs' arch=('x86_64') url='https://curl.se/' license=('MIT') -depends=('ca-certificates' 'brotli' 'libbrotlidec.so' 'krb5' 'libgssapi_krb5.so' - 'libidn2' 'libidn2.so' 'libnghttp2' 'libpsl' 'libpsl.so' 'libssh2' 'libssh2.so' - 'openssl' 'zlib' 'zstd' 'libzstd.so') +depends=('ca-certificates' + 'brotli' 'libbrotlidec.so' + 'krb5' 'libgssapi_krb5.so' + 'libidn2' 'libidn2.so' + 'libnghttp2' 'libnghttp2.so' + 'libpsl' 'libpsl.so' + 'libssh2' 'libssh2.so' + 'zlib' 'libz.so' + 'zstd' 'libzstd.so') makedepends=('git' 'patchelf') -provides=('libcurl.so') validpgpkeys=('27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2') # Daniel Stenberg source=("git+https://github.com/bagder/curl.git#tag=${_tag}?signed") sha512sums=('SKIP') @@ -91,6 +96,7 @@ build() { --disable-versioned-symbols sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool make -C lib + patchelf --set-soname 'libcurl-compat.so.4' ./lib/.libs/libcurl.so # build libcurl-gnutls cd "${srcdir}"/build-curl-gnutls @@ -106,6 +112,9 @@ build() { } package_curl() { + depends+=('openssl' 'libcrypto.so' 'libssl.so') + provides=('libcurl.so') + cd build-curl make DESTDIR="${pkgdir}" install @@ -119,7 +128,7 @@ package_curl() { package_libcurl-compat() { pkgdesc='command line tool and library for transferring data with URLs (no versioned symbols)' - depends=('curl' 'openssl') + depends=('curl') provides=('libcurl-compat.so') cd "${srcdir}"/build-curl-compat @@ -130,6 +139,7 @@ package_libcurl-compat() { rm "${pkgdir}"/usr/lib/libcurl.{a,so}* for version in 3 4.0.0 4.1.0 4.2.0 4.3.0 4.4.0 4.5.0 4.6.0 4.7.0; do ln -s libcurl-compat.so.4.8.0 "${pkgdir}"/usr/lib/libcurl.so.${version} + ln -s libcurl-compat.so.4.8.0 "${pkgdir}"/usr/lib/libcurl-compat.so.${version} done install -dm 0755 "${pkgdir}"/usr/share/licenses diff --git a/fakeroot/PKGBUILD b/fakeroot/PKGBUILD index c0c076f..28094a9 100644 --- a/fakeroot/PKGBUILD +++ b/fakeroot/PKGBUILD @@ -7,7 +7,7 @@ pkgname=fakeroot pkgver=1.33 -pkgrel=01 +pkgrel=02 pkgdesc='Tool for simulating superuser privileges w/o systemd' url='https://tracker.debian.org/pkg/fakeroot' groups=( jobbot ) @@ -40,11 +40,12 @@ package() { cd $pkgname-$pkgver make DESTDIR="$pkgdir" install - install -dm0755 "$pkgdir/etc/ld.so.conf.d/" - echo '/usr/lib/libfakeroot' > "$pkgdir/etc/ld.so.conf.d/fakeroot.conf" + install -dm0755 "$pkgdir/usr/lib/ld.so.conf.d/" + echo '/usr/lib/libfakeroot' > "$pkgdir/usr/lib/ld.so.conf.d/fakeroot.conf" # install README for sysv/tcp usage install -Dm0644 README "$pkgdir/usr/share/doc/$pkgname/README" + } #---- arch license gpg-key & sha256sums ---- @@ -55,5 +56,6 @@ license=('GPL') sha256sums=(e157d8e5c64d3a755707791e9be93296c6d249d5c4478bf941b675d49c47757d) # fakeroot_1.33.orig.tar.gz -## 101f19014879773d41b1793e582c5033deddfcd8c4ad06f47cbc4cf129aef846 fakeroot-1.33-01-x86_64.pkg.tar.lz +## 9891164d2e10204c8528d36d57c31646d7787d602941e5877cf3f86508289836 fakeroot-1.33-02-x86_64.pkg.tar.lz + diff --git a/fakeroot/PKGBUILD-arch b/fakeroot/PKGBUILD-arch index 2394dd4..8ebc1bd 100644 --- a/fakeroot/PKGBUILD-arch +++ b/fakeroot/PKGBUILD-arch @@ -4,7 +4,7 @@ pkgname=fakeroot pkgver=1.33 -pkgrel=1 +pkgrel=2 pkgdesc='Tool for simulating superuser privileges' arch=('x86_64') license=('GPL') @@ -39,8 +39,8 @@ package() { cd $pkgname-$pkgver make DESTDIR="$pkgdir" install - install -dm0755 "$pkgdir/etc/ld.so.conf.d/" - echo '/usr/lib/libfakeroot' > "$pkgdir/etc/ld.so.conf.d/fakeroot.conf" + install -dm0755 "$pkgdir/usr/lib/ld.so.conf.d/" + echo '/usr/lib/libfakeroot' > "$pkgdir/usr/lib/ld.so.conf.d/fakeroot.conf" # install README for sysv/tcp usage install -Dm0644 README "$pkgdir/usr/share/doc/$pkgname/README" diff --git a/gcc/PKGBUILD b/gcc/PKGBUILD index 66b8cf6..bb87192 100644 --- a/gcc/PKGBUILD +++ b/gcc/PKGBUILD @@ -12,11 +12,11 @@ # kernel and strange sourcing. At least the build environment and tools will be more consistent. # Unfortunately we have no extra time to research the evolution of the latest kernels. -pkgname=(gcc gcc-libs lib32-gcc-libs gcc-fortran gcc-objc gcc-ada gcc-go gcc-d lto-dump libgccjit) +pkgname=(gcc gcc-libs lib32-gcc-libs gcc-ada gcc-d gcc-fortran gcc-go gcc-m2 gcc-objc lto-dump libgccjit) pkgver=13.2.1 _majorver=${pkgver%%.*} _commit=860b0f0ef787f756c0e293671b4c4622dff63a79 # 13.2.1 -pkgrel=03 +pkgrel=04 pkgdesc='The GNU Compiler Collection' url='https://gcc.gnu.org' makedepends=( @@ -47,7 +47,8 @@ _libdir=usr/lib/gcc/$CHOST/${pkgver%%+*} source=(git+https://sourceware.org/git/gcc.git#commit=${_commit} c89 c99 - gcc-ada-repro.patch) + gcc-ada-repro.patch + https://github.com/llvm/llvm-project/commit/fb77ca05ffb4f8e666878f2f6718a9fb4d686839.patch) prepare() { [[ ! -d gcc ]] && ln -s gcc-${pkgver/+/-} gcc @@ -62,6 +63,9 @@ prepare() { # # D hacks # patch -Np1 -i "$srcdir/gdc_phobos_path.patch" + #ASan: move allocator base to avoid conflict with high-entropy ASLR for x86-64 Linux' + patch -Np3 < "$srcdir/fb77ca05ffb4f8e666878f2f6718a9fb4d686839.patch" -d libsanitizer/ + # Reproducible gcc-ada patch -Np0 < "$srcdir/gcc-ada-repro.patch" @@ -110,7 +114,7 @@ build() { CXXFLAGS=${CXXFLAGS/-Werror=format-security/} "$srcdir/gcc/configure" \ - --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d \ + --enable-languages=ada,c,c++,d,fortran,go,lto,m2,objc,obj-c++ \ --enable-bootstrap \ "${_confflags[@]:?_confflags unset}" @@ -456,10 +460,28 @@ package_gcc-d() { "$pkgdir/usr/share/licenses/$pkgname/" } +package_gcc-m2() { + pkgdesc='Modula-2 frontend for GCC' + depends=("gcc=$pkgver-$pkgrel" libisl.so) + + cd gcc-build + make -C gcc DESTDIR="$pkgdir" m2.install-{common,man,info} + + install -Dm755 gcc/cc1gm2 "$pkgdir/$_libdir"/cc1gm2 + install -Dm755 gcc/gm2 "$pkgdir"/usr/bin/gm2 + install -Dm644 gcc/plugin/m2rte.so "$pkgdir/$_libdir"/plugin/m2rte.so + + make -C $CHOST/libgm2 DESTDIR="$pkgdir" install + + # Install Runtime Library Exception + install -d "$pkgdir/usr/share/licenses/$pkgname/" + ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ + "$pkgdir/usr/share/licenses/$pkgname/" +} + #package_gcc-rust() { # pkgdesc="Rust frontend for GCC" # depends=("gcc=$pkgver-$pkgrel" libisl.so) -# replaces=(gcc-rust-git) # # cd gcc-build # make -C gcc DESTDIR="$pkgdir" rust.install-{common,man,info} @@ -503,7 +525,7 @@ package_libgccjit() { arch=(x86_64) -license=(GPL LGPL FDL custom) +license=(GPL-3.0-with-GCC-exception GFDL-1.3-or-later) validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux.org 86CFFCA918CF3AF47147588051E8B148A9999C34 # evangelos@foutrelis.com @@ -511,21 +533,21 @@ validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux. D3A93CAD751C2AF4F8C7AD516C35B99309B5FA62) # Jakub Jelinek sha256sums=(SKIP - de48736f6e4153f03d0a5d38ceb6c6fdb7f054e8f47ddd6af0a3dbf14f27b931 # c89 - 2513c6d9984dd0a2058557bf00f06d8d5181734e41dcfe07be7ed86f2959622a # c99 - 1773f5137f08ac1f48f0f7297e324d5d868d55201c03068670ee4602babdef2f) # gcc-ada-repro.patch + de48736f6e4153f03d0a5d38ceb6c6fdb7f054e8f47ddd6af0a3dbf14f27b931 # c89 + 2513c6d9984dd0a2058557bf00f06d8d5181734e41dcfe07be7ed86f2959622a # c99 + 1773f5137f08ac1f48f0f7297e324d5d868d55201c03068670ee4602babdef2f # gcc-ada-repro.patch + 5ede1f5fec5b664428412a0849b28895be1c8d8982d3c0d246a4e95fd4730d65) # fb77ca05ffb4f8e666878f2f6718a9fb4d686839.patch -## -#450cf52260a57bf542db20e129302e30d5aa9af5e0fdd0349b70bd151913480d gcc-13.2.1-03-x86_64.pkg.tar.lz -#539c101ef11cf4c6bae5b50fb1fca3e0785b57ae85a6c9adaaa52793d419b45d gcc-ada-13.2.1-03-x86_64.pkg.tar.lz -#085478acd7463fd8359b2c3e91e72501ebac3a3a4449d3b45b64a4d42cb52c8d gcc-d-13.2.1-03-x86_64.pkg.tar.lz -#47fc069f62c125e70904c9b12510a48ca6bb0ef656767c14df38026bd5b78c9b gcc-fortran-13.2.1-03-x86_64.pkg.tar.lz -#d2b135807dc553323e32fe55febab3dca997f3eb7f3fef0f0341fadbed78b829 gcc-go-13.2.1-03-x86_64.pkg.tar.lz -#a6f51a02682aa1131605577c67447b13a8e9361d8f2c5aafee46149daa23186e gcc-libs-13.2.1-03-x86_64.pkg.tar.lz -#9c89baefa4b2ab93057e4e143c003ba6f84d0796093ffd65fb065d2e3ed31228 gcc-objc-13.2.1-03-x86_64.pkg.tar.lz -#abbc828e20b80ae1ae3abb3b68b115011fc78aa03206a8d2cac954672ed39a93 lib32-gcc-libs-13.2.1-03-x86_64.pkg.tar.lz -#27d60694ac0fdb7b4ee4529b3c1c412f9c959db5a84f6132f1905bc2b8c9590e libgccjit-13.2.1-03-x86_64.pkg.tar.lz -#3d8296a1fdd2126a8e58aaac143d4326377e90bcedec57af7b2e3ad990b869c1 lto-dump-13.2.1-03-x86_64.pkg.tar.lz -# -## +# 0fab2541ab06d281a0d9d6cfc256499ff0a8638228094f6797580b83704e6e7c) # fb77ca05ffb4f8e666878f2f6718a9fb4d686839.patch +## 97b5a5292079f8045daf8dfdc97d1062772fc8f5475633ed5670cdec91ecdfb9 gcc-13.2.1-04-x86_64.pkg.tar.lz +#4307355a003c8e1c9055e8cdda65bb6f05f4622f31b1f8f4b750d8b3399441f1 gcc-ada-13.2.1-04-x86_64.pkg.tar.lz +#2a18b6b6f5be078f3cc58feaedbc927968e7376429530b0c4d8f18c0fb62b696 gcc-d-13.2.1-04-x86_64.pkg.tar.lz +#6d4d23706ef630d71d19b3be605ce51a33dcf5b7774a37357e2e796b4eeb9a81 gcc-fortran-13.2.1-04-x86_64.pkg.tar.lz +#0490a72828ae78d44eabb91553333fab6391eaf639046d9ae8ecdc0471c76f81 gcc-go-13.2.1-04-x86_64.pkg.tar.lz +#d6dc74215fa63de71ca491c201b10053994b754266e787ba522670c1f7a448d4 gcc-libs-13.2.1-04-x86_64.pkg.tar.lz +#4db220cf8a4c96248cbba52091f1ce87818168ba0f608eb7db647711990ec1d9 gcc-m2-13.2.1-04-x86_64.pkg.tar.lz +#5dbe10cc13ed3e1377583e1d31256014c51ff340f99f03f48c6cc5e96d49f22c gcc-objc-13.2.1-04-x86_64.pkg.tar.lz +#5a43271703c4f355dafc46b65b785d360508a9dc604e920db884bdddddb8fe8a lib32-gcc-libs-13.2.1-04-x86_64.pkg.tar.lz +#0c426adc03ea8b5674c4f8475fc68bc572792c637b021060d912b6e8cdf22ad9 libgccjit-13.2.1-04-x86_64.pkg.tar.lz +#4d3ec41556909b3c6b9463f8445b345bfd90216adbc190d3c8d1ec453e90ee33 lto-dump-13.2.1-04-x86_64.pkg.tar.lz diff --git a/gcc/PKGBUILD-arch b/gcc/PKGBUILD-arch index f716aff..4ec7cb2 100644 --- a/gcc/PKGBUILD-arch +++ b/gcc/PKGBUILD-arch @@ -7,14 +7,14 @@ # toolchain build order: linux-api-headers->glibc->binutils->gcc->glibc->binutils->gcc # NOTE: libtool requires rebuilt with each new gcc version -pkgname=(gcc gcc-libs lib32-gcc-libs gcc-ada gcc-d gcc-fortran gcc-go gcc-objc lto-dump libgccjit) +pkgname=(gcc gcc-libs lib32-gcc-libs gcc-ada gcc-d gcc-fortran gcc-go gcc-m2 gcc-objc lto-dump libgccjit) pkgver=13.2.1 _majorver=${pkgver%%.*} _commit=860b0f0ef787f756c0e293671b4c4622dff63a79 -pkgrel=3 +pkgrel=4 pkgdesc='The GNU Compiler Collection' arch=(x86_64) -license=(GPL3 LGPL FDL custom) +license=(GPL-3.0-with-GCC-exception GFDL-1.3-or-later) url='https://gcc.gnu.org' makedepends=( binutils @@ -41,6 +41,7 @@ _libdir=usr/lib/gcc/$CHOST/${pkgver%%+*} source=(git+https://sourceware.org/git/gcc.git#commit=${_commit} c89 c99 gcc-ada-repro.patch + https://github.com/llvm/llvm-project/commit/fb77ca05ffb4f8e666878f2f6718a9fb4d686839.patch ) validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux.org 86CFFCA918CF3AF47147588051E8B148A9999C34 # evangelos@foutrelis.com @@ -49,7 +50,8 @@ validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux. sha256sums=('SKIP' 'de48736f6e4153f03d0a5d38ceb6c6fdb7f054e8f47ddd6af0a3dbf14f27b931' '2513c6d9984dd0a2058557bf00f06d8d5181734e41dcfe07be7ed86f2959622a' - '1773f5137f08ac1f48f0f7297e324d5d868d55201c03068670ee4602babdef2f') + '1773f5137f08ac1f48f0f7297e324d5d868d55201c03068670ee4602babdef2f' + '0fab2541ab06d281a0d9d6cfc256499ff0a8638228094f6797580b83704e6e7c') prepare() { [[ ! -d gcc ]] && ln -s gcc-${pkgver/+/-} gcc @@ -64,6 +66,9 @@ prepare() { # Reproducible gcc-ada patch -Np0 < "$srcdir/gcc-ada-repro.patch" + #ASan: move allocator base to avoid conflict with high-entropy ASLR for x86-64 Linux' + patch -Np3 < "$srcdir/fb77ca05ffb4f8e666878f2f6718a9fb4d686839.patch" -d libsanitizer/ + mkdir -p "$srcdir/gcc-build" mkdir -p "$srcdir/libgccjit-build" } @@ -109,7 +114,7 @@ build() { CXXFLAGS=${CXXFLAGS/-Werror=format-security/} "$srcdir/gcc/configure" \ - --enable-languages=ada,c,c++,d,fortran,go,lto,objc,obj-c++ \ + --enable-languages=ada,c,c++,d,fortran,go,lto,m2,objc,obj-c++ \ --enable-bootstrap \ "${_confflags[@]:?_confflags unset}" @@ -449,10 +454,28 @@ package_gcc-d() { "$pkgdir/usr/share/licenses/$pkgname/" } +package_gcc-m2() { + pkgdesc='Modula-2 frontend for GCC' + depends=("gcc=$pkgver-$pkgrel" libisl.so) + + cd gcc-build + make -C gcc DESTDIR="$pkgdir" m2.install-{common,man,info} + + install -Dm755 gcc/cc1gm2 "$pkgdir/$_libdir"/cc1gm2 + install -Dm755 gcc/gm2 "$pkgdir"/usr/bin/gm2 + install -Dm644 gcc/plugin/m2rte.so "$pkgdir/$_libdir"/plugin/m2rte.so + + make -C $CHOST/libgm2 DESTDIR="$pkgdir" install + + # Install Runtime Library Exception + install -d "$pkgdir/usr/share/licenses/$pkgname/" + ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \ + "$pkgdir/usr/share/licenses/$pkgname/" +} + #package_gcc-rust() { # pkgdesc="Rust frontend for GCC" # depends=("gcc=$pkgver-$pkgrel" libisl.so) -# replaces=(gcc-rust-git) # # cd gcc-build # make -C gcc DESTDIR="$pkgdir" rust.install-{common,man,info} diff --git a/gcc/fb77ca05ffb4f8e666878f2f6718a9fb4d686839.patch b/gcc/fb77ca05ffb4f8e666878f2f6718a9fb4d686839.patch new file mode 100644 index 0000000..af7cea8 --- /dev/null +++ b/gcc/fb77ca05ffb4f8e666878f2f6718a9fb4d686839.patch @@ -0,0 +1,60 @@ +From fb77ca05ffb4f8e666878f2f6718a9fb4d686839 Mon Sep 17 00:00:00 2001 +From: Thurston Dang +Date: Thu, 13 Apr 2023 23:55:01 +0000 +Subject: [PATCH] Re-land 'ASan: move allocator base to avoid conflict with + high-entropy ASLR for x86-64 Linux' + +D147984 was reverted because it broke lit tests on Mac. This revision is based on D147984 +but maintains the old behavior for Apple. + +Note that, per the follow-up discussion with MaskRay in D147984, this patch excludes Apple +but includes other platforms (e.g., aarch64, MIPS64) and OSes (e.g., FreeBSD, S390X), not just +x86-64 Linux. + +Original commit message from D147984: + +Users have discovered [*] that when CONFIG_ARCH_MMAP_RND_BITS == 32, +it will frequently conflict with ASan's allocator on x86-64 Linux, because the +PIE program segment base address of 0x555555555554 plus an ASLR shift of up to +((2**32) * 4K == 0x100000000000) will sometimes exceed ASan's hardcoded +base address of 0x600000000000. We fix this by simply moving the allocator base +to 0x500000000000, which is below the PIE program segment base address. This is +cleaner than trying to move it to another location that is sandwiched between +the PIE program and library segments, because if either of those grow too large, +it will collide with the allocator region. + +Note that we will never need to change this base address again (unless we want to increase +the size of the allocator), because ASLR cannot be set above 32-bits for x86-64 Linux (the +PIE program segment and library segments would collide with each other; see also +ARCH_MMAP_RND_BITS_MAX in https://github.com/torvalds/linux/blob/master/arch/x86/Kconfig). + +[*] see https://b.corp.google.com/issues/276925478 +and https://groups.google.com/a/google.com/g/chrome-os-gardeners/c/BbfzCP3dEeo/m/h3C_vVUxCQAJ + +Differential Revision: https://reviews.llvm.org/D148280 +--- + compiler-rt/lib/asan/asan_allocator.h | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/compiler-rt/lib/asan/asan_allocator.h b/compiler-rt/lib/asan/asan_allocator.h +index 0b4dbf03bb9d5..6a12a6c602528 100644 +--- a/compiler-rt/lib/asan/asan_allocator.h ++++ b/compiler-rt/lib/asan/asan_allocator.h +@@ -143,11 +143,15 @@ typedef DefaultSizeClassMap SizeClassMap; + const uptr kAllocatorSpace = ~(uptr)0; + const uptr kAllocatorSize = 0x8000000000ULL; // 500G + typedef DefaultSizeClassMap SizeClassMap; +-# else ++# elif SANITIZER_APPLE + const uptr kAllocatorSpace = 0x600000000000ULL; + const uptr kAllocatorSize = 0x40000000000ULL; // 4T. + typedef DefaultSizeClassMap SizeClassMap; +-# endif ++# else ++const uptr kAllocatorSpace = 0x500000000000ULL; ++const uptr kAllocatorSize = 0x40000000000ULL; // 4T. ++typedef DefaultSizeClassMap SizeClassMap; ++# endif + template + struct AP64 { // Allocator64 parameters. Deliberately using a short name. + static const uptr kSpaceBeg = kAllocatorSpace; diff --git a/gcc/time b/gcc/time index 804ad1f..69616d5 100644 --- a/gcc/time +++ b/gcc/time @@ -75,3 +75,9 @@ user 836m51.166s sys 24m16.904s +gcc 13.2.1-04 (Thu 01 Feb 2024 01:27:23 AM EET) + +real 477m47.968s +user 987m5.212s +sys 23m57.238s + diff --git a/glibc/PKGBUILD b/glibc/PKGBUILD index 656a7b2..ca1188a 100644 --- a/glibc/PKGBUILD +++ b/glibc/PKGBUILD @@ -11,8 +11,8 @@ pkgbase=glibc pkgname=(glibc lib32-glibc glibc-locales) pkgver=2.38 -_commit=750a45a783906a19591fb8ff6b7841470f1f5701 -pkgrel=07 +_commit=d37c2b20a4787463d192b32041c3406c2bd91de0 +pkgrel=08 url='https://www.gnu.org/software/libc' makedepends=(git gd lib32-gcc-libs python) options=(staticlibs !lto) @@ -20,8 +20,8 @@ source=(git+https://sourceware.org/git/glibc.git#commit=${_commit} locale.gen.txt locale-gen lib32-glibc.conf - sdt.h sdt-config.h - reenable_DT_HASH.patch) + sdt.h sdt-config.h) +# reenable_DT_HASH.patch) prepare() { mkdir -p glibc-build lib32-glibc-build @@ -32,7 +32,7 @@ prepare() { # Re-enable `--hash-style=both` for building shared objects due to issues with EPIC's EAC # which relies on DT_HASH to be present in these libs. # reconsider 2023-01 - patch -Np1 -i "${srcdir}"/reenable_DT_HASH.patch +# patch -Np1 -i "${srcdir}"/reenable_DT_HASH.patch } build() { @@ -226,7 +226,7 @@ package_glibc-locales() { arch=(x86_64) -license=(GPL LGPL) +license=(GPL-2.0-or-later LGPL-2.1-or-later) validpgpkeys=(7273542B39962DF7B299931416792B4EA25340F8 # Carlos O'Donell BC7C7372637EC10C57D7AA6579C43DFBF1CF2187) # Siddhesh Poyarekar @@ -236,10 +236,9 @@ sha256sums=(SKIP 8c5cc09018cbd65e8570430f872e118caa2644e311d6200b7d5f0cba837fbba4 # locale-gen c27424154a6096ae32c0824b785e05de6acef33d9224fd6147d1936be9b4962b # lib32-glibc.conf 774061aff612a377714a509918a9e0e0aafce708b87d2d7e06b1bd1f6542fe70 # sdt.h - cdc234959c6fdb43f000d3bb7d1080b0103f4080f5e67bcfe8ae1aaf477812f0 # sdt-config.h - cf9fe494f7ec69752a63d1b0a9ad689aa620888ae9b902b6383a6fbc7c1726a7) # reenable_DT_HASH.patch - -## 06e9e9785bc650a0bad1321e754cb7459c1ce0d642270a592f7e6a40c4d22959 glibc-2.38-07-x86_64.pkg.tar.lz -## fd64c6b6384e292913161b995b5e3042a5ed25aa7833bfeebabe9e7e40c8b8ca glibc-locales-2.38-07-x86_64.pkg.tar.lz -## b2944ffe5071559e604f64ea9a39cd59c4721947cc5101944da3664080410dbb lib32-glibc-2.38-07-x86_64.pkg.tar.lz + cdc234959c6fdb43f000d3bb7d1080b0103f4080f5e67bcfe8ae1aaf477812f0) # sdt-config.h +# cf9fe494f7ec69752a63d1b0a9ad689aa620888ae9b902b6383a6fbc7c1726a7) # reenable_DT_HASH.patch +## 325affe232d571a225b538fa435568942324add317fc12af0e2fe62e794b2186 glibc-2.38-08-x86_64.pkg.tar.lz +## 90f823193e95bcf6395bb0fe146c9d72e1a28d1dc12bf33aa1256d418ad9bed9 glibc-locales-2.38-08-x86_64.pkg.tar.lz +## 7a7f0e7e352475d9dded52f2547e37617c33c5985b3774c9bc8062c9f5d788af lib32-glibc-2.38-08-x86_64.pkg.tar.lz diff --git a/glibc/PKGBUILD-arch b/glibc/PKGBUILD-arch index 5d9bac1..4a30a22 100644 --- a/glibc/PKGBUILD-arch +++ b/glibc/PKGBUILD-arch @@ -9,11 +9,11 @@ pkgbase=glibc pkgname=(glibc lib32-glibc glibc-locales) pkgver=2.38 -_commit=750a45a783906a19591fb8ff6b7841470f1f5701 -pkgrel=7 +_commit=d37c2b20a4787463d192b32041c3406c2bd91de0 +pkgrel=8 arch=(x86_64) url='https://www.gnu.org/software/libc' -license=(GPL LGPL) +license=(GPL-2.0-or-later LGPL-2.1-or-later) makedepends=(git gd lib32-gcc-libs python) options=(staticlibs !lto) source=(git+https://sourceware.org/git/glibc.git#commit=${_commit} @@ -21,7 +21,6 @@ source=(git+https://sourceware.org/git/glibc.git#commit=${_commit} locale-gen lib32-glibc.conf sdt.h sdt-config.h - reenable_DT_HASH.patch ) validpgpkeys=(7273542B39962DF7B299931416792B4EA25340F8 # Carlos O'Donell BC7C7372637EC10C57D7AA6579C43DFBF1CF2187) # Siddhesh Poyarekar @@ -30,8 +29,7 @@ b2sums=('SKIP' '04fbb3b0b28705f41ccc6c15ed5532faf0105370f22133a2b49867e790df0491f5a1255220ff6ebab91a462f088d0cf299491b3eb8ea53534cb8638a213e46e3' '7c265e6d36a5c0dff127093580827d15519b6c7205c2e1300e82f0fb5b9dd00b6accb40c56581f18179c4fbbc95bd2bf1b900ace867a83accde0969f7b609f8a' 'a6a5e2f2a627cc0d13d11a82458cfd0aa75ec1c5a3c7647e5d5a3bb1d4c0770887a3909bfda1236803d5bc9801bfd6251e13483e9adf797e4725332cd0d91a0e' - '214e995e84b342fe7b2a7704ce011b7c7fc74c2971f98eeb3b4e677b99c860addc0a7d91b8dc0f0b8be7537782ee331999e02ba48f4ccc1c331b60f27d715678' - '35e03ed912e1b0cd23783ab83ce919412885c141344905b8b67bbad4a86c48cf3e893806060e48d5737514ff80cea0b58b0e1f15707c32224579c416dcd810c0') + '214e995e84b342fe7b2a7704ce011b7c7fc74c2971f98eeb3b4e677b99c860addc0a7d91b8dc0f0b8be7537782ee331999e02ba48f4ccc1c331b60f27d715678') prepare() { mkdir -p glibc-build lib32-glibc-build @@ -39,10 +37,6 @@ prepare() { [[ -d glibc-$pkgver ]] && ln -s glibc-$pkgver glibc cd glibc - # Re-enable `--hash-style=both` for building shared objects due to issues with EPIC's EAC - # which relies on DT_HASH to be present in these libs. - # reconsider 2023-01 - patch -Np1 -i "${srcdir}"/reenable_DT_HASH.patch } build() { diff --git a/glibc/time b/glibc/time index 7252e8c..8d312c3 100644 --- a/glibc/time +++ b/glibc/time @@ -1,6 +1,6 @@ -real 34m42.497s -user 30m30.091s -sys 4m29.408s +real 39m22.979s +user 34m44.480s +sys 4m55.287s diff --git a/libnghttp2/PKGBUILD b/libnghttp2/PKGBUILD index 2ff8c89..2521f48 100644 --- a/libnghttp2/PKGBUILD +++ b/libnghttp2/PKGBUILD @@ -8,12 +8,13 @@ pkgname=libnghttp2 _tag='6c83ba437df9834305ccf68083775d7742974ecb' # git rev-parse v${pkgver} pkgver=1.59.0 -pkgrel=01 +pkgrel=02 pkgdesc='Framing layer of HTTP/2 is implemented as a reusable C library' url='https://nghttp2.org/' depends=(glibc) makedepends=('automake' 'autoconf' 'git') conflicts=('nghttp2<1.20.0-2') +provides=('libnghttp2.so') #source=(https://github.com/nghttp2/nghttp2/releases/download/v$pkgver/nghttp2-$pkgver.tar.xz) source=("git+https://github.com/nghttp2/nghttp2.git#tag=${_tag}?signed") @@ -58,4 +59,5 @@ validpgpkeys=('F4F3B91474D1EB29889BD0EF7E8403D5D673C366') # Tatsuhiro Tsujikawa sha256sums=(SKIP) -## 14fc1b21c5e804611eb23f76c73922d1d2d5729362a64fe2cfbcfd7738a7ced0 libnghttp2-1.59.0-01-x86_64.pkg.tar.lz +## 30e49664106def46f531c1dda8cd2da2b4f9aa97d3b5585e3c50c417a118718a libnghttp2-1.59.0-02-x86_64.pkg.tar.lz + diff --git a/libnghttp2/PKGBUILD-arch b/libnghttp2/PKGBUILD-arch index e47e4a2..7ca9cf0 100644 --- a/libnghttp2/PKGBUILD-arch +++ b/libnghttp2/PKGBUILD-arch @@ -4,12 +4,13 @@ pkgname=libnghttp2 _tag='6c83ba437df9834305ccf68083775d7742974ecb' # git rev-parse v${pkgver} pkgver=1.59.0 -pkgrel=1 +pkgrel=2 pkgdesc='Framing layer of HTTP/2 is implemented as a reusable C library' arch=('x86_64') url='https://nghttp2.org/' license=('MIT') depends=('glibc') +provides=('libnghttp2.so') makedepends=('git') conflicts=('nghttp2<1.20.0-2') validpgpkeys=('F4F3B91474D1EB29889BD0EF7E8403D5D673C366') # Tatsuhiro Tsujikawa diff --git a/libusb/PKGBUILD b/libusb/PKGBUILD index 98f6550..e8dc883 100644 --- a/libusb/PKGBUILD +++ b/libusb/PKGBUILD @@ -6,20 +6,17 @@ #-----------------------------------------| DESCRIPTION |--------------------------------------- pkgname=libusb -pkgver=1.0.26 -#_pkgver=1.0.26.r18.gff8fe939 -pkgrel=03 +pkgver=1.0.27 +pkgrel=01 pkgdesc="A cross-platform library to access USB devices w/o systemd - git version" url="https://libusb.info/" +_url="https://github.com/libusb/libusb" depends=(glibc libeudev) makedepends=(automake autoconf) provides=(libusb-1.0.so) conflicts=(libusb-git) #options=(debug) ## uncomment this line to have the debug pkg produced - -source=(https://github.com/$pkgname/$pkgname/releases/download/v$pkgver/$pkgname-$pkgver.tar.bz2) -#source=(https://github.com/$pkgname/$pkgname/releases/download/v$pkgver/$pkgname-$pkgver.tar.bz2{,.asc}) -# libusb-1.0.26.tar.bz2 ... FAILED (the public key C68187379B23DE9EFC46651E2C80FF56C6830A0E is not trusted) +source=($_url/releases/download/v$pkgver/$pkgname-$pkgver.tar.bz2) prepare() { cd $pkgname-$pkgver @@ -29,6 +26,8 @@ prepare() { build() { cd $pkgname-$pkgver ./configure --prefix=/usr + # prevent excessive overlinking due to libtool + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool make } @@ -48,7 +47,9 @@ package() { arch=(x86_64) -license=(LGPL2.1) +license=(LGPL-2.1-or-later) + +sha256sums=(ffaa41d741a8a3bee244ac8e54a72ea05bf2879663c098c82fc5757853441575) # libusb-1.0.27.tar.bz2 + +## 520789b61f049e9987123006871f127d3f99412c2de069f20a455fbc5ba71f07 libusb-1.0.27-01-x86_64.pkg.tar.lz -sha256sums=(12ce7a61fc9854d1d2a1ffe095f7b5fac19ddba095c259e6067a46500381b5a5) # libusb-1.0.26.tar.bz2 -# 37f1e6d18049c8771feea5b2c741777800333120d011b08e8c6ac02bb229ca82) # libusb-1.0.26.tar.bz2.asc diff --git a/libusb/PKGBUILD-arch b/libusb/PKGBUILD-arch index d8ae4c6..f7b9384 100644 --- a/libusb/PKGBUILD-arch +++ b/libusb/PKGBUILD-arch @@ -3,19 +3,19 @@ # Contributor: Tobias Powalowski pkgname=libusb -pkgver=1.0.26 +pkgver=1.0.27 pkgrel=1 pkgdesc="Library that provides generic access to USB devices" arch=(x86_64) url="https://libusb.info/" -license=(LGPL2.1) +_url="https://github.com/libusb/libusb" +license=(LGPL-2.1-or-later) depends=(glibc) makedepends=(systemd) provides=(libusb-1.0.so) -options=(debug) -source=(https://github.com/$pkgname/$pkgname/releases/download/v$pkgver/$pkgname-$pkgver.tar.bz2) -sha512sums=('fcdb85c98f21639668693c2fd522814d440972d65883984c4ae53d0555bdbdb7e8c7a32199cd4b01113556a1eb5be7841b750cc73c9f6bda79bfe1af80914e71') -b2sums=('0cc397ecf4de0066abbff9b286a9e4fcd48658698d5e0d6b736abf56b48c1b55a05f15fff7be53fd33f767621e0c25d87275a47e05a4bcb44c4b8ac9221cd081') +source=($_url/releases/download/v$pkgver/$pkgname-$pkgver.tar.bz2) +sha512sums=('42abbbcf2564f86cc2f05826aeefa6beb03c9f89dc9fe05bdfa351caa3dbd07713ce193daadecf29557604dd3cbc770c8031a78e1ad0a8df3627c3f551d28ff0') +b2sums=('bec2eb053159ffa719c794d234f8e99b895a4fae336b862a3197b88deb3d307a53ebb98d2aa993a2f390f14264f796b96ac47274c19f56db30440484ee336c8a') prepare() { cd $pkgname-$pkgver @@ -25,6 +25,8 @@ prepare() { build() { cd $pkgname-$pkgver ./configure --prefix=/usr + # prevent excessive overlinking due to libtool + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool make } @@ -33,7 +35,9 @@ check() { } package () { - depends+=(libudev.so) + depends+=( + systemd-libs libudev.so + ) make DESTDIR="$pkgdir" install -C $pkgname-$pkgver install -vDm 644 $pkgname-$pkgver/{AUTHORS,ChangeLog,README} -t "$pkgdir/usr/share/doc/$pkgname/" diff --git a/libusb/deps b/libusb/deps index 8617447..7d39372 100644 --- a/libusb/deps +++ b/libusb/deps @@ -1,2 +1,4 @@ autoconf automake + + diff --git a/opentmpfiles/PKGBUILD b/opentmpfiles/PKGBUILD index cc762db..53efa0c 100644 --- a/opentmpfiles/PKGBUILD +++ b/opentmpfiles/PKGBUILD @@ -6,19 +6,18 @@ #-----------------------------------------| DESCRIPTION |--------------------------------------- pkgname=opentmpfiles -pkgdesc="Script written in pure POSIX sh to parse and apply tmpfiles.d style file coming from systemd" +pkgdesc="Script written in pure POSIX sh to parse and apply tmpfiles.d style files like systemd - maintained by Eric Vidal at Obarun" pkgver=0.3.1 -pkgrel=03 +pkgrel=04 url="https://git.obarun.org/obdev/opentmpfiles.git" -source=("${pkgname}::git+${url}#tag=v$pkgver" - "opentmpfiles.hook") +source=("${pkgname}::git+${url}#tag=v$pkgver" ## README.md carries additional licensing info for maintainer of the source code + "opentmpfiles.hook" + "README.md") makedepends=('git') -path=(--bindir=/usr/bin) - build() { cd $pkgname - ./configure "${path[@]}" + ./configure --bindir=/usr/bin } package() { @@ -26,6 +25,11 @@ package() { make DESTDIR="${pkgdir}" install install -Dm 0644 ${srcdir}/opentmpfiles.hook ${pkgdir}/usr/share/libalpm/hooks/opentmpfiles.hook install -Dm 0644 LICENSE ${pkgdir}/usr/share/${pkgname}/LICENSE + # Originally this was maintained by Gentoo who adopted systemd and terminated alternatives + # such as sysusers and tmpfiles so Eric Vidal (Obarun) adopted it and is now the keeper of the code + # If he abandons it as he may replace the script with his own in 66 obtmpfiles then we will + # carry the torch. There is no other difference between 3.1 and master + install -Dm 0644 $srcdir/README.md ${pkgdir}/usr/share/${pkgname}/README.md ln -s /usr/bin/opentmpfiles.sh "${pkgdir}/usr/bin/tmpfiles" # for use by runit-rc } @@ -36,4 +40,8 @@ arch=(x86_64) license=('BSD 2-Clause') sha256sums=(SKIP - 1319fbe1d6fc8c413fb13252c6bac8ccaa1af31ed3269db7c4a3a7c7ed673639) # opentmpfiles.hook + 1319fbe1d6fc8c413fb13252c6bac8ccaa1af31ed3269db7c4a3a7c7ed673639 # opentmpfiles.hook + 6c6dce366ff934cefd4867ffc425d14e25d4c23088b254e3a6dd9795be5075a0) # README.md + +## 658b7928e03646f1b263109f59721d397f010f99fd20fe0cf211ba745b6f74e4 opentmpfiles-0.3.1-04-x86_64.pkg.tar.lz + diff --git a/opentmpfiles/README.md b/opentmpfiles/README.md new file mode 100644 index 0000000..3df2ace --- /dev/null +++ b/opentmpfiles/README.md @@ -0,0 +1,27 @@ +opentmpfiles is a utility script written in pure POSIX sh to parse and apply tmpfiles.d style file coming from systemd. +This script is a modified copy of `https://github.com/OpenRC/opentmpfiles`. + +License +--- + +BSD 2-Clause + +Contact information +--- + +* Email: + Eric Vidal `` + +* Web site: + https://web.obarun.org/ + +* Forum: + https://forum.obarun.org/ + +* XMPP Channel: + obarun@muc.syntazia.org + +Supports the project +--- + +Please consider to make [donation](https://web.obarun.org/index.php?id=18) diff --git a/opentmpfiles/time b/opentmpfiles/time index 8408360..e283ef4 100644 --- a/opentmpfiles/time +++ b/opentmpfiles/time @@ -1,5 +1,6 @@ -real 0m4.208s -user 0m1.466s -sys 0m0.284s +real 0m1.826s +user 0m1.275s +sys 0m0.301s +