summaryrefslogtreecommitdiff
path: root/xsd/build/cxx
diff options
context:
space:
mode:
Diffstat (limited to 'xsd/build/cxx')
-rw-r--r--xsd/build/cxx/configuration-dynamic.make5
-rw-r--r--xsd/build/cxx/generic/configuration-dynamic.make16
-rw-r--r--xsd/build/cxx/gnu/configuration-dynamic.make8
3 files changed, 17 insertions, 12 deletions
diff --git a/xsd/build/cxx/configuration-dynamic.make b/xsd/build/cxx/configuration-dynamic.make
index 568ab40..83cf860 100644
--- a/xsd/build/cxx/configuration-dynamic.make
+++ b/xsd/build/cxx/configuration-dynamic.make
@@ -1,7 +1,4 @@
-cxx_id := gnu
-cxx_optimize := n
-cxx_debug := n
-cxx_rpath := n
+cxx_id := generic
cxx_pp_extra_options := $(CPPFLAGS)
cxx_extra_options := $(CXXFLAGS)
cxx_ld_extra_options := $(LDFLAGS)
diff --git a/xsd/build/cxx/generic/configuration-dynamic.make b/xsd/build/cxx/generic/configuration-dynamic.make
new file mode 100644
index 0000000..f35ea66
--- /dev/null
+++ b/xsd/build/cxx/generic/configuration-dynamic.make
@@ -0,0 +1,16 @@
+ifeq ($(filter $(origin CXX),undefined default),)
+cxx_generic := $(CXX)
+else
+cxx_generic := g++
+endif
+
+r := $(shell $(cxx_generic) $(cxx_extra_options) $(cxx_ld_extra_options) \
+-print-search-dirs 2>&1 | sed -e 's/libraries: =//p' -e d)
+
+ifneq ($r,)
+ ifeq ($(cxx_extra_lib_paths),)
+ cxx_extra_lib_paths := $r
+ else
+ cxx_extra_lib_paths := $(cxx_extra_lib_paths):$r
+ endif
+endif
diff --git a/xsd/build/cxx/gnu/configuration-dynamic.make b/xsd/build/cxx/gnu/configuration-dynamic.make
deleted file mode 100644
index f3fe64d..0000000
--- a/xsd/build/cxx/gnu/configuration-dynamic.make
+++ /dev/null
@@ -1,8 +0,0 @@
-ifneq ($(CXX),)
-cxx_gnu := $(CXX)
-else
-cxx_gnu := g++
-endif
-
-cxx_gnu_libraries :=
-cxx_gnu_optimization_options :=