# $Id: Portfile 110372 2013-08-30 19:04:57Z jeremyhu@macports.org $ PortSystem 1.0 name libcxxabi categories lang platforms darwin license MIT NCSA 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 183506 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} { pre-fetch { ui_error "${name} is not supported on Leopard or earlier." error "unsupported platform" } } else { depends_build port:libunwind-headers configure.compiler macports-clang-3.3 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 } } livecheck.type none