Skip to content

Commit c652f3c

Browse files
authored
Merge pull request #4810 from lazka/cross-winpthreads-split
mingw-w64-cross-winpthreads: convert to split package
2 parents be84be7 + 57bc482 commit c652f3c

File tree

1 file changed

+58
-24
lines changed

1 file changed

+58
-24
lines changed

mingw-w64-cross-winpthreads/PKGBUILD

Lines changed: 58 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,18 @@
22

33
_realname=winpthreads
44
_mingw_suff=mingw-w64-cross
5-
pkgname="${_mingw_suff}-${_realname}"
6-
provides=("${_mingw_suff}-${_realname}-git")
7-
conflicts=("${_mingw_suff}-${_realname}-git")
8-
replaces=("${_mingw_suff}-${_realname}-git")
5+
pkgbase="${_mingw_suff}-${_realname}"
6+
_targetpkgs=("${_mingw_suff}-ucrt64-${_realname}" "${_mingw_suff}-mingw32-${_realname}" "${_mingw_suff}-mingw64-${_realname}")
7+
pkgname=("${_mingw_suff}-${_realname}" "${_targetpkgs[@]}")
98
pkgver=12.0.0.r0.g819a6ec2e
10-
pkgrel=1
9+
pkgrel=2
1110
pkgdesc="MinGW-w64 winpthreads library for cross-compiler"
1211
arch=('i686' 'x86_64')
13-
url="https://mingw-w64.sourceforge.io/"
12+
url="https://www.mingw-w64.org/"
13+
msys2_repository_url="https://sourceforge.net/p/mingw-w64/mingw-w64/ci/master/tree/mingw-w64-libraries/winpthreads"
1414
license=('custom')
1515
groups=("${_mingw_suff}-toolchain" "${_mingw_suff}")
1616
makedepends=("git" "${_mingw_suff}-gcc" "${_mingw_suff}-binutils" "${_mingw_suff}-crt" "${_mingw_suff}-headers" 'autotools')
17-
depends=("${_mingw_suff}-crt")
1817
optdepends=()
1918
backup=()
2019
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs' '!buildflags')
@@ -28,8 +27,6 @@ msys2_references=(
2827
'cpe: cpe:/a:mingw-w64:mingw-w64'
2928
)
3029

31-
_targets="x86_64-w64-mingw32ucrt i686-w64-mingw32 x86_64-w64-mingw32"
32-
3330
pkgver() {
3431
cd "$srcdir/mingw-w64"
3532

@@ -43,23 +40,60 @@ prepare() {
4340
autoreconf -vfi
4441
}
4542

43+
_build() {
44+
_target=$1
45+
mkdir -p ${srcdir}/winpthreads-build-${_target} && cd ${srcdir}/winpthreads-build-${_target}
46+
unset CC
47+
${srcdir}/mingw-w64/mingw-w64-libraries/winpthreads/configure \
48+
--prefix=/opt/${_target} \
49+
--build=${CHOST} \
50+
--host=${_target} \
51+
--enable-static \
52+
--enable-shared
53+
make
54+
}
55+
56+
_package() {
57+
_target=$1
58+
cd ${srcdir}/winpthreads-build-${_target}
59+
make DESTDIR=${pkgdir} install
60+
}
61+
4662
build() {
47-
for _target in ${_targets}; do
48-
mkdir -p ${srcdir}/winpthreads-build-${_target} && cd ${srcdir}/winpthreads-build-${_target}
49-
unset CC
50-
${srcdir}/mingw-w64/mingw-w64-libraries/winpthreads/configure \
51-
--prefix=/opt/${_target} \
52-
--build=${CHOST} \
53-
--host=${_target} \
54-
--enable-static \
55-
--enable-shared
56-
make
63+
for _pkg in "${_targetpkgs[@]}"; do
64+
case "$_pkg" in
65+
"${_mingw_suff}-ucrt64-${_realname}") _build "x86_64-w64-mingw32ucrt" ;;
66+
"${_mingw_suff}-mingw32-${_realname}") _build "i686-w64-mingw32" ;;
67+
"${_mingw_suff}-mingw64-${_realname}") _build "x86_64-w64-mingw32" ;;
68+
esac
5769
done
5870
}
5971

60-
package() {
61-
for _target in ${_targets}; do
62-
cd ${srcdir}/winpthreads-build-${_target}
63-
make DESTDIR=${pkgdir} install
64-
done
72+
package_mingw-w64-cross-winpthreads() {
73+
pkgdesc+=" (meta package, for backward compatibility)"
74+
depends=("${_targetpkgs[@]}")
75+
provides=("${_mingw_suff}-${_realname}-git")
76+
conflicts=("${_mingw_suff}-${_realname}-git")
77+
replaces=("${_mingw_suff}-${_realname}-git")
78+
}
79+
80+
package_mingw-w64-cross-ucrt64-winpthreads() {
81+
depends=("${_mingw_suff}-ucrt64-crt")
82+
conflicts=("${_mingw_suff}-${_realname}<=12.0.0.r0.g819a6ec2e-1")
83+
84+
_package "x86_64-w64-mingw32ucrt"
85+
}
86+
87+
package_mingw-w64-cross-mingw32-winpthreads() {
88+
depends=("${_mingw_suff}-mingw32-crt")
89+
conflicts=("${_mingw_suff}-${_realname}<=12.0.0.r0.g819a6ec2e-1")
90+
91+
_package "i686-w64-mingw32"
92+
}
93+
94+
package_mingw-w64-cross-mingw64-winpthreads() {
95+
depends=("${_mingw_suff}-mingw64-crt")
96+
conflicts=("${_mingw_suff}-${_realname}<=12.0.0.r0.g819a6ec2e-1")
97+
98+
_package "x86_64-w64-mingw32"
6599
}

0 commit comments

Comments
 (0)