equal
deleted
inserted
replaced
19 $basedir //= dirname $file; |
19 $basedir //= dirname $file; |
20 open(my $fh, '<', $file) |
20 open(my $fh, '<', $file) |
21 or croak "Can't open $file: $!\n"; |
21 or croak "Can't open $file: $!\n"; |
22 say "# 1 $file"; |
22 say "# 1 $file"; |
23 while (<$fh>) { |
23 while (<$fh>) { |
|
24 if (s{\\$}{}) { |
|
25 chomp; |
|
26 $_ .= <$fh>; |
|
27 redo; |
|
28 } |
24 if (/^\s*include\s+(?<quote>["'])?(?<file>.*?)\k<quote>?\s*$/i) { |
29 if (/^\s*include\s+(?<quote>["'])?(?<file>.*?)\k<quote>?\s*$/i) { |
25 my $file = $+{file} =~ m{^/} ? $+{file} : "$basedir/$+{file}"; |
30 my $file = $+{file} =~ m{^/} ? $+{file} : "$basedir/$+{file}"; |
26 say "# $. $file INCLUDE $+{file}"; |
31 say "# $. $file INCLUDE $+{file}"; |
27 read_file($_, $basedir) foreach (glob -d $file ? "$file/*" : $file); |
32 read_file($_, $basedir) foreach (glob -d $file ? "$file/*" : $file); |
28 next; |
33 next; |
29 } |
34 } |
|
35 |
30 print; |
36 print; |
31 } |
37 } |
32 return 1; |
38 return 1; |
33 } |
39 } |
34 |
40 |