Skip to content

Commit

Permalink
update mingw32.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
maron2000 committed Mar 2, 2024
1 parent bab9e23 commit 7f90ae2
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 19 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/mingw32.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
with:
msystem: MINGW32
update: true
install: git make base-devel mingw-w64-i686-toolchain mingw-w64-i686-libtool mingw-w64-i686-nasm autoconf automake mingw-w64-i686-ncurses mingw-w64-i686-binutils mingw-w64-x86_64-libslirp
install: git make base-devel mingw-w64-i686-toolchain mingw-w64-i686-libtool mingw-w64-i686-nasm autoconf automake mingw-w64-i686-ncurses mingw-w64-i686-binutils
- name: Install libslirp
run: |
top=`pwd`
Expand Down
56 changes: 38 additions & 18 deletions build-scripts/mingw/libslirp/PKGBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -4,41 +4,61 @@ _realname=libslirp
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=4.7.0
pkgrel=1
pkgrel=2
pkgdesc="General purpose TCP-IP emulator (mingw-w64)"
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64')
mingw_arch=('mingw64' 'mingw32' 'ucrt64' 'clang64' 'clangarm64')
url="https://gitlab.freedesktop.org/slirp/libslirp"
license=('BSD' 'MIT')
license=('spdx:BSD-3-Clause')
depends=("${MINGW_PACKAGE_PREFIX}-glib2")
makedepends=("${MINGW_PACKAGE_PREFIX}-pkgconf"
makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
"${MINGW_PACKAGE_PREFIX}-meson"
"${MINGW_PACKAGE_PREFIX}-cc")
source=("https://gitlab.freedesktop.org/slirp/${_realname}/-/archive/v${pkgver}/${_realname}-v${pkgver}.tar.bz2")
sha256sums=('358ce8b6ea59ec9deac937cc754f0115b992839e7b0cddf30ffb8f77dc21da82')
"${MINGW_PACKAGE_PREFIX}-ninja"
"${MINGW_PACKAGE_PREFIX}-pkgconf")
source=("https://gitlab.freedesktop.org/slirp/${_realname}/-/archive/v${pkgver}/${_realname}-v${pkgver}.tar.bz2"
"https://gitlab.freedesktop.org/slirp/libslirp/-/commit/84b276c5abb13f4770b046b0efca2cb574ef6d02.patch")
sha256sums=('358ce8b6ea59ec9deac937cc754f0115b992839e7b0cddf30ffb8f77dc21da82'
'26284c63318a9916db77c658d586cadb067e86be4dbe2379491487ee14f47e23')

prepare() {
cd "${srcdir}"/${_realname}-v${pkgver}

cd "${_realname}-v${pkgver}"
patch -p1 -i "${srcdir}/84b276c5abb13f4770b046b0efca2cb574ef6d02.patch"
}

build() {
[[ -d ${srcdir}/build-${MINGW_CHOST} ]] && rm -rf ${srcdir}/build-${MINGW_CHOST}
mkdir -p ${srcdir}/build-${MINGW_CHOST} && cd ${srcdir}/build-${MINGW_CHOST}
local -a _static_flags=(
-DGIO_STATIC_COMPILATION
-DGLIB_STATIC_COMPILATION
-DGMODULE_STATIC_COMPILATION
-DGOBJECT_STATIC_COMPILATION
)

CFLAGS+=" ${_static_flags[@]}" \
CXXFLAGS+=" ${_static_flags[@]}" \
MSYS2_ARG_CONV_EXCL="--prefix=" \
${MINGW_PREFIX}/bin/meson \
${MINGW_PREFIX}/bin/meson.exe setup \
--prefix="${MINGW_PREFIX}" \
--buildtype=plain \
-Ddefault_library=both \
"../${_realname}-v${pkgver}"
-Ddefault_library=static \
"${_realname}-v${pkgver}" \
"build-${MSYSTEM}-static"

${MINGW_PREFIX}/bin/meson.exe compile -C "build-${MSYSTEM}-static"

${MINGW_PREFIX}/bin/meson compile
MSYS2_ARG_CONV_EXCL="--prefix=" \
${MINGW_PREFIX}/bin/meson.exe setup \
--prefix="${MINGW_PREFIX}" \
--buildtype=plain \
-Ddefault_library=shared \
"${_realname}-v${pkgver}" \
"build-${MSYSTEM}-shared"

${MINGW_PREFIX}/bin/meson.exe compile -C "build-${MSYSTEM}-shared"
}

package() {
cd build-${MINGW_CHOST}
${MINGW_PREFIX}/bin/meson install --destdir="${pkgdir}"
${MINGW_PREFIX}/bin/meson.exe install -C "build-${MSYSTEM}-static" --destdir "${pkgdir}"
${MINGW_PREFIX}/bin/meson.exe install -C "build-${MSYSTEM}-shared" --destdir "${pkgdir}"

install -Dm644 "${srcdir}/${_realname}-v${pkgver}/COPYRIGHT" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/COPYRIGHT"
}
}

0 comments on commit 7f90ae2

Please sign in to comment.