From: Bruno Haible Date: Thu, 5 Jun 2025 09:05:29 +0000 (+0200) Subject: build: Fix "make install" in MSVC builds with --enable-shared. X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fheads%2F0.22.x;p=thirdparty%2Fgettext.git build: Fix "make install" in MSVC builds with --enable-shared. The problem was that intl-8.dll was not installed with execute permissions. * gettext-runtime/intl/Makefile.am (install-exec-libintl): Use $(INSTALL), not $(INSTALL_DATA), with libtool --mode=install. * INSTALL.windows: Remove constraint to use --disable-shared on MSVC. --- diff --git a/INSTALL.windows b/INSTALL.windows index 3aa1c004a..c1f715970 100644 --- a/INSTALL.windows +++ b/INSTALL.windows @@ -78,10 +78,6 @@ There are three ways to create binaries of this package for Microsoft Windows: (api-ms-win*.dll) through the Windows Update mechanism, see https://support.microsoft.com/en-us/kb/2999226 . - Another constraint is that shared libraries built as part of this package - may not work (at least with MSVC 14.0). Therefore, you will need to pass - the configure option '--disable-shared' when building this package. - This recipe requires MS Visual C/C++ 9.0 or newer. You don't need the Visual Studio IDE, just the C/C++ tool chain. As of 2016, you can install the MS Visual C/C++ 14.0 tool chain from diff --git a/gettext-runtime/intl/Makefile.am b/gettext-runtime/intl/Makefile.am index 2bed67b75..682884a06 100644 --- a/gettext-runtime/intl/Makefile.am +++ b/gettext-runtime/intl/Makefile.am @@ -1,6 +1,6 @@ ## Makefile for the gettext-runtime/intl and gettext-tools/intl subdirectories ## of GNU gettext. -## Copyright (C) 1995-1998, 2000-2007, 2009-2023 Free Software Foundation, Inc. +## Copyright (C) 1995-2025 Free Software Foundation, Inc. ## ## This program is free software: you can redistribute it and/or modify ## it under the terms of the GNU Lesser General Public License as published by @@ -462,7 +462,7 @@ install-exec-local: install-exec-libintl install-exec-libintl: libintl.la $(mkdir_p) $(DESTDIR)$(libdir) $(LIBTOOL) --mode=install \ - $(INSTALL_DATA) libintl.la $(DESTDIR)$(libdir)/libintl.la; \ + $(INSTALL) libintl.la $(DESTDIR)$(libdir)/libintl.la; \ if test "@RELOCATABLE@" = yes; then \ dependencies=`sed -n -e 's,^dependency_libs=\(.*\),\1,p' < $(DESTDIR)$(libdir)/libintl.la | sed -e "s,^',," -e "s,'\$$,,"`; \ if test -n "$$dependencies"; then \