Date: Friday, September 5, 2014 @ 11:01:05 Author: bpiotrowski Revision: 220996
upgpkg: hugin 2013.0.0-11 rebuild against boost 1.56.0 All credit for the walkaround belongs to Sascha Blank. Modified: hugin/trunk/PKGBUILD ----------+ PKGBUILD | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2014-09-05 07:39:15 UTC (rev 220995) +++ PKGBUILD 2014-09-05 09:01:05 UTC (rev 220996) @@ -6,7 +6,7 @@ pkgname=hugin pkgver=2013.0.0 -pkgrel=10 +pkgrel=11 pkgdesc='Panorama photo stitcher' url='http://hugin.sourceforge.net/' license=('GPL') @@ -15,20 +15,35 @@ makedepends=('cmake' 'boost' 'tclap' 'mesa' 'python2' 'swig') depends=('wxgtk' 'boost-libs' 'enblend-enfuse' 'exiv2' 'libpano13' 'lensfun' 'lapack' 'make' 'perl-image-exiftool' 'desktop-file-utils') -source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgname}-${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2" - 'build.patch') +optdepends=('python2: for scripting and plugin interface support') +source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgname}-${pkgver%.*}/${pkgname}-${pkgver/r/_r}.tar.bz2" + "http://downloads.sourceforge.net/boost/boost_1_55_0.tar.bz2" + "build.patch") sha1sums=('0e0689cf2ca0c4a2730cffe06380eda976b6772d' + 'cef9a0cc7084b1d639e06cd3bc34e4251524c840' '45a8d8f5ee9b3c013cbc1ae3cfad14a2705c0dd4') install=install prepare() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}/${pkgname}-${pkgver/rc?}" patch -p1 -i ../build.patch + + # We take the module "spirit" from boost 1.55 and use it instead of the one + # that is provided by boost 1.56+ because hugin doesn't compile with the + # latter. This is no proper fix for the problem but it works for now. + mkdir -p src/boost + cp -r "${srcdir}/boost_1_55_0/boost/spirit" src/boost/ } build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}/${pkgname}-${pkgver/rc?}" + + # See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61214#c5 + # and https://www.mail-archive.com/[email protected]/msg1231921.html. + # for why the "-fno-devirtualize" flag is needed. I can go away with GCC 4.9.2+. + CXXFLAGS="${CXXFLAGS} -fno-devirtualize" + cmake . \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr \ @@ -37,6 +52,6 @@ } package() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}/${pkgname}-${pkgver/rc?}" make DESTDIR="${pkgdir}" install }
