Files
LFSPkgBuilds/LFSPkgBuildScripts/libs/tinyxml/tinyxml.LFSBuild
2020-02-11 15:01:07 +00:00

72 lines
2.3 KiB
Bash
Executable File

#!/bin/bash -e
. /usr/share/LFSPkg/LFSFunctions
PKGNAME="tinyxml"
TARNAME="$PKGNAME"
VERSION="2.6.2"
BUILD=1
SECTION="LIBS"
SUFFIX="LFSPKG"
TARBALL="${TARNAME}_2_6_2.tar.gz"
PKG="${OUTPUT}/${PKGNAME}"
DOWHAT=${1:-"build"}
CWD=$(pwd)
scriptLog "${PKGNAME}-${VERSION}"
gettar "https://freefr.dl.sourceforge.net/project/${PKGNAME}/${PKGNAME}/${VERSION}/${TARBALL}" $SECTION
rm -rf "$PKG" || true
mkdir -p "$PKG"
pushd $COMPILEAT 2>/dev/null||true
extractarchive "${SOURCEARCHIVES}/${SECTION}/${TARBALL}"
pushd "${TARNAME}"
#From slackbuilds.org
# Define TINYXML_USE_STL to YES and use custom SLKCFLAGS.
sed -i -e '/^TINYXML_USE_STL/s|=.*|= YES|' -e "s|-O3|$LFSFLAGS -fPIC|" Makefile
# Permanently define TINYXML_USE_STL in tinyxml.h.
patch -p1 < $CWD/tinyxml-2.5.3-stl.patch
# Fix for bug
# http://trac.filezilla-project.org/ticket/5473
# http://sourceforge.net/tracker/index.php?func=detail&aid=3031828&group_id=13559&atid=313559
patch -p0 < $CWD/entity.patch
make
g++ -v $LFSFLAGS -Wall -Wno-unknown-pragmas -Wno-format -shared -o lib${PKGNAME}.so.0.${VERSION} -Wl,-soname,lib${PKGNAME}.so.0 $(ls *.o | grep -v xmltest)
mkdir -p $PKG/usr/{include,lib${LIBDIRSUFFIX}}
install -m 0755 lib${PKGNAME}.so.0.${VERSION} $PKG/usr/lib${LIBDIRSUFFIX}
ln -s lib${PKGNAME}.so.0.${VERSION} $PKG/usr/lib${LIBDIRSUFFIX}/lib${PKGNAME}.so.${VERSION}
ln -s lib${PKGNAME}.so.0.${VERSION} $PKG/usr/lib${LIBDIRSUFFIX}/lib${PKGNAME}.so.0
ln -s lib${PKGNAME}.so.0.${VERSION} $PKG/usr/lib${LIBDIRSUFFIX}/lib${PKGNAME}.so
install -m 0644 $PKGNAME.h tinystr.h $PKG/usr/include
# CFLAGS="$LFSFLAGS" CXXFLAGS="$LFSFLAGS" ./configure ${CONFIGOPTIONS}
# make $MAKEFLAGS||make|| exit 100
# make install DESTDIR=$PKG || exit 100
popd
checketc "$PKG"
packageclean "$PKG" "$CWD"
pushd "$PKG"
/usr/bin/lfspkg -n "$PKGNAME" -p "$VERSION" -d $SECTION -b $BUILD -s $SUFFIX -m
popd
case $DOWHAT in
up*)
lfspkg "^${PKGNAME}-[0-9][0-9]*" "${OUTPUT}/${SECTION}/${PKGNAME}-${VERSION}-${BUILD}_${SECTION}_${SUFFIX}.tar.gz" -u
;;
"install")
lfspkg "${OUTPUT}/${SECTION}/${PKGNAME}-${VERSION}-${BUILD}_${SECTION}_${SUFFIX}.tar.gz" -i
;;
"build")
echo "Just built"
;;
*)
echo "*** Unknown command ***"
exit 1
esac
rm -r "$PKG" "${TARNAME}"
popd 2>/dev/null||true