summaryrefslogtreecommitdiff
path: root/source3/script/expand-includes.pl
blob: 33fc44b267f986caea64e520cceacf69600dd2b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/perl
# Expand the include lines in a Makefile
# Copyright (C) 2009 Jelmer Vernooij <jelmer@samba.org>
# Published under the GNU GPLv3 or later

my $depth = 0;

sub process($)
{
	my ($f) = @_;
	$depth++;
	die("Recursion in $f?") if ($depth > 100);
	open(IN, $f) or die("Unable to open $f: $!");
	foreach (<IN>) {
		my $l = $_;
		if ($l =~ /^include (.*)$/) {
			process($1);
		} else {
			print $l;
		}
	}
	$depth--;
}

my $path = shift;
unless ($path) {
	print STDERR "Usage: $0 Makefile.in > Makefile-noincludes.in\n";
	exit(1);
}
process($path);