[91402] trunk/dports
jeremyhu at macports.org
jeremyhu at macports.org
Sat Mar 31 11:44:50 PDT 2012
Revision: 91402
https://trac.macports.org/changeset/91402
Author: jeremyhu at macports.org
Date: 2012-03-31 11:44:50 -0700 (Sat, 31 Mar 2012)
Log Message:
-----------
ld64, clang-*, llvm-*, dragonegg-3.1: Support building +universal
clang and llvm ports now have a +assertions variant which is off by
default on released versions and on by default for development versions.
Turing off assertions has noticable performance gains for JIT, #33749
llvm 3.1 ports have been updated to trunk r153754
Added myself as co-maintainer of ld64
${prefix}/bin/ld will no longer crash when executed directly on machines
without a host libLTO.dylib
Revision Links:
--------------
https://trac.macports.org/changeset/153754
Modified Paths:
--------------
trunk/dports/devel/ld64/Portfile
trunk/dports/lang/clang-2.9/Portfile
trunk/dports/lang/clang-3.0/Portfile
trunk/dports/lang/clang-3.1/Portfile
trunk/dports/lang/dragonegg-3.1/Portfile
trunk/dports/lang/llvm-2.9/Portfile
trunk/dports/lang/llvm-3.0/Portfile
trunk/dports/lang/llvm-3.1/Portfile
Modified: trunk/dports/devel/ld64/Portfile
===================================================================
--- trunk/dports/devel/ld64/Portfile 2012-03-31 18:44:32 UTC (rev 91401)
+++ trunk/dports/devel/ld64/Portfile 2012-03-31 18:44:50 UTC (rev 91402)
@@ -10,17 +10,16 @@
name ld64
version 128.2
-revision 2
+revision 3
set llvm_version 3.0
categories devel
-maintainers mfeiri
+maintainers mfeiri jeremyhu
homepage http://opensource.apple.com/source/${name}/
master_sites http://opensource.apple.com/tarballs/${name}/
license APSL-2.0
depends_build port:llvm-${llvm_version} port:libunwind-headers \
path:include/mach-o/dyld_priv.h:dyld-headers \
path:include/mach-o/arm/reloc.h:cctools-headers
-universal_variant no
description ld64 is the new mach-o linker
long_description ld64 combines several object files and libraries, \
resolves references, and produces an ouput file.
@@ -57,8 +56,12 @@
}
post-destroot {
+ # ${prefix}/bin/ld will always use the llvm we built against
+ # ${prefix}/libexec/ld64/ld uses relative linking for use with the llvm ports
+ file mkdir -p ${destroot}${prefix}/libexec/ld64
+ file copy ${destroot}${prefix}/bin/ld ${destroot}${prefix}/libexec/ld64/ld
system "install_name_tool -change ${prefix}/libexec/llvm-${llvm_version}/lib/libLTO.dylib \
- @executable_path/../lib/libLTO.dylib ${destroot}${prefix}/bin/ld"
+ @executable_path/../lib/libLTO.dylib ${destroot}${prefix}/libexec/ld64/ld"
if {${os.major} >= 10} {
file rename ${destroot}${prefix}/bin/libprunetrie.a ${destroot}${prefix}/lib/libprunetrie.a
@@ -76,6 +79,7 @@
platform darwin 8 {
version 62.1
+ revision 1
checksums rmd160 5b53ecb7b7a7e40e7420192fdf609e43151a736a \
sha256 82ccb66eb5a452b8bb47771ebbdb73bed7e8824e3cbd58fa2d6d6fc91ca26b87
depends_build port:llvm-${llvm_version}
@@ -83,7 +87,7 @@
platform darwin 9 {
version 85.2.1
- revision 3
+ revision 4
checksums rmd160 42c80bd4ad6e9f96a757245e6a2b95084c009ff1 \
sha256 4bcbcbdfd62efdc46c51700b8f5dae2cbd1638e9e50f649d5c7f242d32fca804
depends_build port:llvm-${llvm_version}
@@ -92,7 +96,7 @@
platform darwin 10 {
version 127.2
- revision 3
+ revision 4
checksums rmd160 8ee709341549a1944732daef6ebab7ef1acfcc6e \
sha256 97b75547b2bd761306ab3e15ae297f01e7ab9760b922bc657f4ef72e4e052142
}
Modified: trunk/dports/lang/clang-2.9/Portfile
===================================================================
--- trunk/dports/lang/clang-2.9/Portfile 2012-03-31 18:44:32 UTC (rev 91401)
+++ trunk/dports/lang/clang-2.9/Portfile 2012-03-31 18:44:50 UTC (rev 91402)
@@ -4,7 +4,7 @@
PortGroup select 1.0
set llvm_version 2.9
-revision 7
+revision 8
name clang-${llvm_version}
set suffix mp-${llvm_version}
set sub_prefix ${prefix}/libexec/llvm-${llvm_version}
@@ -31,7 +31,6 @@
depends_run port:clang_select
default_variants +analyzer
-universal_variant no
#fetch.type svn
#svn.revision 146339
@@ -39,6 +38,7 @@
#set compiler_rt_rev ${svn.revision}
#worksrcdir release_29
#svn.url http://llvm.org/svn/llvm-project/llvm/branches/${worksrcdir}
+#default_variants-append +assertions
version ${llvm_version}
set compiler_rt_rev 128674
@@ -60,20 +60,41 @@
build.target clang-only
destroot.target install-clang
-build.env-append REQUIRE_RTTI=1
+build.env-append VERBOSE=1 REQUIRE_RTTI=1
+destroot.env-append VERBOSE=1 REQUIRE_RTTI=1
configure.cppflags
configure.ldflags
configure.pre_args-delete --prefix=${prefix}
configure.args --enable-bindings=none --enable-libffi --enable-shared --enable-jit \
- --enable-optimized --enable-assertions --disable-profiling \
+ --enable-optimized --disable-profiling \
--enable-debug-symbols --disable-debug-runtime \
--prefix="${sub_prefix}"
select.group clang
select.file ${filespath}/mp-${name}
-build.args-append VERBOSE=1
+variant universal {
+ build.env-append \
+ UNIVERSAL=1 \
+ UNIVERSAL_ARCH="${universal_archs}"
+ destroot.env-append \
+ UNIVERSAL=1 \
+ UNIVERSAL_ARCH="${universal_archs}"
+ post-extract {
+ # workaround a bug in Apple's shipped gcc driver-driver, patched in
+ # ours with driverdriver-num_infiles.patch
+ if {${configure.compiler} == "gcc-4.0" ||
+ ${configure.compiler} == "gcc-4.2"} {
+ system "echo \"static int ___ignoreme;\" > ${worksrcpath}/tools/llvm-shlib/ignore.c"
+ }
+ }
+}
+
+variant assertions description "Enable assertions for error detection (has performance impacts, especially on JIT)" {
+ configure.args-append --enable-assertions
+}
+
platform darwin {
depends_run-append port:ld64
@@ -154,7 +175,7 @@
}
# http://trac.macports.org/ticket/33207
- ln -s ${prefix}/bin/ld ${sub_prefix}/bin/ld
+ ln -s ${prefix}/libexec/ld64/ld ${destroot}${sub_prefix}/bin/ld
system "install_name_tool -id ${sub_prefix}/lib/libclang.dylib ${destroot}${sub_prefix}/lib/libclang.dylib"
system "install_name_tool -change @executable_path/../lib/libLLVM-${llvm_version}svn.dylib ${sub_prefix}/lib/libLLVM-${llvm_version}svn.dylib ${destroot}${sub_prefix}/lib/libclang.dylib"
Modified: trunk/dports/lang/clang-3.0/Portfile
===================================================================
--- trunk/dports/lang/clang-3.0/Portfile 2012-03-31 18:44:32 UTC (rev 91401)
+++ trunk/dports/lang/clang-3.0/Portfile 2012-03-31 18:44:50 UTC (rev 91402)
@@ -4,7 +4,7 @@
PortGroup select 1.0
set llvm_version 3.0
-revision 6
+revision 7
name clang-${llvm_version}
set suffix mp-${llvm_version}
set sub_prefix ${prefix}/libexec/llvm-${llvm_version}
@@ -31,7 +31,6 @@
depends_run port:clang_select
default_variants +analyzer
-universal_variant no
#fetch.type svn
#svn.revision 146339
@@ -39,6 +38,7 @@
#set compiler_rt_rev ${svn.revision}
#worksrcdir release_30
#svn.url http://llvm.org/svn/llvm-project/llvm/branches/${worksrcdir}
+#default_variants-append +assertions
version ${llvm_version}
set compiler_rt_rev 142041
@@ -60,20 +60,41 @@
build.target clang-only
destroot.target install-clang
-build.env-append REQUIRE_RTTI=1
+build.env-append VERBOSE=1 REQUIRE_RTTI=1
+destroot.env-append VERBOSE=1 REQUIRE_RTTI=1
configure.cppflags
configure.ldflags
configure.pre_args-delete --prefix=${prefix}
configure.args --enable-bindings=none --enable-libffi --enable-shared --enable-jit \
- --enable-optimized --enable-assertions --disable-profiling \
+ --enable-optimized --disable-profiling \
--enable-debug-symbols --disable-debug-runtime \
--prefix="${sub_prefix}"
select.group clang
select.file ${filespath}/mp-${name}
-build.args-append VERBOSE=1
+variant universal {
+ build.env-append \
+ UNIVERSAL=1 \
+ UNIVERSAL_ARCH="${universal_archs}"
+ destroot.env-append \
+ UNIVERSAL=1 \
+ UNIVERSAL_ARCH="${universal_archs}"
+ post-extract {
+ # workaround a bug in Apple's shipped gcc driver-driver, patched in
+ # ours with driverdriver-num_infiles.patch
+ if {${configure.compiler} == "gcc-4.0" ||
+ ${configure.compiler} == "gcc-4.2"} {
+ system "echo \"static int ___ignoreme;\" > ${worksrcpath}/tools/llvm-shlib/ignore.c"
+ }
+ }
+}
+
+variant assertions description "Enable assertions for error detection (has performance impacts, especially on JIT)" {
+ configure.args-append --enable-assertions
+}
+
platform darwin {
depends_run-append port:ld64
@@ -152,7 +173,7 @@
}
# http://trac.macports.org/ticket/33207
- ln -s ${prefix}/bin/ld ${sub_prefix}/bin/ld
+ ln -s ${prefix}/libexec/ld64/ld ${destroot}${sub_prefix}/bin/ld
system "install_name_tool -id ${sub_prefix}/lib/libclang.dylib ${destroot}${sub_prefix}/lib/libclang.dylib"
system "install_name_tool -change @executable_path/../lib/libLLVM-${llvm_version}svn.dylib ${sub_prefix}/lib/libLLVM-${llvm_version}svn.dylib ${destroot}${sub_prefix}/lib/libclang.dylib"
Modified: trunk/dports/lang/clang-3.1/Portfile
===================================================================
--- trunk/dports/lang/clang-3.1/Portfile 2012-03-31 18:44:32 UTC (rev 91401)
+++ trunk/dports/lang/clang-3.1/Portfile 2012-03-31 18:44:50 UTC (rev 91402)
@@ -31,14 +31,14 @@
depends_run port:clang_select
default_variants +analyzer
-universal_variant no
fetch.type svn
-svn.revision 153370
+svn.revision 153754
version ${llvm_version}-r${svn.revision}
set compiler_rt_rev ${svn.revision}
worksrcdir trunk
svn.url http://llvm.org/svn/llvm-project/llvm/trunk
+default_variants-append +assertions
#version ${llvm_version}
#set compiler_rt_rev 150641
@@ -52,20 +52,41 @@
build.target clang-only
destroot.target install-clang
-build.env-append REQUIRE_RTTI=1
+build.env-append VERBOSE=1 REQUIRE_RTTI=1
+destroot.env-append VERBOSE=1 REQUIRE_RTTI=1
configure.cppflags
configure.ldflags
configure.pre_args-delete --prefix=${prefix}
configure.args --enable-bindings=none --enable-libffi --enable-shared --enable-jit \
- --enable-optimized --enable-assertions --disable-profiling \
+ --enable-optimized --disable-profiling \
--enable-debug-symbols --disable-debug-runtime \
--prefix="${sub_prefix}"
select.group clang
select.file ${filespath}/mp-${name}
-build.args-append VERBOSE=1
+variant universal {
+ build.env-append \
+ UNIVERSAL=1 \
+ UNIVERSAL_ARCH="${universal_archs}"
+ destroot.env-append \
+ UNIVERSAL=1 \
+ UNIVERSAL_ARCH="${universal_archs}"
+ post-extract {
+ # workaround a bug in Apple's shipped gcc driver-driver, patched in
+ # ours with driverdriver-num_infiles.patch
+ if {${configure.compiler} == "gcc-4.0" ||
+ ${configure.compiler} == "gcc-4.2"} {
+ system "echo \"static int ___ignoreme;\" > ${worksrcpath}/tools/llvm-shlib/ignore.c"
+ }
+ }
+}
+
+variant assertions description "Enable assertions for error detection (has performance impacts, especially on JIT)" {
+ configure.args-append --enable-assertions
+}
+
platform darwin {
depends_run-append port:ld64
@@ -144,7 +165,7 @@
}
# http://trac.macports.org/ticket/33207
- ln -s ${prefix}/bin/ld ${sub_prefix}/bin/ld
+ ln -s ${prefix}/libexec/ld64/ld ${destroot}${sub_prefix}/bin/ld
system "install_name_tool -id ${sub_prefix}/lib/libclang.dylib ${destroot}${sub_prefix}/lib/libclang.dylib"
system "install_name_tool -change @executable_path/../lib/libLLVM-${llvm_version}svn.dylib ${sub_prefix}/lib/libLLVM-${llvm_version}svn.dylib ${destroot}${sub_prefix}/lib/libclang.dylib"
Modified: trunk/dports/lang/dragonegg-3.1/Portfile
===================================================================
--- trunk/dports/lang/dragonegg-3.1/Portfile 2012-03-31 18:44:32 UTC (rev 91401)
+++ trunk/dports/lang/dragonegg-3.1/Portfile 2012-03-31 18:44:50 UTC (rev 91402)
@@ -25,7 +25,7 @@
depends_run port:gcc_select
fetch.type svn
-svn.revision 153370
+svn.revision 153754
version ${llvm_version}-r${svn.revision}
worksrcdir trunk
svn.url http://llvm.org/svn/llvm-project/dragonegg/trunk
Modified: trunk/dports/lang/llvm-2.9/Portfile
===================================================================
--- trunk/dports/lang/llvm-2.9/Portfile 2012-03-31 18:44:32 UTC (rev 91401)
+++ trunk/dports/lang/llvm-2.9/Portfile 2012-03-31 18:44:50 UTC (rev 91402)
@@ -4,7 +4,7 @@
PortGroup select 1.0
set llvm_version 2.9
-revision 3
+revision 4
name llvm-${llvm_version}
set suffix mp-${llvm_version}
set sub_prefix ${prefix}/libexec/${name}
@@ -31,6 +31,7 @@
#version ${llvm_version}-r${svn.revision}
#worksrcdir release_29
#svn.url http://llvm.org/svn/llvm-project/llvm/branches/${worksrcdir}
+#default_variants-append +assertions
version ${llvm_version}
epoch 1
@@ -42,22 +43,41 @@
rmd160 caeaa067fda1eb34196b356a087645f83731cfb7 \
sha256 661236cfa17428b48cfa9cbb9909f7569c64b8ecd219fd91dbc00e3b557b3779
-universal_variant no
-
-build.env-append REQUIRE_RTTI=1
+build.env-append VERBOSE=1 REQUIRE_RTTI=1
+destroot.env-append VERBOSE=1 REQUIRE_RTTI=1
configure.cppflags
configure.ldflags
configure.pre_args-delete --prefix=${prefix}
configure.args --enable-bindings=none --enable-libffi --enable-shared --enable-jit \
- --enable-optimized --enable-assertions --disable-profiling \
+ --enable-optimized --disable-profiling \
--enable-debug-symbols --disable-debug-runtime \
--prefix="${sub_prefix}"
select.group llvm
select.file ${filespath}/mp-${name}
-build.args-append VERBOSE=1
+variant universal {
+ build.env-append \
+ UNIVERSAL=1 \
+ UNIVERSAL_ARCH="${universal_archs}"
+ destroot.env-append \
+ UNIVERSAL=1 \
+ UNIVERSAL_ARCH="${universal_archs}"
+ post-extract {
+ # workaround a bug in Apple's shipped gcc driver-driver, patched in
+ # ours with driverdriver-num_infiles.patch
+ if {${configure.compiler} == "gcc-4.0" ||
+ ${configure.compiler} == "gcc-4.2"} {
+ system "echo \"static int ___ignoreme;\" > ${worksrcpath}/tools/llvm-shlib/ignore.c"
+ }
+ }
+}
+
+variant assertions description "Enable assertions for error detection (has performance impacts, especially on JIT)" {
+ configure.args-append --enable-assertions
+}
+
platform darwin {
if {${build_arch} == "i386" } {
configure.pre_args-append --build=i686-apple-darwin${os.major}
Modified: trunk/dports/lang/llvm-3.0/Portfile
===================================================================
--- trunk/dports/lang/llvm-3.0/Portfile 2012-03-31 18:44:32 UTC (rev 91401)
+++ trunk/dports/lang/llvm-3.0/Portfile 2012-03-31 18:44:50 UTC (rev 91402)
@@ -4,7 +4,7 @@
PortGroup select 1.0
set llvm_version 3.0
-revision 3
+revision 4
name llvm-${llvm_version}
set suffix mp-${llvm_version}
set sub_prefix ${prefix}/libexec/${name}
@@ -31,6 +31,7 @@
#version ${llvm_version}-r${svn.revision}
#worksrcdir release_30
#svn.url http://llvm.org/svn/llvm-project/llvm/branches/${worksrcdir}
+#default_variants-append +assertions
version ${llvm_version}
epoch 1
@@ -42,22 +43,41 @@
rmd160 85211cafbed1c5d838ac54669017b5298613f975 \
sha256 519eb11d3499ce99c6ffdb8718651fc91425ed7690eac91c8d6853474f7c0477
-universal_variant no
-
-build.env-append REQUIRE_RTTI=1
+build.env-append VERBOSE=1 REQUIRE_RTTI=1
+destroot.env-append VERBOSE=1 REQUIRE_RTTI=1
configure.cppflags
configure.ldflags
configure.pre_args-delete --prefix=${prefix}
configure.args --enable-bindings=none --enable-libffi --enable-shared --enable-jit \
- --enable-optimized --enable-assertions --disable-profiling \
+ --enable-optimized --disable-profiling \
--enable-debug-symbols --disable-debug-runtime \
--prefix="${sub_prefix}"
select.group llvm
select.file ${filespath}/mp-${name}
-build.args-append VERBOSE=1
+variant universal {
+ build.env-append \
+ UNIVERSAL=1 \
+ UNIVERSAL_ARCH="${universal_archs}"
+ destroot.env-append \
+ UNIVERSAL=1 \
+ UNIVERSAL_ARCH="${universal_archs}"
+ post-extract {
+ # workaround a bug in Apple's shipped gcc driver-driver, patched in
+ # ours with driverdriver-num_infiles.patch
+ if {${configure.compiler} == "gcc-4.0" ||
+ ${configure.compiler} == "gcc-4.2"} {
+ system "echo \"static int ___ignoreme;\" > ${worksrcpath}/tools/llvm-shlib/ignore.c"
+ }
+ }
+}
+
+variant assertions description "Enable assertions for error detection (has performance impacts, especially on JIT)" {
+ configure.args-append --enable-assertions
+}
+
platform darwin {
if {${build_arch} == "i386" } {
configure.pre_args-append --build=i686-apple-darwin${os.major}
Modified: trunk/dports/lang/llvm-3.1/Portfile
===================================================================
--- trunk/dports/lang/llvm-3.1/Portfile 2012-03-31 18:44:32 UTC (rev 91401)
+++ trunk/dports/lang/llvm-3.1/Portfile 2012-03-31 18:44:50 UTC (rev 91402)
@@ -26,10 +26,11 @@
depends_run bin:perl:perl5 port:llvm_select
fetch.type svn
-svn.revision 153370
+svn.revision 153754
version ${llvm_version}-r${svn.revision}
worksrcdir trunk
svn.url http://llvm.org/svn/llvm-project/llvm/trunk
+default_variants-append +assertions
#version ${llvm_version}
#epoch 1
@@ -38,22 +39,41 @@
#distfiles llvm-${version}${extract.suffix}
#worksrcdir llvm-${version}.src
-universal_variant no
-
-build.env-append REQUIRE_RTTI=1
+build.env-append VERBOSE=1 REQUIRE_RTTI=1
+destroot.env-append VERBOSE=1 REQUIRE_RTTI=1
configure.cppflags
configure.ldflags
configure.pre_args-delete --prefix=${prefix}
configure.args --enable-bindings=none --enable-libffi --enable-shared --enable-jit \
- --enable-optimized --enable-assertions --disable-profiling \
+ --enable-optimized --disable-profiling \
--enable-debug-symbols --disable-debug-runtime \
--prefix="${sub_prefix}"
select.group llvm
select.file ${filespath}/mp-${name}
-build.args-append VERBOSE=1
+variant universal {
+ build.env-append \
+ UNIVERSAL=1 \
+ UNIVERSAL_ARCH="${universal_archs}"
+ destroot.env-append \
+ UNIVERSAL=1 \
+ UNIVERSAL_ARCH="${universal_archs}"
+ post-extract {
+ # workaround a bug in Apple's shipped gcc driver-driver, patched in
+ # ours with driverdriver-num_infiles.patch
+ if {${configure.compiler} == "gcc-4.0" ||
+ ${configure.compiler} == "gcc-4.2"} {
+ system "echo \"static int ___ignoreme;\" > ${worksrcpath}/tools/llvm-shlib/ignore.c"
+ }
+ }
+}
+
+variant assertions description "Enable assertions for error detection (has performance impacts, especially on JIT)" {
+ configure.args-append --enable-assertions
+}
+
platform darwin {
if {${build_arch} == "i386" } {
configure.pre_args-append --build=i686-apple-darwin${os.major}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20120331/545af9c4/attachment-0001.html>
More information about the macports-changes
mailing list