@@ -28,11 +28,11 @@ pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}"
28
28
" ${MINGW_PACKAGE_PREFIX} -lld"
29
29
" ${MINGW_PACKAGE_PREFIX} -llvm"
30
30
" ${MINGW_PACKAGE_PREFIX} -llvm-libs" )
31
- _version=17.0.6
32
- _rc=
31
+ _version=18.1.1
32
+ _rc=" "
33
33
_tag=llvmorg-${_version}${_rc}
34
34
pkgver=${_version}${_rc/ -/ }
35
- pkgrel=3
35
+ pkgrel=2
36
36
pkgdesc=" C language family frontend for LLVM (mingw-w64)"
37
37
arch=(' any' )
38
38
mingw_arch=(' mingw32' ' mingw64' ' ucrt64' ' clang64' ' clang32' ' clangarm64' )
@@ -63,40 +63,42 @@ source=("${_url}/llvm-${pkgver}.src.tar.xz"{,.sig}
63
63
" ${_url} /lld-${pkgver} .src.tar.xz" {,.sig}
64
64
" ${_url} /cmake-${pkgver} .src.tar.xz" {,.sig}
65
65
" ${_url} /third-party-${pkgver} .src.tar.xz" {,.sig}
66
+ # 0001-0099 -> llvm
66
67
" 0001-Fix-GetHostTriple-for-mingw-w64-in-msys.patch"
67
68
" 0002-Fix-Findzstd-on-MINGW.patch"
68
69
" 0003-add-pthread-as-system-lib-for-mingw.patch"
69
70
" 0004-enable-emutls-for-mingw.patch"
71
+ " 0005-use-SOVERSION-on-mingw.patch"
72
+ # 0101-0199 -> clang
70
73
" 0101-link-pthread-with-mingw.patch"
71
74
" 0102-Rename-flang-new-flang-experimental-exec-to-flang.patch"
72
- " 0303-ignore-new-bfd-options.patch" )
73
- # Some patch notes :)
74
- # 0001-0099 -> llvm
75
- # 0101-0199 -> clang
76
- # 0201-0299 -> rt
77
- # 0301-0399 -> lld
78
- # 0401-0499 -> clang-tools-extra
79
- sha256sums=(' b638167da139126ca11917b6880207cc6e8f9d1cbb1a48d87d017f697ef78188'
75
+ # 0201-0299 -> rt
76
+ # 0301-0399 -> lld
77
+ " 0303-ignore-new-bfd-options.patch"
78
+ # 0401-0499 -> clang-tools-extra
79
+ )
80
+ sha256sums=(' ab0508d02b2d126ceb98035c28638a9d7b1e7fa5ef719396236e72f59a02e1ac'
80
81
' SKIP'
81
- ' a78f668a726ae1d3d9a7179996d97b12b90fb76ab9442a43110b972ff7ad9029 '
82
+ ' 412a482b81a969846b127552f8fa2251c7d57a82337f848fe7fea8e6ce614836 '
82
83
' SKIP'
83
- ' aa774642415d338d7b77a66fcbad6fd1f77f382dabcb67422a6230614eff1ab9 '
84
+ ' 76d3a0ab82b4337324cb8286072bb684549bd980a58aec85b75487b36d18e532 '
84
85
' SKIP'
85
- ' 11b8d09dcf92a0f91c5c82defb5ad9ff4acf5cf073a80c317204baa922d136b4 '
86
+ ' 037b1fbbc6ea90c9ef299caab8a751b435ca6ede2d1972db15b30646636ee057 '
86
87
' SKIP'
87
- ' 4ac13125616dc44905b85820aa403d27ec1226329b7f674daeb5f5584c6f0b22 '
88
+ ' 8456e8be08767f1f257733c5b56d0671d5b1a43fd78ffa53f024f307641f4612 '
88
89
' SKIP'
89
- ' 807f069c54dc20cb47b21c1f6acafdd9c649f3ae015609040d6182cab01140f4 '
90
+ ' 5308023d1c1e9feb264c14f58db35c53061123300a7eb940364f46d574c8b2d6 '
90
91
' SKIP'
91
- ' 3054d0a9c9375dab1a4539cc2cc45ab340341c5d71475f9599ba7752e222947b '
92
+ ' 41cdf4fe95faa54f497677313b906e04e74079a03defa9fdc2f07ed5f259f1ef '
92
93
' SKIP'
93
94
' eb03df53671df6627768141b3aaa76abe176a14e5e47911c97bec544387c4aff'
94
- ' d7d58ad5d0e77f2803070a8fb7f4138a6f49a2cbf30c55ff059c31f40ca6b65c '
95
- ' 7f0c64cd87b61e894be632f180ae5291e1aa9f1d9d382608f659067eeeda7146 '
95
+ ' 70930739511f0934bafad518cd02acbccd03915ca4c6bec4b272eb5bcec33e1e '
96
+ ' 016fbf6f742c062cc59360070264546c10385b1e8c37605758f62dcbea8f9bcc '
96
97
' 5f86e542dd1ec92b2fe06ee59061c3e23512df7bafabe82206f2b7d80b81836b'
98
+ ' 6afc754f03f3dbe358b67d474bcec9d7779bca0c91aa82c2829fc54ccf7f6f1b'
97
99
' 715cb8862753854b2d9256e0b70003e2d1f57083d83eaeaf5a095fc72b8a4e26'
98
100
' 2770cadf8ccf6b31aece6aee8f76dceb71e6e9d01fdf3be74c3743480ce34899'
99
- ' de631ab199a6fe83b3f695350bffaad067a2f95fc2ba9c8fe57dc85665d3653c ' )
101
+ ' fd0253879cc5e31857f57307e6105e56493358e35d7c4540e0b476be607ab94e ' )
100
102
validpgpkeys=(' B6C8F98282B944E3B0D5C2530FC3042E345AD05D' # Hans Wennborg, Google.
101
103
' 474E22316ABF4785A88C6E8EA2C794A986419D8A' # Tom Stellard
102
104
' D574BD5D1D0E98895E3BF90044F2485E45D59042' ) # Tobias Hieta
@@ -132,7 +134,8 @@ prepare() {
132
134
cd " ${srcdir} /llvm"
133
135
apply_patch_with_msg \
134
136
" 0001-Fix-GetHostTriple-for-mingw-w64-in-msys.patch" \
135
- " 0002-Fix-Findzstd-on-MINGW.patch"
137
+ " 0002-Fix-Findzstd-on-MINGW.patch" \
138
+ " 0005-use-SOVERSION-on-mingw.patch"
136
139
137
140
if (( ! _clangprefix )) ; then
138
141
apply_patch_with_msg \
@@ -179,20 +182,23 @@ build() {
179
182
FFI_INCLUDE_DIR=$( echo $FFI_INCLUDE_DIR | sed ' s|-I||g' )
180
183
181
184
if check_option " debug" " y" ; then
182
- common_cmake_args+=(-DCMAKE_BUILD_TYPE=Debug)
185
+ common_cmake_args+=(-DCMAKE_BUILD_TYPE=Debug
186
+ -DLLVM_ENABLE_ASSERTIONS=ON)
183
187
VERBOSE=" VERBOSE=1"
184
188
else
185
- common_cmake_args+=(-DCMAKE_BUILD_TYPE=MinSizeRel)
189
+ common_cmake_args+=(-DCMAKE_BUILD_TYPE=MinSizeRel
190
+ -DLLVM_ENABLE_ASSERTIONS=OFF
191
+ -DLLVM_ENABLE_DUMP=ON)
186
192
fi
187
193
common_cmake_args+=(-Wno-dev
188
194
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX}
189
195
-DCMAKE_SYSTEM_IGNORE_PATH=/usr/lib
196
+ -DCMAKE_DLL_NAME_WITH_SOVERSION=ON
190
197
-DLLVM_HOST_TRIPLE=" ${CARCH} -w64-windows-gnu"
191
198
-DPython3_EXECUTABLE=${MINGW_PREFIX} /bin/python.exe
192
199
-DPython3_FIND_REGISTRY=NEVER
193
200
-DPython3_ROOT_DIR=${MINGW_PREFIX}
194
201
-DFFI_INCLUDE_DIR=" ${FFI_INCLUDE_DIR} "
195
- -DLLVM_ENABLE_ASSERTIONS=OFF
196
202
-DLLVM_ENABLE_FFI=ON
197
203
-DLLVM_INCLUDE_EXAMPLES=OFF
198
204
-DLLVM_INCLUDE_BENCHMARKS=OFF
@@ -215,8 +221,7 @@ build() {
215
221
-DDEFAULT_SYSROOT=${MINGW_PREFIX} \
216
222
-DLLVM_ENABLE_PROJECTS=" clang;compiler-rt" \
217
223
-DLLVM_BUILD_INSTRUMENTED=IR \
218
- -DLLVM_TARGETS_TO_BUILD=Native \
219
- -DLLVM_NATIVE_TOOL_DIR=${MINGW_PREFIX} /bin \
224
+ -DLLVM_TARGETS_TO_BUILD=Native
220
225
-DCLANG_DEFAULT_RTLIB=compiler-rt \
221
226
-DCLANG_DEFAULT_UNWINDLIB=libunwind \
222
227
-DCLANG_DEFAULT_CXX_STDLIB=libc++ \
@@ -232,8 +237,7 @@ build() {
232
237
-DCMAKE_C_COMPILER=" ${srcdir} " /build-${MSYSTEM} -instrument/bin/clang.exe \
233
238
-DCMAKE_CXX_COMPILER=" ${srcdir} " /build-${MSYSTEM} -instrument/bin/clang++.exe \
234
239
-DLLVM_ENABLE_PROJECTS=" clang" \
235
- -DLLVM_TARGETS_TO_BUILD=Native \
236
- -DLLVM_NATIVE_TOOL_DIR=${MINGW_PREFIX} /bin \
240
+ -DLLVM_TARGETS_TO_BUILD=Native
237
241
" ${common_cmake_args[@]} " \
238
242
../llvm
239
243
# Drop profiles generated from running cmake; those are not representative.
@@ -329,7 +333,7 @@ package_clang() {
329
333
# Runtime libraries
330
334
rm -rf " ${srcdir} /clang-libs"
331
335
mkdir -p " ${srcdir} /clang-libs/${MINGW_PREFIX} /bin"
332
- mv -f " ${pkgdir}${MINGW_PREFIX} " /bin/libclang{,-cpp} .dll " ${srcdir} /clang-libs/${MINGW_PREFIX} /bin"
336
+ mv -f " ${pkgdir}${MINGW_PREFIX} " /bin/libclang- * .dll " ${srcdir} /clang-libs/${MINGW_PREFIX} /bin"
333
337
}
334
338
335
339
package_clang-libs () {
@@ -352,7 +356,7 @@ package_clang-analyzer() {
352
356
353
357
local _analyzer
354
358
for _analyzer in scan-build scan-build-py scan-view; do
355
- DESTDIR=" ${pkgdir} " ${MINGW_PREFIX} /bin/cmake --install " ${srcdir} /build-${MSYSTEM} " --component ${_analyzer}
359
+ DESTDIR=" ${pkgdir} " ${MINGW_PREFIX} /bin/cmake --install " ${srcdir} /build-${MSYSTEM} /tools/clang/tools/ ${_analyzer} "
356
360
done
357
361
358
362
# Compile Python scripts
@@ -426,7 +430,7 @@ package_llvm() {
426
430
# Runtime libraries
427
431
rm -rf " ${srcdir} /llvm-libs"
428
432
mkdir -p " ${srcdir} /llvm-libs/${MINGW_PREFIX} /bin"
429
- mv -f " ${pkgdir}${MINGW_PREFIX} " /bin/lib{LLVM- * ,LTO,Remarks}.dll " ${srcdir} /llvm-libs/${MINGW_PREFIX} /bin"
433
+ mv -f " ${pkgdir}${MINGW_PREFIX} " /bin/lib{LLVM,LTO,Remarks}- * .dll " ${srcdir} /llvm-libs/${MINGW_PREFIX} /bin"
430
434
431
435
# Provide gcov on CLANG*
432
436
if [[ ${MINGW_PACKAGE_PREFIX} == * -clang-* ]]; then
0 commit comments