diff options
author | jc_gargma <jc_gargma@iserlohn-fortress.net> | 2022-09-19 15:08:11 -0700 |
---|---|---|
committer | jc_gargma <jc_gargma@iserlohn-fortress.net> | 2022-09-19 15:08:11 -0700 |
commit | 515f86fbe53bf32722c1901d513d9fd821dde0f4 (patch) | |
tree | 3b7cd8a89f70466b2ca25ffe99bb326dbdaa0cb8 | |
parent | Rebuild again with PIC. (diff) | |
download | mupen64plus-515f86fbe53bf32722c1901d513d9fd821dde0f4.tar.xz |
Rebuild against boost 1.80.0
Clean up PKGBUILD
-rw-r--r-- | PKGBUILD | 40 |
1 files changed, 28 insertions, 12 deletions
@@ -11,15 +11,17 @@ pkgname=mupen64plus pkgver=2.5 -pkgrel=20.3 +#_pkgver=2.5 +pkgrel=22 pkgdesc='Nintendo64 Emulator' arch=('x86_64') url='https://github.com/mupen64plus/mupen64plus-core' license=('GPL') -depends=('boost-libs' 'freetype2' 'glu' 'libgl' 'libpng' 'libsamplerate' 'sdl' - 'zlib' 'hicolor-icon-theme') -makedepends=('mesa' 'boost') -source=("https://github.com/mupen64plus/mupen64plus-core/releases/download/2.5/mupen64plus-bundle-src-${pkgver}.tar.gz" +options=('lto') +depends=('boost-libs' 'freetype2' 'glu' 'libgl' 'libpng' 'libsamplerate' + 'minizip' 'sdl2' 'speexdsp' 'zlib' 'hicolor-icon-theme') +makedepends=('boost' 'mesa' 'nasm') +source=("https://github.com/mupen64plus/mupen64plus-core/releases/download/${pkgver}/mupen64plus-bundle-src-${pkgver}.tar.gz" '010-mupen64plus-ui-console-pie.patch' '020-mupen64plus-core-gcc10-fix.patch') sha256sums=('9c75b9d826f2d24666175f723a97369b3a6ee159b307f7cc876bbb4facdbba66' @@ -27,29 +29,43 @@ sha256sums=('9c75b9d826f2d24666175f723a97369b3a6ee159b307f7cc876bbb4facdbba66' 'f84f262bcf2b748ccded4443735caba92926241f9238f545a621009f6ae64ef7') prepare() { - cd mupen64plus-bundle-src-$pkgver - patch -p1 -i ../010-mupen64plus-ui-console-pie.patch - patch -p1 -i ../020-mupen64plus-core-gcc10-fix.patch + cd mupen64plus-bundle-src-${pkgver} + + # package specified lto is broken. Disable it in the source. + sed -i 's|OPTFLAGS ?= -O3 -flto|#OPTFLAGS ?= -O3|' source/mupen64plus-core/projects/unix/Makefile + sed -i 's|OPTFLAGS ?= -O3 -flto|#OPTFLAGS ?= -O3|' source/mupen64plus-audio-sdl/projects/unix/Makefile + sed -i 's|OPTFLAGS ?= -O3 -flto|#OPTFLAGS ?= -O3|' source/mupen64plus-rsp-hle/projects/unix/Makefile + sed -i 's|OPTFLAGS ?= -O3 -flto|#OPTFLAGS ?= -O3|' source/mupen64plus-input-sdl/projects/unix/Makefile + sed -i 's|OPTFLAGS ?= -O3 -flto|#OPTFLAGS ?= -O3|' source/mupen64plus-ui-console/projects/unix/Makefile + sed -i 's|OPTFLAGS ?= -O3 -flto|#OPTFLAGS ?= -O3|' source/mupen64plus-video-glide64mk2/projects/unix/Makefile + sed -i 's|OPTFLAGS ?= -O3 -flto|#OPTFLAGS ?= -O3|' source/mupen64plus-video-rice/projects/unix/Makefile + + patch -Np1 -i ../010-mupen64plus-ui-console-pie.patch + patch -Np1 -i ../020-mupen64plus-core-gcc10-fix.patch } build() { cd mupen64plus-bundle-src-${pkgver} # -fPIE breaks libmupen64plus.so.2 - export CFLAGS="$CFLAGS -O3 -fstack-protector-all -flto=auto -fPIC" - export CXXFLAGS="$CXXFLAGS -O3 -fstack-protector-all -flto=auto -fPIC" + export CFLAGS="$CFLAGS -O3 -fstack-protector-all -fPIC" + export CXXFLAGS="$CXXFLAGS -O3 -fstack-protector-all -fPIC" if [[ $CARCH = 'i686' ]]; then export CFLAGS="${CFLAGS/-fno-plt/}" export CXXFLAGS="${CXXFLAGS/-fno-plt/}" fi - sh m64p_build.sh + ./m64p_build.sh } package() { cd mupen64plus-bundle-src-$pkgver - + # set LDCONFIG since we are using fakeroot and scripts run root commands by checking the uid ./m64p_install.sh DESTDIR="$pkgdir" PREFIX='/usr' MANDIR='/usr/share/man' LDCONFIG='true' + + local _sover + _sover="$(find "${pkgdir}/usr/lib" -type f -name 'libmupen64plus.so.*.*.*' | sed 's/^.*\.so\.//')" + ln -s "libmupen64plus.so.${_sover}" "${pkgdir}/usr/lib/libmupen64plus.so" } |