talimat 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. # Tanım: LLVM C++ standard kütüphane.
  2. # URL: https://libcxx.llvm.org/
  3. # Paketçi: Cihan_Alkan
  4. # Gerekler: clang cmake ninja python3 libunwind
  5. # Grup: kütüphane
  6. isim=libc++
  7. surum=7.0.0
  8. devir=1
  9. kaynak=(https://releases.llvm.org/$surum/llvm-$surum.src.tar.xz
  10. https://releases.llvm.org/$surum/libcxx-$surum.src.tar.xz
  11. https://releases.llvm.org/$surum/libcxxabi-$surum.src.tar.xz)
  12. derle() {
  13. [[ -d llvm ]] || mkdir llvm
  14. mv $SRC/llvm-$surum.src/* ${SRC}/llvm/
  15. [[ -d llvm/projects/libcxx ]] || mkdir llvm/projects/libcxx
  16. mv ${SRC}/libcxx-$surum.src/* ${SRC}/llvm/projects/libcxx/
  17. [[ -d llvm/projects/libcxxabi ]] || mkdir llvm/projects/libcxxabi
  18. mv ${SRC}/libcxxabi-$surum.src/* ${SRC}/llvm/projects/libcxxabi/
  19. [[ -d build ]] || mkdir build
  20. cd build
  21. cmake \
  22. -G Ninja \
  23. -DCMAKE_BUILD_TYPE=Release \
  24. -DCMAKE_INSTALL_PREFIX=/usr \
  25. -DCMAKE_C_COMPILER=clang \
  26. -DCMAKE_CXX_COMPILER=clang++ \
  27. -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=On \
  28. -DLIBCXX_INSTALL_EXPERIMENTAL_LIBRARY=Off \
  29. ${SRC}/llvm
  30. ninja cxx cxx_experimental
  31. cd ${SRC}/build
  32. DESTDIR="${PKG}" ninja install-libcxx
  33. # Remove ABI headers.
  34. rm "${PKG}/usr/include/c++/v1/cxxabi.h"
  35. rm "${PKG}/usr/include/c++/v1/__cxxabi_config.h"
  36. # Remove experimental headers.
  37. rm -rf "${PKG}/usr/include/c++/v1/experimental"
  38. # License.
  39. install -Dm644 ${SRC}/llvm/projects/libcxx/CREDITS.TXT "${PKG}/usr/share/licenses/${isim}/CREDITS"
  40. install -Dm644 ${SRC}/llvm/projects/libcxx/LICENSE.TXT "${PKG}/usr/share/licenses/${isim}/LICENSE"
  41. cd ${SRC}/build
  42. DESTDIR="${PKG}" ninja install-libcxxabi
  43. install -Dm644 ${SRC}/build/include/c++/v1/cxxabi.h "${PKG}/usr/include/c++/v1/cxxabi.h"
  44. install -Dm644 ${SRC}/build/include/c++/v1/__cxxabi_config.h "${PKG}/usr/include/c++/v1/__cxxabi_config.h"
  45. install -Dm644 ${SRC}/build/lib/libc++experimental.a ${PKG}/usr/lib/libc++experimental.a
  46. install -Dm644 -t ${PKG}/usr/include/c++/v1/experimental ${SRC}/build/include/c++/v1/experimental/*
  47. }