Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

libtool: update to 2.5.2 #4897

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

libtool: update to 2.5.2 #4897

wants to merge 1 commit into from

Conversation

ikspress
Copy link
Contributor

@ikspress ikspress commented Sep 12, 2024

Based on my previous PR (#4826).

The propose of this PR is as follows:

  • Refresh some patches
  • Rephrase PKGBUILD following mingw-w64-libtool
  • Run autoconf -f to regenerate some files with msys target support

Here is the difference between the original patches and the refreshed ones.

Original name Refreshed name Comments
0002-cygwin-mingw-Create-UAC-manifest-files.mingw.patch 0001-cygwin-mingw-Create-UAC-manifest-files.patch Refresh without any changes
0005-Fix-seems-to-be-moved.patch 0002-Fix-seems-to-be-moved.patch Refresh without any changes
0006-Fix-strict-ansi-vs-posix.patch 0003-Fix-STRICT_ANSI-vs-POSIX.patch Refresh without any changes
0013-Allow-statically-linking-compiler-support-libraries-.patch 0004-Allow-statically-linking-Flang-support-libraries.patch Remove '-' in file name
0010-libtool-2.4.2-include-process-h.patch 0005-libtool-include-process.h.patch Remove changes in ltmain.sh
0009-libtool-2.4.2.418-msysize.patch 0006-msysize.patch Remove changes in automatically generated files
0011-Pick-up-clang_rt-static-archives-compiler-internal-l.patch 0011-Pick-up-clang_rt-static-archives-compiler-internal.patch Refresh and remove "-l" in file name
0012-Prefer-response-files-over-linker-scripts-for-mingw-.patch 0012-Prefer-response-files-over-linker-scripts-for-mingw.patch Refresh and remove '-' in file name
0013-Allow-statically-linking-compiler-support-libraries-.patch 0013-Allow-statically-linking-compiler-support-libraries.patch Remove '-' in file name

@lazka
Copy link
Member

lazka commented Sep 12, 2024

Thanks, these patches were all removed because they are not relevant for cygwin? Or any other reason?

libtool/0003-Pass-various-runtime-library-flags-to-GCC.mingw.patch
libtool/0006-Fix-strict-ansi-vs-posix.patch
libtool/0007-fix-cr-for-awk-in-configure.all.patch
libtool/0011-Pick-up-clang_rt-static-archives-compiler-internal-l.patch
libtool/0015-Allow-statically-linking-Flang-support-libraries.patch

the rest looks good to me.

libtool/PKGBUILD Outdated Show resolved Hide resolved
@ikspress
Copy link
Contributor Author

ikspress commented Sep 13, 2024

libtool/0003-Pass-various-runtime-library-flags-to-GCC.mingw.patch

Actually, I don't know how to refresh it.

build-aux/ltmain.in

      -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| \
      -fuse-ld=*|-static-*|-fcilkplus|-Wa,*|-Werror|-Werror=*)

libtool had added most of these flags (except -shared-libgcc, -ftree-parallelize-loops=*, -fgnu-tm etc).

Additionally, I built binutils and gcc several times, they both works properly for me.

If this patch really needed, please tell me.

libtool/0007-fix-cr-for-awk-in-configure.all.patch

This patch seems fixes nothing. sed handles \r properly. \\r just prevent bash convert it to 0x0D.

libtool/0006-Fix-strict-ansi-vs-posix.patch

libtool/0011-Pick-up-clang_rt-static-archives-compiler-internal-l.patch

libtool/0015-Allow-statically-linking-Flang-support-libraries.patch

I revert them back in 7fdd2a9.

@mmuetzel
Copy link
Collaborator

Imho, it is a good thing that libtool is the same in MSYS2 and in the MinGW environments. Is there a good reason to no longer keep the patches in sync between the two?

@jeremyd2019
Copy link
Member

it at least used to be the case that the msys2 libtool script was frequently used while generating autoreconf for packages being built from MINGW-packages.

@ikspress
Copy link
Contributor Author

ikspress commented Sep 14, 2024

Imho, it is a good thing that libtool is the same in MSYS2 and in the MinGW environments. Is there a good reason to no longer keep the patches in sync between the two?

it at least used to be the case that the msys2 libtool script was frequently used while generating autoreconf for packages being built from MINGW-packages.

Oh, yes. Maybe I'm wrong. My removal of these patches causes inconsistent behavior between the two libtool. autoconf always add msys target support, but mingw-w64-libtool broken it without 0006-msysize.patch.

@mmuetzel
Copy link
Collaborator

Afaict, the 0003-patch hasn't been upstreamed (at least some parts of it haven't). See:
https://git.savannah.gnu.org/cgit/libtool.git/tree/build-aux/ltmain.in#n5441
Please, keep adding the flags that are handled by the existing patch. I.e., -ftree-parallelize-loops=*, -fgnu-tm, -ffast-math' , '-funsafe-math-optimizations, -shared-libgcc. (The remaining flags are already covered by the new upstream "glob" expression iiuc.)
If you think (some) of these flags no longer need to be handled, please be specific about that here and/or in the commit message.

IIUC, the current patch names are the ones that are generated by a git format-patch command. Is there a reason why you renamed these files?

@lazka
Copy link
Member

lazka commented Sep 17, 2024

it at least used to be the case that the msys2 libtool script was frequently used while generating autoreconf for packages being built from MINGW-packages.

it used to be a case for some times, but was reverted via msys2/MINGW-packages@31cf2ca (see commit message for details)

In theory this package could skip mingw specific packages, but you need to rebase them anyway, so it's probably easier to just keep both libtool packages in sync.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants