From 79bd4e7ef4a725360a5523df7616c64dd9fda9b4 Mon Sep 17 00:00:00 2001 From: david Date: Tue, 19 Apr 2022 13:02:25 +0200 Subject: [PATCH 1/3] inkscape: copy of 1.1.1 --- inkscape-1.1.2-0.build.sh | 138 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 138 insertions(+) create mode 100755 inkscape-1.1.2-0.build.sh diff --git a/inkscape-1.1.2-0.build.sh b/inkscape-1.1.2-0.build.sh new file mode 100755 index 0000000..5777088 --- /dev/null +++ b/inkscape-1.1.2-0.build.sh @@ -0,0 +1,138 @@ +#! /bin/sh + +# COOKIE=$(mcookie|cut -c-8); grep -v V_GREP_ME $0 > /dev/shm/runme-$COOKIE.sh ; sleep 0.3; exec bash /dev/shm/runme-$COOKIE.sh +# TESTING=1 + +set -xe + +PKG=inkscape +VERSION=1.1.1 +BUILD=0 +DATEREV=2021-09-20_3bf5ae0d25 # The hex part is now called 'revision' + +PREFIX=/pkg/$PKG-$VERSION-$BUILD +if [ -n "$TESTING" ]; then PREFIX=/dev/shm/$PKG-$VERSION-$BUILD ; fi + +PATH=/bin:/usr/bin:/usr/sbin:/usr/local/bin +BUILD_TMPDIR=/dev/shm/$PKG-$VERSION-$BUILD.$USER.build.tmp +test -d $BUILD_TMPDIR && ( chmod -R u+rwx $BUILD_TMPDIR || true ; rm -rf $BUILD_TMPDIR ) +mkdir -p $BUILD_TMPDIR/home +export TMPDIR=$BUILD_TMPDIR +export HOME=$BUILD_TMPDIR/home + +mkdir -p $PREFIX +cat >$PREFIX/profile <<-EOF + PATH=$PREFIX/bin:\$PATH + if [ -d $PREFIX/.compatlibs ]; then export LD_LIBRARY_PATH=$PREFIX/.compatlibs\${LD_LIBRARY_PATH:+:\$LD_LIBRARY_PATH} ; fi +EOF + +source $PREFIX/profile + +export PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig +mkdir -p $PREFIX/build +cd $PREFIX/build + +NPROC=$(( $(nproc) * 4 / 5 + 1 )) + +BEEHIVE=https://beehive.molgen.mpg.de/0bbd38f12656e4728e2f7c4708aec014/gdbm-1.22.tar.gz +test -e gdbm-1.22.tar.gz || wget -nv $BEEHIVE +test -d gdbm-1.22 || tar -xf gdbm-1.22.tar.gz +cd gdbm-1.22 + +CFLAGS="-O2 -fPIC" ./configure \ + --prefix=$PREFIX \ + --enable-libgdbm-compat + +make -j $NPROC +make install +cd .. + +PYTHONVERSION=3.9.7 +PYTHONVERMAIN=${PYTHONVERSION%.*} +BEEHIVE=https://beehive.molgen.mpg.de/fddb060b483bc01850a3f412eea1d954/Python-3.9.7.tar.xz +test -e Python-$PYTHONVERSION.tar.xz || wget -nv $BEEHIVE +test -d Python-$PYTHONVERSION || tar -xf Python-$PYTHONVERSION.tar.xz +cd Python-$PYTHONVERSION + +LDFLAGS="-Wl,-rpath=$PREFIX/lib" \ +./configure \ + --prefix=$PREFIX \ + --enable-shared + +make -j $NPROC +make install +pip3 install --upgrade pip +pip3 install Cython +pip3 install lxml +pip3 install numpy +pip3 install scour +pip3 install serial +pip3 install pytest +cd .. + +BOOSTVERSION=1.72.0 +BOOSTVERSION_USCORED=1_72_0 + +BEEHIVE=https://beehive.molgen.mpg.de/e2b0b1eac302880461bcbef097171758/boost_1_72_0.tar.gz +test -e boost_$BOOSTVERSION_USCORED.tar.gz || wget -nv $BEEHIVE +test -d boost_$BOOSTVERSION_USCORED || tar -xf boost_$BOOSTVERSION_USCORED.tar.gz +cd boost_$BOOSTVERSION_USCORED + +./bootstrap.sh \ + --prefix=$PREFIX + +./b2 \ + -j $NPROC \ + --prefix=$PREFIX \ + --enable-shared \ + --with-filesystem \ + --build-type=minimal \ + install + +# someday I'll find out how to set LDFLAGS in boost +( + cd $PREFIX/lib + for SO in *$BOOSTVERSION ; do + patchelf --set-rpath $PREFIX/lib $SO + done +) +cd .. + +# https://inkscape.org/gallery/item/29255/inkscape-1.1.1.tar.xz +BEEHIVE=https://beehive.molgen.mpg.de/1852c535a1aec7ca25eca9de110330d7/inkscape-1.1.1.tar.xz +test -e inkscape-$VERSION.tar.xz || wget -nv $BEEHIVE +test -d inkscape-${VERSION}_$DATEREV || tar -xf inkscape-$VERSION.tar.xz +cd inkscape-${VERSION}_$DATEREV + +# remove weird font-feature-settings +cp -p share/ui/style.css share/ui/style.css.orig +echo -e "78,80d\nw\nq" | ed share/ui/style.css + +mkdir -p build +cd build +cmake \ + -DCMAKE_INSTALL_PREFIX=$PREFIX \ + -DCMAKE_VERBOSE_MAKEFILE=ON \ + -DCMAKE_PREFIX_PATH=$PREFIX \ + .. + +make -j $NPROC +make install + + +# INKSCAPE_INSTALL_LIBDIR=lib does no longer work, now we have: +# +# runtime path bin/inkscape: "$ORIGIN/../lib/inkscape" +# runtime path bin/inkview: "$ORIGIN/../lib/inkscape" +# runtime path lib/inkscape/libinkscape_base.so: "$ORIGIN/.." +# +# therefore clean up the mess by hand ... + +cd $PREFIX +mv $PREFIX/lib/inkscape/libinkscape_base.so $PREFIX/lib +rmdir $PREFIX/lib/inkscape +patchelf --set-rpath '$ORIGIN/../lib' bin/inkscape +patchelf --set-rpath '$ORIGIN/../lib' bin/inkview +patchelf --set-rpath '$ORIGIN' lib/libinkscape_base.so + +exit From 748cc73a934b8018f23e54ea265aae56429780da Mon Sep 17 00:00:00 2001 From: david Date: Wed, 20 Apr 2022 12:57:51 +0200 Subject: [PATCH 2/3] Inkscape: Update to version 1.1.2 --- inkscape-1.1.2-0.build.sh | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/inkscape-1.1.2-0.build.sh b/inkscape-1.1.2-0.build.sh index 5777088..ccea8d4 100755 --- a/inkscape-1.1.2-0.build.sh +++ b/inkscape-1.1.2-0.build.sh @@ -6,9 +6,9 @@ set -xe PKG=inkscape -VERSION=1.1.1 +VERSION=1.1.2 BUILD=0 -DATEREV=2021-09-20_3bf5ae0d25 # The hex part is now called 'revision' +DATEREV=2022-02-04_0a00cf5339 # The hex part is now called 'revision' PREFIX=/pkg/$PKG-$VERSION-$BUILD if [ -n "$TESTING" ]; then PREFIX=/dev/shm/$PKG-$VERSION-$BUILD ; fi @@ -98,8 +98,8 @@ cd boost_$BOOSTVERSION_USCORED ) cd .. -# https://inkscape.org/gallery/item/29255/inkscape-1.1.1.tar.xz -BEEHIVE=https://beehive.molgen.mpg.de/1852c535a1aec7ca25eca9de110330d7/inkscape-1.1.1.tar.xz +#BEEHIVE=https://inkscape.org/gallery/item/31668/inkscape-1.1.2.tar.xz +BEEHIVE=https://beehive.molgen.mpg.de/a486807ffdf89a1d7ce9425dd60555ec/inkscape-1.1.2.tar.xz test -e inkscape-$VERSION.tar.xz || wget -nv $BEEHIVE test -d inkscape-${VERSION}_$DATEREV || tar -xf inkscape-$VERSION.tar.xz cd inkscape-${VERSION}_$DATEREV @@ -114,6 +114,7 @@ cmake \ -DCMAKE_INSTALL_PREFIX=$PREFIX \ -DCMAKE_VERBOSE_MAKEFILE=ON \ -DCMAKE_PREFIX_PATH=$PREFIX \ + -DCMAKE_BUILD_TYPE=Release \ .. make -j $NPROC From ca8bf8f00dd13d59ef8ff600ed9d4e407e66798f Mon Sep 17 00:00:00 2001 From: david Date: Wed, 20 Apr 2022 12:59:56 +0200 Subject: [PATCH 3/3] inkscape: Update Boost to 1.75 --- inkscape-1.1.2-0.build.sh | 44 ++++++++++++++++++++++++--------------- 1 file changed, 27 insertions(+), 17 deletions(-) diff --git a/inkscape-1.1.2-0.build.sh b/inkscape-1.1.2-0.build.sh index ccea8d4..74763b8 100755 --- a/inkscape-1.1.2-0.build.sh +++ b/inkscape-1.1.2-0.build.sh @@ -70,32 +70,42 @@ pip3 install serial pip3 install pytest cd .. -BOOSTVERSION=1.72.0 -BOOSTVERSION_USCORED=1_72_0 +BOOSTVERSION=1.75.0 +BOOSTVERSION_USCORED=1_75_0 +PKGCFLAGS="-O2 -fPIC" -BEEHIVE=https://beehive.molgen.mpg.de/e2b0b1eac302880461bcbef097171758/boost_1_72_0.tar.gz +BEEHIVE=https://beehive.molgen.mpg.de//38813f6feb40387dfe90160debd71251/boost_1_75_0.tar.gz test -e boost_$BOOSTVERSION_USCORED.tar.gz || wget -nv $BEEHIVE test -d boost_$BOOSTVERSION_USCORED || tar -xf boost_$BOOSTVERSION_USCORED.tar.gz cd boost_$BOOSTVERSION_USCORED +sed -e "/using python/ s|;|: ${PREFIX}/include/python${PYTHONVERMAIN} ;|" \ + -i bootstrap.sh + ./bootstrap.sh \ - --prefix=$PREFIX + --with-toolset=gcc \ + --with-icu \ + --with-python=$PREFIX/bin/python3 \ + --with-libraries=filesystem || exit 1 ./b2 \ -j $NPROC \ - --prefix=$PREFIX \ - --enable-shared \ - --with-filesystem \ - --build-type=minimal \ - install - -# someday I'll find out how to set LDFLAGS in boost -( - cd $PREFIX/lib - for SO in *$BOOSTVERSION ; do - patchelf --set-rpath $PREFIX/lib $SO - done -) + --layout=system \ + --build-dir=build-python3 \ + --prefix=$PREFIX \ + --libdir=$PREFIX/lib \ + --build-type=minimal \ + toolset=gcc \ + variant=release \ + debug-symbols=off \ + link=shared \ + threading=multi \ + runtime-link=shared \ + python=$PYTHONVERMAIN \ + cflags="$PKGCFLAGS" \ + cxxflags="$PKGCFLAGS" \ + install || exit 1 + cd .. #BEEHIVE=https://inkscape.org/gallery/item/31668/inkscape-1.1.2.tar.xz