[94145] trunk/dports/kde/kdevelop

nicos at macports.org nicos at macports.org
Sat Jun 9 21:13:02 PDT 2012


Revision: 94145
          https://trac.macports.org/changeset/94145
Author:   nicos at macports.org
Date:     2012-06-09 21:13:01 -0700 (Sat, 09 Jun 2012)
Log Message:
-----------
kdevelop: enabling clang compilation with Lion

Modified Paths:
--------------
    trunk/dports/kde/kdevelop/Portfile

Added Paths:
-----------
    trunk/dports/kde/kdevelop/files/
    trunk/dports/kde/kdevelop/files/patch-context.diff
    trunk/dports/kde/kdevelop/files/patch-declarationbuilder.diff

Modified: trunk/dports/kde/kdevelop/Portfile
===================================================================
--- trunk/dports/kde/kdevelop/Portfile	2012-06-10 03:54:25 UTC (rev 94144)
+++ trunk/dports/kde/kdevelop/Portfile	2012-06-10 04:13:01 UTC (rev 94145)
@@ -6,6 +6,7 @@
 
 name                kdevelop
 version             4.3.1
+revision            1
 categories          kde kde4
 platforms           darwin
 license             GPL-2+
@@ -32,8 +33,10 @@
                     port:kate \
                     port:oxygen-icons
 
+#Adjusting configure flags for Clang on Lion (ticket #34545)
 if {${configure.compiler} == "clang"} {
-    configure.compiler llvm-gcc-4.2
+    patchfiles-append       patch-declarationbuilder.diff patch-context.diff
+    configure.args-append   -DCMAKE_CXX_FLAGS="-Wno-reserved-user-defined-literal -stdlib=libc++"
 }
 
 notes " Please run ${prefix}/bin/kbuildsycoca4    

Added: trunk/dports/kde/kdevelop/files/patch-context.diff
===================================================================
--- trunk/dports/kde/kdevelop/files/patch-context.diff	                        (rev 0)
+++ trunk/dports/kde/kdevelop/files/patch-context.diff	2012-06-10 04:13:01 UTC (rev 94145)
@@ -0,0 +1,22 @@
+--- languages/cpp/codecompletion/context.cpp.orig	2012-04-14 04:54:26.000000000 +0900
++++ languages/cpp/codecompletion/context.cpp	2012-06-08 21:43:34.000000000 +0900
+@@ -1107,8 +1107,8 @@
+     QList< Declaration* > decls = m_duContext->findDeclarations(QualifiedIdentifier(m_expression)); ///@todo respect position
+ 
+     // qlist does not provide convenient stable iterators
+-    std::list<Declaration*> worklist(decls.begin(), decls.end());
+-    for (std::list<Declaration*>::iterator it = worklist.begin(); it != worklist.end(); ++it) {
++    // std::list<Declaration*> worklist(decls.begin(), decls.end());
++    for (QList<Declaration*>::iterator it = decls.begin(); it != decls.end(); ++it) {
+       Declaration * decl = *it;
+       if((decl->kind() == Declaration::Namespace || dynamic_cast<ClassDeclaration*>(decl))  && decl->internalContext())
+         ret.insert(decl->internalContext());
+@@ -1117,7 +1117,7 @@
+         if (aliasDecl) {
+           QList<Declaration*> importedDecls = m_duContext->findDeclarations(aliasDecl->importIdentifier()); ///@todo respect position
+           std::copy(importedDecls.begin(), importedDecls.end(),
+-                    std::back_inserter(worklist));
++                    std::back_inserter(decls));
+         }
+       }
+     }

Added: trunk/dports/kde/kdevelop/files/patch-declarationbuilder.diff
===================================================================
--- trunk/dports/kde/kdevelop/files/patch-declarationbuilder.diff	                        (rev 0)
+++ trunk/dports/kde/kdevelop/files/patch-declarationbuilder.diff	2012-06-10 04:13:01 UTC (rev 94145)
@@ -0,0 +1,21 @@
+--- languages/cpp/cppduchain/declarationbuilder.cpp.orig	2012-04-14 04:54:26.000000000 +0900
++++ languages/cpp/cppduchain/declarationbuilder.cpp	2012-06-08 21:43:19.000000000 +0900
+@@ -1231,8 +1231,7 @@
+   QList<DUContext*> contexts;
+ 
+   // qlist does not provide convenient stable iterators
+-  std::list<Declaration*> worklist(decls.begin(), decls.end());
+-  for (std::list<Declaration*>::iterator it = worklist.begin(); it != worklist.end(); ++it) {
++  for (QList<Declaration*>::iterator it = decls.begin(); it != decls.end(); ++it) {
+     Declaration * decl = *it;
+     if(decl->kind() == Declaration::Namespace && decl->internalContext()) {
+       contexts << decl->internalContext();
+@@ -1241,7 +1240,7 @@
+       if (aliasDecl) {
+         QList<Declaration*> importedDecls = currentContext()->findDeclarations(aliasDecl->importIdentifier(), position);
+         std::copy(importedDecls.begin(), importedDecls.end(),
+-                  std::back_inserter(worklist));
++                  std::back_inserter(decls));
+       }
+     }
+   }
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20120609/55fd2f2f/attachment.html>


More information about the macports-changes mailing list