pkgname=tinyxml pkgver=2.6.2 pkgrel=7 pkgdesc='Simple, small, C++ XML parser that can be easily integrated into other programs' url="https://sourceforge.net/projects/tinyxml/" arch=('x86_64') license=('zlib') depends=('gcc-libs') source=("https://downloads.sourceforge.net/tinyxml/${pkgname}_${pkgver//./_}.tar.gz" 'entity.patch' 'tinyxml-2.5.3-stl.patch' 'tinyxml.pc') md5sums=('c1b864c96804a10526540c664ade67f0' 'b6cc2d9330707373d920f760793c6311' '6db8334398e0cdad7e3c6406206ff42a' '9c6788d9e2e8485ffbd7d8e0e8da940d') build() { cd ${pkgname} patch -p0 -i ${srcdir}/entity.patch patch -p1 -i ${srcdir}/${pkgname}-2.5.3-stl.patch # Fix Makefile sed -i \ -e '/^TINYXML_USE_STL/ s|=.*|=YES|' \ -e "s|^RELEASE_CFLAGS.*|& ${CXXFLAGS} -fPIC|" Makefile make g++ -fPIC "$CXXFLAGS" -shared -o "lib${pkgname}.so.0.${pkgver}" \ -Wl,-soname,"lib${pkgname}.so.0" $(ls *.o | grep -v xmltest) } package() { cd ${pkgname} install -d -m 0755 ${pkgdir}/usr/{lib,include} install -m 0755 lib${pkgname}.so.0.${pkgver} ${pkgdir}/usr/lib/ install -m 0644 ${pkgname}.h tinystr.h ${pkgdir}/usr/include install -Dm644 readme.txt ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE install -Dm644 ${srcdir}/${pkgname}.pc ${pkgdir}/usr/lib/pkgconfig/${pkgname}.pc (cd ${pkgdir}/usr/lib ln -s "lib${pkgname}.so.0.${pkgver}" "lib${pkgname}.so.0" ln -s "lib${pkgname}.so.0.${pkgver}" "lib${pkgname}.so" ) }