[103091] trunk/dports/aqua/qt4-mac/files/ patch-mkspecs_features_qt_functions.prf.diff
michaelld at macports.org
michaelld at macports.org
Wed Feb 13 17:18:12 PST 2013
Revision: 103091
https://trac.macports.org/changeset/103091
Author: michaelld at macports.org
Date: 2013-02-13 17:18:12 -0800 (Wed, 13 Feb 2013)
Log Message:
-----------
qt4-mac: Change framework linking to use Apple's LD optional framework name extension parameter, when linking in debug mode.
Modified Paths:
--------------
trunk/dports/aqua/qt4-mac/files/patch-mkspecs_features_qt_functions.prf.diff
Modified: trunk/dports/aqua/qt4-mac/files/patch-mkspecs_features_qt_functions.prf.diff
===================================================================
--- trunk/dports/aqua/qt4-mac/files/patch-mkspecs_features_qt_functions.prf.diff 2013-02-14 01:09:28 UTC (rev 103090)
+++ trunk/dports/aqua/qt4-mac/files/patch-mkspecs_features_qt_functions.prf.diff 2013-02-14 01:18:12 UTC (rev 103091)
@@ -1,6 +1,6 @@
---- mkspecs/features/qt_functions.prf.orig 2012-09-20 10:57:59.000000000 -0400
-+++ mkspecs/features/qt_functions.prf 2012-09-20 15:31:19.000000000 -0400
-@@ -16,24 +16,75 @@
+--- mkspecs/features/qt_functions.prf.orig 2013-02-11 08:39:31.000000000 -0500
++++ mkspecs/features/qt_functions.prf 2013-02-12 10:57:03.000000000 -0500
+@@ -16,35 +16,108 @@
}
defineTest(qtAddLibrary) {
@@ -90,9 +90,28 @@
FRAMEWORK_INCLUDE = $$frmwrk_dir/$${LIB_NAME}.framework/Headers
!qt_no_framework_direct_includes:exists($$FRAMEWORK_INCLUDE) {
INCLUDEPATH -= $$FRAMEWORK_INCLUDE
-@@ -41,10 +92,13 @@
+ INCLUDEPATH = $$FRAMEWORK_INCLUDE $$INCLUDEPATH
}
LINKAGE = -framework $${LIB_NAME}
++
++# Apple's ld has provided "-framework name,option" since at least
++# 10.4, allowing linking with a framework's option name if it exists
++# -- but defaulting to the basic name if it exists (and if neither
++# exists, then generating an error). All GCC, LLVM, CLANG, and Apple
++# compilers available in Xcode or MacPorts back to 10.4 seem to parse
++# this feature correctly when compiling, as well as pass it through to
++# Apple's ld. Apple used to provide debug kernel frameworks and
++# libraries that could be used by setting the shell environment variable:
++# DYLD_IMAGE_SUFFIX=_debug
++# but Apple hasn't done so since 10.6, and does not look to be doing
++# so any time soon. Hence, the below use of the optional framework
++# name is really the best way to link to and use debug frameworks. For
++# QtWebKit, which has no debug version, only the main library will
++# ever be found and used.
++
++ if(!debug_and_release|build_pass):CONFIG(debug, debug|release) {
++ LINKAGE = $${LINKAGE},_debug
++ }
break()
+
}
@@ -106,12 +125,12 @@
symbian {
isEqual(LIB_NAME, QtCore) {
#workaround for dependency from f32file.h on e32svr.h which has moved location in symbian3
-@@ -70,10 +124,56 @@
+@@ -70,10 +143,56 @@
export(TARGET.EPOCHEAPSIZE)
export(TARGET.CAPABILITY)
}
+
-+ isEmpty(LINKAGE) {
+ isEmpty(LINKAGE) {
+
+ # not a framework or symbian
+ # see if the library exists in the current known paths
@@ -144,7 +163,7 @@
+ }
+ }
+
- isEmpty(LINKAGE) {
++ isEmpty(LINKAGE) {
+
+ message(WARNING: Could not find library or framework $$LIB_NAME in the current known search directories; assuming a default library.)
+
@@ -164,7 +183,7 @@
}
isEmpty(LINKAGE):LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}
}
-@@ -83,9 +183,13 @@
+@@ -83,9 +202,13 @@
QMAKE_LFLAGS *= --lsb-shared-libs=$${LIB_NAME}$${QT_LIBINFIX}
}
LIBS += $$LINKAGE
@@ -178,7 +197,7 @@
export(QMAKE_LFLAGS)
return(true)
}
-@@ -119,4 +223,3 @@
+@@ -119,4 +242,3 @@
return(true)
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20130213/49c2212f/attachment.html>
More information about the macports-changes
mailing list