summaryrefslogtreecommitdiff
path: root/net-im/spectrum2
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-02-28 22:05:06 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-02-28 22:05:06 +0000
commit5df0c8ba4bb09f65c6cfb7d67dead00d6b2a1bf9 (patch)
treead139c5164214ddcb3471af11b3bbba70e031e24 /net-im/spectrum2
parent158e7d0067767d034ef3a86a07afbf5bb9bf579f (diff)
gentoo auto-resync : 28:02:2023 - 22:05:06
Diffstat (limited to 'net-im/spectrum2')
-rw-r--r--net-im/spectrum2/Manifest2
-rw-r--r--net-im/spectrum2/files/spectrum2-2.1.3-log4cxx-1.0.0.patch63
-rw-r--r--net-im/spectrum2/spectrum2-2.1.3-r2.ebuild111
3 files changed, 176 insertions, 0 deletions
diff --git a/net-im/spectrum2/Manifest b/net-im/spectrum2/Manifest
index a5bac03d0f75..c46659b9a010 100644
--- a/net-im/spectrum2/Manifest
+++ b/net-im/spectrum2/Manifest
@@ -1,6 +1,8 @@
+AUX spectrum2-2.1.3-log4cxx-1.0.0.patch 2375 BLAKE2B e2ef1dafeb4d79a4d8cbc5f545e119dfc6d10b48c26e5e552a7aab911ea2d45aab95edf12ef761bea35ae1a3ceaabe6e5682bf5cd8a1d5fa5bbd9a5f5834e98b SHA512 28891262ae6ef40f2fa04ed6a9ba9ec4b18bbaa88cd5745ab09800dd71cb52340ce40b45451cd709bc9230d29798d93dbc9d4cd0043b97afeee857f6cac52362
AUX spectrum2.initd 1332 BLAKE2B ee4a9f62ccb909bb824df485dc56c59fe935e77dcfc0354b94749a577b9121352bd56e5d0adbae161da1afc7c451d18b36689844429b46fe39b2e364ffd8c363 SHA512 d780066a00144f3ec20311b462fd29986a486af7ce5ae88e788113397d6cb6ab0800119a5d71077216ee1637ff49cd2307e9265545357b4de50bf907c80feb9c
AUX spectrum2.service 222 BLAKE2B 58227bb8d49dac2a43d41d9a1e16b9ad804fb540a1e37fc0ec58e23e7412c5a9e0a931fe41d37430be5b77d0bc33fc17870b885995185e29a7ccd2da73022dc8 SHA512 c50d83e6afadc798b90f4df5b2f473031dadb8e32dff0c1120dc2345a3fe37a86566d6d975d22d310e0dd6d2c602d674f6a17f4df2e730e71aaf484a30aa97c2
AUX spectrum2.tmpfiles-r1 44 BLAKE2B 262e14134a78bc5955fc8ec750ceec94b6fd99fbb65365e28c6dab6f80b0941197899bec6a99d2c5ae21ecaf750013c5c909791c86a609893a4b431597323a59 SHA512 151c93d490f58309fe25bc3ee13ec9987e024c3aec4e58fe399016307f8b78aa7721f3b86bc51373aee7cebe9ab75273f0c48c7c840562ecd2e69d2ce44eba53
DIST spectrum2-2.1.3.tar.gz 666005 BLAKE2B 8356b71506b5489780052eaf404a79f0f760fa3a8d35e80e30730c86b5e4acf21a1ac59fed46e472a1085dc29c6751f2c4e788ad60569bf15b48d198762f2a77 SHA512 b6bf39738998b56c8a90984446740c38547ffdaadaf280d3f4f29cb8a2e168898a7b010eff115394f473fd02c66f30ef383c4a542812d5abd03a87b064b446a8
EBUILD spectrum2-2.1.3-r1.ebuild 2454 BLAKE2B 180040ef2246f6072bb1b41321979f7763e5f80e889808ddd9a6abf219af54529074585b05b89609d2930997be8369dace4879c976bf6e3e284d8459763c4958 SHA512 3c7f7d2e47f4fbd79e19b83639d8aefdd79881adacce6cf79c9ca52a4f09dc9de404cf9d7a1ae56a623e84514db5ceffd42a0a56aeda0fe025fb997e76cad0cc
+EBUILD spectrum2-2.1.3-r2.ebuild 2436 BLAKE2B dbc65aba4fb573f9308ee1012c01c67bf4f4f9b6aff32ee0970668e5eba1f6f2f18c2509181ff1f850fdbc9f123e9440825f898efe2525af2e838e271f1dc807 SHA512 446a2c3e0451267887184f932dbe8c5e8f874db1057413743e0da5932cf8870af4be3c5e1815be8036ad4a947e68d9ba49c9b98ca35988434426b638fcde33dc
MISC metadata.xml 1114 BLAKE2B 35d457612fa10fe7e6e2007734c54e491b581e86e0376416b3e2177d6c22b478c7b2bb98cb7bf4d7c80d3ab36f2674c18642f2725cc5c8e230df174bf80d1776 SHA512 13de6689c9838edaccc98b038a86d64dd4bc9639c41b383f8cd0d7e081f6a6bd23c597901165e39867dbed6d957a71f71a9011f6c73050d098ee984fb59f994e
diff --git a/net-im/spectrum2/files/spectrum2-2.1.3-log4cxx-1.0.0.patch b/net-im/spectrum2/files/spectrum2-2.1.3-log4cxx-1.0.0.patch
new file mode 100644
index 000000000000..852f4ad78027
--- /dev/null
+++ b/net-im/spectrum2/files/spectrum2-2.1.3-log4cxx-1.0.0.patch
@@ -0,0 +1,63 @@
+Description: (newer) Debian log4cxx needs C++17 and used smart pointers.
+ This patch just enables C++17 for the build and using smart pointers
+ where needed.
+Author: Tobias Frost <tobi@debian.org>
+Forwarded: not yet. log4cxx 0.14 will come with some preprocessor macros that will enable properly gating the new code.
+Last-Update: 2022-11-21 <YYYY-MM-DD, last update of the meta-information, optional>
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -2,7 +2,7 @@
+
+ project(libtransport)
+
+-set(CMAKE_CXX_STANDARD 11)
++set(CMAKE_CXX_STANDARD 17)
+ if(WIN32)
+ set(CMAKE_CXX_STANDARD 17)
+ endif(WIN32)
+--- a/plugin/cpp/Logging.cpp
++++ b/plugin/cpp/Logging.cpp
+@@ -26,6 +26,7 @@
+ #include <iterator>
+ #include <algorithm>
+
++#include <memory>
+
+ #include <boost/filesystem.hpp>
+ #include <boost/algorithm/string.hpp>
+@@ -100,15 +101,17 @@
+ #ifdef _MSC_VER
+ root->addAppender(new ConsoleAppender(new PatternLayout(L"%d %-5p %c: %m%n")));
+ #else
+- root->addAppender(new ConsoleAppender(new PatternLayout("%d %-5p %c: %m%n")));
++ auto patternlayout = std::make_shared<PatternLayout>("%d %-5p %c: %m%n");
++ auto consoleappender = std::make_shared<ConsoleAppender>(patternlayout);
++ root->addAppender(consoleappender);
+ #endif
+ }
+ else {
+ log4cxx::helpers::Properties p;
+
+- log4cxx::helpers::FileInputStream *istream = NULL;
++ log4cxx::helpers::InputStreamPtr istream;
+ try {
+- istream = new log4cxx::helpers::FileInputStream(CONFIG_STRING(config, key));
++ istream.reset(new log4cxx::helpers::FileInputStream(CONFIG_STRING(config, key)));
+ }
+ catch(log4cxx::helpers::IOException &ex) {
+ std::cerr << "Can't create FileInputStream logger instance: " << ex.what() << "\n";
+--- a/tests/libtransport/main.cpp
++++ b/tests/libtransport/main.cpp
+@@ -23,7 +23,9 @@
+ #ifdef WITH_LOG4CXX
+ LoggerPtr root = Logger::getRootLogger();
+ #ifndef _MSC_VER
+- root->addAppender(new FileAppender(new PatternLayout("%d %-5p %c: %m%n"), "libtransport_test.log", false));
++ auto patternlayout = std::make_shared<PatternLayout>("%d %-5p %c: %m%n");
++ auto fileappender = std::make_shared<FileAppender>(patternlayout, "libtransport_test.log", false);
++ root->addAppender(fileappender);
+ #else
+ root->addAppender(new FileAppender(new PatternLayout(L"%d %-5p %c: %m%n"), L"libtransport_test.log", false));
+ #endif
diff --git a/net-im/spectrum2/spectrum2-2.1.3-r2.ebuild b/net-im/spectrum2/spectrum2-2.1.3-r2.ebuild
new file mode 100644
index 000000000000..6913f31eba94
--- /dev/null
+++ b/net-im/spectrum2/spectrum2-2.1.3-r2.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake systemd tmpfiles
+
+DESCRIPTION="An open source instant messaging transport"
+HOMEPAGE="https://www.spectrum.im"
+SRC_URI="https://github.com/SpectrumIM/spectrum2/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="doc frotz irc mysql postgres purple sms +sqlite test twitter whatsapp xmpp"
+REQUIRED_USE="
+ || ( mysql postgres sqlite )
+ test? ( irc )
+"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ acct-group/spectrum
+ acct-user/spectrum
+ dev-libs/boost:=[nls]
+ dev-libs/expat
+ dev-libs/libev:=
+ >=dev-libs/log4cxx-1.0.0:=
+ dev-libs/jsoncpp:=
+ dev-libs/openssl:=
+ dev-libs/popt
+ dev-libs/protobuf:=
+ net-dns/libidn:=
+ >=net-im/swift-4.0.2-r2:=
+ net-misc/curl
+ sys-libs/zlib:=
+ frotz? ( !games-engines/frotz )
+ irc? ( net-im/libcommuni )
+ mysql? (
+ || (
+ dev-db/mariadb-connector-c
+ dev-db/mysql-connector-c
+ )
+ )
+ postgres? ( dev-libs/libpqxx:= )
+ purple? (
+ dev-libs/glib
+ net-im/pidgin:=
+ )
+ sms? ( app-mobilephone/smstools )
+ sqlite? ( dev-db/sqlite:3 )
+ twitter? ( net-misc/curl )
+ whatsapp? ( net-im/transwhat )"
+
+DEPEND="
+ ${RDEPEND}
+ doc? ( app-doc/doxygen )
+ test? ( dev-util/cppunit )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-2.1.3-log4cxx-1.0.0.patch" )
+
+src_prepare() {
+ # Respect users LDFLAGS
+ sed -i -e "s/-Wl,-export-dynamic/& ${LDFLAGS}/" spectrum/src/CMakeLists.txt || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DENABLE_DOCS="$(usex doc)"
+ -DENABLE_FROTZ="$(usex frotz)"
+ -DENABLE_IRC="$(usex irc)"
+ -DENABLE_MYSQL="$(usex mysql)"
+ -DENABLE_PQXX="$(usex postgres)"
+ -DENABLE_PURPLE="$(usex purple)"
+ $(usex irc '-DENABLE_QT4=OFF' '')
+ -DENABLE_SMSTOOLS3="$(usex sms)"
+ -DENABLE_SQLITE3="$(usex sqlite)"
+ -DENABLE_TESTS="$(usex test)"
+ -DENABLE_TWITTER="$(usex twitter)"
+ -DENABLE_XMPP="$(usex xmpp)"
+ -DLIB_INSTALL_DIR="$(get_libdir)"
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ cd "${BUILD_DIR}/tests/libtransport" || die
+ ./libtransport_test || die
+}
+
+src_install() {
+ cmake_src_install
+
+ diropts -o spectrum -g spectrum
+ keepdir /var/log/spectrum2 /var/lib/spectrum2
+ diropts
+
+ newinitd "${FILESDIR}"/spectrum2.initd spectrum2
+ systemd_newunit "${FILESDIR}"/spectrum2.service spectrum2.service
+ newtmpfiles "${FILESDIR}"/spectrum2.tmpfiles-r1 spectrum2.conf
+
+ einstalldocs
+}
+
+pkg_postinst() {
+ tmpfiles_process spectrum2.conf
+}