aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build/export.build2
-rw-r--r--buildfile20
2 files changed, 15 insertions, 7 deletions
diff --git a/build/export.build b/build/export.build
index 8ce55ab..334181e 100644
--- a/build/export.build
+++ b/build/export.build
@@ -7,4 +7,4 @@ $out_root/:
include buildfile
}
-export $out_root/liba{std-modules}
+export $($out_root/:export_target)
diff --git a/buildfile b/buildfile
index 9351b33..a2a9183 100644
--- a/buildfile
+++ b/buildfile
@@ -40,6 +40,10 @@ else
#
core = std.core.pcm
io = std.io.pcm
+
+ liba{std-modules}: bmia{$core $io}
+
+ export_target = $out_root/liba{std-modules}
}
elif ($cxx.id.type == 'msvc')
{
@@ -54,14 +58,20 @@ else
bmia{$core $io}: fsdir{$dir}
- # VC expects to find std.lib next to the .ifc's. Make it a dummy one.
+ # VC expects to find std.lib next to the .ifc's. Make it the real one
+ # while std-modules -- a dummy.
#
- liba{std-modules}: $dir/liba{std}
- $dir/liba{std}: cxx{dummy.cxx}
+ ./: $dir/liba{std}
+ $dir/liba{std}: bmia{$core $io}
+ liba{std-modules}: cxx{dummy.cxx}
- # @@ Doesn't work if installed so we don't bother installing it.
+ # @@ Doesn't work if installed so we don't bother installing it. But we
+ # still install dummy std-modules; the idea is to link a dummy and
+ # (try) to use Microsoft-shipped .ifc's.
#
$dir/liba{std}: install = false
+
+ export_target = $out_root/$dir/liba{std}
}
# @@ TMP: use utility library instead?
@@ -74,8 +84,6 @@ else
if ($cxx.target.class != "windows")
cxx.libs += -lpthread
- liba{std-modules}: bmia{$core $io}
-
bmia{$core}: mxx{std-core}
bmia{$io}: mxx{std-io} bmia{$core}