diff options
author | Eric Hameleers <alien@slackware.com> | 2022-10-19 04:56:06 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2022-10-19 04:56:06 +0000 |
commit | 0402c324c69a53d947af9bad63e39cdd27b2cb96 (patch) | |
tree | aec23ff689d38af5094404b9f56067abda429912 /calibre/build | |
parent | ea63d9fab7ff18823944014b6334555fb3268996 (diff) | |
download | asb-0402c324c69a53d947af9bad63e39cdd27b2cb96.tar.gz asb-0402c324c69a53d947af9bad63e39cdd27b2cb96.tar.xz |
calibre: update to 6.7.1 using Qt6
Diffstat (limited to 'calibre/build')
-rwxr-xr-x | calibre/build/calibre.SlackBuild | 1050 |
1 files changed, 681 insertions, 369 deletions
diff --git a/calibre/build/calibre.SlackBuild b/calibre/build/calibre.SlackBuild index 0e02b907..38e789cf 100755 --- a/calibre/build/calibre.SlackBuild +++ b/calibre/build/calibre.SlackBuild @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash # $Id$ # Copyright 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Eric Hameleers, Eindhoven, NL # All rights reserved. @@ -135,6 +135,8 @@ # * Update. # 5.44.0-1: 12/oct/2022 by Eric Hameleers <alien@slackware.com> # * Update. Final 5.x release, Calibre 6.x is built on top of Qt6. +# 6.7.1-1: 18/oct/2022 by Eric Hameleers <alien@slackware.com> +# * Calibre6 is built on Qt6. # # Run 'sh calibre.SlackBuild' to build a Slackware package. # The package (.txz) and .txt file as well as build logs are created in /tmp . @@ -144,7 +146,7 @@ PRGNAM=calibre SRCNAM=calibre -VERSION=${VERSION:-5.44.0} +VERSION=${VERSION:-6.7.1} BUILD=${BUILD:-1} NUMJOBS=${NUMJOBS:-" -j$(nproc) "} TAG=${TAG:-alien} @@ -154,75 +156,85 @@ DOCS="LICENSE* Changelog* COPYRIGHT README*" SYSPYTHON=$(python3 -c 'import sys; print (sys.version.split( )[0])') SLACKVER=${SLACKVER:-$(cat /etc/slackware-version |cut -d' ' -f2)} +REQUIRED_QT="6.3.1" + +# Only used in case we need to build our own Qt: +INT_QT=6.3.2 + REQUIRED_MTP="1.1.17" # Only used in case we need to build our own libmtp: -INT_MTP=1.1.17 +INT_MTP=1.1.20 # Only used when we build our own ImageMagick: INT_MAGICK=6.9.10_68 -REQUIRED_PYTHON="3.8" -REQUIRED_PYTHON_MIN="5" +REQUIRED_PYTHON="3.10" +REQUIRED_PYTHON_MIN="1" # Only used in case we need to build our own python: -INT_PYTHON=3.8.5 +INT_PYTHON=3.10.1 # Only used in case we need to build our own python modules: -INT_SETUPTOOLS=49.6.0 +INT_SETUPTOOLS=57.4.0 # The rest of the internal Python deps: INT_APSW=3.37.0-r1 -INT_BEAUTIFULSOUP=4.9.1 -INT_CHARDET=3.0.4 -INT_CCHARDET=2.1.7 -INT_CSSPARSER=1.0.4 -INT_DATEUTIL=2.8.1 -INT_DNSPYTHON=2.0.0 +INT_BEAUTIFULSOUP=4.11.1 +INT_CHARDET=4.0.0 +INT_CSSPARSER=1.0.8 +INT_DATEUTIL=2.8.2 +INT_DNSPYTHON=2.1.0 INT_FEEDPARSER=6.0.8 INT_HTML2TEXT=2020.1.16 INT_HTML5LIB=1.1 INT_HTML5PARSER=0.4.10 INT_HYPHEN=2.8.8 INT_IFADDR=0.1.7 -INT_JEEPNEY=0.6.0 -INT_LXML=4.5.2 -INT_MARKDOWN=3.2.2 +INT_JEEPNEY=0.7.1 +INT_LXML=4.9.1 +INT_MARKDOWN=3.3.6 INT_MECHANIZE=0.4.7 -INT_MSGPACK=1.0.0 -INT_NETIFACES=0.10.9 -INT_PACKAGING=20.4 -INT_PILLOW=8.3.1 +INT_MSGPACK=1.0.3 +INT_MULTIVOLUMEFILE=0.2.3 +INT_NETIFACES=0.11.0 +INT_PACKAGING=21.3 +INT_PILLOW=8.4.0 INT_PIP=20.0.2 -INT_PSUTIL=5.7.2 -INT_PY7ZR=0.11.1 +INT_PLY=3.11 +INT_PSUTIL=5.8.0 +INT_PY7ZR=0.16.3 +INT_PYBROTLI=1.0.9 INT_PYCHM=0.8.6 -INT_PYCRYPTO=3.9.8 -INT_PYGMENTS=2.6.1 -INT_PYPARSING=2.4.7 -INT_PYQT5=5.15.2 -INT_PYQT5SIP=12.8.1 -INT_PYQTBUILDER=1.6.0 -INT_PYQTWEBENG=5.15.1 -INT_REGEX=2020.7.14 +INT_PYCRYPTODOME=3.11.0 +INT_PYGMENTS=2.10.0 +INT_PYPARSING=3.0.6 +INT_PYPPMD=0.17.3 +INT_PYQT6=6.3.1 +INT_PYQT6SIP=13.4.0 +INT_PYQTBUILDER=1.13.0 +INT_PYQTWEBENG=6.4.0 +INT_PYZSTD=0.15.0 +INT_REGEX=2021.11.10 INT_SGMLLIB3K=1.0.0 -INT_SIP=5.5.0 -INT_SIX=1.15.0 -INT_SOUPSIEVE=2.0.1 +INT_SIP=6.6.2 +INT_SIX=1.16.0 +INT_SOUPSIEVE=2.3.1 INT_SPEECHD=0.11.1 INT_STEMMER=2.2.0 -INT_SQLITE=3380100 -INT_TEXTTABLE=1.6.3 -INT_TOML=0.10.1 +INT_SQLITE=3390400 +INT_TEXTTABLE=1.6.4 +INT_TOML=0.10.2 +INT_UCHARDET=0.0.7 INT_UNRARDLL=0.1.5 INT_WEBENC=0.5.1 -INT_ZEROCONF=0.31.0 +INT_ZEROCONF=0.37.0 # Software that's an internal dependency to the package: INT_HUNSPELL=1.7.0 INT_OPTIPNG=0.7.7 -INT_PODOFO=0.9.6 +INT_PODOFO=0.9.7 INT_POPPLER=21.12.0 -INT_UNRARSRC=5.9.4 +INT_UNRARSRC=6.1.2 # Where do we look for sources? SRCDIR=$(cd $(dirname $0); pwd) @@ -244,6 +256,17 @@ BUILD_PYTHON="YES" # allows us to be independant of Slackware's ImageMagick upgrades. BUILD_MAGICK=${BUILD_MAGICK:-NO} +# Allow the package builder to override BUILD_QT: +if [ -z "$BUILD_QT" ]; then + if pkg-config --exists "Qt6Core >= $REQUIRED_QT" && pkg-config --exists "Qt6Core <= $INT_QT" ; + then + BUILD_QT="NO" + else + # We need to build our own qt: + BUILD_QT="YES" + fi +fi + # Allow the package builder to override BUILD_MTP: if [ -z "$BUILD_MTP" ]; then if pkg-config --exists "libmtp >= $REQUIRED_MTP" ; then @@ -257,8 +280,8 @@ fi # Determine what sources we need to download: echo ">> Compiling python modules <<" -SOURCE[1]="$SRCDIR/sources/setuptools-${INT_SETUPTOOLS}.zip" -SRCURL[1]="https://pypi.python.org/packages/source/s/setuptools/setuptools-${INT_SETUPTOOLS}.zip" +SOURCE[1]="$SRCDIR/sources/setuptools-${INT_SETUPTOOLS}.tar.gz" +SRCURL[1]="https://pypi.python.org/packages/source/s/setuptools/setuptools-${INT_SETUPTOOLS}.tar.gz" SOURCE[2]="$SRCDIR/sources/Pygments-${INT_PYGMENTS}.tar.gz" SRCURL[2]="https://pypi.python.org/packages/source/P/Pygments/Pygments-${INT_PYGMENTS}.tar.gz" @@ -275,8 +298,8 @@ SRCURL[5]="https://pypi.python.org/packages/source/p/python-dateutil/python-date SOURCE[6]="$SRCDIR/sources/Pillow-${INT_PILLOW}.tar.gz" SRCURL[6]="https://pypi.io/packages/source/p/pillow/Pillow-${INT_PILLOW}.tar.gz" -SOURCE[7]="$SRCDIR/sources/lxml-${INT_LXML}.tgz" -SRCURL[7]="http://lxml.de/files/lxml-${INT_LXML}.tgz" +SOURCE[7]="$SRCDIR/sources/lxml-${INT_LXML}.tar.gz" +SRCURL[7]="https://pypi.io/packages/source/l/lxml/lxml-${INT_LXML}.tar.gz" SOURCE[8]="$SRCDIR/sources/mechanize-${INT_MECHANIZE}.tar.gz" SRCURL[8]="https://github.com/python-mechanize/mechanize/archive/v${INT_MECHANIZE}.tar.gz" @@ -290,8 +313,8 @@ SRCURL[10]="https://pypi.io/packages/source/i/ifaddr/ifaddr-${INT_IFADDR}.tar.gz SOURCE[11]="$SRCDIR/sources/zeroconf-${INT_ZEROCONF}.tar.gz" SRCURL[11]="https://pypi.io/packages/source/z/zeroconf/zeroconf-${INT_ZEROCONF}.tar.gz" -SOURCE[12]="$SRCDIR/sources/pycryptodome-${INT_PYCRYPTO}.tar.gz" -SRCURL[12]="https://github.com/Legrandin/pycryptodome/archive/v${INT_PYCRYPTO}.tar.gz" +SOURCE[12]="$SRCDIR/sources/pycryptodome-${INT_PYCRYPTODOME}.tar.gz" +SRCURL[12]="https://github.com/Legrandin/pycryptodome/archive/v${INT_PYCRYPTODOME}.tar.gz" SOURCE[13]="$SRCDIR/sources/netifaces-${INT_NETIFACES}.tar.gz" SRCURL[13]="https://pypi.io/packages/source/n/netifaces/netifaces-${INT_NETIFACES}.tar.gz" @@ -311,8 +334,8 @@ SRCURL[17]="https://pypi.io/packages/source/m/msgpack/msgpack-${INT_MSGPACK}.tar SOURCE[18]="$SRCDIR/sources/six-${INT_SIX}.tar.gz" SRCURL[18]="https://pypi.io/packages/source/s/six/six-${INT_SIX}.tar.gz" -SOURCE[19]="$SRCDIR/sources/cchardet-${INT_CCHARDET}.tar.gz" -SRCURL[19]="https://pypi.io/packages/source/c/cchardet/cchardet-${INT_CCHARDET}.tar.gz" +SOURCE[19]="$SRCDIR/sources/uchardet-${INT_UCHARDET}.tar.xz" +SRCURL[19]="https://www.freedesktop.org/software/uchardet/releases/uchardet-${INT_UCHARDET}.tar.xz" SOURCE[20]="$SRCDIR/sources/webencodings-${INT_WEBENC}.tar.gz" SRCURL[20]="https://pypi.io/packages/source/w/webencodings/webencodings-${INT_WEBENC}.tar.gz" @@ -356,8 +379,8 @@ SRCURL[32]="https://pypi.io/packages/source/p/pychm/pychm-${INT_PYCHM}.tar.gz" SOURCE[33]="$SRCDIR/sources/toml-${INT_TOML}.tar.gz" SRCURL[33]="https://pypi.io/packages/source/t/toml/toml-${INT_TOML}.tar.gz" -SOURCE[34]="$SRCDIR/sources/PyQtWebEngine-${INT_PYQTWEBENG}.tar.gz" -SRCURL[34]="https://pypi.io/packages/source/P/PyQtWebEngine/PyQtWebEngine-${INT_PYQTWEBENG}.tar.gz" +SOURCE[34]="$SRCDIR/sources/PyQt6_WebEngine-${INT_PYQTWEBENG}.tar.gz" +SRCURL[34]="https://pypi.io/packages/source/P/PyQt6_WebEngine/PyQt6_WebEngine-${INT_PYQTWEBENG}.tar.gz" SOURCE[35]="$SRCDIR/sources/unrarsrc-${INT_UNRARSRC}.tar.gz" SRCURL[35]="http://www.rarlab.com/rar/unrarsrc-${INT_UNRARSRC}.tar.gz" @@ -380,23 +403,38 @@ SRCURL[40]="https://pypi.io/packages/source/j/jeepney/jeepney-${INT_JEEPNEY}.tar SOURCE[41]="$SRCDIR/sources/pyparsing-${INT_PYPARSING}.tar.gz" SRCURL[41]="https://pypi.io/packages/source/p/pyparsing/pyparsing-${INT_PYPARSING}.tar.gz" -SOURCE[42]="$SRCDIR/sources/packaging-${INT_PACKAGING}.tar.gz" -SRCURL[42]="https://pypi.io/packages/source/p/packaging/packaging-${INT_PACKAGING}.tar.gz" +SOURCE[42]="$SRCDIR/sources/ply-${INT_PLY}.tar.gz" +SRCURL[42]="https://pypi.io/packages/source/p/ply/ply-${INT_PLY}.tar.gz" -SOURCE[43]="$SRCDIR/sources/sip-${INT_SIP}.tar.gz" -SRCURL[43]="https://pypi.io/packages/source/s/sip/sip-${INT_SIP}.tar.gz" +SOURCE[43]="$SRCDIR/sources/packaging-${INT_PACKAGING}.tar.gz" +SRCURL[43]="https://pypi.io/packages/source/p/packaging/packaging-${INT_PACKAGING}.tar.gz" -SOURCE[44]="$SRCDIR/sources/PyQt5_sip-${INT_PYQT5SIP}.tar.gz" -SRCURL[44]="https://pypi.io/packages/source/P/PyQt5_sip/PyQt5_sip-${INT_PYQT5SIP}.tar.gz" +SOURCE[44]="$SRCDIR/sources/sip-${INT_SIP}.tar.gz" +SRCURL[44]="https://pypi.io/packages/source/s/sip/sip-${INT_SIP}.tar.gz" -SOURCE[45]="$SRCDIR/sources/PyQt5-${INT_PYQT5}.tar.gz" -SRCURL[45]="https://pypi.io/packages/source/P/PyQt5/PyQt5-${INT_PYQT5}.tar.gz" +SOURCE[45]="$SRCDIR/sources/PyQt6_sip-${INT_PYQT6SIP}.tar.gz" +SRCURL[45]="https://pypi.io/packages/source/P/PyQt6_sip/PyQt6_sip-${INT_PYQT6SIP}.tar.gz" -SOURCE[46]="$SRCDIR/sources/PyQt-builder-${INT_PYQTBUILDER}.tar.gz" -SRCURL[46]="https://pypi.io/packages/source/P/PyQt-builder/PyQt-builder-${INT_PYQTBUILDER}.tar.gz" +SOURCE[46]="$SRCDIR/sources/PyQt6-${INT_PYQT6}.tar.gz" +SRCURL[46]="https://pypi.io/packages/source/P/PyQt6/PyQt6-${INT_PYQT6}.tar.gz" -SOURCE[47]="$SRCDIR/sources/speech-dispatcher-${INT_SPEECHD}.tar.gz" -SRCURL[47]="https://github.com/brailcom/speechd/releases/download/${INT_SPEECHD}/speech-dispatcher-${INT_SPEECHD}.tar.gz" +SOURCE[47]="$SRCDIR/sources/PyQt-builder-${INT_PYQTBUILDER}.tar.gz" +SRCURL[47]="https://pypi.io/packages/source/P/PyQt-builder/PyQt-builder-${INT_PYQTBUILDER}.tar.gz" + +SOURCE[48]="$SRCDIR/sources/speech-dispatcher-${INT_SPEECHD}.tar.gz" +SRCURL[48]="https://github.com/brailcom/speechd/releases/download/${INT_SPEECHD}/speech-dispatcher-${INT_SPEECHD}.tar.gz" + +SOURCE[49]="$SRCDIR/sources/multivolumefile-${INT_MULTIVOLUMEFILE}.tar.gz" +SRCURL[49]="https://pypi.io/packages/source/m/multivolumefile/multivolumefile-${INT_MULTIVOLUMEFILE}.tar.gz" + +SOURCE[50]="$SRCDIR/sources/Brotli-${INT_PYBROTLI}.zip" +SRCURL[50]="https://pypi.io/packages/source/B/Brotli/Brotli-${INT_PYBROTLI}.zip" + +SOURCE[51]="$SRCDIR/sources/pyzstd-${INT_PYZSTD}.tar.gz" +SRCURL[51]="https://pypi.io/packages/source/p/pyzstd/pyzstd-${INT_PYZSTD}.tar.gz" + +SOURCE[52]="$SRCDIR/sources/pyppmd-${INT_PYPPMD}.tar.gz" +SRCURL[52]="https://pypi.io/packages/source/p/pyppmd/pyppmd-${INT_PYPPMD}.tar.gz" NEXT_ARRAYEL=${#SOURCE[@]} @@ -417,6 +455,15 @@ if [ "$BUILD_MTP" = "YES" ]; then NEXT_ARRAYEL=$(( ${NEXT_ARRAYEL} + 1 )) fi +if [ "$BUILD_QT" = "YES" ]; then + echo ">> Compiling Qt <<" + + SOURCE[$NEXT_ARRAYEL]="$SRCDIR/sources/qt-everywhere-src-${INT_QT}.tar.xz" + SRCURL[$NEXT_ARRAYEL]="http://download.qt.io/official_releases/qt/$(echo ${INT_QT}|cut -d. -f1,2)/${INT_QT}/single/qt-everywhere-src-${INT_QT}.tar.xz" + + NEXT_ARRAYEL=$(( ${NEXT_ARRAYEL} + 1 )) +fi + if [ "$BUILD_MAGICK" = "YES" ]; then echo ">> Compiling Magick <<" @@ -538,16 +585,16 @@ echo "++" cd $TMP/tmp-$PRGNAM if [ "$P1" != "--oldbuild" ]; then - if [ "$BUILD_PYTHON" = "YES" -o "$BUILD_MTP" = "YES" -o "$BUILD_MAGICK" = "YES" ]; then + if [ "$BUILD_PYTHON" = "YES" -o "$BUILD_MTP" = "YES" -o "$BUILD_QT" = "YES" -o "$BUILD_MAGICK" = "YES" ]; then # Sanity check: # In case we need to build an internal set of python interpreter plus # support modules, then you must not compile this package when calibre # is already installed! - if [ -d /usr/lib${LIBDIRSUFFIX}/calibre/lib ]; then + if [ -d /usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib ]; then echo "" - echo "** You have calibre installed in /usr/lib${LIBDIRSUFFIX}/calibre" + echo "** You have $PRGNAM installed in /usr/lib${LIBDIRSUFFIX}/$PRGNAM" echo "** Compiling this package means you have to remove the existing" - echo "** calibre installation first, it conflicts with the compilation!" + echo "** $PRGNAM installation first, it conflicts with the compilation!" echo "" exit 1 fi @@ -576,6 +623,112 @@ echo Building ... # What follows is a series of subroutines for building all the parts: # +# +# Build Qt 6.x: +# +make_qt6() { + + # Calibre needs: + # qt-base, qt-svg, qt-shadertools, qt-declarative, qt-imageformats, + # qt-webchannel, qt-positioning, qt-wayland, qt-x11extras, + # qt-sensors, qt-webengine. + + local MOD="qt6" + echo -e "\n** $MOD **\n" + + cd $TMP/tmp-$PRGNAM/qt-everywhere-src-${INT_QT} + + # If we build our own Qt, unset the QT-related environment variables, + # so that a pre-existing Qt will not be picked up and create errors later: + unset QTDIR + unset QT6DIR + NEWPATH="/usr/lib${LIBDIRSUFFIX}/${PRGNAM}/bin" + for elem in $(echo $PATH | cut -d: --output-delimiter=' ' -f1-) ; do + if ! $(echo "$elem"| grep -q /qt) ; then + NEWPATH="$NEWPATH:$elem" + fi + done + export PATH="$NEWPATH" + + # Use -reduce-relocations only on i?86 and x86_64 architextures. + # https://bugreports.qt-project.org/browse/QTBUG-36129 + if echo $ARCH | grep -q '\(i.86\|x86_64\)' 2>/dev/null; then + RELOCATIONS="-reduce-relocations" + else + RELOCATIONS="" + fi + + if [ "$P1" != "--oldbuild" ]; then + # Fix path to mysql header + cat $PATCHDIR/qt5.mysql.h.diff | patch -p1 --verbose || exit 1 + + if ! pkg-config --exists libpulse 2>/dev/null ; then + # Forcibly disable pulseaudio in qtwebengine: + cat $PATCHDIR/qt5.pulseaudio.diff | patch -p1 --verbose || exit 1 + fi + # Use our custom compiler and linker flags: + sed -e "s|^\(QMAKE_CFLAGS_RELEASE.*\)|\1 ${SLKCFLAGS}|" \ + -i qtbase/mkspecs/common/gcc-base.conf || exit 1 + sed -e "s|^\(QMAKE_LFLAGS_RELEASE.*\)|\1 ${SLKLDFLAGS}|" \ + -i qtbase/mkspecs/common/g++-unix.conf || exit 1 + fi + + export CFLAGS="$SLKCFLAGS" + export CXXFLAGS="$SLKCFLAGS" + export OPENSOURCE_CXXFLAGS="$SLKCFLAGS" + export QTDIR="${TMP}/qt-everywhere-src-${INT_QT}" + export LD_LIBRARY_PATH="${QTDIR}/qtbase/lib:${QTDIR}/qttools/lib" + export QT_PLUGIN_PATH="${QTDIR}/qtbase/plugins" + mkdir -p build + cd build + cmake .. \ + -G Ninja \ + -Wno-dev \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_C_FLAGS_RELEASE:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS_RELEASE:STRING="$SLKCFLAGS" \ + -DCMAKE_INSTALL_PREFIX="/usr/lib${LIBDIRSUFFIX}/${PRGNAM}" \ + -DFEATURE_openssl_linked=ON \ + -DFEATURE_system_sqlite=ON \ + -DFEATURE_system_xcb_xinput=ON \ + -DFEATURE_webengine_proprietary_codecs=ON \ + -DFEATURE_webengine_system_ffmpeg=ON \ + -DQT_BUILD_EXAMPLES=OFF \ + -DQT_USE_CCACHE=OFF \ + -DBUILD_qt3d:BOOL=OFF \ + -DBUILD_qtactiveqt:BOOL=OFF \ + -DBUILD_qtcharts:BOOL=OFF \ + -DBUILD_qtconnectivity:BOOL=OFF \ + -DBUILD_qtdatavis3d:BOOL=OFF \ + -DBUILD_qtdoc:BOOL=OFF \ + -DBUILD_qtlottie:BOOL=OFF \ + -DBUILD_qtmqtt:BOOL=OFF \ + -DBUILD_qtmultimedia:BOOL=OFF \ + -DBUILD_qtnetworkauth:BOOL=OFF \ + -DBUILD_qtquick3d:BOOL=OFF \ + -DBUILD_qtquicktimeline:BOOL=OFF \ + -DBUILD_qtremoteobjects:BOOL=OFF \ + -DBUILD_qtscxml:BOOL=OFF \ + -DBUILD_qtserialbus:BOOL=OFF \ + -DBUILD_qtserialport:BOOL=OFF \ + -DBUILD_qttools:BOOL=OFF \ + -DBUILD_qttranslations:BOOL=OFF \ + 2>&1 | tee $OUTPUT/configure-${PRGNAM}_${MOD}.log + cmake --build . --parallel \ + 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log + DESTDIR=$PKG cmake --install . --strip \ + 2>&1 | tee $OUTPUT/install-${PRGNAM}_${MOD}.log + cd - 1>/dev/null + + # Add documentation: + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/${PRGNAM}/doc/internaldeps/${MOD} + cp -a LICENSE* README* \ + $PKG/usr/lib${LIBDIRSUFFIX}/${PRGNAM}/doc/internaldeps/${MOD} || true + +} # End make_qt6 + # # Build libmtp: @@ -589,7 +742,7 @@ make_mtp() { export CFLAGS="$SLKCFLAGS" ./configure \ - --prefix=/usr/lib${LIBDIRSUFFIX}/calibre \ + --prefix=/usr/lib${LIBDIRSUFFIX}/$PRGNAM \ --disable-static # Build and install: @@ -597,7 +750,7 @@ make_mtp() { make install DESTDIR=$PKG || exit 1 # Guess someone didn't have enough to drink: - ( cd $PKG/usr/lib${LIBDIRSUFFIX}/calibre/bin + ( cd $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/bin rm -f mtp-sendtr mtp-sendfile mtp-newfolder mtp-getfile mtp-delfile ln -s mtp-connect mtp-sendtr ln -s mtp-connect mtp-sendfile @@ -610,9 +763,9 @@ make_mtp() { rm -rf $PKG/lib $PKG/usr/lib/udev # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_libmtp @@ -629,7 +782,7 @@ make_magick() { LDFLAGS="" CFLAGS="" CXXFLAGS="" \ ./configure \ - --prefix=/usr/lib${LIBDIRSUFFIX}/calibre \ + --prefix=/usr/lib${LIBDIRSUFFIX}/$PRGNAM \ --enable-shared \ --disable-static \ --disable-openmp \ @@ -660,12 +813,12 @@ make_magick() { # .la files in libdir should be removed. # Other .la files should be left alone, as ImageMagick uses them internally # to locate modules. - rm -f $PKG/usr/lib${LIBDIRSUFFIX}/calibre/lib/*.la + rm -f $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib/*.la # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a AUTHORS LICENSE NEWS NOTICE README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_magick @@ -678,7 +831,7 @@ make_python() { echo -e "\n** $MOD **\n" local BRANCH_VERSION=$(echo $INT_PYTHON | cut -f 1,2 -d . ) - local SITEPK=$PKG/usr/lib${LIBDIRSUFFIX}/calibre/lib/python${BRANCH_VERSION}/site-packages + local SITEPK=$PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib/python${BRANCH_VERSION}/site-packages cd $TMP/tmp-$PRGNAM/Python-${INT_PYTHON} @@ -687,9 +840,6 @@ make_python() { cat $PATCHDIR/python3.readline.set_pre_input_hook.diff \ | patch -p1 --verbose \ 2>&1 | tee -a $OUTPUT/patch-${PRGNAM}_${MOD}.log - # We don't want a large libpython*.a. - cat $PATCHDIR/python3.no-static-library.diff | patch -p1 --verbose \ - 2>&1 | tee -a $OUTPUT/patch-${PRGNAM}_${MOD}.log # If system we're building on already has Python3 with pip in site-packages, # ignore it and install pip anyway. sed -i 's|\("install",\)|\1 "--ignore-installed",|' Lib/ensurepip/__init__.py @@ -699,14 +849,15 @@ make_python() { # This requires some changes to the standard build: # Creating the 'lib' directory below is needed! We are going to use rpath # so that we can run python from this non-standard path: - mkdir -p /usr/lib${LIBDIRSUFFIX}/calibre/lib + mkdir -p /usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib export CFLAGS="${SLKCFLAGS/-O2}" - LDFLAGS="-Wl,-rpath /usr/lib${LIBDIRSUFFIX}/calibre/lib" \ + LDFLAGS="-Wl,-rpath /usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib" \ ./configure \ - --prefix=/usr/lib${LIBDIRSUFFIX}/calibre \ - --bindir=/usr/lib${LIBDIRSUFFIX}/calibre \ - --with-platlibdir=lib${LIBDIRSUFFIX} \ + --prefix=/usr/lib${LIBDIRSUFFIX}/$PRGNAM \ + --bindir=/usr/lib${LIBDIRSUFFIX}/$PRGNAM \ + --libdir=/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib \ + --with-platlibdir=lib \ --enable-ipv6 \ --enable-loadable-sqlite-extensions \ --enable-optimizations \ @@ -729,18 +880,18 @@ make_python() { cp -a Tools/* $SITEPK/ # Remove DOS batch/exe files. - find $PKG/usr/lib${LIBDIRSUFFIX}/calibre \( -name '*.exe' -o -name '*.bat' \) -exec rm -f '{}' \+ + find $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM \( -name '*.exe' -o -name '*.bat' \) -exec rm -f '{}' \+ # Fix permissions on dynamic libraries. - find $PKG/usr/lib${LIBDIRSUFFIX}/calibre -type f -perm 555 -exec chmod 755 '{}' \+ + find $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM -type f -perm 555 -exec chmod 755 '{}' \+ # No need for man pages now: - rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/calibre/share/man + rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/share/man # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_python @@ -760,9 +911,9 @@ make_setuptools() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a *.rst \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_setuptools @@ -782,9 +933,9 @@ make_pyqtbuilder() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE* README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_pyqtbuilder @@ -804,9 +955,9 @@ make_pip() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a AUTHORS.txt LICENSE.txt NEWS.rst PKG-INFO README.rst \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_pip @@ -823,9 +974,9 @@ make_dnspython() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_dnspython @@ -849,9 +1000,9 @@ make_cssparser() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_cssparser @@ -870,9 +1021,9 @@ make_dateutil() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE NEWS \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_dateutil @@ -895,9 +1046,9 @@ make_pillow() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a CHANGES* LICENSE README* RELEASING* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_pillow @@ -916,9 +1067,9 @@ make_lxml() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a *.txt doc/licenses \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_lxml @@ -938,9 +1089,9 @@ make_mechanize() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a *.txt \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_mechanize @@ -960,9 +1111,9 @@ make_toml() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE *.rst \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_toml @@ -981,9 +1132,9 @@ make_jeepney() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE* *.rst \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_jeepney @@ -1003,9 +1154,9 @@ make_pygments() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a AUTHORS CHANGES LICENSE README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_pygments @@ -1026,14 +1177,37 @@ make_pyparsing() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a CHANGES LICENSE* README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_pyparsing # +# Build python-ply: +# +make_ply() { + + local MOD="ply" + echo -e "\n** $MOD **\n" + + cd $TMP/tmp-$PRGNAM/ply-${INT_PLY} + + # Compile and install + export CFLAGS="$SLKCFLAGS" + python3 setup.py install --root=$PKG \ + 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log + + # Add documentation: + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} + cp -a *.rst LICENSE* PKG-INFO \ + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true + +} # End make_ply + + +# # Build python-packaging: # make_packaging() { @@ -1049,9 +1223,9 @@ make_packaging() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a *.rst LICENSE* PKG-INFO \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_packaging @@ -1072,9 +1246,9 @@ make_sip() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE* NEWS README \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_sip @@ -1082,12 +1256,12 @@ make_sip() { # # Build pyqt-sip: # -make_pyqt5sip() { +make_pyqt6sip() { - local MOD="pyqt5-sip" + local MOD="pyqt6-sip" echo -e "\n** $MOD **\n" - cd $TMP/tmp-$PRGNAM/PyQt5_sip-${INT_PYQT5SIP} + cd $TMP/tmp-$PRGNAM/PyQt6_sip-${INT_PYQT6SIP} # Compile and install: export CFLAGS="$SLKCFLAGS" @@ -1095,31 +1269,38 @@ make_pyqt5sip() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE* README \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true -} # End make_pyqt5sip +} # End make_pyqt6sip # -# Build PyQt5: +# Build PyQt6: # -make_pyqt5() { +make_pyqt6() { - local MOD="pyqt5" + local MOD="pyqt6" echo -e "\n** $MOD **\n" PYTHON3LIB=$( python3 -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())' 2>/dev/null ) - export QTDIR=/usr/lib${LIBDIRSUFFIX}/qt5 + if [ "${BUILD_QT}" = "NO" ]; then + export QTDIR=/usr/lib${LIBDIRSUFFIX}/qt6 + else + unset QT56IR + export QTDIR=/usr/lib${LIBDIRSUFFIX}/${PRGNAM} + fi + export CFLAGS="$SLKCFLAGS" export CXXFLAGS="$SLKCFLAGS" - cd $TMP/tmp-$PRGNAM/PyQt5-${INT_PYQT5} + cd $TMP/tmp-$PRGNAM/PyQt6-${INT_PYQT6} sip-build \ --confirm-license \ + --jobs $(nproc) \ --verbose \ --qmake=$QTDIR/bin/qmake \ --no-make \ @@ -1134,15 +1315,17 @@ make_pyqt5() { # Useless: rm -rf $PKG/$PYTHON3LIB/PyQt5/uic/port_v2/ - # Remove ugly bits that threaten to overwrite a system file: - rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/qt5 + if [ "${BUILD_QT}" = "NO" ]; then + # Remove ugly bits that threaten to overwrite a system file: + rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/qt6 + fi # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE* NEWS \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true -} # End make_pyqt5 +} # End make_pyqt # @@ -1153,29 +1336,34 @@ make_pyqtwebengine() { local MOD="pyqtwebengine" echo -e "\n** $MOD **\n" - cd $TMP/tmp-$PRGNAM/PyQtWebEngine-${INT_PYQTWEBENG} + cd $TMP/tmp-$PRGNAM/PyQt6_WebEngine-${INT_PYQTWEBENG} - export QTDIR=/usr/lib${LIBDIRSUFFIX}/qt5 + if [ "${BUILD_QT}" = "NO" ]; then + export QTDIR=/usr/lib${LIBDIRSUFFIX}/qt6 + else + unset QT6DIR + export QTDIR=/usr/lib${LIBDIRSUFFIX}/${PRGNAM} + fi export CFLAGS="$SLKCFLAGS" export CXXFLAGS="$SLKCFLAGS" - - python3 configure.py \ - --qmake=$QTDIR/bin/qmake \ + sip-build \ + --jobs $(nproc) \ + --verbose \ + --qmake $QTDIR/bin/qmake \ + --no-make \ 2>&1 | tee $OUTPUT/configure-${PRGNAM}_${MOD}.log - make $NUMJOBS || make \ - 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log - make -j1 install DESTDIR=$PKG INSTALL_ROOT=$PKG \ - 2>&1 | tee -a $OUTPUT/make-${PRGNAM}_${MOD}.log - install -Dm644 PyQtWebEngine.api -t $PKG/usr/share/qt5/qsci/api/python - - # Remove ugly bits that threaten to overwrite a system file: - rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/qt5 + cd build + make \ + 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log + make -j1 install DESTDIR=$PKG INSTALL_ROOT=$PKG \ + 2>&1 | tee -a $OUTPUT/make-${PRGNAM}_${MOD}.log + cd - 1>/dev/null # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE* NEWS \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_pyqtwebengine @@ -1188,7 +1376,7 @@ make_pycryptodome() { local MOD="pycryptodome" echo -e "\n** $MOD **\n" - cd $TMP/tmp-$PRGNAM/pycryptodome-${INT_PYCRYPTO} + cd $TMP/tmp-$PRGNAM/pycryptodome-${INT_PYCRYPTODOME} # Compile and install export CFLAGS="$SLKCFLAGS" @@ -1196,9 +1384,9 @@ make_pycryptodome() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a *.rst \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_pycryptodome @@ -1214,15 +1402,15 @@ make_netifaces() { cd $TMP/tmp-$PRGNAM/netifaces-${INT_NETIFACES} # Compile and install - export CFLAGS="-I/usr/lib${LIBDIRSUFFIX}/calibre/include" + export CFLAGS="-I/usr/lib${LIBDIRSUFFIX}/$PRGNAM/include" python3 setup.py install --root=$PKG \ 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log unset CFLAGS # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_netifaces @@ -1238,15 +1426,15 @@ make_ifaddr() { cd $TMP/tmp-$PRGNAM/ifaddr-${INT_IFADDR} # Compile and install - export CFLAGS="-I/usr/lib${LIBDIRSUFFIX}/calibre/include" + export CFLAGS="-I/usr/lib${LIBDIRSUFFIX}/$PRGNAM/include" python3 setup.py install --root=$PKG \ 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log unset CFLAGS # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE* *.rst \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_ifaddr @@ -1262,15 +1450,15 @@ make_zeroconf() { cd $TMP/tmp-$PRGNAM/zeroconf-${INT_ZEROCONF} # Compile and install - export CFLAGS="-I/usr/lib${LIBDIRSUFFIX}/calibre/include" + export CFLAGS="-I/usr/lib${LIBDIRSUFFIX}/$PRGNAM/include" python3 setup.py install --root=$PKG \ 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log unset CFLAGS # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a COPYING* *.rst \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_zeroconf @@ -1298,9 +1486,9 @@ make_apsw() { 2>&1 | tee $OUTPUT/install-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a PKG-INFO \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_apsw @@ -1321,9 +1509,9 @@ make_psutil() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a CREDITS HISTORY* INSTALL* LICENSE README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_psutil @@ -1344,14 +1532,106 @@ make_texttable() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE *.md \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_texttable # +# Build multivolumefile: +# +make_multivolumefile() { + + local MOD="multivolumefile" + echo -e "\n** $MOD **\n" + + cd $TMP/tmp-$PRGNAM/multivolumefile-${INT_MULTIVOLUMEFILE} + + # Compile and install + export CFLAGS="$SLKCFLAGS" + python3 setup.py install --root=$PKG \ + 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log + + # Add documentation: + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} + cp -a LICENSE *.rst \ + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true + +} # End make_multivolumefile + + +# +# Build pybrotli: +# +make_pybrotli() { + + local MOD="pybrotli" + echo -e "\n** $MOD **\n" + + cd $TMP/tmp-$PRGNAM/Brotli-${INT_PYBROTLI} + + # Compile and install + export CFLAGS="$SLKCFLAGS" + python3 setup.py install --root=$PKG \ + 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log + + # Add documentation: + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} + cp -a LICENSE *.rst \ + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true + +} # End make_pybrotli + + +# +# Build pyzstd: +# +make_pyzstd() { + + local MOD="pyzstd" + echo -e "\n** $MOD **\n" + + cd $TMP/tmp-$PRGNAM/pyzstd-${INT_PYZSTD} + + # Compile and install + export CFLAGS="$SLKCFLAGS" + python3 setup.py install --root=$PKG \ + 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log + + # Add documentation: + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} + cp -a LICENSE *.rst \ + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true + +} # End make_pyzstd + + +# +# Build pyppmd: +# +make_pyppmd() { + + local MOD="pyppmd" + echo -e "\n** $MOD **\n" + + cd $TMP/tmp-$PRGNAM/pyppmd-${INT_PYPPMD} + + # Compile and install + export CFLAGS="$SLKCFLAGS" + python3 setup.py install --root=$PKG \ + 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log + + # Add documentation: + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} + cp -a LICENSE *.rst \ + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true + +} # End make_pyppmd + + +# # Build py7zr: # make_py7zr() { @@ -1367,9 +1647,9 @@ make_py7zr() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE *.rst \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_py7zr @@ -1389,13 +1669,13 @@ make_optipng() { make -C src 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log mkdir -p $PKG/usr/bin - install -v -m0755 src/optipng/optipng $PKG/usr/bin/optipng-calibre \ + install -v -m0755 src/optipng/optipng $PKG/usr/bin/optipng-$PRGNAM \ 2>&1 | tee -a $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a AUTHORS.txt LICENSE.txt README.tx* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_optipng @@ -1421,14 +1701,14 @@ make_unrarsrc() { 2>&1 | tee -a $OUTPUT/make-${PRGNAM}_${MOD}.log # Manually install binaries: - install -D -m 755 unrar $PKG/usr/lib${LIBDIRSUFFIX}/calibre/bin/unrar - install -D -m 755 ../libunrar/libunrar.so $PKG/usr/lib${LIBDIRSUFFIX}/calibre/lib/libunrar.so - install -D -m 644 dll.hpp $PKG/usr/lib${LIBDIRSUFFIX}/calibre/include/unrar/dll.hpp + install -D -m 755 unrar $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/bin/unrar + install -D -m 755 ../libunrar/libunrar.so $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib/libunrar.so + install -D -m 644 dll.hpp $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/include/unrar/dll.hpp # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a acknow.txt license.txt readme.txt \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_unrarsrc @@ -1449,7 +1729,7 @@ make_hunspell() { CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ ./configure \ - --prefix=/usr/lib${LIBDIRSUFFIX}/calibre \ + --prefix=/usr/lib${LIBDIRSUFFIX}/$PRGNAM \ --disable-static \ --with-readline \ --build=$TARGET \ @@ -1462,9 +1742,9 @@ make_hunspell() { 2>&1 | tee $OUTPUT/install-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a ABOUT-NLS AUTHORS* COPYING* ChangeLog* NEWS README* THANKS \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_hunspell @@ -1480,9 +1760,9 @@ make_hyphen() { cd $TMP/tmp-$PRGNAM/hyphen-${INT_HYPHEN} LDFLAGS="" \ - LD_LIBRARY_PATH="/usr/lib${LIBDIRSUFFIX}/calibre/lib" \ + LD_LIBRARY_PATH="/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib" \ ./configure \ - --prefix=/usr/lib${LIBDIRSUFFIX}/calibre \ + --prefix=/usr/lib${LIBDIRSUFFIX}/$PRGNAM \ --enable-shared=yes \ --enable-static=no \ --build=$TARGET \ @@ -1493,9 +1773,9 @@ make_hyphen() { make install DESTDIR=$PKG 2>&1 | tee -a $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a AUTHORS COPYIN* ChangeLog INSTALL NEWS READM* THANKS TODO \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_hyphen @@ -1516,9 +1796,9 @@ make_regex() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a docs/Features.html docs/Features.rst \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_regex @@ -1539,9 +1819,9 @@ make_msgpack() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a COPYING* README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_msgpack @@ -1562,9 +1842,9 @@ make_six() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a CHANGES LICENSE* README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_six @@ -1585,9 +1865,9 @@ make_webenc() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_webenc @@ -1608,9 +1888,9 @@ make_html5lib() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE* README* *.rst requirements.txt \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_html5lib @@ -1631,9 +1911,9 @@ make_html5parser() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE* README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_html5parser @@ -1649,14 +1929,14 @@ make_unrardll() { cd $TMP/tmp-$PRGNAM/unrardll-${INT_UNRARDLL} # Compile and install - export CFLAGS="$SLKCFLAGS -I/usr/lib${LIBDIRSUFFIX}/calibre/include" + export CFLAGS="$SLKCFLAGS -I/usr/lib${LIBDIRSUFFIX}/$PRGNAM/include" python3 setup.py install --root=$PKG --optimize=1 \ 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE* README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_unrardll @@ -1674,9 +1954,9 @@ make_feedparser() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE* NEWS README* \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_feedparser @@ -1696,9 +1976,9 @@ make_sgmllib3k() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a LICENSE* README \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_sgmllib3k @@ -1716,9 +1996,9 @@ make_Markdown() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a *.md \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_Markdown @@ -1735,9 +2015,9 @@ make_beautifulsoup() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a *.txt LICENSE README.md \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_beautifulsoup @@ -1756,9 +2036,9 @@ make_soupsieve() { 2>&1 | tee -a $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a *.md \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_soupsieve @@ -1775,9 +2055,9 @@ make_html2text() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a *.rst COPYING README.md \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_html2text @@ -1794,30 +2074,40 @@ make_chardet() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a *.rst LICENSE \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_chardet -make_cchardet() { +make_uchardet() { - local MOD="cchardet" + local MOD="uchardet" echo -e "\n** $MOD **\n" - cd $TMP/tmp-$PRGNAM/cchardet-${INT_CCHARDET} + cd $TMP/tmp-$PRGNAM/uchardet-${INT_UCHARDET} # Compile and install: - python3 setup.py install --root=$PKG \ - 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log + mkdir -p build + cd build + cmake .. \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_INSTALL_PREFIX=/usr/lib${LIBDIRSUFFIX}/$PRGNAM \ + -DCMAKE_INSTALL_LIBDIR=lib \ + 2>&1 | tee $OUTPUT/configure-${PRGNAM}_${MOD}.log + make $NUMJOBS 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log + make DESTDIR=$PKG install 2>&1 | tee $OUTPUT/install-${PRGNAM}_${MOD}.log + cd - 1>/dev/null + # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a COPYING *.rst LICENSE \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true -} # End make_cchardet +} # End make_uchardet make_pychm() { @@ -1832,9 +2122,9 @@ make_pychm() { 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a COPYING LICENSE NEWS README \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_pychm @@ -1852,17 +2142,17 @@ make_stemmer() { # Compile and install: make 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}.log - install -D -m0755 -t $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ stemwords - install -D -m0644 -t $PKG/usr/lib${LIBDIRSUFFIX}/calibre/include include/libstemmer.h - install -D -t $PKG/usr/lib${LIBDIRSUFFIX}/calibre/lib libstemmer.a - install -D -t $PKG/usr/lib${LIBDIRSUFFIX}/calibre/lib libstemmer.so.0.0.0 - ln -s libstemmer.so.0.0.0 $PKG/usr/lib${LIBDIRSUFFIX}/calibre/lib/libstemmer.so.0 - ln -s libstemmer.so.0 $PKG/usr/lib${LIBDIRSUFFIX}/calibre/lib/libstemmer.so + install -D -m0755 -t $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ stemwords + install -D -m0644 -t $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/include include/libstemmer.h + install -D -t $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib libstemmer.a + install -D -t $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib libstemmer.so.0.0.0 + ln -s libstemmer.so.0.0.0 $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib/libstemmer.so.0 + ln -s libstemmer.so.0 $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib/libstemmer.so # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a AUTHORS COPYING* NEWS *.rst \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_stemmer @@ -1886,7 +2176,7 @@ make_podofo() { -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ -DFREETYPE_INCLUDE_DIR=/usr/include/freetype2 \ - -DCMAKE_INSTALL_PREFIX=/usr/lib${LIBDIRSUFFIX}/calibre \ + -DCMAKE_INSTALL_PREFIX=/usr/lib${LIBDIRSUFFIX}/$PRGNAM \ -DPODOFO_BUILD_STATIC:BOOL=0 \ -DPODOFO_BUILD_SHARED:BOOL=1 \ -DPODOFO_USE_VISIBILITY:BOOL=1 \ @@ -1898,10 +2188,10 @@ make_podofo() { cd - 1>/dev/null # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a AUTHORS ChangeLog CODING* CONTRIBUTIONS* COPYING* \ FAQ* INSTALL README* TODO \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_podofo @@ -1917,12 +2207,12 @@ make_speechdispatcher() { cd $TMP/tmp-$PRGNAM/speech-dispatcher-${INT_SPEECHD} LDFLAGS="" \ - LD_LIBRARY_PATH="/usr/lib${LIBDIRSUFFIX}/calibre/lib" \ + LD_LIBRARY_PATH="/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib" \ ./configure \ - --prefix=/usr/lib${LIBDIRSUFFIX}/calibre \ - --libexecdir=/usr/lib${LIBDIRSUFFIX}/calibre/lib \ - --sysconfdir=/usr/lib${LIBDIRSUFFIX}/calibre/etc \ - --mandir=/usr/lib${LIBDIRSUFFIX}/calibre/man \ + --prefix=/usr/lib${LIBDIRSUFFIX}/$PRGNAM \ + --libexecdir=/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib \ + --sysconfdir=/usr/lib${LIBDIRSUFFIX}/$PRGNAM/etc \ + --mandir=/usr/lib${LIBDIRSUFFIX}/$PRGNAM/man \ --enable-shared=yes \ --enable-static=no \ --with-ibmtts=no --with-kali=no --with-baratinoo=no --with-voxin=no \ @@ -1937,14 +2227,14 @@ make_speechdispatcher() { make -j1 -i 2>&1 | tee $OUTPUT/make-${PRGNAM}_${MOD}_spd-conf.log make install DESTDIR=$PKG 2>&1 | tee $OUTPUT/install-${PRGNAM}_${MOD}.log - rm -f $PKG/usr/lib${LIBDIRSUFFIX}/calibre/etc/speech-dispatcher/modules/cicero.conf - rm -f $PKG/usr/lib${LIBDIRSUFFIX}/calibre/etc/speech-dispatcher/modules/flite.conf - rm -f $PKG/usr/lib${LIBDIRSUFFIX}/calibre/lib/speech-dispatcher/speech-dispatcher-modules/sd_cicero + rm -f $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/etc/speech-dispatcher/modules/cicero.conf + rm -f $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/etc/speech-dispatcher/modules/flite.conf + rm -f $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib/speech-dispatcher/speech-dispatcher-modules/sd_cicero # Add documentation: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} cp -a AUTHORS COPYIN* ChangeLog INSTALL NEWS READM* THANKS TODO \ - $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/${MOD} || true + $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/${MOD} || true } # End make_speechdispatcher @@ -1985,31 +2275,33 @@ make_calibre () { PYTHONROOT=$( python3 -c "from distutils.sysconfig import get_python_lib; print (get_python_lib(prefix='/'))" ) PYTHONPREF="${PYTHONLIB%$PYTHONROOT}" - # Massage the install script to actually install to that python libdir: - sed -e "/s.get_python_lib(prefix=/s,(prefix=.*),(prefix='$PKG$PYTHONPREF')," \ + ## Massage the install script to actually install to that python libdir: + #sed -i setup/install.py \ + # -e "s,'lib','lib${LIBDIRSUFFIX}',g" \ + # -e "/s.get_python_lib(prefix=/s,(prefix=.*),(prefix='$PKG$PYTHONPREF')," + # Massage the install script: + sed -i setup/install.py \ -e "s,'lib','lib${LIBDIRSUFFIX}',g" \ - -i setup/install.py + -e "/^ *self./s,'calibre','$PRGNAM'," # Cut out the DOS crap: sed -i -e 's/\r//' src/calibre/web/feeds/recipes/* - export HUNSPELL_INC_DIR="/usr/lib${LIBDIRSUFFIX}/calibre/include/hunspell" \ - export HUNSPELL_LIB_DIR="/usr/lib${LIBDIRSUFFIX}/calibre/lib" \ - export PODOFO_INC_DIR="/usr/lib${LIBDIRSUFFIX}/calibre/include/podofo" \ - export PODOFO_LIB_DIR="/usr/lib${LIBDIRSUFFIX}/calibre/lib" \ + export HUNSPELL_INC_DIR="/usr/lib${LIBDIRSUFFIX}/$PRGNAM/include/hunspell" + export HUNSPELL_LIB_DIR="/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib" + export PODOFO_INC_DIR="/usr/lib${LIBDIRSUFFIX}/$PRGNAM/include/podofo" + export PODOFO_LIB_DIR="/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib" + export FT_LIB_DIR="/usr/lib${LIBDIRSUFFIX}" + + export LDFLAGS="$LDFLAGS $SLKLDFLAGS -lfontconfig" + export CFLAGS="$CFLAGS $SLKCFLAGS" - OVERRIDE_LDFLAGS="$LDFLAGS $SLKLDFLAGS" \ - OVERRIDE_CFLAGS="$CFLAGS $SLKCFLAGS" \ LANG='en_US.UTF-8' \ python3 setup.py build \ 2>&1 | tee $OUTPUT/make-${PRGNAM}.log - OVERRIDE_LDFLAGS="$LDFLAGS $SLKLDFLAGS" \ - OVERRIDE_CFLAGS="$CFLAGS $SLKCFLAGS" \ LANG='en_US.UTF-8' \ python3 setup.py gui \ 2>&1 | tee $OUTPUT/make-${PRGNAM}.log - OVERRIDE_LDFLAGS="$LDFLAGS $SLKLDFLAGS" \ - OVERRIDE_CFLAGS="$CFLAGS $SLKCFLAGS" \ LANG='en_US.UTF-8' \ python3 setup.py rapydscript \ 2>&1 | tee $OUTPUT/make-${PRGNAM}.log @@ -2041,12 +2333,12 @@ make_calibre () { rm -f $PKG/usr/bin/calibre-uninstall # We don't need this either at runtime: - rm -rf $PKG/usr/share/calibre/rapydscript/ + rm -rf $PKG/usr/share/$PRGNAM/rapydscript/ # Create symlinks to system Libration fonts: - if [ -d $PKG/usr/share/calibre/fonts/liberation ]; then + if [ -d $PKG/usr/share/$PRGNAM/fonts/liberation ]; then echo "** Replacing Liberation fonts with symlinks..." - ( cd $PKG/usr/share/calibre/fonts/liberation/ + ( cd $PKG/usr/share/$PRGNAM/fonts/liberation/ for FONT in *.ttf *.otf ; do if [ -f /usr/share/fonts/TTF/$FONT ]; then rm -f $FONT @@ -2056,8 +2348,8 @@ make_calibre () { ) else echo "** Adding Liberation fonts as symlinks..." - mkdir -p $PKG/usr/share/calibre/fonts/liberation - ( cd $PKG/usr/share/calibre/fonts/liberation + mkdir -p $PKG/usr/share/$PRGNAM/fonts/liberation + ( cd $PKG/usr/share/$PRGNAM/fonts/liberation for FONT in /usr/share/fonts/TTF/Liberation*.ttf ; do ln -sf $FONT done @@ -2104,47 +2396,47 @@ if [ ! -f $SRCDIR/${PRGNAM}_pythondeps-${SLACKVER}-${ARCH}.tar.bz2 ]; then # After each part is built we will sync to here because in the end, calibre # will wipe the origin and we will have to sync it all back: - mkdir -p /usr/lib${LIBDIRSUFFIX}/calibre + mkdir -p /usr/lib${LIBDIRSUFFIX}/$PRGNAM make_hunspell - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_optipng - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_podofo - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_hyphen - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_unrarsrc - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ fi # End - not part of Slackware # Compilation of the optional software: -if [ "$BUILD_PYTHON" = "YES" -o "$BUILD_MTP" = "YES" -o "$BUILD_MAGICK" = "YES" ]; then +if [ "$BUILD_PYTHON" = "YES" -o "$BUILD_MTP" = "YES" -o "$BUILD_QT" = "YES" -o "$BUILD_MAGICK" = "YES" ]; then if [ -f $SRCDIR/${PRGNAM}_pythondeps-${SLACKVER}-${ARCH}.tar.bz2 ]; then # We unwrap the tarball of compiled python internal libraries instead of # having to build them - this saves a _lot_ of compile time: - mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/calibre - ( cd $PKG/usr/lib${LIBDIRSUFFIX}/calibre + mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM + ( cd $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM echo "** Extracting dependencies tarball... **" tar -jxf $SRCDIR/${PRGNAM}_pythondeps-${SLACKVER}-${ARCH}.tar.bz2 # We also need a copy in the filesystem root! - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre /usr/lib${LIBDIRSUFFIX}/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM /usr/lib${LIBDIRSUFFIX}/ ) fi # Ensure that our non-standard python3 is found and used: echo "** Configuring build environment for preferring internal libraries **" - export PATH="/usr/lib${LIBDIRSUFFIX}/calibre:/usr/lib${LIBDIRSUFFIX}/calibre/bin:$PATH" - export PKG_CONFIG_PATH="/usr/lib${LIBDIRSUFFIX}/calibre/lib/pkgconfig:$PKG_CONFIG_PATH" - export LDFLAGS="-Wl,-rpath /usr/lib${LIBDIRSUFFIX}/calibre/lib -L/usr/lib${LIBDIRSUFFIX}/calibre/lib" + export PATH="/usr/lib${LIBDIRSUFFIX}/$PRGNAM:/usr/lib${LIBDIRSUFFIX}/$PRGNAM/bin:$PATH" + export PKG_CONFIG_PATH="/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib/pkgconfig:$PKG_CONFIG_PATH" + export LDFLAGS="-Wl,-rpath /usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib -L/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib" # In order to prevent a gcc error if we have to compile libmtp: - mkdir -p /usr/lib${LIBDIRSUFFIX}/calibre/lib + mkdir -p /usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib fi @@ -2157,10 +2449,10 @@ if [ "$BUILD_MTP" = "YES" ]; then # After each part is built we will sync to here because in the end, calibre # will wipe the origin and we will have to sync it all back: - mkdir -p /usr/lib${LIBDIRSUFFIX}/calibre + mkdir -p /usr/lib${LIBDIRSUFFIX}/$PRGNAM make_mtp - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ fi fi @@ -2174,10 +2466,10 @@ if [ "$BUILD_MAGICK" = "YES" ]; then # After each part is built we will sync to here because in the end, calibre # will wipe the origin and we will have to sync it all back: - mkdir -p /usr/lib${LIBDIRSUFFIX}/calibre + mkdir -p /usr/lib${LIBDIRSUFFIX}/$PRGNAM make_magick - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ fi fi @@ -2189,15 +2481,15 @@ if [ ! -f $SRCDIR/${PRGNAM}_pythondeps-${SLACKVER}-${ARCH}.tar.bz2 ]; then # After each part is built we will sync to here because in the end, calibre # will wipe the origin and we will have to sync it all back: - mkdir -p /usr/lib${LIBDIRSUFFIX}/calibre + mkdir -p /usr/lib${LIBDIRSUFFIX}/$PRGNAM make_python - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ fi -SLK_PYTHON_INCLUDES="-I/usr/lib${LIBDIRSUFFIX}/calibre/include/python${REQUIRED_PYTHON}" -SLK_PYTHON_LIBS="-L/usr/lib${LIBDIRSUFFIX}/calibre/lib -lpython${REQUIRED_PYTHON}" -export PYTHON="/usr/lib${LIBDIRSUFFIX}/calibre/python3" +SLK_PYTHON_INCLUDES="-I/usr/lib${LIBDIRSUFFIX}/$PRGNAM/include/python${REQUIRED_PYTHON}" +SLK_PYTHON_LIBS="-L/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib -lpython${REQUIRED_PYTHON}" +export PYTHON="/usr/lib${LIBDIRSUFFIX}/$PRGNAM/python3" # The python modules need to be compiled into the package: @@ -2207,156 +2499,177 @@ if [ ! -f $SRCDIR/${PRGNAM}_pythondeps-${SLACKVER}-${ARCH}.tar.bz2 ]; then # After each part is built we will sync to here because in the end, calibre # will wipe the origin and we will have to sync it all back: - mkdir -p /usr/lib${LIBDIRSUFFIX}/calibre - mkdir -p /usr/lib${LIBDIRSUFFIX}/calibre/{bin,lib} + mkdir -p /usr/lib${LIBDIRSUFFIX}/$PRGNAM + mkdir -p /usr/lib${LIBDIRSUFFIX}/$PRGNAM/{bin,lib} ## Ensure that all our binaries and libraries are found and used: - #export PATH="/usr/lib${LIBDIRSUFFIX}/calibre:/usr/lib${LIBDIRSUFFIX}/calibre/bin:$PATH" - #export PKG_CONFIG_PATH="/usr/lib${LIBDIRSUFFIX}/calibre/lib/pkgconfig:$PKG_CONFIG_PATH" - #export LDFLAGS="-Wl,-rpath /usr/lib${LIBDIRSUFFIX}/calibre/lib -L/usr/lib${LIBDIRSUFFIX}/calibre/lib" + #export PATH="/usr/lib${LIBDIRSUFFIX}/$PRGNAM:/usr/lib${LIBDIRSUFFIX}/$PRGNAM/bin:$PATH" + #export PKG_CONFIG_PATH="/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib/pkgconfig:$PKG_CONFIG_PATH" + #export LDFLAGS="-Wl,-rpath /usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib -L/usr/lib${LIBDIRSUFFIX}/$PRGNAM/lib" make_setuptools - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_pyqtbuilder - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_pip - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_stemmer - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_unrardll - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_pillow - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_apsw || exit 1 - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_beautifulsoup - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_soupsieve - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_dnspython - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_cssparser - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_dateutil - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_lxml - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_mechanize - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_pycryptodome - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_netifaces - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_ifaddr - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_jeepney - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_psutil - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_zeroconf - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_texttable - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ - - make_py7zr - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ - - make_pygments - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ - make_pyparsing - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + make_multivolumefile + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ - make_packaging - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + make_pybrotli + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ - make_toml - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + make_pyzstd + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ - make_sip - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + make_pyppmd + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ - make_pyqt5sip - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + make_py7zr + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ - make_pyqt5 - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + make_pygments + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ - make_pyqtwebengine - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + make_pyparsing + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ - make_regex - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + make_ply + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ - make_msgpack - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + make_packaging + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ - make_six - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + make_toml + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_webenc - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_html5lib - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_html5parser - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_feedparser - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_sgmllib3k - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_Markdown - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_html2text - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ + + make_regex + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ + + make_six + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ + + make_msgpack + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_chardet - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ + + make_uchardet + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ + + if [ "$BUILD_QT" = "YES" ]; then + # No sufficiently new Qt was found so we need to supply it ourself. + make_qt6 + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ + fi + + make_sip + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ - make_cchardet - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + make_pyqt6sip + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ + + make_pyqt6 + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ + + make_pyqtwebengine + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_pychm - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ make_speechdispatcher - rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ /usr/lib${LIBDIRSUFFIX}/calibre/ + rsync -a $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ fi -if [ "$BUILD_PYTHON" = "YES" -o "$BUILD_MTP" = "YES" ]; then +if [ "$BUILD_PYTHON" = "YES" -o "$BUILD_MTP" = "YES" -o "$BUILD_QT" = "YES" ]; then # At this point we can wrap the compiled python etc. internal libraries # into a tarball which we can re-use in a future build (so that we do not # have to recompile them every time). # If you want to make use of this, then just copy the resulting tarball # into the same directory as this SlackBuild script: if [ ! -f $SRCDIR/${PRGNAM}_pythondeps-${SLACKVER}-${ARCH}.tar.bz2 ]; then - ( cd $PKG/usr/lib${LIBDIRSUFFIX}/calibre + ( cd $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM echo "**" echo "** Creating dependencies tarball $OUTPUT/${PRGNAM}_pythondeps-${SLACKVER}-${ARCH}.tar.bz2" echo "** Move this file to $SRCDIR for future compilation speedups." @@ -2367,44 +2680,43 @@ if [ "$BUILD_PYTHON" = "YES" -o "$BUILD_MTP" = "YES" ]; then fi # We need to point calibre's compilation at our custom headers: -export CFLAGS="-I/usr/lib${LIBDIRSUFFIX}/calibre/include" +export CFLAGS="-I/usr/lib${LIBDIRSUFFIX}/$PRGNAM/include" # The main course - compile calibre: make_calibre # Compiling calibre will have wiped all previously compiled python stuff, # so we need to put it back into the package, and then it can go: -rsync -a /usr/lib${LIBDIRSUFFIX}/calibre/ $PKG/usr/lib${LIBDIRSUFFIX}/calibre/ +rsync -a /usr/lib${LIBDIRSUFFIX}/$PRGNAM/ $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ # Wait with with the removal until after byte-compiling: -#rm -rf /usr/lib${LIBDIRSUFFIX}/calibre - -##!/bin/sh -#path=`readlink -e $0` -#base=`dirname $path` -#export PATH=$base/bin:$PATH -#export LD_LIBRARY_PATH=$base/lib:$LD_LIBRARY_PATH -#$base/bin/calibre "$@" +#rm -rf /usr/lib${LIBDIRSUFFIX}/$PRGNAM # We need to tell calibre to use the internal python: for FILE in $PKG/usr/bin/* ; do if ! file $FILE | grep -q ELF ; then sed -i \ - -e "s,^#!/usr/bin/env .*$,#!/usr/lib${LIBDIRSUFFIX}/calibre/python3," \ + -e "s,^#!/usr/bin/env .*$,#!/usr/lib${LIBDIRSUFFIX}/$PRGNAM/python3," \ $FILE fi done +# The calibre init script is misplaced: +mv $PKG/usr/lib/python3.10/site-packages/init_calibre.py \ + $PKG/usr/lib${LIBDIRSUFFIX}/calibre/lib/python3.10/site-packages/ +# Cleanup empty directories: +(cd $PKG/usr; rmdir lib/python3.10/site-packages && rmdir lib/python3.10 && rmdir lib || true) + # This is not needed in the package: -rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/calibre/{lib/pkgconfig,lib/python*/test,man,usr/man} +rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/{lib/pkgconfig,lib/python*/test,man,usr/man} # Compiling bytecode makes Calibre startup much faster: set +e -/usr/lib${LIBDIRSUFFIX}/calibre/python3 -m compileall -d '/' ${PKG}/usr/lib${LIBDIRSUFFIX}/calibre/ || true -/usr/lib${LIBDIRSUFFIX}/calibre/python3 -OO -m compileall -d '/' ${PKG}/usr/lib${LIBDIRSUFFIX}/calibre/ || true +/usr/lib${LIBDIRSUFFIX}/$PRGNAM/python3 -m compileall -d '/' ${PKG}/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ || true +/usr/lib${LIBDIRSUFFIX}/$PRGNAM/python3 -OO -m compileall -d '/' ${PKG}/usr/lib${LIBDIRSUFFIX}/$PRGNAM/ || true set -e # Now we can remove these from the filesystem: -rm -rf /usr/lib${LIBDIRSUFFIX}/calibre +rm -rf /usr/lib${LIBDIRSUFFIX}/$PRGNAM # Create a doinst.sh: mkdir -p $PKG/install @@ -2427,8 +2739,8 @@ mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION # First, the calibre documentation files: cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION || true # Add documentation (mainly licenses) of the internal python deps: -mv $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc/internaldeps/* $PKG/usr/doc/$PRGNAM-$VERSION/ || true -rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/calibre/doc +mv $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc/internaldeps/* $PKG/usr/doc/$PRGNAM-$VERSION/ || true +rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/doc # Add all the patches we used to build this package: cp -a $PATCHDIR $PKG/usr/doc/$PRGNAM-$VERSION # And finally, add this SlackBuild script: @@ -2451,9 +2763,9 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ # Add a package description: mkdir -p $PKG/install -cat $SRCDIR/slack-desc > $PKG/install/slack-desc +cat $SRCDIR/slack-desc.${PRGNAM} > $PKG/install/slack-desc ## Add the external dependencies : -#cat $SRCDIR/slack-required > $PKG/install/slack-required +#cat $SRCDIR/slack-required.${PRGNAM} > $PKG/install/slack-required # Build the package: cd $PKG |