aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@digia.com>2013-06-18 11:30:23 +0200
committerChristian Kandeler <christian.kandeler@digia.com>2013-06-18 15:57:10 +0200
commit3e81457cf34d93bd45544d724eff1dde4cf9ad8c (patch)
treee6ea49750774c87e2620120a9085799a8ddd993a
parent2fc012cbeb2c2bf3aa903a88d592b3cf52aa12e6 (diff)
allow qbs to be built without rpath
Some Linux distros discourage the use of rpath. Specify CONFIG+=disable_rpath to turn off rpath usage on Linux and OS X. Task-number: QBS-309 Change-Id: I3658470aef525f5406d728c48ab2e6f86a3c62cd Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
-rw-r--r--qbs.qbs1
-rw-r--r--src/lib/lib.pro5
-rw-r--r--src/lib/lib.qbs3
-rw-r--r--src/lib/use.pri6
4 files changed, 11 insertions, 4 deletions
diff --git a/qbs.qbs b/qbs.qbs
index e183f63ef..922610679 100644
--- a/qbs.qbs
+++ b/qbs.qbs
@@ -3,6 +3,7 @@ import qbs 1.0
Project {
property string version: "1.0.1"
property bool enableUnitTests: false
+ property bool enableRPath: true
references: [
"src/src.qbs",
diff --git a/src/lib/lib.pro b/src/lib/lib.pro
index 1a4dc71a9..cd5edb4dd 100644
--- a/src/lib/lib.pro
+++ b/src/lib/lib.pro
@@ -23,7 +23,10 @@ contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols
win32:CONFIG(debug, debug|release):TARGET = $${TARGET}d
win32-msvc*|win32-icc:QMAKE_CXXFLAGS += /WX
else:*g++*|*clang*|*icc*:QMAKE_CXXFLAGS += -Werror
-macx:QMAKE_LFLAGS_SONAME = -Wl,-install_name,@rpath/
+
+!disable_rpath {
+ macx:QMAKE_LFLAGS_SONAME = -Wl,-install_name,@rpath/
+}
include(../../qbs_version.pri)
include(api/api.pri)
diff --git a/src/lib/lib.qbs b/src/lib/lib.qbs
index 2401e0de5..cb2e04b3d 100644
--- a/src/lib/lib.qbs
+++ b/src/lib/lib.qbs
@@ -326,7 +326,8 @@ DynamicLibrary {
Export {
Depends { name: "cpp" }
Depends { name: "Qt"; submodules: ["script"]}
- cpp.rpaths: qbs.targetOS.contains("linux") ? ["$ORIGIN/../lib"] : undefined
+ cpp.rpaths: (project.enableRPath && qbs.targetOS.contains("linux"))
+ ? ["$ORIGIN/../lib"] : undefined
cpp.includePaths: path
}
}
diff --git a/src/lib/use.pri b/src/lib/use.pri
index ec5ea7de7..9a315e981 100644
--- a/src/lib/use.pri
+++ b/src/lib/use.pri
@@ -8,8 +8,10 @@ unix {
LIBS += -L$$QBSLIBDIR -lqbscore
}
-linux-*:QMAKE_LFLAGS += -Wl,-z,origin \'-Wl,-rpath,\$\$ORIGIN/../lib\'
-macx:QMAKE_LFLAGS += -Wl,-rpath,@loader_path/../lib
+!disable_rpath {
+ linux-*:QMAKE_LFLAGS += -Wl,-z,origin \'-Wl,-rpath,\$\$ORIGIN/../lib\'
+ macx:QMAKE_LFLAGS += -Wl,-rpath,@loader_path/../lib
+}
win32 {
CONFIG(debug, debug|release) {