Skip to content
Snippets Groups Projects
  • mio's avatar
    9e3e1c4c
    community/libretro-mupen64plus: fix build with gcc 14 · 9e3e1c4c
    mio authored and Natanael Copa's avatar Natanael Copa committed
    Fix multiple build errors with gcc 14.
    
    ```
    mupen64plus-core/subprojects/minizip/zip.c: In function 'zipOpenNewFileInZip4_64':
    mupen64plus-core/subprojects/minizip/zip.c:1249:28: error: assignment to 'const long unsigned int *' from incompatible pointer type 'con
    st z_crc_t *' {aka 'const unsigned int *'} [-Wincompatible-pointer-types]
     1249 |         zi->ci.pcrc_32_tab = get_crc_table();
          |                            ^
    ```
    
    ```
    custom/dependencies/libzlib/gzlib.c: In function 'gz_open':
    custom/dependencies/libzlib/gzlib.c:14:17: error: implicit declaration of function 'lseek'; did you mean 'fseek'? [-Wimplicit-function-declaration]
       14 | #  define LSEEK lseek
          |                 ^~~~~
    custom/dependencies/libzlib/gzlib.c:256:24: note: in expansion of macro 'LSEEK'
      256 |         state->start = LSEEK(state->fd, 0, SEEK_CUR);
          |                        ^~~~~
    ```
    9e3e1c4c
    History
    community/libretro-mupen64plus: fix build with gcc 14
    mio authored and Natanael Copa's avatar Natanael Copa committed
    Fix multiple build errors with gcc 14.
    
    ```
    mupen64plus-core/subprojects/minizip/zip.c: In function 'zipOpenNewFileInZip4_64':
    mupen64plus-core/subprojects/minizip/zip.c:1249:28: error: assignment to 'const long unsigned int *' from incompatible pointer type 'con
    st z_crc_t *' {aka 'const unsigned int *'} [-Wincompatible-pointer-types]
     1249 |         zi->ci.pcrc_32_tab = get_crc_table();
          |                            ^
    ```
    
    ```
    custom/dependencies/libzlib/gzlib.c: In function 'gz_open':
    custom/dependencies/libzlib/gzlib.c:14:17: error: implicit declaration of function 'lseek'; did you mean 'fseek'? [-Wimplicit-function-declaration]
       14 | #  define LSEEK lseek
          |                 ^~~~~
    custom/dependencies/libzlib/gzlib.c:256:24: note: in expansion of macro 'LSEEK'
      256 |         state->start = LSEEK(state->fd, 0, SEEK_CUR);
          |                        ^~~~~
    ```
APKBUILD 1.25 KiB
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: David Demelier <markand@malikania.fr>
pkgname=libretro-mupen64plus
pkgver=0_git20241029
pkgrel=0
_commit="4249e39b2c200e5f0895385f76d99928785f2bea"
arch="x86_64" # Seems to be broken on non 64-bit platforms
url="https://github.com/libretro/mupen64plus-libretro-nx"
pkgdesc="libretro port of Mupen64 Plus with GLideN64"
license="GPL-2.0-or-later"
makedepends="mesa-dev zlib-dev libpng-dev nasm"
source="$pkgname-$pkgver.tar.gz::https://github.com/libretro/mupen64plus-libretro-nx/archive/$_commit.tar.gz
	gcc14.patch
	"
builddir="$srcdir/mupen64plus-libretro-nx-$_commit"
options="!check" # No tests

build() {
	case "$CARCH" in
		x86)
			WITH_DYNAREC=x86 make
			;;
		x86_64)
			WITH_DYNAREC=x86_64 make
			;;
		armhf|armv7|aarch64)
			WITH_DYNAREC=arm make
			;;
	esac
}

package() {
	install -Dm644 mupen64plus_next_libretro.so "$pkgdir"/usr/lib/libretro/mupen64plus_next_libretro.so
}

sha512sums="
8238cbc33134719465d802fbfe85fddb3d10567bdca5ad95c935f02595013c05c3652136522bbe3afe83270b40104f467ecb4e43a5c72d1f2cacbdf1c118624b  libretro-mupen64plus-0_git20241029.tar.gz
7df979068c6fc900bed3cbab6b51b7e042929dc745f140394e879d121e1ffd2b733f4748a4a9942531272ed21e6671d99c9bc63dce4dbfa7737dc635201fa6b8  gcc14.patch
"