libcxx 11.0.0
This commit is contained in:
@@ -7,95 +7,88 @@
|
||||
from pisi.actionsapi import pisitools
|
||||
from pisi.actionsapi import shelltools
|
||||
from pisi.actionsapi import autotools
|
||||
from pisi.actionsapi import cmaketools
|
||||
from pisi.actionsapi import get
|
||||
|
||||
WorkDir = "."
|
||||
WorkDir = "llvm-project-%s" %get.srcVERSION()
|
||||
|
||||
NoStrip = ["/usr"]
|
||||
|
||||
def setup():
|
||||
|
||||
shelltools.move("libcxx-%s.src" %get.srcVERSION(), "libcxx")
|
||||
shelltools.move("libcxxabi-%s.src" %get.srcVERSION(), "libcxxabi")
|
||||
|
||||
def build():
|
||||
|
||||
shelltools.export("CC", "clang")
|
||||
shelltools.export("CXX", "clang++")
|
||||
|
||||
for arch in ["x86_64", "i686"]:
|
||||
|
||||
if arch == "x86_64":
|
||||
pisitools.cflags.add("-m64")
|
||||
pisitools.cxxflags.add("-m64")
|
||||
shelltools.export("LDFLAGS", " -fuse-ld=lld -rtlib=compiler-rt -L/usr/lib -ldl -lpthread")
|
||||
libsuffix = " "
|
||||
|
||||
if arch == "i686":
|
||||
pisitools.cflags.add("-m32")
|
||||
pisitools.cxxflags.add("-m32")
|
||||
shelltools.export("LDFLAGS", "-fuse-ld=lld -L/usr/lib32 -ldl -lpthread")
|
||||
libsuffix = "32"
|
||||
|
||||
shelltools.cd("%s/libcxxabi" %get.workDIR())
|
||||
shelltools.system("mkdir build-%s" %arch)
|
||||
shelltools.cd("build-%s" %arch)
|
||||
|
||||
shelltools.system("cmake .. -G 'Unix Makefiles' \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_AR=/usr/bin/llvm-ar \
|
||||
-DCMAKE_RANLIB=/usr/bin/llvm-ranlib \
|
||||
-DCMAKE_STRIP=' ' \
|
||||
-DLIBCXXABI_ENABLE_EXCEPTIONS=ON \
|
||||
-DLIBCXXABI_ENABLE_THREADS=ON \
|
||||
-DLIBCXXABI_ENABLE_SHARED=OFF \
|
||||
-DLIBCXXABI_LIBCXX_INCLUDES=../../libcxx/include \
|
||||
-DLLVM_NO_OLD_LIBSTDCXX=TRUE \
|
||||
-DCXX_SUPPORTS_CXX11=TRUE \
|
||||
-DLIBCXXABI_HAS_PTHREAD_API=ON \
|
||||
-DLIBCXXABI_INSTALL_LIBRARY=OFF \
|
||||
-DLIBCXXABI_INSTALL_STATIC_LIBRARY=OFF \
|
||||
-DLIBCXXABI_ENABLE_NEW_DELETE_DEFINITIONS=OFF \
|
||||
-DLIBCXXABI_ENABLE_STATIC_UNWINDER=ON \
|
||||
")
|
||||
|
||||
autotools.make()
|
||||
|
||||
shelltools.cd("%s/libcxx" %get.workDIR())
|
||||
shelltools.system("mkdir build-%s" %arch)
|
||||
shelltools.cd("build-%s" %arch)
|
||||
|
||||
shelltools.system("cmake .. -G 'Unix Makefiles' \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_AR=/usr/bin/llvm-ar \
|
||||
-DCMAKE_RANLIB=/usr/bin/llvm-ranlib \
|
||||
-DCMAKE_STRIP=' ' \
|
||||
-DLIBCXXABI_ENABLE_STATIC_UNWINDER=ON \
|
||||
-DLIBCXX_INSTALL_HEADERS=ON \
|
||||
-DLIBCXX_ENABLE_EXCEPTIONS=ON \
|
||||
-DLIBCXX_ENABLE_THREADS=ON \
|
||||
-DLIBCXX_ENABLE_MONOTONIC_CLOCK=ON \
|
||||
-DLIBCXX_ENABLE_SHARED=ON \
|
||||
-DLIBCXX_SUPPORTS_STD_EQ_CXX11_FLAG=TRUE \
|
||||
-DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=ON \
|
||||
-DLIBCXX_ENABLE_FILESYSTEM=ON \
|
||||
-DLIBCXX_ENABLE_STATIC_ABI_LIBRARY=TRUE \
|
||||
-DLIBCXX_USE_COMPILER_RT=ON \
|
||||
-DLIBCXX_CXX_ABI=libcxxabi \
|
||||
-DLIBCXX_CXX_ABI_INCLUDE_PATHS=../../libcxxabi/include \
|
||||
-DLIBCXX_CXX_ABI_LIBRARY_PATH=../../libcxxabi/build-%s/lib \
|
||||
-DLIBCXX_HAS_PTHREAD_API=ON \
|
||||
-DLIBCXX_LIBDIR_SUFFIX=%s \
|
||||
" % (arch, libsuffix) )
|
||||
|
||||
autotools.make()
|
||||
|
||||
if get.buildTYPE() == "emul32" :
|
||||
libsuffix = "32"
|
||||
pisitools.ldflags.add(" -fuse-ld=lld -L/usr/lib32 -ldl -lpthread ")
|
||||
triple = "i686-pc-linux-gnu"
|
||||
pisitools.cflags.add("-m32 --target=%s" %triple)
|
||||
pisitools.cxxflags.add("-m32 --target=%s" %triple)
|
||||
else:
|
||||
libsuffix = " "
|
||||
pisitools.ldflags.add(" -fuse-ld=lld -rtlib=compiler-rt -L/usr/lib -ldl -lpthread ")
|
||||
triple = "%s " % get.HOST()
|
||||
|
||||
shelltools.system("ln -s %s/%s/libcxx llvm/projects/libcxx" %(get.workDIR(), WorkDir))
|
||||
shelltools.system("ln -s %s/%s/libcxxabi llvm/projects/libcxxabi" %(get.workDIR(), WorkDir))
|
||||
|
||||
shelltools.makedirs("llvm/build")
|
||||
shelltools.cd("llvm/build")
|
||||
|
||||
shelltools.system(" cmake \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_AR=/usr/bin/llvm-ar \
|
||||
-DCMAKE_RANLIB=/usr/bin/llvm-ranlib \
|
||||
-DCMAKE_STRIP=' ' \
|
||||
-DLIBCXXABI_USE_COMPILER_RT=ON \
|
||||
-DLIBCXXABI_ENABLE_EXCEPTIONS=ON \
|
||||
-DLIBCXXABI_ENABLE_THREADS=ON \
|
||||
-DLIBCXXABI_ENABLE_SHARED=OFF \
|
||||
-DLLVM_NO_OLD_LIBSTDCXX=TRUE \
|
||||
-DCXX_SUPPORTS_CXX11=TRUE \
|
||||
-DLIBCXXABI_ENABLE_SHARED=OFF \
|
||||
-DLIBCXXABI_HAS_PTHREAD_API=ON \
|
||||
-DLIBCXXABI_INSTALL_LIBRARY=OFF \
|
||||
-DLIBCXXABI_INSTALL_STATIC_LIBRARY=OFF \
|
||||
-DLIBCXXABI_ENABLE_NEW_DELETE_DEFINITIONS=OFF \
|
||||
-DLIBCXXABI_ENABLE_STATIC_UNWINDER=ON \
|
||||
-DLIBCXXABI_LIBUNWIND_INCLUDES=../../libunwind/incude \
|
||||
-DLIBCXXABI_LIBUNWIND_PATH=../../libunwind \
|
||||
-DLIBCXXABI_USE_LLVM_UNWINDER=ON \
|
||||
-DLIBCXX_INSTALL_HEADERS=ON \
|
||||
-DLIBCXX_ENABLE_EXCEPTIONS=ON \
|
||||
-DLIBCXX_ENABLE_THREADS=ON \
|
||||
-DLIBCXX_ENABLE_MONOTONIC_CLOCK=ON \
|
||||
-DLIBCXX_ENABLE_SHARED=ON \
|
||||
-DLIBCXX_SUPPORTS_STD_EQ_CXX11_FLAG=TRUE \
|
||||
-DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=ON \
|
||||
-DLIBCXX_ENABLE_FILESYSTEM=ON \
|
||||
-DLIBCXX_ENABLE_STATIC_ABI_LIBRARY=TRUE \
|
||||
-DLIBCXX_USE_COMPILER_RT=ON \
|
||||
-DLIBCXX_CXX_ABI=libcxxabi \
|
||||
-DLIBCXX_HAS_PTHREAD_API=ON \
|
||||
-DLIBCXX_LIBDIR_SUFFIX=%s \
|
||||
-DLIBCXX_ENABLE_SHARED=ON \
|
||||
-DLIBCXX_ENABLE_STATIC=ON \
|
||||
-DLIBCXX_ENABLE_STATIC_ABI_LIBRARY=TRUE \
|
||||
-DLLVM_EXTERNAL_LIBUNWIND_SOURCE_DIR=../../libunwind \
|
||||
-DLIBUNWIND_INSTALL_LIBRARY=OFF \
|
||||
-DLIBUNWIND_ENABLE_SHARED=ON \
|
||||
-DLIBUNWIND_USE_COMPILER_RT=ON \
|
||||
-DLIBUNWIND_TARGET_TRIPLE=%s \
|
||||
-DLLVM_DEFAULT_TARGET_TRIPLE=%s \
|
||||
.. \
|
||||
" %(libsuffix, triple, triple) )
|
||||
|
||||
def build():
|
||||
shelltools.cd("llvm/build")
|
||||
autotools.make("cxx cxx_experimental")
|
||||
|
||||
def install():
|
||||
shelltools.cd("llvm/build")
|
||||
shelltools.system("DESTDIR=%s make install-cxx-headers install-cxx" %get.installDIR())
|
||||
|
||||
for arch in ["x86_64", "i686"]:
|
||||
shelltools.cd("%s/libcxx/build-%s" % (get.workDIR(), arch) )
|
||||
autotools.rawInstall("DESTDIR=%s" %get.installDIR())
|
||||
|
||||
pisitools.dodoc("%s/libcxx/CREDITS.TXT" % get.workDIR(), "%s/libcxx/LICENSE.TXT" % get.workDIR(), "%s/libcxx/NOTES.TXT" % get.workDIR(), "%s/libcxx/TODO.TXT" % get.workDIR())
|
||||
|
||||
pisitools.dodoc("../projects/libcxx/CREDITS.TXT", "../projects/libcxx/LICENSE.TXT", "../projects/libcxx/NOTES.TXT", "../projects/libcxx/TODO.TXT")
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>libcxx</Name>
|
||||
<Homepage>http://www.kde.org</Homepage>
|
||||
<Homepage>http://libcxx.llvm.org/</Homepage>
|
||||
<Packager>
|
||||
<Name>Idris Kalp</Name>
|
||||
<Email>idriskalp@gmail.com</Email>
|
||||
@@ -12,8 +12,7 @@
|
||||
<IsA>library</IsA>
|
||||
<Summary>LLVM C++ standard library.</Summary>
|
||||
<Description>libcxx provides standard c++ library by LLVM</Description>
|
||||
<Archive sha1sum="9fa3bcaf229a8b74bbc1c53d60f040656f89cb9f" type="tarxz">https://github.com/llvm/llvm-project/releases/download/llvmorg-10.0.0/libcxx-10.0.0.src.tar.xz</Archive>
|
||||
<Archive sha1sum="474dfec6db4a6ca34902ed8446c8c3f85b210c46" type="tarxz">https://github.com/llvm/llvm-project/releases/download/llvmorg-10.0.0/libcxxabi-10.0.0.src.tar.xz</Archive>
|
||||
<Archive sha1sum="3c88390b19ac6779c8d9c89256892d690903412b" type="tarxz">https://github.com/llvm/llvm-project/releases/download/llvmorg-11.0.0/llvm-project-11.0.0.tar.xz</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency>llvm</Dependency>
|
||||
<Dependency>llvm-libs</Dependency>
|
||||
@@ -27,14 +26,18 @@
|
||||
<Name>libcxx</Name>
|
||||
<Files>
|
||||
<Path fileType="library">/usr/lib</Path>
|
||||
<Path fileType="doc">/usr/share/doc</Path>
|
||||
<Path fileType="doc">/usr/share/doc</Path>
|
||||
</Files>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>libcxx-32bit</Name>
|
||||
<Summary>libcxx 32bit shared libraries.</Summary>
|
||||
<PartOf>emul32</PartOf>
|
||||
<BuildType>emul32</BuildType>
|
||||
<Summary>libcxx 32bit shared libraries.</Summary>
|
||||
<RuntimeDependencies>
|
||||
<Dependency release="current">libcxx</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="library">/usr/lib32</Path>
|
||||
</Files>
|
||||
@@ -51,7 +54,14 @@
|
||||
</Files>
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<History>
|
||||
<Update release="2">
|
||||
<Date>2020-11-13</Date>
|
||||
<Version>11.0.0</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Idris Kalp</Name>
|
||||
<Email>idriskalp@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="1">
|
||||
<Date>2020-03-26</Date>
|
||||
<Version>10.0.0</Version>
|
||||
|
||||
Reference in New Issue
Block a user