summaryrefslogtreecommitdiff
path: root/infrastructure/makebuildenv.pl.in
diff options
context:
space:
mode:
authorChris Wilson <chris+github@qwirx.com>2010-02-19 18:39:38 +0000
committerChris Wilson <chris+github@qwirx.com>2010-02-19 18:39:38 +0000
commitd0b59e3dda9af3e9891e55506728df5c17eb1e21 (patch)
treecdff9270074b1bf4c59bb6d35759cff008675787 /infrastructure/makebuildenv.pl.in
parent6bbbb823de24f0ace1fa92eda6fafbd1379707a7 (diff)
Make the explicit target of each dependency, including libraries, to solve
problems with integrating QDBM into build system (default target tries to build stuff we don't want).
Diffstat (limited to 'infrastructure/makebuildenv.pl.in')
-rwxr-xr-xinfrastructure/makebuildenv.pl.in23
1 files changed, 22 insertions, 1 deletions
diff --git a/infrastructure/makebuildenv.pl.in b/infrastructure/makebuildenv.pl.in
index b8f499be..3783c765 100755
--- a/infrastructure/makebuildenv.pl.in
+++ b/infrastructure/makebuildenv.pl.in
@@ -479,6 +479,7 @@ __E
}
my @all_deps_for_module;
+
{
# work out what dependencies need to be run
my @deps_raw;
@@ -768,7 +769,27 @@ __E
# run make for things we require
for my $dep (@all_deps_for_module)
{
- $deps_makeinfo .= "\t\t\$(HIDE) (cd ../../$dep; \$(MAKE)$sub_make_options -q \$(DEPENDMAKEFLAGS) -D NODEPS || \$(MAKE)$sub_make_options \$(DEPENDMAKEFLAGS) -D NODEPS)\n";
+ my $dep_target = "";
+ if ($dep =~ m|^lib/(.*)|)
+ {
+ $dep_target = "\$(OUTBASE)/$dep/$1.a";
+ }
+ elsif ($dep =~ m|^.*/(.*)|)
+ {
+ $dep_target = "\$(OUTBASE)/$dep/$1$platform_exe_ext";
+ }
+ else
+ {
+ $dep_target = "lib$dep.a";
+ }
+
+ $deps_makeinfo .= <<EOF;
+ \$(HIDE) ( \\
+ cd ../../$dep; \\
+ \$(MAKE) $sub_make_options -q \$(DEPENDMAKEFLAGS) -D NODEPS $dep_target \\
+ || \$(MAKE) $sub_make_options \$(DEPENDMAKEFLAGS) -D NODEPS $dep_target \\
+ )
+EOF
}
$deps_makeinfo .= ".\tendif\n.endif\n\n";