aboutsummaryrefslogtreecommitdiff
path: root/build2/cc/msvc.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2016-08-27 09:53:30 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2016-08-27 09:53:30 +0200
commita4796d5b851dac4a546f89c282f65e320076eb10 (patch)
tree584d8fb67dcf333aeb3ae155bb73cf7d230b3ac4 /build2/cc/msvc.cxx
parentf0edc0e2b67fa43c4e2410c7d3d8f1841d576749 (diff)
Clean up library export, make c and cxx modules project root only
So now c and cxx modules can only be loaded in project root scope (normally root.build). Also, the c.std and cxx.std must now be set *before* loading the module to take effect. This means we won't be able to handle old buildfiles anymore but old versions of build2 should be able to handle new *.std placement.
Diffstat (limited to 'build2/cc/msvc.cxx')
-rw-r--r--build2/cc/msvc.cxx9
1 files changed, 6 insertions, 3 deletions
diff --git a/build2/cc/msvc.cxx b/build2/cc/msvc.cxx
index 216bbf2..e4323d4 100644
--- a/build2/cc/msvc.cxx
+++ b/build2/cc/msvc.cxx
@@ -14,7 +14,9 @@
#include <build2/bin/target>
#include <build2/cc/types>
+
#include <build2/cc/link>
+#include <build2/cc/module>
using namespace std;
using namespace butl;
@@ -85,8 +87,8 @@ namespace build2
// Extract system library search paths from MSVC.
//
- void link::
- msvc_library_search_paths (scope&, dir_paths&) const
+ dir_paths config_module::
+ msvc_library_search_paths (process_path&, scope&) const
{
// The linker doesn't seem to have any built-in paths and all of them
// come from the LIB environment variable.
@@ -96,8 +98,9 @@ namespace build2
//
// Should we actually bother? LIB is normally used for system
// libraries and its highly unlikely we will see an explicit import
- // for a library from one of those directories.
+ // for a library from one of those directories. Let's wait and see.
//
+ return dir_paths ();
}
// Inspect the file and determine if it is static or import library.