[97832] trunk/dports/lang

jeremyhu at macports.org jeremyhu at macports.org
Mon Sep 17 00:59:33 PDT 2012


Revision: 97832
          http://trac.macports.org//changeset/97832
Author:   jeremyhu at macports.org
Date:     2012-09-17 00:59:33 -0700 (Mon, 17 Sep 2012)
Log Message:
-----------
libcxxabi: Port to provide libc++abi.dylib for Snow Leopard users.  This is necessary (but not sufficient) for supporting C++11 in clang++ on Snow Leopard.

Added Paths:
-----------
    trunk/dports/lang/libcxxabi/
    trunk/dports/lang/libcxxabi/Portfile

Added: trunk/dports/lang/libcxxabi/Portfile
===================================================================
--- trunk/dports/lang/libcxxabi/Portfile	                        (rev 0)
+++ trunk/dports/lang/libcxxabi/Portfile	2012-09-17 07:59:33 UTC (rev 97832)
@@ -0,0 +1,68 @@
+# $Id$
+
+PortSystem              1.0
+PortGroup select        1.0
+
+name                    libcxxabi
+categories              lang
+platforms               darwin
+license                 MIT UIUC
+maintainers             jeremyhu openmaintainer
+description             libc++abi is a new implementation of low level support for a standard C++ library.
+long_description        ${description} \
+                        It installs to /usr/lib for older systems that don't have this support natively.
+
+homepage                http://libcxxabi.llvm.org/
+
+fetch.type              svn
+svn.revision            164017
+version                 ${svn.revision}
+worksrcdir              trunk
+svn.url                 http://llvm.org/svn/llvm-project/libcxxabi/trunk
+
+variant universal {}
+use_configure no
+
+if {${os.major} >= 11} {
+    fetch {}
+    build {}
+    destroot {
+        xinstall -d ${destroot}${prefix}/share/doc/${name}
+        system "echo ${name} is an empty port on this OS version because the functionality is already provided by the OS. > ${destroot}${prefix}/share/doc/${name}/README.txt"
+    }
+} elseif {${os.major} < 10} {
+    ui_error "${name} is not supported on Leopard or earlier."
+    error "unsupported platform"
+} else {
+    depends_build port:clang-3.1
+    depends_skip_archcheck-append clang-3.1
+
+    configure.compiler macports-clang-3.1
+
+    supported_archs i386 x86_64
+
+    build.dir ${worksrcpath}/lib
+    build.cmd ./buildit
+    build.env-append \
+        CC="${configure.cc} ${configure.cppflags}" \
+        CXX="${configure.cxx} ${configure.cppflags}" \
+        RC_XBS=1 \
+        RC_CFLAGS="[get_canonical_archflags]" \
+        TRIPLE="-apple-darwin${os.major}"
+
+    # We want to use the host's libc++abi everywhere because we want to ensure
+    # that only *ONE* copy of this library is in any process's address space.
+    # On newer OS versions (Lion+), this port does not install anything.  On
+    # Snow Leopard, this port provide this library in /usr for binary
+    # compatibility with Lion and later.
+
+    destroot.violate_mtree yes
+    destroot {
+        xinstall -m 755 -d ${destroot}/usr/lib
+        xinstall -m 755 ${worksrcpath}/lib/libc++abi.dylib ${destroot}/usr/lib
+
+        xinstall -m 755 -d ${destroot}/usr/include
+        xinstall -m 644 ${worksrcpath}/include/cxa_demangle.h ${destroot}/usr/include
+        xinstall -m 644 ${worksrcpath}/include/cxxabi.h ${destroot}/usr/include
+    }
+}


Property changes on: trunk/dports/lang/libcxxabi/Portfile
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20120917/28488baf/attachment.html>


More information about the macports-changes mailing list