[44197] trunk/dports/aqua/qt4-mac

mcalhoun at macports.org mcalhoun at macports.org
Tue Dec 23 11:52:40 PST 2008


Revision: 44197
          http://trac.macports.org/changeset/44197
Author:   mcalhoun at macports.org
Date:     2008-12-23 11:52:40 -0800 (Tue, 23 Dec 2008)
Log Message:
-----------
qt4-mac: Use -isystem as an alternate solution to #15219 but without iconv (#16862) problems.
Fixes #16862.

Modified Paths:
--------------
    trunk/dports/aqua/qt4-mac/Portfile

Added Paths:
-----------
    trunk/dports/aqua/qt4-mac/files/patch-compile.test.diff

Modified: trunk/dports/aqua/qt4-mac/Portfile
===================================================================
--- trunk/dports/aqua/qt4-mac/Portfile	2008-12-23 19:52:21 UTC (rev 44196)
+++ trunk/dports/aqua/qt4-mac/Portfile	2008-12-23 19:52:40 UTC (rev 44197)
@@ -23,13 +23,18 @@
 
 depends_lib         port:libmng port:libpng port:jpeg port:tiff
 
-patchfiles          patch-mac.conf.diff
+patchfiles          patch-compile.test.diff patch-mac.conf.diff
 
 # have to build with Apple gcc because of -fconstant-cfstrings
 configure.compiler  gcc-4.0
-configure.cmd       "CFLAGS=-isystem${prefix}/include CXXFLAGS=-isystem${prefix}/include ./configure"
-configure.pre_args
 
+# --prefix is not recognized
+configure.pre_args-delete  --prefix=${prefix}
+# -I${prefix}/include and -L${prefix}/lib must be set in ${configure.args}
+#    or else some generated Makefiles will not seem them
+configure.cppflags
+configure.ldflags
+
 # directory for .app and executable files
 # Once installed, they should not be moved so they can find each other
 # (e.g. assistant.app) and the examples directory
@@ -44,6 +49,11 @@
 # See
 #   http://doc.trolltech.com/qtopia4.3/buildsystem/over-configure-options-qt-1.html
 # for options
+#
+# -I${prefix}/include should be set in ${configure.args}, but
+#    we instead patch -isystem ${prefix}/include into the configure
+#    script to avoid conflicts with other ports (e.g. pcre).
+# See http://trac.macports.org/ticket/15219
 configure.args \
     -v         \
     -confirm-license \
@@ -62,12 +72,8 @@
     -no-sql-sqlite      -no-nis         -no-cups                            \
     -framework          -libdir '${frameworkdir}'                           \
     -make libs          -make tools                                         \
-    -I${worksrcpath}/include \
-    -L${worksrcpath}/lib -L${prefix}/lib
+    -L${prefix}/lib
 
-    # Take care of this with the CXXFLAGS=-isystem${prefix}/include
-    # this puts the include at the end so that qt's include files are found first.
-    # -I${prefix}/include
     # not made by default, anyway: -nomake demos -nomake examples
 
 build.target        first
@@ -75,6 +81,12 @@
 
 destroot.destdir    INSTALL_ROOT="${destroot}"
 
+post-patch {
+    # configure script only accepts -I..., but we want -isystem...
+    reinplace -E "s|^I_FLAGS=\$|I_FLAGS=-isystem${prefix}/include|" \
+        ${worksrcpath}/configure
+}
+
 post-destroot {
     xinstall -d -m 0755 ${destroot}${bindir}
     xinstall -d -m 0755 ${destroot}${applications_dir}/Qt

Added: trunk/dports/aqua/qt4-mac/files/patch-compile.test.diff
===================================================================
--- trunk/dports/aqua/qt4-mac/files/patch-compile.test.diff	                        (rev 0)
+++ trunk/dports/aqua/qt4-mac/files/patch-compile.test.diff	2008-12-23 19:52:40 UTC (rev 44197)
@@ -0,0 +1,13 @@
+--- config.tests/unix/compile.test.orig	2008-09-27 04:58:41.000000000 -0400
++++ config.tests/unix/compile.test	2008-10-27 00:46:48.000000000 -0400
+@@ -32,6 +32,10 @@
+         INC=`echo $PARAM | sed -e 's/^-I//'`
+         INCLUDEPATH="$INCLUDEPATH $INC"
+         ;;
++    -isystem*)
++        INC=`echo $PARAM | sed -e 's/^-isystem//'`
++        INCLUDEPATH="$INCLUDEPATH $INC"
++        ;;
+     -f*|-D*)
+         CXXFLAGS="$CXXFLAGS $PARAM"
+         ;;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20081223/df5fd4f7/attachment.html>


More information about the macports-changes mailing list