From 471859a509fccb845eda72d2a35d748e180d4e85 Mon Sep 17 00:00:00 2001 From: Andrew Sun Date: Mon, 11 Jun 2018 02:51:08 -0400 Subject: [PATCH] dumb: update to 2.0.3 (#3925) --- mingw-w64-dumb/CVE-2006-3668.patch | 16 ------- mingw-w64-dumb/PKGBUILD | 76 ++++++++++++++++++++---------- mingw-w64-dumb/config.txt | 3 -- 3 files changed, 50 insertions(+), 45 deletions(-) delete mode 100644 mingw-w64-dumb/CVE-2006-3668.patch delete mode 100644 mingw-w64-dumb/config.txt diff --git a/mingw-w64-dumb/CVE-2006-3668.patch b/mingw-w64-dumb/CVE-2006-3668.patch deleted file mode 100644 index 09d2fb68f4..0000000000 --- a/mingw-w64-dumb/CVE-2006-3668.patch +++ /dev/null @@ -1,16 +0,0 @@ -Index: libdumb-0.9.3/src/it/itread.c -=================================================================== ---- libdumb-0.9.3.orig/src/it/itread.c 2006-07-21 11:05:48.000000000 +0200 -+++ libdumb-0.9.3/src/it/itread.c 2006-07-21 11:07:22.000000000 +0200 -@@ -292,6 +292,11 @@ - - envelope->flags = dumbfile_getc(f); - envelope->n_nodes = dumbfile_getc(f); -+ if(envelope->n_nodes > 25) { -+ TRACE("IT error: wrong number of envelope nodes (%d)\n", envelope->n_nodes); -+ envelope->n_nodes = 0; -+ return -1; -+ } - envelope->loop_start = dumbfile_getc(f); - envelope->loop_end = dumbfile_getc(f); - envelope->sus_loop_start = dumbfile_getc(f); diff --git a/mingw-w64-dumb/PKGBUILD b/mingw-w64-dumb/PKGBUILD index e5bbad16f9..8493580ecc 100644 --- a/mingw-w64-dumb/PKGBUILD +++ b/mingw-w64-dumb/PKGBUILD @@ -3,39 +3,63 @@ _realname=dumb pkgbase=mingw-w64-${_realname} pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}" -pkgver=0.9.3 -pkgrel=5 +pkgver=2.0.3 +pkgrel=1 pkgdesc="IT, XM, S3M and MOD player library (mingw-w64)" arch=('any') -url="https://dumb.sourceforge.io/" +url="http://dumb.sourceforge.net/" license=("custom:dumb, GPL") -makedepends=("${MINGW_PACKAGE_PREFIX}-gcc") +makedepends=("${MINGW_PACKAGE_PREFIX}-allegro" + "${MINGW_PACKAGE_PREFIX}-cmake" + "${MINGW_PACKAGE_PREFIX}-gcc" + "${MINGW_PACKAGE_PREFIX}-ninja") options=('strip' 'staticlibs') -source=("https://downloads.sourceforge.net/sourceforge/dumb/dumb-${pkgver}.tar.gz" - "CVE-2006-3668.patch" - "config.txt") -sha256sums=('8d44fbc9e57f3bac9f761c3b12ce102d47d717f0dd846657fb988e0bb5d1ea33' - '9f6785435757db725bc73b1c4874b91e80b9277c6fdd2b56e47dae1cfbc968e6' - '5319fd08ad12bce4fc3ec41cbeeb71a40041867c56a713d564920f32e0ff4aa2') - -prepare() { - cd "${srcdir}/dumb-${pkgver}" - patch -p1 -i ${srcdir}/CVE-2006-3668.patch - cp ${srcdir}/config.txt make/ -} +source=("${_realname}-${pkgver}.tar.gz"::"https://github.com/kode54/dumb/archive/${pkgver}.tar.gz") +sha256sums=('99bfac926aeb8d476562303312d9f47fd05b43803050cd889b44da34a9b2a4f9') build() { - cd "${srcdir}/dumb-${pkgver}" - sed -i "s,PKGDIR/usr/ARCH,${pkgdir}${MINGW_PREFIX}," "make/config.txt" - COMSPEC=/usr/bin/sh.exe make CC=${MINGW_CHOST}-gcc AR=ar RANLIB=ranlib - ${MINGW_CHOST}-gcc -shared obj/unix/release/*.o -o libdumb.dll -Xlinker --out-implib -Xlinker libdumb.dll.a + cd "${srcdir}"/${_realname}-${pkgver} + + # Shared Build + [[ -d "${srcdir}"/build-${CARCH}-shared ]] && rm -rf "${srcdir}"/build-${CARCH}-shared + mkdir -p "${srcdir}"/build-${CARCH}-shared && cd "${srcdir}"/build-${CARCH}-shared + MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \ + ${MINGW_PREFIX}/bin/cmake \ + -G'Ninja' \ + -DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DCMAKE_BUILD_TYPE=Release \ + -DBUILD_SHARED_LIBS=ON \ + -DBUILD_ALLEGRO4=OFF \ + -DBUILD_EXAMPLES=OFF \ + ../${_realname}-${pkgver} + ${MINGW_PREFIX}/bin/ninja + + # Static Build + [[ -d "${srcdir}"/build-${CARCH}-static ]] && rm -rf "${srcdir}"/build-${CARCH}-static + mkdir -p "${srcdir}"/build-${CARCH}-static && cd "${srcdir}"/build-${CARCH}-static + MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \ + ${MINGW_PREFIX}/bin/cmake \ + -G'Ninja' \ + -DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DCMAKE_BUILD_TYPE=Release \ + -DBUILD_SHARED_LIBS=OFF \ + -DBUILD_ALLEGRO4=OFF \ + -DBUILD_EXAMPLES=OFF \ + ../${_realname}-${pkgver} + ${MINGW_PREFIX}/bin/ninja } package() { - cd "${srcdir}/dumb-${pkgver}" - mkdir -p "${pkgdir}${MINGW_PREFIX}/"{bin,include,lib} - COMSPEC=/bin/sh.exe make PREFIX=${pkgdir}${MINGW_PREFIX} install - rm "${pkgdir}${MINGW_PREFIX}/lib/libdumbd.a" - install -m644 "libdumb.dll" "${pkgdir}${MINGW_PREFIX}/bin/" - install -m644 "libdumb.dll.a" "${pkgdir}${MINGW_PREFIX}/lib/" + # Shared Install + cd "${srcdir}"/build-${CARCH}-shared + DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/ninja install + + # Static Install + cd "${srcdir}"/build-${CARCH}-static + DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/ninja install + + # License + install -Dm644 "${srcdir}/${_realname}-${pkgver}/LICENSE" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE" } diff --git a/mingw-w64-dumb/config.txt b/mingw-w64-dumb/config.txt deleted file mode 100644 index 4902644c1a..0000000000 --- a/mingw-w64-dumb/config.txt +++ /dev/null @@ -1,3 +0,0 @@ -include make/unix.inc -ALL_TARGETS := core core-headers -PREFIX := PKGDIR/usr/ARCH