build: New configure option --with-libtool-modification.
* Makefile.am (EXTRA_DIST): Add build-aux/libtool-patch.sed.
* build-aux/libtool-patch.sed: New.
* configure.ac (--with-libtool-modification): New.
* build-aux/ltmain.sh: Revert our own local modification.
--
Fixes-commit: e622e36f1f
GnuPG-bug-id: 6619
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
This commit is contained in:
parent
40ca3d5896
commit
dacbd51c3f
@ -36,6 +36,7 @@ DISTCHECK_CONFIGURE_FLAGS =
|
|||||||
|
|
||||||
EXTRA_DIST = autogen.sh autogen.rc gpgme.spec.in \
|
EXTRA_DIST = autogen.sh autogen.rc gpgme.spec.in \
|
||||||
ChangeLog-2011 m4/ChangeLog-2011 \
|
ChangeLog-2011 m4/ChangeLog-2011 \
|
||||||
|
build-aux/libtool-patch.sed \
|
||||||
conf/whatisthis VERSION LICENSES
|
conf/whatisthis VERSION LICENSES
|
||||||
|
|
||||||
# This artificial line is to put a dependency to conf/config.h for 'all'
|
# This artificial line is to put a dependency to conf/config.h for 'all'
|
||||||
|
68
build-aux/libtool-patch.sed
Normal file
68
build-aux/libtool-patch.sed
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
#
|
||||||
|
# This is a sed script to patch the generated libtool,
|
||||||
|
# which works well against both of libtool 2.4.2 and 2.4.7.
|
||||||
|
#
|
||||||
|
# You may use this work under the terms of a Creative Commons CC0 1.0
|
||||||
|
# License/Waiver.
|
||||||
|
#
|
||||||
|
# CC0 Public Domain Dedication
|
||||||
|
# https://creativecommons.org/publicdomain/zero/1.0/
|
||||||
|
|
||||||
|
#
|
||||||
|
# This sed script applys two hunks of the patch:
|
||||||
|
#
|
||||||
|
# Part1: after the comment "# bleh windows"
|
||||||
|
# Part2: after the comment "#extension on DOS 8.3..."
|
||||||
|
#
|
||||||
|
# Only when those two parts are patched correctly, it exits with 0 or
|
||||||
|
# else, it exits with 1
|
||||||
|
#
|
||||||
|
|
||||||
|
# Find the part 1, by the comment
|
||||||
|
/^[ \t]*# bleh windows$/b part1_start
|
||||||
|
# Not found the part1, raise an error
|
||||||
|
$ q1
|
||||||
|
b
|
||||||
|
|
||||||
|
:part1_start
|
||||||
|
n
|
||||||
|
# The first line in the part 1 must be the begining of the case statement.
|
||||||
|
/^[ \t]*case \$host in$/! q1
|
||||||
|
n
|
||||||
|
# Insert the entry for x86_64-*mingw32*, for modified versuffix.
|
||||||
|
i\
|
||||||
|
x86_64-*mingw32*)
|
||||||
|
i\
|
||||||
|
func_arith $current - $age
|
||||||
|
i\
|
||||||
|
major=$func_arith_result
|
||||||
|
i\
|
||||||
|
versuffix="6-$major"
|
||||||
|
i\
|
||||||
|
;;
|
||||||
|
:part1_0
|
||||||
|
# Find the end of the case statement
|
||||||
|
/^[ \t]*esac$/b find_part2
|
||||||
|
# Not found the end of the case statement, raise an error
|
||||||
|
$ q1
|
||||||
|
n
|
||||||
|
b part1_0
|
||||||
|
|
||||||
|
:find_part2
|
||||||
|
/^[ \t]*# extension on DOS 8.3 file.*systems.$/b part2_process
|
||||||
|
# Not found the part2, raise an error
|
||||||
|
$ q1
|
||||||
|
n
|
||||||
|
b find_part2
|
||||||
|
|
||||||
|
:part2_process
|
||||||
|
$ q1
|
||||||
|
s/^[ \t]*\(versuffix=\)\(.*\)\(-$major\)\(.*\)$/\t case \$host in\n\t x86_64-*mingw32*)\n\t \1\26\3\4\n\t ;;\n\t *)\n\t \1\2\3\4\n\t ;;\n\t esac/
|
||||||
|
t part2_done
|
||||||
|
n
|
||||||
|
b part2_process
|
||||||
|
|
||||||
|
:part2_done
|
||||||
|
$ q0
|
||||||
|
n
|
||||||
|
b part2_done
|
@ -6766,11 +6766,6 @@ func_mode_link ()
|
|||||||
elif test -n "$soname_spec"; then
|
elif test -n "$soname_spec"; then
|
||||||
# bleh windows
|
# bleh windows
|
||||||
case $host in
|
case $host in
|
||||||
x86_64-*mingw32*)
|
|
||||||
func_arith $current - $age
|
|
||||||
major=$func_arith_result
|
|
||||||
versuffix="6-$major"
|
|
||||||
;;
|
|
||||||
*cygwin* | mingw* | *cegcc*)
|
*cygwin* | mingw* | *cegcc*)
|
||||||
func_arith $current - $age
|
func_arith $current - $age
|
||||||
major=$func_arith_result
|
major=$func_arith_result
|
||||||
@ -7504,14 +7499,6 @@ func_mode_link ()
|
|||||||
func_arith $current - $age
|
func_arith $current - $age
|
||||||
major=$func_arith_result
|
major=$func_arith_result
|
||||||
versuffix="-$major"
|
versuffix="-$major"
|
||||||
case $host in
|
|
||||||
x86_64-*mingw32*)
|
|
||||||
versuffix="6-$major"
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
versuffix="-$major"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
;;
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
|
38
configure.ac
38
configure.ac
@ -206,6 +206,44 @@ esac
|
|||||||
|
|
||||||
AM_CONDITIONAL(HAVE_LD_VERSION_SCRIPT, test "$have_ld_version_script" = "yes")
|
AM_CONDITIONAL(HAVE_LD_VERSION_SCRIPT, test "$have_ld_version_script" = "yes")
|
||||||
|
|
||||||
|
#
|
||||||
|
# Specify how we support our local modification of libtool for Windows
|
||||||
|
# 64-bit. Options are:
|
||||||
|
#
|
||||||
|
# (1) apply: when appying patch fails, it results failure of entire build
|
||||||
|
# (2) never: never apply the patch (no try)
|
||||||
|
# (3) try: use patched if it goes well, use original if fails
|
||||||
|
#
|
||||||
|
AC_ARG_WITH([libtool-modification],
|
||||||
|
AS_HELP_STRING([--with-libtool-modification=apply|never|try],
|
||||||
|
[how to handle libtool modification (default=apply)]),
|
||||||
|
build_libtool_modification=$withval,
|
||||||
|
build_libtool_modification=apply)
|
||||||
|
|
||||||
|
#
|
||||||
|
# Apply a patch (locally maintained one of ours) to libtool
|
||||||
|
#
|
||||||
|
case $host in
|
||||||
|
x86_64-*mingw32*)
|
||||||
|
AC_CONFIG_COMMANDS([libtool-patch],[[
|
||||||
|
if test "$build_selection" = never; then
|
||||||
|
echo "patch not applied"
|
||||||
|
elif (mv -f libtool libtool.orig; \
|
||||||
|
sed -f $srcdir/build-aux/libtool-patch.sed libtool.orig >libtool); then
|
||||||
|
echo "applied successfully"
|
||||||
|
elif test "$build_selection" = try; then
|
||||||
|
mv -f libtool.orig libtool
|
||||||
|
echo "patch failed, thus, using original"
|
||||||
|
else
|
||||||
|
echo "patch failed"
|
||||||
|
as_fn_exit 1
|
||||||
|
fi
|
||||||
|
]],[build_selection=$build_libtool_modification])
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
GPG_DEFAULT=no
|
GPG_DEFAULT=no
|
||||||
GPGSM_DEFAULT=no
|
GPGSM_DEFAULT=no
|
||||||
GPGCONF_DEFAULT=no
|
GPGCONF_DEFAULT=no
|
||||||
|
Loading…
Reference in New Issue
Block a user