diff options
author | Francois Andriot <[email protected]> | 2014-09-12 12:57:56 -0500 |
---|---|---|
committer | Timothy Pearson <[email protected]> | 2014-09-12 13:01:39 -0500 |
commit | b716176cec88f5fa604b637a947b44b9ff165d5a (patch) | |
tree | 72177722906e1c4afc03bcc57b30cdbad5dd8f60 /qmake/generators/unix/unixmake2.cpp | |
parent | e17513956503963f4d468342a5be6a0967aca97c (diff) | |
download | qt3-b716176cec88f5fa604b637a947b44b9ff165d5a.tar.gz qt3-b716176cec88f5fa604b637a947b44b9ff165d5a.zip |
Fix qmake shared library naming
Add long long int support to TQTextStream
Fix potential segmentation fault in QValueList
Fix library naming in TQT Plugins
This relates to Bug 2107
Diffstat (limited to 'qmake/generators/unix/unixmake2.cpp')
-rw-r--r-- | qmake/generators/unix/unixmake2.cpp | 39 |
1 files changed, 30 insertions, 9 deletions
diff --git a/qmake/generators/unix/unixmake2.cpp b/qmake/generators/unix/unixmake2.cpp index 354bcf6..d1ed572 100644 --- a/qmake/generators/unix/unixmake2.cpp +++ b/qmake/generators/unix/unixmake2.cpp @@ -132,6 +132,8 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t) src_incremental=FALSE, moc_incremental=FALSE; t << "####### Compiler, tools and options" << endl << endl; + if (varGlue("INCLUDEPATH", " -I", " -I", "").find("$(LOCALBASE)") != -1) + t << "LOCALBASE?= /usr/local" << endl; t << "CC = "; if (project->isActiveConfig("thread") && ! project->variables()["QMAKE_CC_THREAD"].isEmpty()) @@ -298,10 +300,15 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t) } else if (!project->isActiveConfig("staticlib") && project->variables()["QMAKE_APP_FLAG"].isEmpty()) { t << "TARGETA = " << var("TARGETA") << endl; if (project->isEmpty("QMAKE_HPUX_SHLIB")) { - t << "TARGETD = " << var("TARGET_x.y.z") << endl; - t << "TARGET0 = " << var("TARGET_") << endl; - t << "TARGET1 = " << var("TARGET_x") << endl; - t << "TARGET2 = " << var("TARGET_x.y") << endl; + if (!project->isEmpty("QMAKE_OPENBSD_SHLIBS")) { + t << "LIB"+var("OBSD_TARGET_NAME")+"_VERSION = " << var("OBSD_TARGET_VERSION") << endl; + t << "TARGETD = " << var("TARGET_x.y") << endl; + } else { + t << "TARGETD = " << var("TARGET_x.y.z") << endl; + t << "TARGET0 = " << var("TARGET_") << endl; + t << "TARGET1 = " << var("TARGET_x") << endl; + t << "TARGET2 = " << var("TARGET_x.y") << endl; + } } else { t << "TARGETD = " << var("TARGET_x") << endl; t << "TARGET0 = " << var("TARGET_") << endl; @@ -378,6 +385,7 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t) } t << "####### Build rules" << endl << endl; + t << "$(OBJECTS): $(UICDECLS)" << endl << endl; if(!project->variables()["SUBLIBS"].isEmpty()) { QString libdir = "tmp/"; if(!project->isEmpty("SUBLIBS_DIR")) @@ -1296,10 +1304,20 @@ void UnixMakefileGenerator::init2() project->variables()["TARGET_x"].append("lib" + project->first("TARGET") + "." + project->first("QMAKE_EXTENSION_SHLIB") + "." + project->first("VER_MAJ")); - project->variables()["TARGET_x.y"].append("lib" + project->first("TARGET") + "." + - project->first("QMAKE_EXTENSION_SHLIB") - + "." + project->first("VER_MAJ") + - "." + project->first("VER_MIN")); + if ( !project->variables()["QMAKE_OPENBSD_SHLIBS"].isEmpty() ) { + QString s; + s.setNum(project->first("VER_MIN").toInt()*10+ project->first("VER_PAT").toInt()); + project->variables()["OBSD_TARGET_VERSION"].append(project->first("VER_MAJ") + "." + s); + project->variables()["OBSD_TARGET_NAME"].append(project->first("TARGET")); + project->variables()["TARGET_x.y"].append("lib" + project->first("TARGET") + "." + + project->first("QMAKE_EXTENSION_SHLIB") + + ".$(LIB"+ project->first("TARGET") + "_VERSION)"); + } else { + project->variables()["TARGET_x.y"].append("lib" + project->first("TARGET") + "." + + project->first("QMAKE_EXTENSION_SHLIB") + + "." + project->first("VER_MAJ") + + "." + project->first("VER_MIN")); + } project->variables()["TARGET_x.y.z"].append("lib" + project->first("TARGET") + "." + project->variables()[ @@ -1308,7 +1326,10 @@ void UnixMakefileGenerator::init2() project->first("VER_MIN") + "." + project->first("VER_PAT")); } - project->variables()["TARGET"] = project->variables()["TARGET_x.y.z"]; + if ( !project->variables()["QMAKE_OPENBSD_SHLIBS"].isEmpty() ) + project->variables()["TARGET"] = project->variables()["TARGET_x.y"]; + else + project->variables()["TARGET"] = project->variables()["TARGET_x.y.z"]; } if(project->isEmpty("QMAKE_LN_SHLIB")) project->variables()["QMAKE_LN_SHLIB"].append("ln -s"); |