From ad9dcd7c16084b38f3eb65e29ffaf58fc02c1eba Mon Sep 17 00:00:00 2001 From: Raed Rizqie Date: Sat, 6 Nov 2021 11:47:11 +0800 Subject: [PATCH] libgphoto2: fix clang build --- mingw-w64-gphoto2/PKGBUILD | 30 ++++++++++++++++------------ mingw-w64-libgphoto2/PKGBUILD | 37 +++++++++++++++++++---------------- 2 files changed, 38 insertions(+), 29 deletions(-) diff --git a/mingw-w64-gphoto2/PKGBUILD b/mingw-w64-gphoto2/PKGBUILD index 21613765f5..e7739551d3 100644 --- a/mingw-w64-gphoto2/PKGBUILD +++ b/mingw-w64-gphoto2/PKGBUILD @@ -4,22 +4,23 @@ _realname=gphoto2 pkgbase=mingw-w64-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}") pkgver=2.5.27 -pkgrel=2 -pkgdesc="The gphoto2 commandline tool for accessing and controlling digital cameras. (mingw-w64)" +pkgrel=3 +pkgdesc="The gphoto2 commandline tool for accessing and controlling digital cameras (mingw-w64)" arch=('any') -mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64') +mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32') url='http://www.gphoto.org/' license=('GNU') depends=("${MINGW_PACKAGE_PREFIX}-libgphoto2" + "${MINGW_PACKAGE_PREFIX}-libiconv" + "${MINGW_PACKAGE_PREFIX}-libltdl" "${MINGW_PACKAGE_PREFIX}-readline" "${MINGW_PACKAGE_PREFIX}-popt") -makedepends=("${MINGW_PACKAGE_PREFIX}-gcc" - "${MINGW_PACKAGE_PREFIX}-autotools") +makedepends=("${MINGW_PACKAGE_PREFIX}-autotools") validpgpkeys=('7C4AFD61D8AAE7570796A5172209D6902F969C95') # Marcus Meissner -source=("https://sourceforge.net/projects/gphoto/files/gphoto/${pkgver}/${_realname}-${pkgver}.tar.gz" +source=("https://github.com/gphoto/gphoto2/releases/download/v${pkgver}/${_realname}-${pkgver}.tar.xz" "01_gphoto_close_before_rename.patch" "gphoto2-check-popt.patch") -sha256sums=('993175db0354d5b0eb278c72a3e80589ce0cb2141639e43cfabc65981a1f2476' +sha256sums=('2fda6ffe0c7c2da4553801364a8cf6ef60685bd976cbfea24acc0fa142c77199' 'ca4e431c4f2bca1272a6580ebab7d81a82fa38fad07624cc8c6328b458293b19' 'fdc32ca1291b42f5d0b5f57ec2de47dfa6201bf45342a202ae86eb1caafd45d0') @@ -28,13 +29,16 @@ prepare() { patch -p1 -i ${srcdir}/01_gphoto_close_before_rename.patch # https://github.com/gphoto/gphoto2/pull/419 patch -p1 -i ${srcdir}/gphoto2-check-popt.patch + + autoreconf -fiv } build() { - cd "$srcdir"/${_realname}-${pkgver} - [[ -d "${srcdir}"/build-${CARCH} ]] && rm -rf "${srcdir}"/build-${CARCH} - mkdir -p "${srcdir}"/build-${CARCH} && cd "${srcdir}"/build-${CARCH} - ../${_realname}-${pkgver}/configure \ + [[ -d build-${MSYSTEM} ]] && rm -rf build-${MSYSTEM} + cp -r ${_realname}-${pkgver} build-${MSYSTEM} + + cd "${srcdir}/build-${MSYSTEM}" + ./configure \ --prefix=${MINGW_PREFIX} \ --build=${MINGW_CHOST} \ --host=${MINGW_CHOST} \ @@ -45,6 +49,8 @@ build() { package() { - cd "${srcdir}"/build-${CARCH} + cd "${srcdir}/build-${MSYSTEM}" make install DESTDIR="${pkgdir}" + + install -Dm644 COPYING ${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE } diff --git a/mingw-w64-libgphoto2/PKGBUILD b/mingw-w64-libgphoto2/PKGBUILD index 154a279b01..ba207a7983 100644 --- a/mingw-w64-libgphoto2/PKGBUILD +++ b/mingw-w64-libgphoto2/PKGBUILD @@ -4,10 +4,10 @@ _realname=libgphoto2 pkgbase=mingw-w64-${_realname} pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}" pkgver=2.5.27 -pkgrel=2 -pkgdesc="libgphoto2 is a free, redistributable, ready to use set of digital camera software applications for Unix-like system (mingw-w64)" +pkgrel=3 +pkgdesc="The libgphoto2 camera access and control library (mingw-w64)" arch=('any') -mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64') +mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32') url="http://gphoto.org/proj/libgphoto2/" license=("LGPL") depends=("${MINGW_PACKAGE_PREFIX}-libsystre" @@ -16,15 +16,15 @@ depends=("${MINGW_PACKAGE_PREFIX}-libsystre" "${MINGW_PACKAGE_PREFIX}-libgd" "${MINGW_PACKAGE_PREFIX}-libexif" "${MINGW_PACKAGE_PREFIX}-libusb" + "${MINGW_PACKAGE_PREFIX}-libiconv" "${MINGW_PACKAGE_PREFIX}-libltdl") -makedepends=("${MINGW_PACKAGE_PREFIX}-gcc" - "${MINGW_PACKAGE_PREFIX}-autotools" +makedepends=("${MINGW_PACKAGE_PREFIX}-autotools" "${MINGW_PACKAGE_PREFIX}-doxygen") -source=(https://sourceforge.net/projects/gphoto/files/libgphoto/${pkgver}/${_realname}-${pkgver}.tar.gz +source=(https://github.com/gphoto/libgphoto2/releases/download/v${pkgver}/${_realname}-${pkgver}.tar.xz libgphoto2-gp_system_filename-fix.patch libgphoto2-fix-lumix.patch libgphoto2-configure-ws232.patch) -sha256sums=('fd48f6f58259ba199e834010aca0af3672ca0223ed0a98ba89ec693a415f242a' +sha256sums=('a7253bd18c6ef65352150ac36a668f883a5ad2634eb6455b3ca9aa6ac98d0073' '27c558cdf88bee6ce1f3f564d6dfbc0b78809c33b98d20c9e58e40e335d7b0dd' '08b6d5b56d01daae60afa4f0b924ddff2c6d5ef2a5bf6057c601f1efb7019016' 'fcda293776f18cd506f3aed09b8e0a969c7dbf390574b4b8c3c8377e827dbf8a') @@ -35,35 +35,37 @@ prepare() { patch -Np1 -i "${srcdir}/libgphoto2-gp_system_filename-fix.patch" patch -Np1 -i "${srcdir}/libgphoto2-fix-lumix.patch" patch -Np1 -i "${srcdir}/libgphoto2-configure-ws232.patch" + autoreconf -fiv } build() { - [[ -d ${srcdir}/build-${MINGW_CHOST} ]] && rm -rf ${srcdir}/build-${MINGW_CHOST} - #mkdir -p ${srcdir}/build-${MINGW_CHOST} && cd ${srcdir}/build-${MINGW_CHOST} + [[ -d build-${MSYSTEM} ]] && rm -rf build-${MSYSTEM} + cp -r ${_realname}-${pkgver} build-${MSYSTEM} + #Note: --with-libusb=no is required for Windows 10 to work. - cp -rf ${_realname}-${pkgver} build-${MINGW_CHOST} - cd ${srcdir}/build-${MINGW_CHOST} - + cd "${srcdir}/build-${MSYSTEM}" ./configure \ - --prefix="${MINGW_PREFIX}" \ - --build=${MINGW_CHOST} \ - --host=${MINGW_CHOST} \ + --prefix="${MINGW_PREFIX}" \ + --build=${MINGW_CHOST} \ + --host=${MINGW_CHOST} \ --with-libusb=no \ --with-gdlib=auto \ --disable-internal-docs + # Clang cannot handle '-Wl, -rpath' properly + find . -depth -name 'config.status' -exec sed -e "s|\${wl}-rpath \${wl}|-L|g" -i {} ';' make } check() { - cd "${srcdir}/build-${MINGW_CHOST}" + cd "${srcdir}/build-${MSYSTEM}" make check } package() { - cd "${srcdir}/build-${MINGW_CHOST}" + cd "${srcdir}/build-${MSYSTEM}" make DESTDIR=${pkgdir} install # Remove unused udev helper @@ -80,4 +82,5 @@ export CAMLIBS=${MINGW_PREFIX}/lib/${_realname}/${pkgver} export IOLIBS=${MINGW_PREFIX}/lib/${_realname}_port/0.12.0 EOF + install -Dm644 COPYING ${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE }