[86535] trunk/dports/lang

jeremyhu at macports.org jeremyhu at macports.org
Thu Oct 27 15:42:07 PDT 2011


Revision: 86535
          http://trac.macports.org/changeset/86535
Author:   jeremyhu at macports.org
Date:     2011-10-27 15:42:07 -0700 (Thu, 27 Oct 2011)
Log Message:
-----------
clang-* llvm-*: New ports for multiple versions of llvm and clang

Like gcc, multiple versions of llvm and clang can now be installed
simultaneously.  These ports will go through a period of further testing and
bugfixing after which the existing ports (clang, clang-devel, llvm, and
llvm-devel) will be obsoleted.

These ports install binaries and man pages with the -mp-<version> suffix to
maintain consistency with the gcc ports.

A port select group will be added to allow choosing the version of choice, but
the naming and mechanics of that group are still undetermined and need to be
discussed on the mailing list.

Added Paths:
-----------
    trunk/dports/lang/clang-2.9/
    trunk/dports/lang/clang-2.9/Portfile
    trunk/dports/lang/clang-3.0/
    trunk/dports/lang/clang-3.0/Portfile
    trunk/dports/lang/clang-3.1/
    trunk/dports/lang/clang-3.1/Portfile
    trunk/dports/lang/llvm-2.9/
    trunk/dports/lang/llvm-2.9/Portfile
    trunk/dports/lang/llvm-2.9/files/
    trunk/dports/lang/llvm-2.9/files/llvm-config
    trunk/dports/lang/llvm-3.0/
    trunk/dports/lang/llvm-3.0/Portfile
    trunk/dports/lang/llvm-3.0/files/
    trunk/dports/lang/llvm-3.0/files/llvm-config
    trunk/dports/lang/llvm-3.1/
    trunk/dports/lang/llvm-3.1/Portfile
    trunk/dports/lang/llvm-3.1/files/
    trunk/dports/lang/llvm-3.1/files/llvm-config

Added: trunk/dports/lang/clang-2.9/Portfile
===================================================================
--- trunk/dports/lang/clang-2.9/Portfile	                        (rev 0)
+++ trunk/dports/lang/clang-2.9/Portfile	2011-10-27 22:42:07 UTC (rev 86535)
@@ -0,0 +1,99 @@
+# $Id$
+
+PortSystem 1.0
+#PortGroup select 1.0
+
+set llvm_version        2.9
+name                    clang-${llvm_version}
+set suffix              mp-${llvm_version}
+set sub_prefix          ${prefix}/libexec/llvm-${llvm_version}
+svn.revision            143106
+version                 ${llvm_version}-r${svn.revision}
+categories              lang
+platforms               darwin
+maintainers             jeremyhu openmaintainer
+license                 NCSA
+description             C, C++, Objective C and Objective C++ compiler
+long_description        Clang is an "LLVM native" C/C++/Objective-C compiler, \
+                        which aims to deliver amazingly fast compiles (e.g. \
+                        about 3x faster than GCC when compiling Objective-C \
+                        code in a debug configuration), extremely useful error \
+                        and warning messages and to provide a platform for \
+                        building great source level tools. The included Clang \
+                        Static Analyzer is a tool automatically finds bugs in \
+                        your code, and is a great example of the sort of tool \
+                        that can be built using the Clang frontend as a \
+                        library to parse C/C++ code.
+
+homepage                http://clang.llvm.org/
+
+depends_lib             port:llvm-${llvm_version} port:libffi
+
+default_variants        +analyzer
+universal_variant       no
+build.env-append        REQUIRE_RTTI=1
+
+fetch.type              svn
+svn.url                 http://llvm.org/svn/llvm-project/llvm/branches/release_29
+
+worksrcdir              release_29
+
+build.target            clang-only
+destroot.target         install-clang-c
+configure.cppflags      
+configure.ldflags       
+configure.pre_args-delete --prefix=${prefix}
+configure.args          --enable-bindings=none --enable-libffi --enable-shared \
+                        --enable-optimized --enable-assertions --disable-profiling \
+                        --enable-debug-symbols --disable-debug-runtime \
+                        --prefix="${sub_prefix}"
+
+#select.group    clang
+#select.file     ${filespath}/mp-${name}
+
+platform darwin {
+    depends_run-append      port:ld64
+
+    if {${build_arch} == "i386" } {
+        configure.pre_args-append --build=i686-apple-darwin${os.major}
+    } else {
+        configure.pre_args-append --build=${build_arch}-apple-darwin${os.major}
+    }
+}
+
+post-extract {
+    system "cd ${worksrcpath}/tools && svn co -r ${svn.revision} http://llvm.org/svn/llvm-project/cfe/branches/release_29 clang"
+}
+
+variant analyzer description {Install clang static analyzer} {
+    depends_run-append  bin:python:python26 bin:perl:perl5
+    post-patch {
+        reinplace "s|/usr/bin/env perl|${prefix}/bin/perl5|g" \
+            ${worksrcpath}/tools/clang/tools/scan-build/ccc-analyzer \
+            ${worksrcpath}/tools/clang/tools/scan-build/c++-analyzer \
+            ${worksrcpath}/tools/clang/tools/scan-build/scan-build
+        reinplace "s|/usr/bin/env python|${prefix}/bin/python2.6|g" \
+            ${worksrcpath}/tools/clang/tools/scan-build/set-xcode-analyzer \
+            ${worksrcpath}/tools/clang/tools/scan-view/scan-view
+    }
+
+    post-destroot {
+        file mkdir ${destroot}${sub_prefix}/libexec
+        file copy ${worksrcpath}/tools/clang/tools/scan-build ${destroot}${sub_prefix}/libexec/scan-build
+        file copy ${worksrcpath}/tools/clang/tools/scan-view ${destroot}${sub_prefix}/libexec/scan-view
+
+        file delete -force ${destroot}${sub_prefix}/libexec/scan-build/.svn
+        file delete -force ${destroot}${sub_prefix}/libexec/scan-view/.svn
+        file delete -force ${destroot}${sub_prefix}/libexec/scan-view/Resources/.svn
+
+        ln -s ${sub_prefix}/libexec/scan-build/scan-build ${destroot}${sub_prefix}/bin/scan-build
+        ln -s ${sub_prefix}/libexec/scan-view/scan-view ${destroot}${sub_prefix}/bin/scan-view
+        ln -s ${sub_prefix}/bin ${destroot}${sub_prefix}/libexec/scan-build/bin
+    }
+}
+
+post-destroot {
+    foreach bin [glob ${destroot}${sub_prefix}/bin/*] {
+        ln -s [string map "${destroot}${prefix} .." ${bin}] [string map "${sub_prefix} ${prefix}" ${bin}]-${suffix}
+    }
+}


Property changes on: trunk/dports/lang/clang-2.9/Portfile
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native

Added: trunk/dports/lang/clang-3.0/Portfile
===================================================================
--- trunk/dports/lang/clang-3.0/Portfile	                        (rev 0)
+++ trunk/dports/lang/clang-3.0/Portfile	2011-10-27 22:42:07 UTC (rev 86535)
@@ -0,0 +1,99 @@
+# $Id$
+
+PortSystem 1.0
+#PortGroup select 1.0
+
+set llvm_version        3.0
+name                    clang-${llvm_version}
+set suffix              mp-${llvm_version}
+set sub_prefix          ${prefix}/libexec/llvm-${llvm_version}
+svn.revision            143106
+version                 ${llvm_version}-r${svn.revision}
+categories              lang
+platforms               darwin
+maintainers             jeremyhu openmaintainer
+license                 NCSA
+description             C, C++, Objective C and Objective C++ compiler
+long_description        Clang is an "LLVM native" C/C++/Objective-C compiler, \
+                        which aims to deliver amazingly fast compiles (e.g. \
+                        about 3x faster than GCC when compiling Objective-C \
+                        code in a debug configuration), extremely useful error \
+                        and warning messages and to provide a platform for \
+                        building great source level tools. The included Clang \
+                        Static Analyzer is a tool automatically finds bugs in \
+                        your code, and is a great example of the sort of tool \
+                        that can be built using the Clang frontend as a \
+                        library to parse C/C++ code.
+
+homepage                http://clang.llvm.org/
+
+depends_lib             port:llvm-${llvm_version} port:libffi
+
+default_variants        +analyzer
+universal_variant       no
+build.env-append        REQUIRE_RTTI=1
+
+fetch.type              svn
+svn.url                 http://llvm.org/svn/llvm-project/llvm/branches/release_30
+
+worksrcdir              release_30
+
+build.target            clang-only
+destroot.target         install-clang-c
+configure.cppflags      
+configure.ldflags       
+configure.pre_args-delete --prefix=${prefix}
+configure.args          --enable-bindings=none --enable-libffi --enable-shared \
+                        --enable-optimized --enable-assertions --disable-profiling \
+                        --enable-debug-symbols --disable-debug-runtime \
+                        --prefix="${sub_prefix}"
+
+#select.group    clang
+#select.file     ${filespath}/mp-${name}
+
+platform darwin {
+    depends_run-append      port:ld64
+
+    if {${build_arch} == "i386" } {
+        configure.pre_args-append --build=i686-apple-darwin${os.major}
+    } else {
+        configure.pre_args-append --build=${build_arch}-apple-darwin${os.major}
+    }
+}
+
+post-extract {
+    system "cd ${worksrcpath}/tools && svn co -r ${svn.revision} http://llvm.org/svn/llvm-project/cfe/branches/release_30 clang"
+}
+
+variant analyzer description {Install clang static analyzer} {
+    depends_run-append  bin:python:python26 bin:perl:perl5
+    post-patch {
+        reinplace "s|/usr/bin/env perl|${prefix}/bin/perl5|g" \
+            ${worksrcpath}/tools/clang/tools/scan-build/ccc-analyzer \
+            ${worksrcpath}/tools/clang/tools/scan-build/c++-analyzer \
+            ${worksrcpath}/tools/clang/tools/scan-build/scan-build
+        reinplace "s|/usr/bin/env python|${prefix}/bin/python2.6|g" \
+            ${worksrcpath}/tools/clang/tools/scan-build/set-xcode-analyzer \
+            ${worksrcpath}/tools/clang/tools/scan-view/scan-view
+    }
+
+    post-destroot {
+        file mkdir ${destroot}${sub_prefix}/libexec
+        file copy ${worksrcpath}/tools/clang/tools/scan-build ${destroot}${sub_prefix}/libexec/scan-build
+        file copy ${worksrcpath}/tools/clang/tools/scan-view ${destroot}${sub_prefix}/libexec/scan-view
+
+        file delete -force ${destroot}${sub_prefix}/libexec/scan-build/.svn
+        file delete -force ${destroot}${sub_prefix}/libexec/scan-view/.svn
+        file delete -force ${destroot}${sub_prefix}/libexec/scan-view/Resources/.svn
+
+        ln -s ${sub_prefix}/libexec/scan-build/scan-build ${destroot}${sub_prefix}/bin/scan-build
+        ln -s ${sub_prefix}/libexec/scan-view/scan-view ${destroot}${sub_prefix}/bin/scan-view
+        ln -s ${sub_prefix}/bin ${destroot}${sub_prefix}/libexec/scan-build/bin
+    }
+}
+
+post-destroot {
+    foreach bin [glob ${destroot}${sub_prefix}/bin/*] {
+        ln -s [string map "${destroot}${prefix} .." ${bin}] [string map "${sub_prefix} ${prefix}" ${bin}]-${suffix}
+    }
+}


Property changes on: trunk/dports/lang/clang-3.0/Portfile
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native

Added: trunk/dports/lang/clang-3.1/Portfile
===================================================================
--- trunk/dports/lang/clang-3.1/Portfile	                        (rev 0)
+++ trunk/dports/lang/clang-3.1/Portfile	2011-10-27 22:42:07 UTC (rev 86535)
@@ -0,0 +1,99 @@
+# $Id$
+
+PortSystem 1.0
+#PortGroup select 1.0
+
+set llvm_version        3.1
+name                    clang-${llvm_version}
+set suffix              mp-${llvm_version}
+set sub_prefix          ${prefix}/libexec/llvm-${llvm_version}
+svn.revision            143106
+version                 ${llvm_version}-r${svn.revision}
+categories              lang
+platforms               darwin
+maintainers             jeremyhu openmaintainer
+license                 NCSA
+description             C, C++, Objective C and Objective C++ compiler
+long_description        Clang is an "LLVM native" C/C++/Objective-C compiler, \
+                        which aims to deliver amazingly fast compiles (e.g. \
+                        about 3x faster than GCC when compiling Objective-C \
+                        code in a debug configuration), extremely useful error \
+                        and warning messages and to provide a platform for \
+                        building great source level tools. The included Clang \
+                        Static Analyzer is a tool automatically finds bugs in \
+                        your code, and is a great example of the sort of tool \
+                        that can be built using the Clang frontend as a \
+                        library to parse C/C++ code.
+
+homepage                http://clang.llvm.org/
+
+depends_lib             port:llvm-${llvm_version} port:libffi
+
+default_variants        +analyzer
+universal_variant       no
+build.env-append        REQUIRE_RTTI=1
+
+fetch.type              svn
+svn.url                 http://llvm.org/svn/llvm-project/llvm/trunk
+
+worksrcdir              trunk
+
+build.target            clang-only
+destroot.target         install-clang-c
+configure.cppflags      
+configure.ldflags       
+configure.pre_args-delete --prefix=${prefix}
+configure.args          --enable-bindings=none --enable-libffi --enable-shared \
+                        --enable-optimized --enable-assertions --disable-profiling \
+                        --enable-debug-symbols --disable-debug-runtime \
+                        --prefix="${sub_prefix}"
+
+#select.group    clang
+#select.file     ${filespath}/mp-${name}
+
+platform darwin {
+    depends_run-append      port:ld64
+
+    if {${build_arch} == "i386" } {
+        configure.pre_args-append --build=i686-apple-darwin${os.major}
+    } else {
+        configure.pre_args-append --build=${build_arch}-apple-darwin${os.major}
+    }
+}
+
+post-extract {
+    system "cd ${worksrcpath}/tools && svn co -r ${svn.revision} http://llvm.org/svn/llvm-project/cfe/trunk clang"
+}
+
+variant analyzer description {Install clang static analyzer} {
+    depends_run-append  bin:python:python26 bin:perl:perl5
+    post-patch {
+        reinplace "s|/usr/bin/env perl|${prefix}/bin/perl5|g" \
+            ${worksrcpath}/tools/clang/tools/scan-build/ccc-analyzer \
+            ${worksrcpath}/tools/clang/tools/scan-build/c++-analyzer \
+            ${worksrcpath}/tools/clang/tools/scan-build/scan-build
+        reinplace "s|/usr/bin/env python|${prefix}/bin/python2.6|g" \
+            ${worksrcpath}/tools/clang/tools/scan-build/set-xcode-analyzer \
+            ${worksrcpath}/tools/clang/tools/scan-view/scan-view
+    }
+
+    post-destroot {
+        file mkdir ${destroot}${sub_prefix}/libexec
+        file copy ${worksrcpath}/tools/clang/tools/scan-build ${destroot}${sub_prefix}/libexec/scan-build
+        file copy ${worksrcpath}/tools/clang/tools/scan-view ${destroot}${sub_prefix}/libexec/scan-view
+
+        file delete -force ${destroot}${sub_prefix}/libexec/scan-build/.svn
+        file delete -force ${destroot}${sub_prefix}/libexec/scan-view/.svn
+        file delete -force ${destroot}${sub_prefix}/libexec/scan-view/Resources/.svn
+
+        ln -s ${sub_prefix}/libexec/scan-build/scan-build ${destroot}${sub_prefix}/bin/scan-build
+        ln -s ${sub_prefix}/libexec/scan-view/scan-view ${destroot}${sub_prefix}/bin/scan-view
+        ln -s ${sub_prefix}/bin ${destroot}${sub_prefix}/libexec/scan-build/bin
+    }
+}
+
+post-destroot {
+    foreach bin [glob ${destroot}${sub_prefix}/bin/*] {
+        ln -s [string map "${destroot}${prefix} .." ${bin}] [string map "${sub_prefix} ${prefix}" ${bin}]-${suffix}
+    }
+}


Property changes on: trunk/dports/lang/clang-3.1/Portfile
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native

Added: trunk/dports/lang/llvm-2.9/Portfile
===================================================================
--- trunk/dports/lang/llvm-2.9/Portfile	                        (rev 0)
+++ trunk/dports/lang/llvm-2.9/Portfile	2011-10-27 22:42:07 UTC (rev 86535)
@@ -0,0 +1,86 @@
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
+# $Id$
+
+PortSystem              1.0
+
+set llvm_version        2.9
+name                    llvm-${llvm_version}
+set suffix              mp-${llvm_version}
+set sub_prefix          ${prefix}/libexec/${name}
+svn.revision            143106
+version                 ${llvm_version}-r${svn.revision}
+categories              lang
+platforms               darwin
+license                 NCSA
+maintainers             jeremyhu openmaintainer
+description             llvm is a next generation compiler infrastructure (svn trunk version)
+long_description        The LLVM Core libraries provide a modern source- and \
+                        target-independent optimizer, along with code \
+                        generation support for many popular CPUs (as well as \
+                        some less common ones!) These libraries are built \
+                        around a well specified code representation known as \
+                        the LLVM intermediate representation ("LLVM IR").
+
+homepage                http://llvm.org/
+master_sites            ${homepage}releases/${version}/
+
+fetch.type              svn
+svn.url                 http://llvm.org/svn/llvm-project/llvm/branches/release_29
+
+worksrcdir              release_29
+
+depends_lib             port:libffi
+depends_run             bin:perl:perl5
+
+universal_variant       no
+
+build.env-append        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-debug-symbols --disable-debug-runtime \
+                        --prefix=${sub_prefix}
+
+platform darwin {
+    if {${build_arch} == "i386" } {
+        configure.pre_args-append --build=i686-apple-darwin${os.major}
+    } else {
+        configure.pre_args-append --build=${build_arch}-apple-darwin${os.major}
+    }
+}
+
+platform darwin 8 {
+    pre-fetch {
+        ui_error "${name} requires Mac OS X 10.5 or greater."
+        return -code error "incompatible Mac OS X version"
+    }
+}
+
+variant ocaml description {Enable generation of OCaml binding} {
+    depends_lib-append   port:ocaml
+
+    configure.args-delete --enable-bindings=none
+    configure.args-append --enable-bindings=ocaml
+
+    destroot.args-append  OVERRIDE_libdir=${sub_prefix}/lib
+}
+
+post-destroot {
+    file mkdir ${destroot}${prefix}/share/doc
+    file rename ${destroot}${sub_prefix}/docs/llvm ${destroot}${prefix}/share/doc/${name}
+
+    foreach man [glob ${destroot}${sub_prefix}/share/man/man1/*.1] {
+	set basename [string map "${destroot}${sub_prefix}/share/man/man1/ {}" ${man}]
+        file rename ${man} ${destroot}${prefix}/share/man/man1/[string map ".1 -${suffix}.1" ${basename}]
+    }
+
+    foreach bin [glob ${destroot}${sub_prefix}/bin/*] {
+        ln -s [string map "${destroot}${prefix} .." ${bin}] [string map "${sub_prefix} ${prefix}" ${bin}]-${suffix}
+    }
+
+    file delete "${destroot}${prefix}/bin/llvm-config-${suffix}"
+    xinstall -m 755 ${filespath}/llvm-config "${destroot}${prefix}/bin/llvm-config-${suffix}"
+    reinplace "s:SUB_PREFIX:${sub_prefix}:" "${destroot}${prefix}/bin/llvm-config-${suffix}"
+}


Property changes on: trunk/dports/lang/llvm-2.9/Portfile
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native

Added: trunk/dports/lang/llvm-2.9/files/llvm-config
===================================================================
--- trunk/dports/lang/llvm-2.9/files/llvm-config	                        (rev 0)
+++ trunk/dports/lang/llvm-2.9/files/llvm-config	2011-10-27 22:42:07 UTC (rev 86535)
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec SUB_PREFIX/bin/llvm-config "${@}"


Property changes on: trunk/dports/lang/llvm-2.9/files/llvm-config
___________________________________________________________________
Added: svn:executable
   + *

Added: trunk/dports/lang/llvm-3.0/Portfile
===================================================================
--- trunk/dports/lang/llvm-3.0/Portfile	                        (rev 0)
+++ trunk/dports/lang/llvm-3.0/Portfile	2011-10-27 22:42:07 UTC (rev 86535)
@@ -0,0 +1,86 @@
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
+# $Id$
+
+PortSystem              1.0
+
+set llvm_version        3.0
+name                    llvm-${llvm_version}
+set suffix              mp-${llvm_version}
+set sub_prefix          ${prefix}/libexec/${name}
+svn.revision            143106
+version                 ${llvm_version}-r${svn.revision}
+categories              lang
+platforms               darwin
+license                 NCSA
+maintainers             jeremyhu openmaintainer
+description             llvm is a next generation compiler infrastructure (svn trunk version)
+long_description        The LLVM Core libraries provide a modern source- and \
+                        target-independent optimizer, along with code \
+                        generation support for many popular CPUs (as well as \
+                        some less common ones!) These libraries are built \
+                        around a well specified code representation known as \
+                        the LLVM intermediate representation ("LLVM IR").
+
+homepage                http://llvm.org/
+master_sites            ${homepage}releases/${version}/
+
+fetch.type              svn
+svn.url                 http://llvm.org/svn/llvm-project/llvm/branches/release_30
+
+worksrcdir              release_30
+
+depends_lib             port:libffi
+depends_run             bin:perl:perl5
+
+universal_variant       no
+
+build.env-append        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-debug-symbols --disable-debug-runtime \
+                        --prefix=${sub_prefix}
+
+platform darwin {
+    if {${build_arch} == "i386" } {
+        configure.pre_args-append --build=i686-apple-darwin${os.major}
+    } else {
+        configure.pre_args-append --build=${build_arch}-apple-darwin${os.major}
+    }
+}
+
+platform darwin 8 {
+    pre-fetch {
+        ui_error "${name} requires Mac OS X 10.5 or greater."
+        return -code error "incompatible Mac OS X version"
+    }
+}
+
+variant ocaml description {Enable generation of OCaml binding} {
+    depends_lib-append   port:ocaml
+
+    configure.args-delete --enable-bindings=none
+    configure.args-append --enable-bindings=ocaml
+
+    destroot.args-append  OVERRIDE_libdir=${sub_prefix}/lib
+}
+
+post-destroot {
+    file mkdir ${destroot}${prefix}/share/doc
+    file rename ${destroot}${sub_prefix}/docs/llvm ${destroot}${prefix}/share/doc/${name}
+
+    foreach man [glob ${destroot}${sub_prefix}/share/man/man1/*.1] {
+	set basename [string map "${destroot}${sub_prefix}/share/man/man1/ {}" ${man}]
+        file rename ${man} ${destroot}${prefix}/share/man/man1/[string map ".1 -${suffix}.1" ${basename}]
+    }
+
+    foreach bin [glob ${destroot}${sub_prefix}/bin/*] {
+        ln -s [string map "${destroot}${prefix} .." ${bin}] [string map "${sub_prefix} ${prefix}" ${bin}]-${suffix}
+    }
+
+    file delete "${destroot}${prefix}/bin/llvm-config-${suffix}"
+    xinstall -m 755 ${filespath}/llvm-config "${destroot}${prefix}/bin/llvm-config-${suffix}"
+    reinplace "s:SUB_PREFIX:${sub_prefix}:" "${destroot}${prefix}/bin/llvm-config-${suffix}"
+}


Property changes on: trunk/dports/lang/llvm-3.0/Portfile
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native

Added: trunk/dports/lang/llvm-3.0/files/llvm-config
===================================================================
--- trunk/dports/lang/llvm-3.0/files/llvm-config	                        (rev 0)
+++ trunk/dports/lang/llvm-3.0/files/llvm-config	2011-10-27 22:42:07 UTC (rev 86535)
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec SUB_PREFIX/bin/llvm-config "${@}"


Property changes on: trunk/dports/lang/llvm-3.0/files/llvm-config
___________________________________________________________________
Added: svn:executable
   + *

Added: trunk/dports/lang/llvm-3.1/Portfile
===================================================================
--- trunk/dports/lang/llvm-3.1/Portfile	                        (rev 0)
+++ trunk/dports/lang/llvm-3.1/Portfile	2011-10-27 22:42:07 UTC (rev 86535)
@@ -0,0 +1,86 @@
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
+# $Id$
+
+PortSystem              1.0
+
+set llvm_version        3.1
+name                    llvm-${llvm_version}
+set suffix              mp-${llvm_version}
+set sub_prefix          ${prefix}/libexec/${name}
+svn.revision            143106
+version                 ${llvm_version}-r${svn.revision}
+categories              lang
+platforms               darwin
+license                 NCSA
+maintainers             jeremyhu openmaintainer
+description             llvm is a next generation compiler infrastructure (svn trunk version)
+long_description        The LLVM Core libraries provide a modern source- and \
+                        target-independent optimizer, along with code \
+                        generation support for many popular CPUs (as well as \
+                        some less common ones!) These libraries are built \
+                        around a well specified code representation known as \
+                        the LLVM intermediate representation ("LLVM IR").
+
+homepage                http://llvm.org/
+master_sites            ${homepage}releases/${version}/
+
+fetch.type              svn
+svn.url                 http://llvm.org/svn/llvm-project/llvm/trunk
+
+worksrcdir              trunk
+
+depends_lib             port:libffi
+depends_run             bin:perl:perl5
+
+universal_variant       no
+
+build.env-append        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-debug-symbols --disable-debug-runtime \
+                        --prefix=${sub_prefix}
+
+platform darwin {
+    if {${build_arch} == "i386" } {
+        configure.pre_args-append --build=i686-apple-darwin${os.major}
+    } else {
+        configure.pre_args-append --build=${build_arch}-apple-darwin${os.major}
+    }
+}
+
+platform darwin 8 {
+    pre-fetch {
+        ui_error "${name} requires Mac OS X 10.5 or greater."
+        return -code error "incompatible Mac OS X version"
+    }
+}
+
+variant ocaml description {Enable generation of OCaml binding} {
+    depends_lib-append   port:ocaml
+
+    configure.args-delete --enable-bindings=none
+    configure.args-append --enable-bindings=ocaml
+
+    destroot.args-append  OVERRIDE_libdir=${sub_prefix}/lib
+}
+
+post-destroot {
+    file mkdir ${destroot}${prefix}/share/doc
+    file rename ${destroot}${sub_prefix}/docs/llvm ${destroot}${prefix}/share/doc/${name}
+
+    foreach man [glob ${destroot}${sub_prefix}/share/man/man1/*.1] {
+	set basename [string map "${destroot}${sub_prefix}/share/man/man1/ {}" ${man}]
+        file rename ${man} ${destroot}${prefix}/share/man/man1/[string map ".1 -${suffix}.1" ${basename}]
+    }
+
+    foreach bin [glob ${destroot}${sub_prefix}/bin/*] {
+        ln -s [string map "${destroot}${prefix} .." ${bin}] [string map "${sub_prefix} ${prefix}" ${bin}]-${suffix}
+    }
+
+    file delete "${destroot}${prefix}/bin/llvm-config-${suffix}"
+    xinstall -m 755 ${filespath}/llvm-config "${destroot}${prefix}/bin/llvm-config-${suffix}"
+    reinplace "s:SUB_PREFIX:${sub_prefix}:" "${destroot}${prefix}/bin/llvm-config-${suffix}"
+}


Property changes on: trunk/dports/lang/llvm-3.1/Portfile
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native

Added: trunk/dports/lang/llvm-3.1/files/llvm-config
===================================================================
--- trunk/dports/lang/llvm-3.1/files/llvm-config	                        (rev 0)
+++ trunk/dports/lang/llvm-3.1/files/llvm-config	2011-10-27 22:42:07 UTC (rev 86535)
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec SUB_PREFIX/bin/llvm-config "${@}"


Property changes on: trunk/dports/lang/llvm-3.1/files/llvm-config
___________________________________________________________________
Added: svn:executable
   + *
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20111027/1a39ff21/attachment-0001.html>


More information about the macports-changes mailing list