From 6c0391e3ed86bf339bf3d504abbc66e43bc207da Mon Sep 17 00:00:00 2001 From: Daniel Martinez Date: Mon, 12 Feb 2024 16:47:24 -0500 Subject: [PATCH 1/3] llvm17: cross compile compiler-rt properly, add liblldb17 --- common/shlibs | 2 +- srcpkgs/compiler-rt17 | 1 + srcpkgs/liblldb17 | 1 + srcpkgs/llvm17/template | 40 +++++++++++++++++++++++++--------------- 4 files changed, 28 insertions(+), 16 deletions(-) create mode 120000 srcpkgs/compiler-rt17 create mode 120000 srcpkgs/liblldb17 diff --git a/common/shlibs b/common/shlibs index 93fb4b2608729..a1380061324a2 100644 --- a/common/shlibs +++ b/common/shlibs @@ -982,7 +982,7 @@ libuchardet.so.0 uchardet-0.0.6_1 libgtksourceviewmm-3.0.so.0 gtksourceviewmm-3.2.0_1 libyajl.so.2 yajl-2.0.1_1 libconfuse.so.2 confuse-3.2.1_1 -liblldb.so.17 lldb17-17.0.6_1 +liblldb.so.17 liblldb17-17.0.6_3 liblldb.so.15 lldb15-15.0.7_4 libclang.so.17 libclang17-17.0.6_1 libclang.so.15 libclang15-15.0.7_4 diff --git a/srcpkgs/compiler-rt17 b/srcpkgs/compiler-rt17 new file mode 120000 index 0000000000000..96970d5c02c13 --- /dev/null +++ b/srcpkgs/compiler-rt17 @@ -0,0 +1 @@ +llvm17 \ No newline at end of file diff --git a/srcpkgs/liblldb17 b/srcpkgs/liblldb17 new file mode 120000 index 0000000000000..96970d5c02c13 --- /dev/null +++ b/srcpkgs/liblldb17 @@ -0,0 +1 @@ +llvm17 \ No newline at end of file diff --git a/srcpkgs/llvm17/template b/srcpkgs/llvm17/template index aef0bf773d6be..a2a021f9dee80 100644 --- a/srcpkgs/llvm17/template +++ b/srcpkgs/llvm17/template @@ -1,7 +1,7 @@ # Template file for 'llvm17' pkgname=llvm17 version=17.0.6 -revision=2 +revision=3 build_wrksrc=llvm build_style=cmake _ext_suffix=".cpython-${py3_ver/./}-linux-${XBPS_TARGET_LIBC/glibc/gnu}.so" @@ -9,6 +9,7 @@ pycompile_dirs="usr/share/scan-view" configure_args=" -DCMAKE_BUILD_TYPE=Release -Wno-dev -DENABLE_LINKER_BUILD_ID=YES + -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON -DLLDB_USE_SYSTEM_SIX=YES -DLIBCXX_CXX_ABI=libcxxabi -DLIBCXX_ENABLE_STATIC_ABI_LIBRARY=YES @@ -58,8 +59,9 @@ if [ "$XBPS_TARGET_LIBC" = "musl" ]; then fi subpackages="libllvm17 llvm17-doc llvm17-devel" -_enabled_projects= -_enabled_runtimes= + +# use $(:) to silence xlint +_enabled_projects=$(:) if [ "$build_option_clang" ]; then _enabled_projects+="clang;" @@ -78,7 +80,7 @@ if [ "$build_option_polly" ]; then fi if [ "$build_option_lldb" ]; then _enabled_projects+="lldb;" - subpackages+=" lldb17 lldb17-devel " + subpackages+=" lldb17 lldb17-devel liblldb17 " fi if [ "$build_option_lld" ]; then _enabled_projects+="lld;" @@ -96,16 +98,17 @@ if [ "$build_option_flang" ]; then subpackages+=" flang17 flang17-devel " fi +subpackages+=" compiler-rt17 " +_enabled_runtimes="compiler-rt" + # enable if runtime subpackages link to this version of llvm if true; then subpackages+=" llvm-libunwind llvm-libunwind-devel " - _enabled_runtimes+="${_enabled_runtimes:+;}libunwind" + _enabled_runtimes+=";libunwind" subpackages+=" libcxx libcxx-devel libcxxabi libcxxabi-devel " - _enabled_runtimes+="${_enabled_runtimes:+;}libcxxabi;libcxx" + _enabled_runtimes+=";libcxxabi;libcxx" - subpackages+=" compiler-rt " - _enabled_runtimes+="${_enabled_runtimes:+;}compiler-rt" case "$XBPS_TARGET_MACHINE" in x86_64*|aarch64*) @@ -113,15 +116,15 @@ if true; then if [ "$CROSS_BUILD" ]; then _enabled_projects+="openmp;" else - _enabled_runtimes+="${_enabled_runtimes:+;}openmp" + _enabled_runtimes+=";openmp" fi subpackages+=" libomp libomp-devel " ;; esac - configure_args+=" -DLLVM_ENABLE_RUNTIMES=${_enabled_runtimes}" fi +configure_args+=" -DLLVM_ENABLE_RUNTIMES=${_enabled_runtimes}" configure_args+=" -DLLVM_ENABLE_PROJECTS=${_enabled_projects}" if [ "$CROSS_BUILD" ]; then @@ -456,11 +459,7 @@ lldb17_package() { vmove usr/bin/lldb-instr vmove usr/bin/lldb-server vmove usr/bin/lldb-vscode - vmove "usr/lib/liblldb*.so.*" vmove "usr/lib/python${py3_ver}/site-packages/lldb" - if [ -z "$CROSS_BUILD" ]; then - vmove /usr/lib/lua/5.3/lldb.so - fi } } @@ -474,6 +473,17 @@ lldb17-devel_package() { } } +liblldb17_package() { + lib32disabled=yes + short_desc+=" - LLDB debugger - runtime library" + pkg_install() { + vmove "usr/lib/liblldb*.so.*" + if [ -z "$CROSS_BUILD" ]; then + vmove /usr/lib/lua/5.3/lldb.so + fi + } +} + lld17_package() { lib32disabled=yes short_desc+=" - linker" @@ -654,7 +664,7 @@ libcxx-devel_package() { } } -compiler-rt_package() { +compiler-rt17_package() { short_desc+=" - runtime libraries" homepage="https://compiler-rt.llvm.org/" pkg_install() { From b7091892cad1aac1ecaa09901290bf1a6471cc37 Mon Sep 17 00:00:00 2001 From: Daniel Martinez Date: Mon, 12 Feb 2024 16:47:51 -0500 Subject: [PATCH 2/3] llvm: add compiler-rt meta-package --- srcpkgs/compiler-rt | 2 +- srcpkgs/llvm/template | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/srcpkgs/compiler-rt b/srcpkgs/compiler-rt index 96970d5c02c13..0d68131b9b308 120000 --- a/srcpkgs/compiler-rt +++ b/srcpkgs/compiler-rt @@ -1 +1 @@ -llvm17 \ No newline at end of file +llvm \ No newline at end of file diff --git a/srcpkgs/llvm/template b/srcpkgs/llvm/template index b27a80da2fee1..bfa7da4ab4868 100644 --- a/srcpkgs/llvm/template +++ b/srcpkgs/llvm/template @@ -1,7 +1,7 @@ # Template file for 'llvm' pkgname=llvm version=17 -revision=2 +revision=3 build_style=meta depends="llvm${version}" short_desc="LLVM meta package" @@ -57,3 +57,9 @@ libllvm_package() { depends="libllvm${version}>=0" short_desc+=" - transitional meta package" } + +compiler-rt_package() { + build_style=meta + depends="compiler-rt${version}>=0" + short_desc+=" - transitional meta package" +} From bfa8b676199737397922d757e3f5995736cf3d96 Mon Sep 17 00:00:00 2001 From: Daniel Martinez Date: Mon, 12 Feb 2024 16:48:00 -0500 Subject: [PATCH 3/3] codelite: rebuild for lldb17 --- srcpkgs/codelite/template | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/srcpkgs/codelite/template b/srcpkgs/codelite/template index f8206426888fd..bcb40dd697b7c 100644 --- a/srcpkgs/codelite/template +++ b/srcpkgs/codelite/template @@ -1,7 +1,7 @@ # Template file for 'codelite' pkgname=codelite version=16.0.0 -revision=4 +revision=5 create_wrksrc=yes build_style=cmake build_helper=cmake-wxWidgets-gtk3 @@ -10,7 +10,7 @@ configure_args="-DWITH_PCH=0 -DWITH_WX_CONFIG=wx-config-gtk3 $(vopt_if lldb -DENABLE_LLDB=1 -DENABLE_LLDB=0)" hostmakedepends="pkg-config which" makedepends="gtk+3-devel wxWidgets-gtk3-devel sqlite-devel MesaLib-devel - $(vopt_if lldb lldb-devel) $(vopt_if hunspell hunspell-devel) + $(vopt_if lldb lldb17-devel) $(vopt_if hunspell hunspell-devel) $(vopt_if sftp libssh-devel)" short_desc="Open-source, cross platform IDE for the C/C++ programming languages" maintainer="Orphaned "