# Contributor: Bartłomiej Piotrowski # Maintainer: pkgname=lldb # Note: Update together with llvm. pkgver=5.0.1 pkgrel=0 _vermajor=${pkgver%%.*} pkgdesc="Next generation, high-performance debugger" arch="all !x86 !ppc64le" url="http://llvm.org/" license="UOI-NCSA" makedepends=" clang-dev>=$_vermajor clang-static>=$_vermajor cmake doxygen libedit-dev libffi-dev libxml2-dev linux-headers llvm-dev>=$_vermajor llvm-static>=$_vermajor ncurses-dev ninja python2-dev swig " subpackages="$pkgname-dev py2-$pkgname:py2" source="http://llvm.org/releases/$pkgver/$pkgname-$pkgver.src.tar.xz musl-include-ptrace.aarch64.patch cmake-include-ClangConfig.patch fix-embedded_interpreter.patch " builddir="$srcdir/$pkgname-$pkgver.src" build() { mkdir -p "$builddir"/build cd "$builddir"/build CC=clang CXX=clang++ cmake .. -G Ninja -Wno-dev \ -DCMAKE_BUILD_TYPE=MinSizeRel \ -DCMAKE_C_FLAGS_MINSIZEREL_INIT="$CFLAGS" \ -DCMAKE_CXX_FLAGS_MINSIZEREL_INIT="$CXXFLAGS" \ -DCMAKE_EXE_LINKER_FLAGS_MINSIZEREL_INIT="$LDFLAGS" \ -DCMAKE_INSTALL_PREFIX=/usr \ -DLLVM_LINK_LLVM_DYLIB=ON \ -DLLDB_DISABLE_LIBEDIT=ON \ -DPYTHON_EXECUTABLE=/usr/bin/python2 ninja } package() { cd "$builddir"/build DESTDIR="$pkgdir" ninja install # XXX: I have no idea why this is installed to bindir. Moving it to # libdir may break it, but I don't know how to test this. mv "$pkgdir"/usr/bin/liblldb-intel-mpxtable.so "$pkgdir"/usr/lib/ || true # Remove static libraries. rm -f "$pkgdir"/usr/lib/*.a } py2() { pkgdesc="Python module for LLDB" depends="$pkgname py2-six" replaces="py-lldb" local sitedir="usr/lib/python2.7/site-packages" mkdir -p "$subpkgdir"/$sitedir cd "$subpkgdir" mv "$pkgdir"/$sitedir ${sitedir%/*}/ rmdir "$pkgdir"/${sitedir%/*} # Move binary lib to the module's directory. mv $sitedir/readline.so $sitedir/lldb/ # Remove bundled module. rm $sitedir/six.py python2 -m compileall -fqd /$sitedir $sitedir } sha512sums="ebb3c3251098cfce28ccb6a5bbc50491a16b88d1adf3c71fd38efc95482d702e1bd9e7fb11c29597304d97cc0fd88241c70ec11276426aad901e5d23f05ca53a lldb-5.0.1.src.tar.xz 1613a1cb042edd430aba6b86e4971ebb01f7d2bc3f13a5a1264cb94da7612188897e9dcaaa9233be8af5c8f4bad013dd0cfb821e323cd73dfe07fe125869ccef musl-include-ptrace.aarch64.patch 18ea4cd3ef357299833e243613031ad67ff82f7c93c1f3fbe2cbce8876ffeec2d8ff2f94c8242ea540c2604ffbc023fb2678643fc9d3b64231f096054d186aef cmake-include-ClangConfig.patch 3c611fa5d45b6cb3f2925a31deeb8a34c295277aedcd55c22851d373897acd376fa92f4ef953c96a25c8dae4c93b6a88de0918550672141d324a3813d8283d48 fix-embedded_interpreter.patch"