diff options
author | gammy | 2020-12-18 14:52:01 +0100 |
---|---|---|
committer | gammy | 2020-12-18 14:52:01 +0100 |
commit | e6b3a9618b6cacaee3c941457874c7be8e2238ee (patch) | |
tree | 1e46e8fb6ed33373b05649b11eca8586e05b3a2b | |
parent | 7294f9866edc6d2737ae0affe9584386f7d6f885 (diff) | |
download | aur-e6b3a9618b6cacaee3c941457874c7be8e2238ee.tar.gz |
Updated ucon64 version from 2.2.0 to 2.2.1. Add a minor patch to modify the ucon64rc file to point to the globally installed discmage library. Add auto-pull of post-release patch change_mem2.patch which fixes some crashes on 64-bit sytsems. Apply _FORTIFY_SOURCE=2 (see man 7 feature_test_macros) after discussing this with Daniël.
-rw-r--r-- | .SRCINFO | 10 | ||||
-rw-r--r-- | PKGBUILD | 31 | ||||
-rw-r--r-- | aur_discmage_path.patch | 32 |
3 files changed, 61 insertions, 12 deletions
@@ -1,16 +1,18 @@ pkgbase = ucon64 pkgdesc = A ROM backup tool and emulator's Swiss Army knife program. - pkgver = 2.2.0 + pkgver = 2.2.1 pkgrel = 1 - url = http://ucon64.sourceforge.net/index.php + url = http://ucon64.sourceforge.io/index.php arch = i686 arch = x86_64 license = GPL depends = zlib depends = libusb-compat optdepends = libieee1284: libcd64 enhancements - source = https://downloads.sourceforge.net/ucon64/ucon64-2.2.0-src.tar.gz - sha256sums = 5727e0be9ee878bba84d204135a7ca25662db6b56fee6895301e50c1bdda70af + source = https://downloads.sourceforge.net/ucon64/ucon64-2.2.1-src.tar.gz + source = https://sourceforge.net/projects/ucon64/files/ucon64/ucon64-2.2.1/patches/change_mem2.patch + sha256sums = e814f427a59866e16fe757bf4af51004ac68be29cabd78944590878f1df73f79 + sha256sums = 65ff85255878e077c2e5fc57565cf0b93833ce8ac03bf81d46ba91ec837accf7 pkgname = ucon64 @@ -4,29 +4,44 @@ # Contributor: robb_force <robb_force@holybuffalo.net> pkgname=ucon64 -pkgver=2.2.0 +pkgver=2.2.1 pkgrel=1 -pkgdesc="A ROM backup tool and emulator's Swiss Army knife program. " +pkgdesc="A ROM backup tool and emulator's Swiss Army knife program." arch=('i686' 'x86_64') -url="http://ucon64.sourceforge.net/index.php" +url="http://ucon64.sourceforge.io/index.php" license=('GPL') depends=('zlib' 'libusb-compat') optdepends=('libieee1284: libcd64 enhancements') source=(https://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}-src.tar.gz) -sha256sums=('5727e0be9ee878bba84d204135a7ca25662db6b56fee6895301e50c1bdda70af') +sha256sums=('e814f427a59866e16fe757bf4af51004ac68be29cabd78944590878f1df73f79') -srcroot="${pkgname}-${pkgver}-src/" +# Apply a minor patch affecting 64-bit systems, the bug of which was found +# just a few days after the release of 2.2.1. It won't be needed in the next +# release. +source+=(https://sourceforge.net/projects/${pkgname}/files/${pkgname}/${pkgname}-${pkgver}/patches/change_mem2.patch) +sha256sums+=('65ff85255878e077c2e5fc57565cf0b93833ce8ac03bf81d46ba91ec837accf7') + +srcroot="${pkgname}-${pkgver}-src/src" + +prepare() +{ + patch -d "${srcdir}" -p2 < ../aur_discmage_path.patch + + # XXX Remember to remove this patch on the next release (>2.2.1) + patch -d "${srcdir}" -p0 < change_mem2.patch +} build() { - cd "${srcroot}/src" - ./configure --prefix=/usr --with-libusb --with-libcd64 + cd "$srcroot" + export CFLAGS="$CFLAGS -D_FORTIFY_SOURCE=2" + ./configure --prefix=/usr --with-libusb --with-libcd64 --with-libdiscmage make } package() { - cd ${pkgname}-${pkgver}-src/src + cd "$srcroot" install -Dm775 ucon64 "${pkgdir}"/usr/bin/ucon64 install -Dm755 libdiscmage/discmage.so "${pkgdir}"/usr/lib/discmage.so diff --git a/aur_discmage_path.patch b/aur_discmage_path.patch new file mode 100644 index 000000000000..26749caea5d7 --- /dev/null +++ b/aur_discmage_path.patch @@ -0,0 +1,32 @@ +--- ./src/ucon64-2.2.1-src/src/ucon64_misc.orig.c 2020-11-09 19:10:46.000000000 +0100 ++++ ./src/ucon64-2.2.1-src/src/ucon64_misc.c 2020-12-16 15:58:02.323205228 +0100 +@@ -58,6 +58,7 @@ + + + #ifdef USE_DISCMAGE ++#define UCON64_AUR_DISCMAGE + #ifdef DLOPEN + #include "misc/dlopen.h" + +@@ -1232,11 +1233,21 @@ + #elif defined __APPLE__ // Mac OS X actually + PROPERTY_MODE_DIR ("ucon64") "discmage.dylib", + #elif defined __unix__ || defined __BEOS__ ++#ifndef UCON64_AUR_DISCMAGE + PROPERTY_MODE_DIR ("ucon64") "discmage.so", ++#else ++ DIR_SEPARATOR_S "usr" DIR_SEPARATOR_S "lib" DIR_SEPARATOR_S "discmage.so", ++#endif + #else + "", + #endif ++#ifndef UCON64_AUR_DISCMAGE + "complete path to the discmage library for DISC image support"); ++#else ++ "complete path to the discmage library for DISC image support\n" ++ "this path has been modified by the ucon64 AUR package;\n" ++ "the upstream default is: " PROPERTY_MODE_DIR ("ucon64") "discmage.so"); ++#endif + ucon64_set_property (&props[i++], org_configfile, "ucon64_configdir", + PROPERTY_MODE_DIR ("ucon64"), + "directory with additional config files"); |