[141235] trunk/dports/lang/llvm-gcc42
jeremyhu at macports.org
jeremyhu at macports.org
Tue Oct 13 00:10:19 PDT 2015
Revision: 141235
https://trac.macports.org/changeset/141235
Author: jeremyhu at macports.org
Date: 2015-10-13 00:10:18 -0700 (Tue, 13 Oct 2015)
Log Message:
-----------
llvm-gcc42: Fix build failure with clang (#49241)
Modified Paths:
--------------
trunk/dports/lang/llvm-gcc42/Portfile
Added Paths:
-----------
trunk/dports/lang/llvm-gcc42/files/clang-optimization.patch
Modified: trunk/dports/lang/llvm-gcc42/Portfile
===================================================================
--- trunk/dports/lang/llvm-gcc42/Portfile 2015-10-13 06:57:08 UTC (rev 141234)
+++ trunk/dports/lang/llvm-gcc42/Portfile 2015-10-13 07:10:18 UTC (rev 141235)
@@ -6,7 +6,7 @@
name llvm-gcc42
version 2336.11
-revision 2
+revision 3
set gcc_version 4.2.1
categories lang
platforms darwin
@@ -54,10 +54,6 @@
set objroot ${workpath}/objroot
set symroot ${workpath}/symroot
-# https://trac.macports.org/ticket/42899
-# TODO: Fix it to build with newer clang
-compiler.blacklist-append {clang > 503} macports-clang-3.4 macports-clang-3.5 macports-clang-3.6 macports-clang-3.7
-
# Don't compile with self
compiler.blacklist-append macports-llvm-gcc-4.2
@@ -82,6 +78,10 @@
autogen.patch \
fixincludes.patch
+if {[string match *clang* ${configure.cc}]} {
+ patchfiles-append clang-optimization.patch
+}
+
post-extract {
xinstall -W ${filespath} build_gcc ${worksrcpath}
}
@@ -130,6 +130,13 @@
if {[string match "*clang*" ${configure.compiler}]} {
reinplace "s:--enable-werror : :" ${worksrcpath}/build_gcc
}
+
+ # ltmain.sh notes 'On all known operating systems, these are identical', and -module has gone
+ # away with Apple's clang-3.4
+ if {[string match *clang* ${configure.cc}]} {
+ reinplace "s:module:export_dynamic:" ${worksrcpath}/llvmCore/Makefile.rules
+ reinplace "s:-no-undefined::" ${worksrcpath}/llvmCore/tools/lto/Makefile
+ }
}
compiler.cpath /usr/include
Added: trunk/dports/lang/llvm-gcc42/files/clang-optimization.patch
===================================================================
--- trunk/dports/lang/llvm-gcc42/files/clang-optimization.patch (rev 0)
+++ trunk/dports/lang/llvm-gcc42/files/clang-optimization.patch 2015-10-13 07:10:18 UTC (rev 141235)
@@ -0,0 +1,38 @@
+--- llvmCore/lib/CodeGen/MachineSSAUpdater.cpp.orig 2015-10-12 19:33:17.000000000 -0400
++++ llvmCore/lib/CodeGen/MachineSSAUpdater.cpp 2015-10-12 19:34:31.000000000 -0400
+@@ -38,7 +38,7 @@
+ return *static_cast<IncomingPredInfoTy*>(IPI);
+ }
+
+-
++#pragma clang optimize off
+ MachineSSAUpdater::MachineSSAUpdater(MachineFunction &MF,
+ SmallVectorImpl<MachineInstr*> *NewPHI)
+ : AV(0), IPI(0), InsertedPHIs(NewPHI) {
+@@ -50,6 +50,7 @@
+ delete &getAvailableVals(AV);
+ delete &getIncomingPredInfo(IPI);
+ }
++#pragma clang optimize on
+
+ /// Initialize - Reset this object to get ready for a new set of SSA
+ /// updates. ProtoValue is the value used to name PHI nodes.
+--- llvmCore/lib/Transforms/Utils/SSAUpdater.cpp.orig 2015-10-12 19:34:50.000000000 -0400
++++ llvmCore/lib/Transforms/Utils/SSAUpdater.cpp 2015-10-12 19:35:24.000000000 -0400
+@@ -32,7 +32,7 @@
+ return *static_cast<IncomingPredInfoTy*>(IPI);
+ }
+
+-
++#pragma clang optimize off
+ SSAUpdater::SSAUpdater(SmallVectorImpl<PHINode*> *NewPHI)
+ : AV(0), PrototypeValue(0), IPI(0), InsertedPHIs(NewPHI) {}
+
+@@ -40,6 +40,7 @@
+ delete &getAvailableVals(AV);
+ delete &getIncomingPredInfo(IPI);
+ }
++#pragma clang optimize on
+
+ /// Initialize - Reset this object to get ready for a new set of SSA
+ /// updates. ProtoValue is the value used to name PHI nodes.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20151013/f4d12950/attachment.html>
More information about the macports-changes
mailing list