chiark
/
gitweb
/
~ian
/
subdirmk.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
9d33656
)
fix out of tree builds
author
Ian Jackson
<ijackson@chiark.greenend.org.uk>
Wed, 13 Nov 2019 01:24:52 +0000
(
01:24
+0000)
committer
Ian Jackson
<ijackson@chiark.greenend.org.uk>
Wed, 13 Nov 2019 01:24:52 +0000
(
01:24
+0000)
Perdir.mk.in
patch
|
blob
|
history
Subdir.mk.in
patch
|
blob
|
history
lib/t/Subdir.mk.in
patch
|
blob
|
history
subdirmk/autogen.sh
patch
|
blob
|
history
subdirmk/generate
patch
|
blob
|
history
subdirmk/regen.mk.in
patch
|
blob
|
history
diff --git
a/Perdir.mk.in
b/Perdir.mk.in
index e71764e6cd6b9f9c649b1a4e5a2d268de13f91ac..f8193482e9b12d43f071bd38cdede67ed5e6d8bd 100644
(file)
--- a/
Perdir.mk.in
+++ b/
Perdir.mk.in
@@
-1,6
+1,7
@@
&CLEAN += & *~ *.tmp
&CLEAN += $(&OBJECTS) $(&DEPFILES)
&CLEAN += & *~ *.tmp
&CLEAN += $(&OBJECTS) $(&DEPFILES)
+&CLEAN += $(&TARGETS)
# &TARGETS_clean
# &TARGETS_clean
diff --git
a/Subdir.mk.in
b/Subdir.mk.in
index 79249db459f8b329ed10abb7115d3c385d5abb8b..cd8fa532d2e183c16084c66091a073525909188c 100644
(file)
--- a/
Subdir.mk.in
+++ b/
Subdir.mk.in
@@
-23,4
+23,4
@@
COMPILE ?= $(CC) -c -o$@ -MD $(DEFS) $(INCLUDES) $(CFLAGS)
%.o: %.c
$(COMPILE) $<
%.o: %.c
$(COMPILE) $<
-include
&^/
subdirmk/regen.mk
+include subdirmk/regen.mk
diff --git
a/lib/t/Subdir.mk.in
b/lib/t/Subdir.mk.in
index a5efee561681282828c5d05ae92914c9738622bf..a957397ff559178dba79098ce36a529765c4528a 100644
(file)
--- a/
lib/t/Subdir.mk.in
+++ b/
lib/t/Subdir.mk.in
@@
-28,7
+28,7
@@
&OBJECTS += & toytest.o
&LIBS += lib/libtoy.a
&OBJECTS += & toytest.o
&LIBS += lib/libtoy.a
-&CLEAN += & toytest
+&CLEAN += & toytest
toytest.stamp
&toytest: $(&OBJECTS) $(&LIBS)
$(LINK) $^
&toytest: $(&OBJECTS) $(&LIBS)
$(LINK) $^
diff --git
a/subdirmk/autogen.sh
b/subdirmk/autogen.sh
index 5658c0af6129c7bf3e006025cce5aa3656f44792..f1b4df5f75195edf4030bbb40509283af15d026e 100755
(executable)
--- a/
subdirmk/autogen.sh
+++ b/
subdirmk/autogen.sh
@@
-1,3
+1,4
@@
#!/bin/sh
set -e
#!/bin/sh
set -e
+cd ${0%/*}
autoconf
autoconf
diff --git
a/subdirmk/generate
b/subdirmk/generate
index ae5db303ea79c56504b76070a29f018ab4c9b23f..a10e055590c9df2c671e85d264ef2bfa7a5cb339 100755
(executable)
--- a/
subdirmk/generate
+++ b/
subdirmk/generate
@@
-13,6
+13,7
@@
# Perdir.mk.in
use strict;
# Perdir.mk.in
use strict;
+use POSIX;
print "$0 @ARGV\n" or die $!;
print "$0 @ARGV\n" or die $!;
@@
-108,13
+109,13
@@
sub filter_subdir_mk ($$$$$) {
#use Data::Dumper;
#print STDERR "filter @_\n";
#use Data::Dumper;
#print STDERR "filter @_\n";
- my $in = "${dir_prefix}Subdir.mk.in";
+ my $in = "${
srcdir}/${
dir_prefix}Subdir.mk.in";
my $caps_re = qr{[A-Z][0-9_A-Z]*(?=\W)};
my $lc_re = qr{[a-z][-+,0-9_a-z]*(?=\W)};
my $esclit = '&';
my $esc = '\\&';
my $caps_re = qr{[A-Z][0-9_A-Z]*(?=\W)};
my $lc_re = qr{[a-z][-+,0-9_a-z]*(?=\W)};
my $esclit = '&';
my $esc = '\\&';
- for my $f ($in, "Perdir.mk.in") {
+ for my $f ($in, "
${srcdir}/
Perdir.mk.in") {
open I, '<', $f or die "open $f: $!\n";
while (<I>) {
for (;;) {
open I, '<', $f or die "open $f: $!\n";
while (<I>) {
for (;;) {
@@
-183,6
+184,7
@@
sub process_subtree ($$) {
foreach my $child (@{ $node->[1] }) {
my @childpath = (@$path, $child->[0]);
my $child_subdir = join '/', @childpath;
foreach my $child (@{ $node->[1] }) {
my @childpath = (@$path, $child->[0]);
my $child_subdir = join '/', @childpath;
+ mkdir $child_subdir or $!==EEXIST or die "mkdir $child_subdir: $!";
push @{ $targets{$_} }, $child_subdir foreach
process_subtree($child, \@childpath);
}
push @{ $targets{$_} }, $child_subdir foreach
process_subtree($child, \@childpath);
}
diff --git
a/subdirmk/regen.mk.in
b/subdirmk/regen.mk.in
index f7a72192aa8c31319ffd20ba5164da92e2faf071..f9d7240d412dd0cbb2583b5e8a2bdb08e49fe18b 100644
(file)
--- a/
subdirmk/regen.mk.in
+++ b/
subdirmk/regen.mk.in
@@
-23,8
+23,9
@@
makefiles.phantom: \
$(foreach m,$(MAKEFILES),$(top_srcdir)/$(m).in)
./$(CONFIG_STATUS)
$(foreach m,$(MAKEFILES),$(top_srcdir)/$(m).in)
./$(CONFIG_STATUS)
-realclean: clean
+realclean:
:
clean
$(RM) config.status config.log
$(RM) config.status config.log
- $(RM) main.mk $(MAKEFILES)
+ $(RM) main.mk subdirmk/regen.mk $(MAKEFILES)
+ $(RM) $(addsuffix Makefile,$(dir $(MAKEFILES)))
-include $(ALL_DEPFILES)
-include $(ALL_DEPFILES)