summaryrefslogtreecommitdiffstats
path: root/libraries/poco
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/poco')
-rw-r--r--libraries/poco/README19
-rw-r--r--libraries/poco/poco.SlackBuild46
-rw-r--r--libraries/poco/poco.info10
-rw-r--r--libraries/poco/poco_mariadb.patch12
-rw-r--r--libraries/poco/poco_x64.patch22
5 files changed, 60 insertions, 49 deletions
diff --git a/libraries/poco/README b/libraries/poco/README
index 452ba36447..43774a399b 100644
--- a/libraries/poco/README
+++ b/libraries/poco/README
@@ -1,6 +1,15 @@
-Modern, powerful open source C++ class libraries and
-frameworks for building network- and internet-based
-applications that run on desktop, server, mobile and
-embedded systems.
+Modern, powerful open source C++ class libraries and frameworks for
+building network- and internet-based applications that run on desktop,
+server, mobile and embedded systems.
-Optional dependencies: mysql-connector-c++, unixODBC
+PostgreSQL (on Sbo) and libiodbc (part of Slackware) or UnixODBC
+(on SBo) are optional dependencies that will be automatically picked
+up during configuration.
+
+By default, the build will use the internal libs for sqlite, zlib,
+pcre2, expat, etc. To use the Slackware versions:
+
+BUNDLE=no ./poco.SlackBuild
+
+This will disable any functionality not already included with or
+added to Slackware.
diff --git a/libraries/poco/poco.SlackBuild b/libraries/poco/poco.SlackBuild
index d215d2a60c..fa34c7a8c4 100644
--- a/libraries/poco/poco.SlackBuild
+++ b/libraries/poco/poco.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for poco
-# Copyright 2014-2019 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2022 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,12 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 29-DEC-2022: new maintainer, Edward W. Koenig (kingbeowulf)
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=poco
-VERSION=${VERSION:-1.9.4}
+VERSION=${VERSION:-1.13.3}
EDITION=all
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -47,6 +49,13 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
+# Optionally disable bundles libs in favor of Slackware's versions
+if [ ${BUNDLE:-no} = "no" ]; then
+ NOBUNDLE="-DPOCO_UNBUNDLED=ON"
+else
+ NOBUNDLE=""
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -71,7 +80,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION-$EDITION
-tar xvf $CWD/$PRGNAM-$VERSION-$EDITION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION-$EDITION.tar.bz2
cd $PRGNAM-$VERSION-$EDITION
chown -R root:root .
find -L . \
@@ -80,18 +89,21 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-if [ "$ARCH" = "x86_64" ]; then
- patch -p1 < $CWD/poco_x64.patch
-fi
-
-./configure \
- --prefix=/usr \
- --no-tests \
- --no-samples \
- --shared
-
-make
-make install DESTDIR=$PKG
+# Slackware ships with MariaDB not MySQL, patch from Arch Linux
+patch -p1 < $CWD/poco_mariadb.patch
+
+mkdir -p cmake-build
+cd cmake-build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ $NOBUNDLE \
+ -DCMAKE_BUILD_TYPE=Release ..
+
+ make
+ make install DESTDIR=$PKG
+cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -102,7 +114,7 @@ find $PKG -name perllocal.pod \
| xargs rm -f
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGELOG CONTRIBUTORS NEWS LICENSE VERSION README $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a CHANGELOG CONTRIBUTORS LICENSE MANIFEST VERSION README $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
rm -f $PKG/usr/lib*/*.la
diff --git a/libraries/poco/poco.info b/libraries/poco/poco.info
index f2dfe6910f..d756b55862 100644
--- a/libraries/poco/poco.info
+++ b/libraries/poco/poco.info
@@ -1,10 +1,10 @@
PRGNAM="poco"
-VERSION="1.9.4"
+VERSION="1.13.3"
HOMEPAGE="https://pocoproject.org"
-DOWNLOAD="https://pocoproject.org/releases/poco-1.9.4/poco-1.9.4-all.tar.gz"
-MD5SUM="80c614193e81262af27ea49944d02313"
+DOWNLOAD="https://pocoproject.org/releases/poco-1.13.3/poco-1.13.3-all.tar.bz2"
+MD5SUM="ec5ce614fff2ed1825bb776fa1292d4d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+MAINTAINER="Edward W. Koenig"
+EMAIL="kingbeowulf@linuxgalaxy.org"
diff --git a/libraries/poco/poco_mariadb.patch b/libraries/poco/poco_mariadb.patch
new file mode 100644
index 0000000000..c8a82ec79e
--- /dev/null
+++ b/libraries/poco/poco_mariadb.patch
@@ -0,0 +1,12 @@
+diff -uNr poco/Data/MySQL/CMakeLists.txt poco_changed/Data/MySQL/CMakeLists.txt
+--- poco/Data/MySQL/CMakeLists.txt 2021-06-28 12:16:01.000000000 +0200
++++ poco_changed/Data/MySQL/CMakeLists.txt 2021-10-14 14:53:52.605311071 +0200
+@@ -21,7 +21,7 @@
+ DEFINE_SYMBOL MySQL_EXPORTS
+ )
+
+-target_link_libraries(DataMySQL PUBLIC Poco::Data MySQL::client)
++target_link_libraries(DataMySQL PUBLIC Poco::Data mariadb)
+ target_include_directories(DataMySQL
+ PUBLIC
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
diff --git a/libraries/poco/poco_x64.patch b/libraries/poco/poco_x64.patch
deleted file mode 100644
index 40966da0b2..0000000000
--- a/libraries/poco/poco_x64.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- poco-1.7.3-all/Makefile.original 2016-05-21 10:30:38.468392077 +0100
-+++ poco-1.7.3-all/Makefile 2016-05-21 10:31:06.823679098 +0100
-@@ -95,7 +95,7 @@
-
- install: libexecs
- mkdir -p $(INSTALLDIR)/include/Poco
-- mkdir -p $(INSTALLDIR)/lib
-+ mkdir -p $(INSTALLDIR)/lib64
- mkdir -p $(INSTALLDIR)/bin
- for comp in $(filter-out $(foreach f,$(OMIT),$f%),$(COMPONENTS)) ; do \
- if [ -d "$(POCO_BASE)/$$comp/include" ] ; then \
-@@ -109,8 +109,8 @@
- find $(POCO_BUILD)/lib/$(OSNAME)/$(OSARCH) -name "cygPoco*" -type f -exec cp -f {} $(INSTALLDIR)/bin \;
- find $(POCO_BUILD)/lib/$(OSNAME)/$(OSARCH) -name "cygPoco*" -type l -exec cp -Rf {} $(INSTALLDIR)/bin \;
- endif
-- find $(POCO_BUILD)/lib/$(OSNAME)/$(OSARCH) -name "libPoco*" -type f -exec cp -f {} $(INSTALLDIR)/lib \;
-- find $(POCO_BUILD)/lib/$(OSNAME)/$(OSARCH) -name "libPoco*" -type l -exec cp -Rf {} $(INSTALLDIR)/lib \;
-+ find $(POCO_BUILD)/lib/$(OSNAME)/$(OSARCH) -name "libPoco*" -type f -exec cp -f {} $(INSTALLDIR)/lib64 \;
-+ find $(POCO_BUILD)/lib/$(OSNAME)/$(OSARCH) -name "libPoco*" -type l -exec cp -Rf {} $(INSTALLDIR)/lib64 \;
-
- libexecs = Foundation-libexec XML-libexec JSON-libexec Util-libexec Net-libexec Crypto-libexec NetSSL_OpenSSL-libexec Data-libexec Data/SQLite-libexec Data/ODBC-libexec Data/MySQL-libexec MongoDB-libexec Zip-libexec PageCompiler-libexec PageCompiler/File2Page-libexec
- tests = Foundation-tests XML-tests JSON-tests Util-tests Net-tests Crypto-tests NetSSL_OpenSSL-tests Data-tests Data/SQLite-tests Data/ODBC-tests Data/MySQL-tests MongoDB-tests Zip-tests