diff options
-rw-r--r-- | build2/buildfile | 13 | ||||
-rw-r--r-- | libbuild2/buildfile | 10 |
2 files changed, 19 insertions, 4 deletions
diff --git a/build2/buildfile b/build2/buildfile index a1b299d..196c485 100644 --- a/build2/buildfile +++ b/build2/buildfile @@ -56,13 +56,20 @@ if ($cxx.target == $build.host) -DBUILD2_NATIVE_CXX=\"$regex.replace($recall($cxx.path), '\\', '\\\\')\" } -if ($cxx.target.class != "windows") +if ($cxx.target.class != 'windows') { - # Make sure backtrace includes function names. - # if ($cxx.target.class == 'linux') + { + # Make sure backtrace includes function names. + # cxx.loptions += -rdynamic + # Make sure we use RPATH and not RUNPATH since the latter messes up + # dlopen(). + # + cxx.loptions += -Wl,--disable-new-dtags + } + cxx.libs += -lpthread } else diff --git a/libbuild2/buildfile b/libbuild2/buildfile index 881b6e8..b536eba 100644 --- a/libbuild2/buildfile +++ b/libbuild2/buildfile @@ -94,8 +94,16 @@ if! $cross obja{context}: cxx.poptions += -DLIBBUILD2_STATIC_BUILD objs{context}: cxx.poptions += -DLIBBUILD2_SHARED_BUILD -if ($cxx.target.class != "windows") +if ($cxx.target.class != 'windows') { + if ($cxx.target.class == 'linux') + { + # Make sure we use RPATH and not RUNPATH since the latter messes up + # dlopen(). + # + cxx.loptions += -Wl,--disable-new-dtags + } + cxx.libs += -lpthread if ($cxx.target.class != "bsd") |