X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=blobdiff_plain;f=toplevel-find;h=3e3c28b90cb1f6cf8ad97fa0a88d9cff9aa29973;hp=72a2de39c50e0c2c624b28d4ea957646b84d072a;hb=b5d196171acdb4887099393effc16ccd4db69bf7;hpb=fbcaf269697287b4a6d7ddb88bef050c93b06cc9 diff --git a/toplevel-find b/toplevel-find index 72a2de3..3e3c28b 100755 --- a/toplevel-find +++ b/toplevel-find @@ -5,7 +5,13 @@ my $base = $ARGV[0]; $base =~ m/^\-/ and die; open F, "$base.scad" or die "$base.scad $!"; while () { - next unless m#^\s*module\s+(\w+)\b.*////toplevel\b#; + if (m#^//// toplevels-from:#) { + defined($_ = ) or die $!; + m#^include\s+\<(\S+)>\s*$# or die; + open F, "$1" or die "$1 $!"; + next; + } + next unless m#^\s*(?:////\s?)?module\s+(\w+)\b.*////toplevel\b#; print "$base,$1\n" or die $!; } close F or die $!;