]> asedeno.scripts.mit.edu Git - PuTTY.git/commitdiff
Add a -U option to mkfiles.pl, which is just like -u except that it
authorSimon Tatham <anakin@pobox.com>
Sat, 20 Aug 2011 07:56:19 +0000 (07:56 +0000)
committerSimon Tatham <anakin@pobox.com>
Sat, 20 Aug 2011 07:56:19 +0000 (07:56 +0000)
runs configure at the top level rather than the unix subdirectory. I'm
getting into the idea of even doing it that way myself, because then I
can do VPATH builds from the same source tree elsewhere.

(Autoconf seems to be fine with doing multiple VPATH builds from the
same source tree in different build directories, but gets upset if you
try to do a VPATH build when you've done a normal build in the real
configure directory. So this way I do what autoconf sees as _only_
VPATH builds.)

[originally from svn r9269]

mkfiles.pl

index 29c248e86126ddeea7f01839c1a2c8d007c9b624..830de49187012449a042960b52558b7725154ea6 100755 (executable)
@@ -20,16 +20,19 @@ use FileHandle;
 use File::Basename;
 use Cwd;
 
-if ($#ARGV >= 0 and $ARGV[0] eq "-u") {
+if ($#ARGV >= 0 and ($ARGV[0] eq "-u" or $ARGV[0] eq "-U")) {
     # Convenience for Unix users: -u means that after we finish what
     # we're doing here, we also run mkauto.sh and then 'configure' in
     # the Unix subdirectory. So it's a one-stop shop for regenerating
     # the actual end-product Unix makefile.
     #
     # Arguments supplied after -u go to configure.
+    #
+    # -U is identical, but runs 'configure' at the _top_ level, for
+    # people who habitually do that.
+    $do_unix = ($ARGV[0] eq "-U" ? 2 : 1);
     shift @ARGV;
     @confargs = @ARGV;
-    $do_unix = 1;
 }
 
 open IN, "Recipe" or do {
@@ -1539,8 +1542,10 @@ if ($do_unix) {
     chdir $orig_dir;
     system "./mkauto.sh";
     die "mkfiles.pl: mkauto.sh returned $?\n" if $? > 0;
-    chdir ($targetdir = dirname($makefiles{"am"}))
-        or die "$targetdir: chdir: $!\n";
+    if ($do_unix == 1) {
+        chdir ($targetdir = dirname($makefiles{"am"}))
+            or die "$targetdir: chdir: $!\n";
+    }
     system "./configure", @confargs;
     die "mkfiles.pl: configure returned $?\n" if $? > 0;
 }