Compare commits

...

1 Commits

Author SHA1 Message Date
Martchus 05edff9c54 Import all mingw-w64 toolchain packages from official repos
It might make sense to upgrade those to 11.0.1 and extend/duplicate them to
support aarch64-w64-mingw32 in the future (considering
https://www.phoronix.com/news/GCC-aarch64-w64-mingw32).
2024-05-12 11:52:20 +02:00
3 changed files with 123 additions and 0 deletions

43
crt/mingw-w64/PKGBUILD Normal file
View File

@ -0,0 +1,43 @@
# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgname=mingw-w64-crt
pkgver=11.0.0
pkgrel=1
pkgdesc='MinGW-w64 CRT for Windows'
arch=('any')
url='http://mingw-w64.sourceforge.net'
license=('custom')
groups=('mingw-w64-toolchain' 'mingw-w64')
makedepends=('mingw-w64-gcc' 'mingw-w64-binutils' "mingw-w64-headers=${pkgver}")
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
validpgpkeys=('CAF5641F74F7DFBA88AE205693BDB53CD4EBC740')
source=(https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/mingw-w64-v${pkgver}.tar.bz2{,.sig})
sha512sums=('bc1c9fd9d8593ead9375fcbe40950f06cf7616b94dc676db2793ac9b496fe3a6cc94b5793effda3b752942be0d7d01a1c37a8f221aaf178df0d4eeb0aa6d1f8d'
'SKIP')
_targets="i686-w64-mingw32 x86_64-w64-mingw32"
build() {
cd "$srcdir"
for _target in ${_targets}; do
echo "Building ${_target} CRT"
if [ ${_target} == "i686-w64-mingw32" ]; then
_crt_configure_args="--disable-lib64 --enable-lib32"
elif [ ${_target} == "x86_64-w64-mingw32" ]; then
_crt_configure_args="--disable-lib32 --enable-lib64"
fi
mkdir -p "$srcdir"/crt-${_target} && cd "$srcdir"/crt-${_target}
"$srcdir"/mingw-w64-v${pkgver}/mingw-w64-crt/configure --prefix=/usr/${_target} \
--host=${_target} --enable-wildcard \
${_crt_configure_args}
make
done
}
package() {
for _target in ${_targets}; do
echo "Installing ${_target} crt"
cd "$srcdir"/crt-${_target}
make DESTDIR="$pkgdir" install
done
}

View File

@ -0,0 +1,41 @@
# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgname=mingw-w64-headers
pkgver=11.0.0
pkgrel=1
pkgdesc="MinGW-w64 headers for Windows"
arch=('any')
url="http://mingw-w64.sourceforge.net"
license=('custom')
groups=('mingw-w64-toolchain' 'mingw-w64')
options=('!strip' '!libtool' '!emptydirs')
validpgpkeys=('CAF5641F74F7DFBA88AE205693BDB53CD4EBC740')
source=(https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/mingw-w64-v${pkgver}.tar.bz2{,.sig})
sha512sums=('bc1c9fd9d8593ead9375fcbe40950f06cf7616b94dc676db2793ac9b496fe3a6cc94b5793effda3b752942be0d7d01a1c37a8f221aaf178df0d4eeb0aa6d1f8d'
'SKIP')
_targets="i686-w64-mingw32 x86_64-w64-mingw32"
build() {
for _target in ${_targets}; do
echo "Configuring ${_target} headers"
mkdir -p "$srcdir"/headers-${_target} && cd "$srcdir"/headers-${_target}
"$srcdir"/mingw-w64-v${pkgver}/mingw-w64-headers/configure --prefix=/usr/${_target} --enable-sdk=all --host=${_target}
done
}
package() {
for _target in ${_targets}; do
echo "Installing ${_target} headers"
cd "$srcdir"/headers-${_target}
make DESTDIR="$pkgdir" install
rm "$pkgdir"/usr/${_target}/include/pthread_signal.h
rm "$pkgdir"/usr/${_target}/include/pthread_time.h
rm "$pkgdir"/usr/${_target}/include/pthread_unistd.h
done
echo "Installing MinGW-w64 licenses"
install -Dm644 "$srcdir"/mingw-w64-v${pkgver}/COPYING.MinGW-w64/COPYING.MinGW-w64.txt "$pkgdir"/usr/share/licenses/${pkgname}/COPYING.MinGW-w64.txt
install -Dm644 "$srcdir"/mingw-w64-v${pkgver}/COPYING.MinGW-w64-runtime/COPYING.MinGW-w64-runtime.txt "$pkgdir"/usr/share/licenses/${pkgname}/COPYING.MinGW-w64-runtime.txt
install -Dm644 "$srcdir"/mingw-w64-v${pkgver}/mingw-w64-headers/ddk/readme.txt "$pkgdir"/usr/share/licenses/${pkgname}/ddk-readme.txt
}

View File

@ -0,0 +1,39 @@
# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgname=mingw-w64-winpthreads
pkgver=11.0.0
pkgrel=1
pkgdesc='MinGW-w64 winpthreads library'
arch=('any')
url='http://mingw-w64.sourceforge.net'
license=('custom')
groups=('mingw-w64-toolchain' 'mingw-w64')
makedepends=('mingw-w64-gcc' 'mingw-w64-binutils' "mingw-w64-crt=${pkgver}")
provides=('mingw-w64-headers-bootstrap')
conflicts=('mingw-w64-headers-bootstrap')
replaces=('mingw-w64-headers-bootstrap')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
validpgpkeys=('CAF5641F74F7DFBA88AE205693BDB53CD4EBC740')
source=(https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/mingw-w64-v${pkgver}.tar.bz2{,.sig})
sha512sums=('bc1c9fd9d8593ead9375fcbe40950f06cf7616b94dc676db2793ac9b496fe3a6cc94b5793effda3b752942be0d7d01a1c37a8f221aaf178df0d4eeb0aa6d1f8d'
'SKIP')
_targets="i686-w64-mingw32 x86_64-w64-mingw32"
build() {
for _target in ${_targets}; do
msg "Building ${_target} winpthreads..."
mkdir -p "$srcdir"/winpthreads-build-${_target} && cd "$srcdir"/winpthreads-build-${_target}
"$srcdir"/mingw-w64-v${pkgver}/mingw-w64-libraries/winpthreads/configure --prefix=/usr/${_target} \
--host=${_target} --enable-static --enable-shared
make
done
}
package() {
for _target in ${_targets}; do
cd "$srcdir"/winpthreads-build-${_target}
make DESTDIR="$pkgdir" install
${_target}-strip --strip-unneeded "$pkgdir"/usr/${_target}/bin/*.dll
done
}