diff options
author | Tor Lillqvist <tml@collabora.com> | 2017-09-22 16:51:22 +0300 |
---|---|---|
committer | Tor Lillqvist <tml@collabora.com> | 2017-09-22 16:51:22 +0300 |
commit | c32d54f244b0a18e0dcfcfceae140499e2dc3bbe (patch) | |
tree | 80b3edfee336f1724245508498abfc05eda8919b /autogen.sh | |
parent | 7df3faa8ebb05cdc36113d07910498d4ba180856 (diff) |
Revert "Goodbye autogen.lastrun"
Welcome back autogen.lastrun. I just don't have the energy to convince
tinderbox maintainers to fix their scripts. Oh well.
This reverts commit 7496c83374f68148c62ac23a6e4c4c314d67273d.
Diffstat (limited to 'autogen.sh')
-rwxr-xr-x | autogen.sh | 47 |
1 files changed, 45 insertions, 2 deletions
diff --git a/autogen.sh b/autogen.sh index 02d160bdca92..a4bab811a36b 100755 --- a/autogen.sh +++ b/autogen.sh @@ -1,7 +1,15 @@ : # +# This script checks various configure parameters and uses three files: +# * autogen.input (ro) +# * autogen.lastrun (rw) +# * autogen.lastrun.bak (rw) +# # If _no_ parameters: -# Read args from autogen.input +# Read args from autogen.input or autogen.lastrun +# Else +# Backup autogen.lastrun as autogen.lastrun.bak +# Write autogen.lastrun with new commandline args # # Run configure with checked args # @@ -178,7 +186,7 @@ unlink ("configure"); system ("autoconf -I ${src_path}") && die "Failed to run autoconf"; die "Failed to generate the configure script" if (! -f "configure"); -# Handle help arguments first +# Handle help arguments first, so we don't clobber autogen.lastrun for my $arg (@ARGV) { if ($arg =~ /^(--help|-h|-\?)$/) { print STDOUT "autogen.sh - libreoffice configuration helper\n"; @@ -193,10 +201,24 @@ for my $arg (@ARGV) { my @cmdline_args = (); my $input = "autogen.input"; +my $lastrun = "autogen.lastrun"; if (!@ARGV) { if (-f $input) { + if (-f $lastrun) { + print STDERR <<WARNING; +******************************************************************** +* +* Reading $input and ignoring $lastrun! +* Consider removing $lastrun to get rid of this warning. +* +******************************************************************** +WARNING + } @cmdline_args = read_args ($input); + } elsif (-f $lastrun) { + print STDERR "Reading $lastrun. Please rename it to $input to avoid this message.\n"; + @cmdline_args = read_args ($lastrun); } } else { if (-f $input) { @@ -243,6 +265,27 @@ for my $arg (@args) { if (defined $ENV{NOCONFIGURE}) { print "Skipping configure process."; } else { + # Save autogen.lastrun only if we did get some arguments on the command-line + if (! -f $input && @ARGV) { + if (scalar(@cmdline_args) > 0) { + # if there's already an autogen.lastrun, make a backup first + if (-e $lastrun) { + open (my $fh, $lastrun) || warn "Can't open $lastrun.\n"; + open (BAK, ">$lastrun.bak") || warn "Can't create backup file $lastrun.bak.\n"; + while (<$fh>) { + print BAK; + } + close (BAK) && close ($fh); + } + # print "Saving command-line args to $lastrun\n"; + my $fh; + open ($fh, ">autogen.lastrun") || die "Can't open autogen.lastrun: $!"; + for my $arg (@cmdline_args) { + print $fh "$arg\n"; + } + close ($fh); + } + } push @args, "--srcdir=$src_path"; push @args, "--enable-option-checking=$option_checking"; |