11# Template file for 'llvm21'
22pkgname=llvm21
3- version=21.1.4
4- revision=2
3+ version=21.1.7
4+ revision=1
55build_wrksrc=llvm
66build_style=cmake
77_major="${version%%.*}"
5858license="Apache-2.0 AND NCSA AND custom:Apache-2.0-with-llvm-exception"
5959homepage="https://www.llvm.org"
6060distfiles="https://github.com/llvm/llvm-project/archive/refs/tags/llvmorg-${version}.tar.gz"
61- checksum=3a0921d78be74302cb054da1dad59e706814d8fed3a6ac9b532e935825a0715c
61+ checksum=9ee167cdf8f6b5221d6b02dbe9a664cf8c6fee70fab071aaa4a3889c7c265258
6262conflicts="llvm18>=0 llvm17>=0 llvm15>=0"
6363lib32disabled=yes
6464python_version=3
@@ -193,8 +193,8 @@ if [ "$CROSS_BUILD" ]; then
193193 configure_args+=" -DLIBOMP_OMPD_GDB_SUPPORT=NO"
194194
195195 if [ "$build_option_flang" ]; then
196- configure_args+=" -DLIBOMP_FORTRAN_MODULES_COMPILER=/${_llvm_bindir}/flang-new "
197- configure_args+=" -DCMAKE_Fortran_COMPILER=/${_llvm_bindir}/flang-new "
196+ configure_args+=" -DLIBOMP_FORTRAN_MODULES_COMPILER=/${_llvm_bindir}/flang"
197+ configure_args+=" -DCMAKE_Fortran_COMPILER=/${_llvm_bindir}/flang"
198198 fi
199199else
200200 # Needs lld on the target machine
@@ -570,7 +570,6 @@ clang21_package() {
570570 short_desc+=" - C language family frontend"
571571 homepage="https://clang.llvm.org/"
572572 _clang_files=(
573- "bin/clang-${_major}"
574573 bin/clang
575574 bin/clang++
576575 bin/clang-cl
@@ -597,6 +596,7 @@ clang21_package() {
597596 share/man/man1/clang-tblgen.1
598597 )
599598
599+ alternatives=""
600600 for _alt in "${_clang_files[@]}"; do
601601 alternatives+=" clang:/usr/${_alt}:/usr/${_llvm_prefix}/${_alt}"
602602 done
@@ -608,7 +608,15 @@ clang21_package() {
608608 "
609609 fi
610610 pkg_install() {
611- vlicense ${wrksrc}/clang/LICENSE.TXT
611+ vlicense "${wrksrc}/clang/LICENSE.TXT"
612+
613+ vmove "usr/${_llvm_prefix}/bin/clang-${_major}"
614+
615+ vmkdir usr/bin
616+ for _bin in clang clang++ clang-cpp clang-cl clang-scan-deps; do
617+ ln -rs "${PKGDESTDIR}/usr/${_llvm_prefix}/bin/${_bin}" "${PKGDESTDIR}/usr/bin/${_bin}-${_major}"
618+ done
619+
612620 for _bin in "${_clang_files[@]}"; do
613621 vmove usr/${_llvm_prefix}/${_bin}
614622 done
@@ -706,6 +714,7 @@ clang-analyzer21_package() {
706714 bin/scan-build-py
707715 bin/scan-view
708716 )
717+ alternatives=""
709718 for _alt in "${_clang_analyzer_files[@]}"; do
710719 alternatives+=" clang-analyzer:/usr/${_alt}:/usr/${_llvm_prefix}/${_alt}"
711720 done
@@ -740,6 +749,7 @@ clang-tools-extra21_package() {
740749 share/man/man1/extraclangtools.1
741750 )
742751
752+ alternatives=""
743753 for _alt in "${_clang_tools_extra_files[@]}"; do
744754 alternatives+=" clang-tools-extra:/usr/${_alt}:/usr/${_llvm_prefix}/${_alt}"
745755 done
@@ -765,6 +775,7 @@ llvm-bolt21_package() {
765775 bin/merge-fdata
766776 bin/llvm-bolt-heatmap
767777 )
778+ alternatives=""
768779 for _alt in "${_llvm_bolt_files[@]}"; do
769780 alternatives+=" llvm-bolt:/usr/${_alt}:/usr/${_llvm_prefix}/${_alt}"
770781 done
@@ -797,6 +808,7 @@ lldb21_package() {
797808 if [ -z "$CROSS_BUILD" ]; then
798809 _lldb_files+=("lib/lua/5.3/lldb.so")
799810 fi
811+ alternatives=""
800812 for _alt in "${_lldb_files[@]}"; do
801813 alternatives+=" lldb:/usr/${_alt}:/usr/${_llvm_prefix}/${_alt}"
802814 done
@@ -839,11 +851,18 @@ lld21_package() {
839851 bin/ld64.lld
840852 bin/wasm-ld
841853 )
854+ alternatives=""
842855 for _alt in "${_lld_files[@]}"; do
843856 alternatives+=" lld:/usr/${_alt}:/usr/${_llvm_prefix}/${_alt}"
844857 done
845858 pkg_install() {
846859 vlicense ${wrksrc}/lld/LICENSE.TXT
860+
861+ vmkdir usr/bin
862+ for _bin in ld.lld ld64.lld lld lld-link wasm-ld; do
863+ ln -rs "${PKGDESTDIR}/usr/${_llvm_prefix}/bin/${_bin}" "${PKGDESTDIR}/usr/bin/${_bin}-${_major}"
864+ done
865+
847866 for _f in "${_lld_files[@]}"; do
848867 vmove usr/${_llvm_prefix}/${_f}
849868 done
@@ -885,6 +904,7 @@ mlir21_package() {
885904 bin/tblgen-lsp-server
886905 share/man/man1/mlir-tblgen.1
887906 )
907+ alternatives=""
888908 for _alt in "${_mlir_files[@]}"; do
889909 alternatives+=" mlir:/usr/${_alt}:/usr/${_llvm_prefix}/${_alt}"
890910 done
@@ -920,16 +940,25 @@ flang21_package() {
920940 short_desc+=" - Fortran language frontend"
921941 homepage="https://flang.llvm.org/"
922942 _flang_files=(
943+ bin/flang
923944 bin/flang-new
924945 bin/bbc
925946 bin/f18-parse-demo
926947 bin/fir-opt
927948 bin/tco
928949 )
950+ alternatives=""
929951 for _alt in "${_flang_files[@]}"; do
930952 alternatives+=" flang:/usr/${_alt}:/usr/${_llvm_prefix}/${_alt}"
931953 done
932954 pkg_install() {
955+ vmove "usr/${_llvm_prefix}/bin/flang-${_major}"
956+
957+ vmkdir usr/bin
958+ for _bin in flang bbc tco fir-opt f18-parse-demo; do
959+ ln -rs "${PKGDESTDIR}/usr/${_llvm_prefix}/bin/${_bin}" "${PKGDESTDIR}/usr/bin/${_bin}-${_major}"
960+ done
961+
933962 for _f in "${_flang_files[@]}"; do
934963 vmove usr/${_llvm_prefix}/${_f}
935964 done
@@ -970,6 +999,7 @@ libomp21_package() {
970999 _libomp_files+=("bin/llvm-omp-kernel-replay")
9711000 _libomp_files+=("lib/libomptarget.so")
9721001 fi
1002+ alternatives=""
9731003 for _alt in "${_libomp_files[@]}"; do
9741004 alternatives+=" libomp:/usr/${_alt}:/usr/${_llvm_prefix}/${_alt}"
9751005 done
@@ -1157,6 +1187,7 @@ libclc21_package() {
11571187 share/clc
11581188 share/pkgconfig/libclc.pc
11591189 )
1190+ alternatives=""
11601191 for _alt in "${_libclc_files[@]}"; do
11611192 alternatives+=" libclc:/usr/${_alt}:/usr/${_llvm_prefix}/${_alt}"
11621193 done
0 commit comments