diff --git a/autoconf/0001-autoconf-2.70-MSYS2-specifics-AC_CYGWIN.patch b/autoconf/0001-autoconf-2.70-MSYS2-specifics-AC_CYGWIN.patch new file mode 100644 index 00000000000..cd132bab0a9 --- /dev/null +++ b/autoconf/0001-autoconf-2.70-MSYS2-specifics-AC_CYGWIN.patch @@ -0,0 +1,30 @@ +From 81a57fbd4c10db5f35a1ad233abd27a71f4009cf Mon Sep 17 00:00:00 2001 +From: Jannick +Date: Wed, 9 Dec 2020 00:36:38 +0100 +Subject: [PATCH 1/3] autoconf-2.70-msys-specifics-AC_CYGWIN + +--- + lib/autoconf/specific.m4 | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lib/autoconf/specific.m4 b/lib/autoconf/specific.m4 +index 275938c..3ffb417 100644 +--- a/lib/autoconf/specific.m4 ++++ b/lib/autoconf/specific.m4 +@@ -493,11 +493,11 @@ AU_DEFUN([AC_GNU_SOURCE], [AC_USE_SYSTEM_EXTENSIONS]) + AU_DEFUN([AC_CYGWIN], + [AC_CANONICAL_HOST + case $host_os in +- *cygwin* ) CYGWIN=yes;; ++ *cygwin* | *msys* ) CYGWIN=yes;; + * ) CYGWIN=no;; + esac + ], [$0 is obsolete: use AC_CANONICAL_HOST and check if $host_os +-matches *cygwin*])# AC_CYGWIN ++matches *cygwin* or *msys*])# AC_CYGWIN + + + # AC_EMXOS2 +-- +2.29.2.windows.2 + diff --git a/autoconf/0002-autoconf-2.70-MSYS2-Autotest-Unify-EOLs-By-Default.patch b/autoconf/0002-autoconf-2.70-MSYS2-Autotest-Unify-EOLs-By-Default.patch new file mode 100644 index 00000000000..be1ca940630 --- /dev/null +++ b/autoconf/0002-autoconf-2.70-MSYS2-Autotest-Unify-EOLs-By-Default.patch @@ -0,0 +1,89 @@ +From f4c17d4c349fab3a74c261c342494af7f077bf1b Mon Sep 17 00:00:00 2001 +From: Jannick +Date: Wed, 9 Dec 2020 00:43:24 +0100 +Subject: [PATCH 2/3] autoconf-2.70-MSYS2-Autotest-Unify-EOLs-By-Default + +This commit tackles the end-of-line (EOL) issue on Windows when running +an AUTOTEST testsuite which might compare files and/or program outputs. + +This commit sets the default behaviour of any AUTOTEST testsuite generated +with AUTOCONF 2.70: When running an AUTOTEST test suite and comparing files +or program outputs, EOL differences (like LF vs CRLF) are ignored **BY +DEFAULT**, iff the program DIFF allows the flag '--strip-trailing-cr'. + +In order to switch off this feature and run the testsuite mocking +differences between different EOL patterns, run the testsuite with the +environment variable 'MSYS2_AUTOTEST_NO_UNIFY_EOL' set to '1', e.g.: + + tests/testsuite -C tests MSYS2_AUTOTEST_NO_UNIFY_EOL=1 + +* lib/autotest/general.m4: + - add the diff flag '--strip-trailing-cr' when possible and not + prohibited every time the testsuite is run. +* tests/autotest.at: + - add a test checking the interplay of 'MSYS2_AUTOTEST_NO_UNIFY_EOL' + and the difference between files with CRLF and LF. +--- + lib/autotest/general.m4 | 23 +++++++++++++++++++++++ + tests/autotest.at | 14 ++++++++++++++ + 2 files changed, 37 insertions(+) + +diff --git a/lib/autotest/general.m4 b/lib/autotest/general.m4 +index 0c0e3c5..12fb14a 100644 +--- a/lib/autotest/general.m4 ++++ b/lib/autotest/general.m4 +@@ -1031,6 +1031,29 @@ else + at_diff=diff + fi + ++### ------------------------------------------------- ### ++### MSYS2 patch for Windows specificity (EOL issue) ### ++### ------------------------------------------------- ### ++# By default try to treat any end of line identfier 'LF' and 'CRLF' the same ++# in testsuites when comparing files or output of programs. ++# This feature can be switched off if the testsuite script is run with the ++# environment variable 'MSYS2_AUTOTEST_NO_UNIFY_EOL' set to a non-empty string ++# other than '0', e.g. simply by setting 'MSYS2_AUTOTEST_NO_UNIFY_EOL=1'. ++# Sample calls: ++# - tests/testsuite -C tests ... Differences in EOLs are ignored ++# for file comparisons. ++# - tests/testsuite -C tests MSYS2_AUTOTEST_NO_UNIFY_EOL=1 ... EOLs do matter for file comparisons. ++case "x$MSYS2_AUTOTEST_NO_UNIFY_EOL" in ++ x|x0) ++ # Use the diff flag '--strip-trailing-cr' when possible. ++ if at_ret=`$at_diff --strip-trailing-cr "$at_devnull" "$at_devnull" 2>&1` && test -z "$at_ret" ++ then ++ at_diff="$at_diff --strip-trailing-cr" ++ fi ++ at_ret='';; ++esac ++ ++ + # Get the last needed group. + for at_group in : $at_groups; do :; done + +diff --git a/tests/autotest.at b/tests/autotest.at +index b5a9c40..3637fc5 100644 +--- a/tests/autotest.at ++++ b/tests/autotest.at +@@ -2150,3 +2150,17 @@ else + fi + + AT_CLEANUP ++ ++## -------------------------------------------- ## ++## MSYS patched feature: unify EOLs on Windows ## ++## -------------------------------------------- ## ++ ++AT_SETUP([MSYS2: Unfiy EOLs]) ++AT_KEYWORDS([msys2 windows unify.eol]) ++printf "a\n" > a.LF ++printf "a\r\n" > a.CRLF ++AS_ECHO(["MSYS2_AUTOTEST_NO_UNIFY_EOL='$MSYS2_AUTOTEST_NO_UNIFY_EOL'"]) ++AS_CASE(["x$MSYS2_AUTOTEST_NO_UNIFY_EOL"], ++ [x|x0],[at_ret_diff=0],[at_ret_diff=1]) ++AT_CHECK([$at_diff a.LF a.CRLF],[$at_ret_diff],[stdout],[stderr]) ++AT_CLEANUP +-- +2.29.2.windows.2 + diff --git a/autoconf/0003-autoconf-2.70-MSYS2-specifics-config.guess.patch b/autoconf/0003-autoconf-2.70-MSYS2-specifics-config.guess.patch new file mode 100644 index 00000000000..f6c7c6fb2b3 --- /dev/null +++ b/autoconf/0003-autoconf-2.70-MSYS2-specifics-config.guess.patch @@ -0,0 +1,12 @@ +--- autoconf-2.72/build-aux/config.guess.orig 2023-12-23 09:15:46.672145000 +0100 ++++ autoconf-2.72/build-aux/config.guess 2023-12-23 09:16:58.657560200 +0100 +@@ -958,6 +958,9 @@ + amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) + GUESS=x86_64-pc-cygwin + ;; ++ amd64:MSYS*:*:* | x86_64:MSYS*:*:*) ++ GUESS=x86_64-unknown-msys ++ ;; + prep*:SunOS:5.*:*) + SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` + GUESS=powerpcle-unknown-solaris2$SUN_REL diff --git a/autoconf/0004-LLVM-Flang.patch b/autoconf/0004-LLVM-Flang.patch new file mode 100644 index 00000000000..aad5fcc2396 --- /dev/null +++ b/autoconf/0004-LLVM-Flang.patch @@ -0,0 +1,60 @@ +Treat LLVM Flang as GNU-compatible compiler for GNU targets. + +--- autoconf-2.71/lib/autoconf/fortran.m4.orig 2021-01-28 21:46:48.000000000 +0100 ++++ autoconf-2.71/lib/autoconf/fortran.m4 2024-10-30 13:24:17.360461800 +0100 +@@ -287,6 +287,46 @@ + [m4_fatal([unknown Fortran dialect])])]) + + ++# _AC_FC_COMPILER_GNU ++# --------------------- ++# Check whether the compiler for the current language is GNU. ++# ++# This is similar to _AC_LANG_COMPILER_GNU. But also considers LLVM Flang ++# a GNU-compatible compiler. Pay attention to the fact that the position ++# of 'choke me' on the seventh column is intentional: otherwise ++# some Fortran compilers (e.g., SGI) might consider it's a ++# continuation line, and warn instead of reporting an error. ++m4_define([_AC_FC_COMPILER_GNU], ++[AC_CACHE_CHECK([whether the compiler supports GNU _AC_LANG], ++ [ac_cv_[]_AC_LANG_ABBREV[]_compiler_gnu], ++ [_AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[#ifndef __GNUC__ ++ choke me ++#endif ++]])], ++ [ac_compiler_gnu=yes], ++ [_AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[#ifndef __flang__ ++ choke me ++#endif ++]])], ++ [case `$[]_AC_FC[] $[]_AC_LANG_PREFIX[]FLAGS --print-target-triple < /dev/null 2>&1` in ++ *mingw*|*-gnu) ++ ac_compiler_gnu=yes ++ ;; ++ *-msvc) ++ ac_compiler_gnu=no ++ ;; ++ *) ++ ## assume Flang is GNU-compatible by default ++ ac_compiler_gnu=yes ++ ;; ++ esac], ++ [ac_compiler_gnu=no])]) ++ac_cv_[]_AC_LANG_ABBREV[]_compiler_gnu=$ac_compiler_gnu ++]) ++ac_compiler_gnu=$ac_cv_[]_AC_LANG_ABBREV[]_compiler_gnu ++])# _AC_FC_COMPILER_GNU ++ ++ + # _AC_PROG_FC([DIALECT], [COMPILERS...]) + # -------------------------------------- + # DIALECT is a Fortran dialect, given by Fortran [YY]YY or simply [YY]YY, +@@ -347,7 +387,7 @@ + # input file. (Note that this only needs to work for GNU compilers.) + ac_save_ext=$ac_ext + ac_ext=F +-_AC_LANG_COMPILER_GNU ++_AC_FC_COMPILER_GNU + ac_ext=$ac_save_ext + _AC_PROG_FC_G + ])# _AC_PROG_FC diff --git a/autoconf/PKGBUILD b/autoconf/PKGBUILD new file mode 100644 index 00000000000..1cf4858ff79 --- /dev/null +++ b/autoconf/PKGBUILD @@ -0,0 +1,67 @@ +# Maintainer: Christoph Reiter + +_realname=autoconf +pkgname=${_realname} +pkgver=2.73 +pkgrel=1 +pkgdesc="A GNU tool for automatically configuring source code" +arch=('any') +url="https://www.gnu.org/software/autoconf" +msys2_references=( + 'archlinux: autoconf' +) +license=('spdx:GPL-2.0-or-later AND GPL-3.0-or-later WITH Autoconf-exception-3.0') +depends=('awk' 'm4' 'diffutils' 'bash' 'perl' 'sed') +makedepends=('make') +source=(https://ftp.gnu.org/pub/gnu/${_realname}/${_realname}-${pkgver}.tar.xz + 0001-autoconf-2.70-MSYS2-specifics-AC_CYGWIN.patch + 0002-autoconf-2.70-MSYS2-Autotest-Unify-EOLs-By-Default.patch + 0003-autoconf-2.70-MSYS2-specifics-config.guess.patch + 0004-LLVM-Flang.patch) +sha256sums=('9fd672b1c8425fac2fa67fa0477b990987268b90ff36d5f016dae57be0d6b52e' + '01edbaa771818518dc64fe54740d60909feb581428eb3751e0c2b6851e104038' + '3d37cb317d88843b07cadaf2981e1f6293bce2245fa0f0265fdaf08c18ffac61' + '82cb932ea114ad79d63072350457cde64bd60ece835a605e8aea0e4b7806b03c' + 'd43d4bd0ca33820305d8eefb1940f23c8e474b94429281796c5fd55e0cd0d09d') +conflicts=("autoconf2.73<2.73-2") # /usr/share/info conflicts + +apply_patch_with_msg() { + for _patch in "$@" + do + msg2 "Applying $_patch" + patch -Np1 -i "${srcdir}"/$_patch + done +} + +prepare() { + cd "${srcdir}"/${_realname}-${pkgver} + + # MSYS2 + apply_patch_with_msg \ + 0001-autoconf-2.70-MSYS2-specifics-AC_CYGWIN.patch \ + 0002-autoconf-2.70-MSYS2-Autotest-Unify-EOLs-By-Default.patch \ + 0003-autoconf-2.70-MSYS2-specifics-config.guess.patch \ + 0004-LLVM-Flang.patch +} + +build() { + mkdir -p build-${MSYSTEM} && cd build-${MSYSTEM} + + ../${_realname}-${pkgver}/configure --prefix=/usr + + make +} + +check() { + cd build-${MSYSTEM} + # CAUTION: The tests run very very long, even on a server. + make check TESTSUITEFLAGS='-j16' +} + +package() { + make -C build-${MSYSTEM} DESTDIR="${pkgdir}" install + + # license exception + install -Dm644 ${_realname}-${pkgver}/COPYING.EXCEPTION \ + "${pkgdir}"/usr/share/licenses/${_realname}/COPYING.EXCEPTION +} diff --git a/autoconf2.73/PKGBUILD b/autoconf2.73/PKGBUILD index e83b8cdfbfd..8943dac4de3 100644 --- a/autoconf2.73/PKGBUILD +++ b/autoconf2.73/PKGBUILD @@ -3,7 +3,7 @@ _realname=autoconf pkgname=${_realname}2.73 pkgver=2.73 -pkgrel=1 +pkgrel=2 pkgdesc="A GNU tool for automatically configuring source code" arch=('any') url="https://www.gnu.org/software/autoconf" @@ -72,5 +72,5 @@ package() { # Note: Remove these files once a newer autoconf is added, and add # a versioned conflict to the old version of this package to make # upgrades work. - # rm -rf "${pkgdir}"/usr/share/info + rm -rf "${pkgdir}"/usr/share/info } diff --git a/autogen/PKGBUILD b/autogen/PKGBUILD index 2c504343107..9ff88948cd2 100644 --- a/autogen/PKGBUILD +++ b/autogen/PKGBUILD @@ -8,7 +8,7 @@ arch=('i686' 'x86_64') url="https://autogen.sourceforge.io/" msys2_repository_url='https://cgit.git.savannah.gnu.org/cgit/autogen.git' license=('spdx:GPL-3.0-or-later') -makedepends=('gcc' 'gmp-devel' 'libxcrypt-devel' 'libffi-devel' 'libgc-devel' 'libguile-devel' 'libxml2-devel' 'make' 'autoconf' 'automake-wrapper' 'libtool' 'gperf') +makedepends=('gcc' 'gmp-devel' 'libxcrypt-devel' 'libffi-devel' 'libgc-devel' 'libguile-devel' 'libxml2-devel' 'make' 'autoconf' 'automake' 'libtool' 'gperf') depends=('gcc-libs' 'gmp' 'libxcrypt' 'libffi' 'libgc' 'libguile' 'libxml2') source=("https://ftp.gnu.org/gnu/${pkgname}/rel${pkgver}/${pkgname}-${pkgver}.tar.xz"{,.sig} autogen-guile-3.0.patch diff --git a/automake/PKGBUILD b/automake/PKGBUILD new file mode 100644 index 00000000000..aa394c7219d --- /dev/null +++ b/automake/PKGBUILD @@ -0,0 +1,59 @@ +# Maintainer: Yang Kun + +_basever=1.18 +pkgname=automake +pkgver=${_basever}.1 +pkgrel=1 +pkgdesc="A GNU tool for automatically creating Makefiles" +arch=('any') +license=('spdx:GPL-2.0-or-later') +url="https://www.gnu.org/software/automake" +msys2_repository_url="https://cgit.git.savannah.gnu.org/cgit/automake.git" +msys2_references=( + "cpe: cpe:/a:gnu:automake" +) +depends=('bash' 'perl') +makedepends=('autoconf' 'make' 'texinfo') +checkdepends=('bison' 'cscope' 'dejagnu' 'emacs' 'expect' 'flex' 'gcc' 'gettext' + 'help2man' 'libtool' 'lzip' 'sharutils' 'texinfo-tex' 'zip') +source=(https://ftp.gnu.org/gnu/automake/automake-${pkgver}.tar.xz{,.sig} + automake-1.17-msys2.patch) +sha256sums=('168aa363278351b89af56684448f525a5bce5079d0b6842bd910fdd3f1646887' + 'SKIP' + 'a6b3a7099fb23ddc3d1402b16df32cf8f21bb63ca6b9314ff7caff5869b6ed50') +validpgpkeys=('17D3311B14BC0F248267BF020716748A30D155AD') # Karl Berry +provides=('automake1.18') +conflicts=('automake1.18') + +# Helper macros to help make tasks easier # +apply_patch_with_msg() { + for _fname in "$@"; do + msg2 "Applying ${_fname}" + patch -Nbp1 -i "${srcdir}/${_fname}" + done +} +# =========================================== # + +prepare() { + cd "${srcdir}/automake-${pkgver}" + + apply_patch_with_msg \ + automake-1.17-msys2.patch +} + +build() { + cd "${srcdir}/automake-${pkgver}" + ./configure --prefix=/usr + make +} + +check() { + cd "${srcdir}/automake-${pkgver}" + + make -k check || warning "Tests failed" +} + +package() { + cd ${srcdir}/automake-${pkgver} + make DESTDIR=${pkgdir} install +} diff --git a/automake/automake-1.17-msys2.patch b/automake/automake-1.17-msys2.patch new file mode 100644 index 00000000000..f88d9d41235 --- /dev/null +++ b/automake/automake-1.17-msys2.patch @@ -0,0 +1,18 @@ +diff --git automake-1.17-orig/t/compile5.sh automake-1.17/t/compile5.sh +index 67c46cc..ddf9683 100644 +--- automake-1.17-orig/t/compile5.sh ++++ automake-1.17/t/compile5.sh +@@ -47,11 +47,11 @@ case '@host_os@' in + ;; + esac + case @build_os@ in +- mingw* | cygwin*) ++ mingw* | cygwin* | msys*) + ;; + *) + winepath -w / \ +- || skip_ "not on MinGW or Cygwin, and winepath not available" ++ || skip_ "not on MinGW, Cygwin or MSYS, and winepath not available" + ;; + esac + END diff --git a/automake1.14/PKGBUILD b/automake1.14/PKGBUILD index 540005b9339..24f89eaa408 100644 --- a/automake1.14/PKGBUILD +++ b/automake1.14/PKGBUILD @@ -2,7 +2,7 @@ pkgname=automake1.14 pkgver=1.14.1 -pkgrel=6 +pkgrel=7 pkgdesc="A GNU tool for automatically creating Makefiles" arch=('any') license=('spdx:GPL-2.0-or-later') @@ -12,7 +12,7 @@ msys2_references=( "cpe: cpe:/a:gnu:automake" ) depends=('perl' 'bash') -makedepends=('autoconf' 'make') +makedepends=('autoconf' 'make' 'texinfo') checkdepends=('dejagnu') source=(https://ftp.gnu.org/gnu/automake/automake-${pkgver}.tar.xz automake1.14-documentation.patch @@ -22,7 +22,6 @@ sha256sums=('a9b4f04b8b69cac2e832a38a718943aa976dbdad0097211f8b3448afdacf0669' 'd08bf56f22e948896a93fb33c81a2a1b3c469487d99b56da60fa915b61cafb09' '76ac48cce5b6d48dfbd2659e3aeb10144acc932269c94fbed8d6335da773090b' '34ec3ef555b78e8f19cd87d582102f07a705cd3b98919489274f2dabbd6aade6') -replace=('automake') prepare() { cd ${srcdir}/automake-${pkgver} diff --git a/automake1.15/PKGBUILD b/automake1.15/PKGBUILD index 9b1a757a9fc..c4e135503a0 100644 --- a/automake1.15/PKGBUILD +++ b/automake1.15/PKGBUILD @@ -2,7 +2,7 @@ pkgname=automake1.15 pkgver=1.15.1 -pkgrel=4 +pkgrel=5 pkgdesc="A GNU tool for automatically creating Makefiles" arch=('any') license=('spdx:GPL-2.0-or-later') @@ -12,7 +12,7 @@ msys2_references=( "cpe: cpe:/a:gnu:automake" ) depends=('perl' 'bash') -makedepends=('autoconf' 'make') +makedepends=('autoconf' 'make' 'texinfo') checkdepends=('dejagnu') source=(https://ftp.gnu.org/gnu/automake/automake-${pkgver}.tar.xz automake1.15-documentation.patch @@ -24,7 +24,6 @@ sha256sums=('af6ba39142220687c500f79b4aa2f181d9b24e4f8d8ec497cea4ba26c64bedaf' '18073dbcf0939419906cdb9714171f5da0ad899af229304e50321d07a19e0d26') validpgpkeys=('E1622F96D2BB4E58018EEF9860F906016E407573' # Stefano Lattarini 'F2A38D7EEB2B66405761070D0ADEE10094604D37') # Mathieu Lirzin -replace=('automake') # Helper macros to help make tasks easier # apply_patch_with_msg() { diff --git a/automake1.16/PKGBUILD b/automake1.16/PKGBUILD index bbdec39d10e..7d462e90885 100644 --- a/automake1.16/PKGBUILD +++ b/automake1.16/PKGBUILD @@ -2,7 +2,7 @@ pkgname=automake1.16 pkgver=1.16.5 -pkgrel=1 +pkgrel=2 pkgdesc="A GNU tool for automatically creating Makefiles" arch=('any') license=('spdx:GPL-2.0-or-later') @@ -12,7 +12,7 @@ msys2_references=( "cpe: cpe:/a:gnu:automake" ) depends=('perl' 'bash') -makedepends=('autoconf' 'make') +makedepends=('autoconf' 'make' 'texinfo') checkdepends=('dejagnu') source=(https://ftp.gnu.org/gnu/automake/automake-${pkgver}.tar.xz{,.sig} automake-1.16.1-documentation.patch @@ -24,7 +24,6 @@ sha256sums=('f01d58cd6d9d77fbdca9eb4bbd5ead1988228fdb73d6f7a201f5f8d6b118b469' validpgpkeys=('E1622F96D2BB4E58018EEF9860F906016E407573' # Stefano Lattarini 'F2A38D7EEB2B66405761070D0ADEE10094604D37' # Mathieu Lirzin '155D3FC500C834486D1EEA677FD9FCCB000BEEEE') # Jim Meyering -replace=('automake') # Helper macros to help make tasks easier # apply_patch_with_msg() { diff --git a/automake1.17/PKGBUILD b/automake1.17/PKGBUILD index 3e6700a5b73..f236a807d40 100644 --- a/automake1.17/PKGBUILD +++ b/automake1.17/PKGBUILD @@ -25,7 +25,6 @@ sha256sums=('8920c1fc411e13b90bf704ef9db6f29d540e76d232cb3b2c9f4dc4cc599bd990' validpgpkeys=('E1622F96D2BB4E58018EEF9860F906016E407573' # Stefano Lattarini 'F2A38D7EEB2B66405761070D0ADEE10094604D37' # Mathieu Lirzin '155D3FC500C834486D1EEA677FD9FCCB000BEEEE') # Jim Meyering -replace=('automake') # Helper macros to help make tasks easier # apply_patch_with_msg() { diff --git a/automake1.18/PKGBUILD b/automake1.18/PKGBUILD index 3f495dceb10..29b75a9b0ae 100644 --- a/automake1.18/PKGBUILD +++ b/automake1.18/PKGBUILD @@ -3,7 +3,7 @@ _basever=1.18 pkgname=automake${_basever} pkgver=${_basever}.1 -pkgrel=1 +pkgrel=2 pkgdesc="A GNU tool for automatically creating Makefiles" arch=('any') license=('spdx:GPL-2.0-or-later') @@ -24,7 +24,6 @@ sha256sums=('168aa363278351b89af56684448f525a5bce5079d0b6842bd910fdd3f1646887' '3b066deda7ecb755a4cab8263f7fe7d5f44cf7790b45b5dcb48e5232f800856c' 'a6b3a7099fb23ddc3d1402b16df32cf8f21bb63ca6b9314ff7caff5869b6ed50') validpgpkeys=('17D3311B14BC0F248267BF020716748A30D155AD') # Karl Berry -replace=('automake') # Helper macros to help make tasks easier # apply_patch_with_msg() { diff --git a/autotools-wrappers/PKGBUILD b/autotools-wrappers/PKGBUILD index bfef0062584..160047dec45 100644 --- a/autotools-wrappers/PKGBUILD +++ b/autotools-wrappers/PKGBUILD @@ -3,7 +3,7 @@ pkgbase=autotools-wrappers pkgname=('automake-wrapper' 'autoconf-wrapper' ) pkgver=20260320 -pkgrel=1 +pkgrel=2 arch=('any') makedepends=('git') url="https://gitweb.gentoo.org/proj/autotools-wrappers.git/" @@ -51,7 +51,6 @@ package_autoconf-wrapper() { 'autoconf2.13') provides=("autoconf") conflicts=("autoconf") - replaces=("autoconf") mkdir -p ${pkgdir}/usr/bin for prog in autoconf autoheader autom4te autoreconf autoscan autoupdate ifnames diff --git a/autotools/PKGBUILD b/autotools/PKGBUILD index a1710242658..51fe9fcc23a 100644 --- a/autotools/PKGBUILD +++ b/autotools/PKGBUILD @@ -1,15 +1,15 @@ # Maintainer: Christoph Reiter pkgname=autotools -pkgver=2022.01.16 -pkgrel=2 +pkgver=2026.08.04 +pkgrel=1 pkgdesc="A meta package for the GNU autotools build system" arch=('any') license=('spdx:BSD-3-Clause') url="https://www.gnu.org/software/automake/manual/html_node/Autotools-Introduction.html" depends=( - 'autoconf-wrapper' - 'automake-wrapper' + 'autoconf' + 'automake' 'gettext' 'libtool' 'make' @@ -18,5 +18,5 @@ depends=( msys2_references=( 'internal' ) -source=(README.md) +source=('README.md') sha256sums=('de6ec37dee4875be8e2759dea340f6c1bbdc04457333dc666dcb81b00962a145') diff --git a/crosstool-ng/PKGBUILD b/crosstool-ng/PKGBUILD index efa9e484cf7..7c21a5648da 100644 --- a/crosstool-ng/PKGBUILD +++ b/crosstool-ng/PKGBUILD @@ -8,7 +8,7 @@ arch=('i686' 'x86_64') url="http://www.crosstool-ng.org/" msys2_repository_url='https://github.com/crosstool-ng/crosstool-ng' license=("spdx:MIT") -makedepends=("autoconf" "automake-wrapper" "binutils" "bison" +makedepends=("autoconf" "automake" "binutils" "bison" "flex" "gettext-devel" "git" "gcc" "gperf" "patch" "ncurses-devel" "tar" "texinfo" "wget" "xz" 'autotools' 'help2man') diff --git a/libtool/0006-Pass-various-flags-to-GCC.patch b/libtool/0006-Pass-various-flags-to-GCC.patch index 87e67adc26a..1f5adaec93a 100644 --- a/libtool/0006-Pass-various-flags-to-GCC.patch +++ b/libtool/0006-Pass-various-flags-to-GCC.patch @@ -11,19 +11,19 @@ diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in index e3c77f29..0560159b 100644 --- a/build-aux/ltmain.in +++ b/build-aux/ltmain.in -@@ -5460,6 +5460,7 @@ func_mode_link () +@@ -5712,6 +5712,7 @@ # -static-libsan Link with static sanitizer runtimes (Clang) # -no-canonical-prefixes Do not expand any symbolic links # -fuse-ld=* Linker select flags for GCC + # -shared-* direct GCC to link specific libraries dynamically # -static-* direct GCC to link specific libraries statically # -fcilkplus Cilk Plus language extension features for C/C++ - # -rtlib=* select c runtime lib with clang -@@ -5474,6 +5475,7 @@ func_mode_link () + # -resource-dir=* for selecting compiler resource directory with clang +@@ -5727,6 +5728,7 @@ -specs=*|-fsanitize=*|-fno-sanitize*|-shared-libsan|-static-libsan| \ -ffile-prefix-map=*|-fdebug-prefix-map=*|-fmacro-prefix-map=*|-fprofile-prefix-map=*| \ -fdiagnostics-color*|-frecord-gcc-switches| \ + -ffast-math|-fgnu-tm|-ftree-parallelize-loops=*|-funsafe-math-optimizations|-fvtable-verify*|-shared-*| \ - -fuse-ld=*|-static-*|-fcilkplus|-Wa,*|-Werror|-Werror=*) + -fuse-ld=*|-static-*|-fcilkplus|-W*) func_quote_arg pretty "$arg" arg=$func_quote_arg_result diff --git a/libtool/0007-msysize.patch b/libtool/0007-msysize.patch index 1d437a52c40..a8a915baa46 100644 --- a/libtool/0007-msysize.patch +++ b/libtool/0007-msysize.patch @@ -61,3 +61,14 @@ diff -Nur libtool-2.5.4.orig/m4/libtool.m4 libtool-2.5.4/m4/libtool.m4 m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) ;; +--- libtool-2.6.2/libtool-next-version.in.orig 2026-07-16 21:56:58.000000000 +0800 ++++ libtool-2.6.2/libtool-next-version.in 2026-07-20 13:37:19.556853800 +0800 +@@ -182,7 +182,7 @@ + *) nm_filter="grep '|\\(GLOB\\|WEAK\\)' | grep -v '|UNDEF' | grep -v '|SUNW' | sed -e 's/^.*|//'" ;; + esac + ;; +- CYGWIN*) nm_filter="sed -n -e 's/^.* T _//p'" ;; ++ CYGWIN* | MSYS* | MINGW*) nm_filter="sed -n -e 's/^.* T _//p'" ;; + *) func_fatal_error "unknown OS - don't know how to interpret the 'nm' output" ;; + esac + nm_filter="$nm_filter | LC_ALL=C sort -u" diff --git a/libtool/0011-Pick-up-clang_rt-static-archives-compiler-internal-l.patch b/libtool/0011-Pick-up-clang_rt-static-archives-compiler-internal-l.patch deleted file mode 100644 index ca70d96707e..00000000000 --- a/libtool/0011-Pick-up-clang_rt-static-archives-compiler-internal-l.patch +++ /dev/null @@ -1,29 +0,0 @@ -From fc658ffc5fed2dfbf35a85f8e60742f63b7cf203 Mon Sep 17 00:00:00 2001 -From: Manoj Gupta -Date: Wed, 10 Oct 2018 10:50:23 +0300 -Subject: [PATCH] Pick up clang_rt static archives compiler internal libraries - -Libtool checks only for libraries linked as -l* when trying to -find internal compiler libraries. Clang, however uses the absolute -path to link its internal libraries e.g. compiler_rt. This patch -handles clang's statically linked libraries when finding internal -compiler libraries. -https://crbug.com/749263 -https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27866 ---- - m4/libtool.m4 | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/m4/libtool.m4 b/m4/libtool.m4 -index 93a54713..2457eec5 100644 ---- a/m4/libtool.m4 -+++ b/m4/libtool.m4 -@@ -7601,7 +7601,7 @@ if AC_TRY_EVAL(ac_compile); then - for p in `eval "$output_verbose_link_cmd"`; do - case $prev$p in - -- -L* | -R* | -l*) -+ -L* | -R* | -l* | */libclang_rt.*.a) - # Some compilers place space between "-{L,R,l}" and the path. - # Remove the space. - if test x-L = x"$p" || diff --git a/libtool/0013-Allow-statically-linking-compiler-support-libraries-.patch b/libtool/0013-Allow-statically-linking-compiler-support-libraries-.patch deleted file mode 100644 index b75b191a7cb..00000000000 --- a/libtool/0013-Allow-statically-linking-compiler-support-libraries-.patch +++ /dev/null @@ -1,38 +0,0 @@ -From b9f77cae8cfbe850e58cac686fcb4d246b5bfc51 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Martin=20Storsj=C3=B6?= -Date: Mon, 19 Aug 2019 13:34:51 +0300 -Subject: [PATCH] Allow statically linking compiler support libraries when - linking a library - -For cases with deplibs_check_method="file_magic ..." (as it is for mingw), -there were previously no way that a static library could be accepted -here. ---- - build-aux/ltmain.in | 11 +++++++++-- - 1 file changed, 9 insertions(+), 2 deletions(-) - -diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in -index e2fb2633..db4d775c 100644 ---- a/build-aux/ltmain.in -+++ b/build-aux/ltmain.in -@@ -5870,8 +5870,15 @@ func_mode_link () - fi - case $linkmode in - lib) -- # Linking convenience modules into shared libraries is allowed, -- # but linking other static libraries is non-portable. -+ # Linking convenience modules and compiler provided static libraries -+ # into shared libraries is allowed, but linking other static -+ # libraries is non-portable. -+ case $deplib in -+ */libgcc*.$libext | */libclang_rt*.$libext) -+ deplibs="$deplib $deplibs" -+ continue -+ ;; -+ esac - case " $dlpreconveniencelibs " in - *" $deplib "*) ;; - *) --- -2.17.1 - diff --git a/libtool/PKGBUILD b/libtool/PKGBUILD index 687150b6233..f6a77fdef75 100644 --- a/libtool/PKGBUILD +++ b/libtool/PKGBUILD @@ -2,8 +2,8 @@ pkgbase=libtool pkgname=('libtool' 'libltdl') -pkgver=2.5.4 -pkgrel=5 +pkgver=2.6.2 +pkgrel=1 pkgdesc="A generic library support script" arch=('i686' 'x86_64') url="https://www.gnu.org/software/libtool" @@ -13,8 +13,8 @@ msys2_references=( ) license=('spdx:LGPL-2.0-or-later WITH Libtool-exception') makedepends=( - "autoconf-wrapper" - "automake-wrapper" + "autoconf" + "automake" "gcc" "help2man" "m4" @@ -27,20 +27,16 @@ source=(https://ftp.gnu.org/gnu/libtool/${pkgbase}-${pkgver}.tar.xz{,.sig} 0005-libtool-include-process.h.patch 0006-Pass-various-flags-to-GCC.patch 0007-msysize.patch - 0011-Pick-up-clang_rt-static-archives-compiler-internal-l.patch - 0013-Allow-statically-linking-compiler-support-libraries-.patch 0014-Support-llvm-objdump-f-output.patch) -sha256sums=('f81f5860666b0bc7d84baddefa60d1cb9fa6fceb2398cc3baca6afaa60266675' +sha256sums=('2ef1067c16c97db930fd740cc9bc3d3ba9a583804ae5ac42cc3e8719e49e191e' 'SKIP' '67e4f2429dfe67499b1829d0a8312d9a043057db354307f8db41d9f967944346' 'd873306936060e6c72cf0f3c174131cc85debc2ea6dc924eabdf6e3a813c768e' '00f0b0429431a884b481eb92f4b138c50bc17eb09f0985d7ebfd4a0a50407eb6' '96538c6cb843f8673f4db8199402b4b02d9477d71c86df5f5e94e3e4d1347b54' '0dd70a4f955ed4cd94a0d13b784b7db7dddbd4d1d6ee5b092202f8b9496fd3eb' - '2cb1b61247a4632698ac7e26c496c3ad8c1b4fde080d301994dbddc0794a4bf4' - 'fca5986c0010b202ee65c69939815269bd46b3ce948d9222916985652da7e2af' - 'de68dc9387f47ee129f55b2f525a7d222374ddd8915f4f42af05f185b779b826' - '8069e887aeeab7491f15e00547fa66d9b9e86407f5a23f37a6d8c7d165de752e' + '882d73c7d42f6f2e4062c851e72b6bb185da95f9b47942be1c4c9099a41ac93f' + '228d6d847651ec3ae1c00d872dcf6382415985f6e94240daa445333a57707746' 'e62e836f018339974f5ef7cf81bc0a4252901158eb0824eb62d0270206093ad7') validpgpkeys=('7C5FBB96BE82B954AC20DF5F6EAC957F8EEB55C0' # Alex Ameen 'FA26CA784BE188927F22B99F6570EA01146F7354') # Ileana Dumitrescu @@ -66,8 +62,6 @@ prepare() { 0005-libtool-include-process.h.patch \ 0006-Pass-various-flags-to-GCC.patch \ 0007-msysize.patch \ - 0011-Pick-up-clang_rt-static-archives-compiler-internal-l.patch \ - 0013-Allow-statically-linking-compiler-support-libraries-.patch \ 0014-Support-llvm-objdump-f-output.patch autoconf -f @@ -78,8 +72,7 @@ build() { ./configure \ --build=${CHOST} \ - --prefix=/usr \ - lt_cv_sys_lib_dlsearch_path_spec="/usr/lib /lib" + --prefix=/usr make }