From f6c581cc3ef85ee1b26a02456bcbf0bf52438a23 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Tue, 24 Mar 2015 13:13:01 +0000 Subject: [PATCH] automake: portability fixes The rework of the host tools discovery caused automake to embed absolute paths to staging_dir/host/bin/perl into the shebang of the generated automake executables. Switch to the portable "/usr/bin/env perl" and enable global warnings through "$^W" instead of the "-w" interpreter argument. Signed-off-by: Jo-Philipp Wich SVN-Revision: 44972 --- tools/automake/Makefile | 4 +- tools/automake/patches/000-relocatable.patch | 58 ++++++++++++++++++- ...clocal-skip-not-existing-directories.patch | 2 +- 3 files changed, 59 insertions(+), 5 deletions(-) diff --git a/tools/automake/Makefile b/tools/automake/Makefile index 6395d84387..0eea101983 100644 --- a/tools/automake/Makefile +++ b/tools/automake/Makefile @@ -19,7 +19,9 @@ HOST_CONFIGURE_ARGS += \ --datarootdir=$(STAGING_DIR_HOST)/share \ --disable-silent-rules -HOST_CONFIGURE_VARS += am_cv_prog_PERL_ithreads=no +HOST_CONFIGURE_VARS += \ + PERL="/usr/bin/env perl" \ + am_cv_prog_PERL_ithreads=no define Host/Configure (cd $(HOST_BUILD_DIR); $(AM_TOOL_PATHS) STAGING_DIR="" ./bootstrap.sh) diff --git a/tools/automake/patches/000-relocatable.patch b/tools/automake/patches/000-relocatable.patch index 8e9ee37db4..59864f2ad5 100644 --- a/tools/automake/patches/000-relocatable.patch +++ b/tools/automake/patches/000-relocatable.patch @@ -11,7 +11,21 @@ # We need at least this version for CLONE support. --- a/bin/aclocal.in +++ b/bin/aclocal.in -@@ -27,7 +27,7 @@ eval 'case $# in 0) exec @PERL@ -S "$0"; +@@ -1,10 +1,12 @@ +-#!@PERL@ -w ++#!@PERL@ + # -*- perl -*- + # @configure_input@ + + eval 'case $# in 0) exec @PERL@ -S "$0";; *) exec @PERL@ -S "$0" "$@";; esac' + if 0; + ++$^W = 1; ++ + # aclocal - create aclocal.m4 by scanning configure.ac + + # Copyright (C) 1996-2014 Free Software Foundation, Inc. +@@ -27,7 +29,7 @@ eval 'case $# in 0) exec @PERL@ -S "$0"; BEGIN { @@ -20,7 +34,7 @@ unless @Aclocal::perl_libdirs; unshift @INC, @Aclocal::perl_libdirs; } -@@ -69,8 +69,8 @@ $perl_threads = 0; +@@ -69,8 +71,8 @@ $perl_threads = 0; # ACLOCAL_PATH environment variable, and reset with the '--system-acdir' # option. my @user_includes = (); @@ -33,7 +47,21 @@ my $install = 0; --- a/bin/automake.in +++ b/bin/automake.in -@@ -31,7 +31,7 @@ use strict; +@@ -1,10 +1,12 @@ +-#!@PERL@ -w ++#!@PERL@ + # -*- perl -*- + # @configure_input@ + + eval 'case $# in 0) exec @PERL@ -S "$0";; *) exec @PERL@ -S "$0" "$@";; esac' + if 0; + ++$^W = 1; ++ + # automake - create Makefile.in from Makefile.am + # Copyright (C) 1994-2014 Free Software Foundation, Inc. + +@@ -31,7 +33,7 @@ use strict; BEGIN { @@ -42,3 +70,27 @@ unless @Automake::perl_libdirs; unshift @INC, @Automake::perl_libdirs; +--- a/t/wrap/aclocal.in ++++ b/t/wrap/aclocal.in +@@ -1,6 +1,8 @@ +-#!@PERL@ -w ++#!@PERL@ + # @configure_input@ + ++$^W = 1; ++ + # Copyright (C) 2012-2014 Free Software Foundation, Inc. + + # This program is free software; you can redistribute it and/or modify +--- a/t/wrap/automake.in ++++ b/t/wrap/automake.in +@@ -1,6 +1,8 @@ +-#!@PERL@ -w ++#!@PERL@ + # @configure_input@ + ++$^W = 1; ++ + # Copyright (C) 2012-2014 Free Software Foundation, Inc. + + # This program is free software; you can redistribute it and/or modify diff --git a/tools/automake/patches/100-aclocal-skip-not-existing-directories.patch b/tools/automake/patches/100-aclocal-skip-not-existing-directories.patch index caaad084a4..ad019ddd1a 100644 --- a/tools/automake/patches/100-aclocal-skip-not-existing-directories.patch +++ b/tools/automake/patches/100-aclocal-skip-not-existing-directories.patch @@ -1,6 +1,6 @@ --- a/bin/aclocal.in +++ b/bin/aclocal.in -@@ -354,6 +354,12 @@ sub scan_m4_dirs ($$@) +@@ -356,6 +356,12 @@ sub scan_m4_dirs ($$@) foreach my $m4dir (@dirlist) {