Date: Wednesday, October 3, 2018 @ 21:43:01 Author: anthraxx Revision: 389303
upgpkg: synergy 1.10.1-1 Added: synergy/trunk/enable-test-build.patch synergy/trunk/fix-qt5_11-compatibility.patch synergy/trunk/fix-test-build.patch synergy/trunk/use-system-libs.patch Modified: synergy/trunk/PKGBUILD Deleted: synergy/trunk/openssl11.patch synergy/trunk/system-gtest.patch --------------------------------+ PKGBUILD | 65 ++++++++++++----------- enable-test-build.patch | 20 +++++++ fix-qt5_11-compatibility.patch | 36 ++++++++++++ fix-test-build.patch | 77 +++++++++++++++++++++++++++ openssl11.patch | 33 ----------- system-gtest.patch | 110 --------------------------------------- use-system-libs.patch | 98 ++++++++++++++++++++++++++++++++++ 7 files changed, 266 insertions(+), 173 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2018-10-03 21:33:25 UTC (rev 389302) +++ PKGBUILD 2018-10-03 21:43:01 UTC (rev 389303) @@ -4,6 +4,7 @@ # Contributor: Stéphane Gaudreault <steph...@archlinux.org> # Contributor: Dale Blount <d...@archlinux.org> # Contributor: Michael Düll <m...@akurei.me> +# Contributor: Luca Corbatto <lucaatcorbatto.de> # I would just like to take a minute here and state that synergy is # some of the worst packaged software ever. They BUNDLE a fucking @@ -11,8 +12,8 @@ # installed version of that library. They change around paths every # update and just generally don't seem to care much. pkgname=synergy -pkgver=1.8.8 -pkgrel=3 +pkgver=1.10.1 +pkgrel=1 pkgdesc='Share a single mouse and keyboard between multiple computers' url='https://symless.com/synergy/' arch=('x86_64') @@ -21,13 +22,17 @@ makedepends=('libxt' 'cmake' 'qt5-base' 'gmock' 'gtest') optdepends=('qt5-base: gui support') source=(synergy-${pkgver}.tar.gz::https://github.com/symless/synergy-core/archive/v${pkgver}-stable.tar.gz - openssl11.patch - system-gtest.patch + use-system-libs.patch + fix-qt5_11-compatibility.patch + enable-test-build.patch + fix-test-build.patch synergys.socket synergys.service) -sha512sums=('dafb6c9d8d872dcf17bce6c28674fedd8cb26ed11cbf3fb6992fa5046eebb46af04eeee1861649dec0aa8d7fe3b426bdefb461df44912394ecfdfce9e92fb799' - 'ba93295d5638581ac0a82c293016563e2faf4228b6c920bfe1df86b254841a88baf55f220574e93af1c718d689a8f8f1ad494c2ca685f8ea01a506a1bc6e1642' - '4bef039f59b565d08079a8187df76f9773cfddeb81376ccc42f5570049389f114559721ed7b0464c4a4d1431ba72a736b11755573019583d0075d9da08c03ed2' +sha512sums=('33b298de3e7dacdd4d5c162840b8d0ddabd4127ed7cb04336f2d8dd1a8a9a69dc70c8959cb9086e56e65035cdacb7c743670479123711321283811eb3a823e6e' + '6ed5384ec46e991958f48051c66b87febfb457a748cea48909f87a088c804907f480f123620a0a5921e281ca9871e251de8b7dd5803ffe8566841f68f396c160' + 'b8347b803a7baaeeab75e55778314298fc69e15ccda154a8622b4697c3a3e7d6ba51cb156f06c6b289c41cb0892be7fed5ce49591531ed1ef18fa3a1ec8a7d6d' + '89b29994f238013393b90ad628d781ea6ea1d46c33819be561f031cc0790ef7f3860faaa2803e1459ed3c14affb749ea3bab6b15598c760424c8063195cb56a6' + '158d218faa8d8c33cbea935a9dcad4bcf79309eb485bfea107cd160f894d1090db6fea6e60827509b985ff9a7493020fc819e5e150bdac85f5547e755f3ad9ec' 'f9c124533dfd0bbbb1b5036b7f4b06f7f86f69165e88b9146ff17798377119eb9f1a4666f3b2ee9840bc436558d715cdbfe2fdfd7624348fae64871f785a1a62' '9663a11b915e10e60317e732a4d1191e8f8ff19176994c27dd20aa445daab7565bd624e5575c9c639d144293879fbe8376834a076723f778fd322ebd1c9f2029') @@ -34,32 +39,32 @@ prepare() { cd synergy-core-${pkgver}-stable mkdir build + # get rid of shitty bundled gtest and gmock - patch -p1 < "${srcdir}/system-gtest.patch" - patch -p1 < "${srcdir}/openssl11.patch" + patch -Np1 < "${srcdir}/use-system-libs.patch" + # fix the build with qt5.11 + # this is likely to be obsolete in future versions + # see: https://github.com/symless/synergy-core/pull/6359 + patch -Np1 < "${srcdir}/fix-qt5_11-compatibility.patch" + # enable building of test executables + patch -Np1 < "${srcdir}/enable-test-build.patch" + # fix building of test executables + patch -Np1 < "${srcdir}/fix-test-build.patch" + # remove tests that need working X + rm src/test/integtests/platform/XWindowsScreenTests.cpp \ + src/test/integtests/platform/XWindowsKeyStateTests.cpp } build() { - cd synergy-core-${pkgver}-stable - - msg2 "Building core..." - (cd build - cmake -DCMAKE_INSTALL_PREFIX=/usr .. - # unittests don't pass with optimization (segfault on nullptr) - sed 's|\-O2|\-O0|g' -i src/test/unittests/CMakeFiles/unittests.dir/{flags.make,link.txt} - make - ) - - msg2 "Building GUI..." - (cd src/gui - qmake - make - ) + cd synergy-core-${pkgver}-stable/build + cmake -DCMAKE_INSTALL_PREFIX=/usr .. + make } check() { - cd synergy-core-${pkgver}-stable + cd synergy-core-${pkgver}-stable/build ./bin/unittests + ./bin/integtests } package() { @@ -66,21 +71,21 @@ cd synergy-core-${pkgver}-stable # install binary - install -Dm 755 bin/{synergy,synergyc,synergyd,synergys,syntool,usynergy} -t "${pkgdir}/usr/bin" + install -Dm 755 build/bin/{synergy,synergyc,synergyd,synergys,syntool} -t "${pkgdir}/usr/bin" # install config install -Dm 644 doc/${pkgname}.conf* -t "${pkgdir}/etc" # install manfiles - install -Dm 644 "doc/${pkgname}c.man" "${pkgdir}/usr/share/man/man1/${pkgname}c.1" - install -Dm 644 "doc/${pkgname}s.man" "${pkgdir}/usr/share/man/man1/${pkgname}s.1" + install -Dm 644 doc/${pkgname}c.man "${pkgdir}/usr/share/man/man1/${pkgname}c.1" + install -Dm 644 doc/${pkgname}s.man "${pkgdir}/usr/share/man/man1/${pkgname}s.1" # install systemd service and socket install -Dm 644 "${srcdir}"/synergys.{service,socket} -t "${pkgdir}/usr/lib/systemd/user" # install desktop/icon stuff - install -Dm 644 "res/synergy.ico" -t "${pkgdir}/usr/share/icons" - install -Dm 644 "res/synergy.desktop" -t "${pkgdir}/usr/share/applications" + install -Dm 644 res/synergy.ico -t "${pkgdir}/usr/share/icons" + install -Dm 644 res/synergy.desktop -t "${pkgdir}/usr/share/applications" } # vim:set ts=2 sw=2 et: Added: enable-test-build.patch =================================================================== --- enable-test-build.patch (rev 0) +++ enable-test-build.patch 2018-10-03 21:43:01 UTC (rev 389303) @@ -0,0 +1,20 @@ +From 205c97288e43d9892ed88552862c1160f3a82fa8 Mon Sep 17 00:00:00 2001 +From: Luca Corbatto <l...@corbatto.de> +Date: Sun, 22 Jul 2018 16:26:05 +0200 +Subject: [PATCH 3/4] Adds tests + +--- + src/CMakeLists.txt | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index ab63a06..014f87b 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -22,3 +22,4 @@ add_subdirectory(cmd) + if (SYNERGY_BUILD_LEGACY_GUI) + add_subdirectory(gui) + endif (SYNERGY_BUILD_LEGACY_GUI) ++add_subdirectory(test) +-- +2.18.0 Added: fix-qt5_11-compatibility.patch =================================================================== --- fix-qt5_11-compatibility.patch (rev 0) +++ fix-qt5_11-compatibility.patch 2018-10-03 21:43:01 UTC (rev 389303) @@ -0,0 +1,36 @@ +From f5a22a4e514c02cdff2f6dd4ad20a7964ea67d0f Mon Sep 17 00:00:00 2001 +From: Luca Corbatto <l...@corbatto.de> +Date: Sun, 22 Jul 2018 16:03:39 +0200 +Subject: [PATCH 2/4] Fixes build on qt 5.1Fixes build on qt 5.11 + +--- + src/gui/src/ActionDialog.h | 5 +++-- + src/gui/src/ScreenSetupView.h | 6 +++--- + 2 files changed, 6 insertions(+), 5 deletions(-) + +diff --git a/src/gui/src/ActionDialog.h b/src/gui/src/ActionDialog.h +index 34e4e85..7cd5a1a 100644 +--- a/src/gui/src/ActionDialog.h ++++ b/src/gui/src/ActionDialog.h +@@ -21,6 +21,7 @@ + #define ACTIONDIALOG_H + + #include <QDialog> ++#include <QButtonGroup> + + #include "ui_ActionDialogBase.h" + +diff --git a/src/gui/src/ScreenSetupView.h b/src/gui/src/ScreenSetupView.h +index 38eae2a..1a41091 100644 +--- a/src/gui/src/ScreenSetupView.h ++++ b/src/gui/src/ScreenSetupView.h +@@ -22,6 +22,7 @@ + + #include <QTableView> + #include <QFlags> ++#include <QHeaderView> + + #include "Screen.h" + +-- +2.18.0 Added: fix-test-build.patch =================================================================== --- fix-test-build.patch (rev 0) +++ fix-test-build.patch 2018-10-03 21:43:01 UTC (rev 389303) @@ -0,0 +1,77 @@ +From eedc5ba0dbe901574a9031de1d3c43ef0e417c28 Mon Sep 17 00:00:00 2001 +From: Luca Corbatto <l...@corbatto.de> +Date: Sun, 22 Jul 2018 16:26:30 +0200 +Subject: [PATCH 4/4] Makes tests compilable + +--- + src/test/integtests/CMakeLists.txt | 2 +- + .../integtests/arch/ArchInternetTests.cpp | 37 ------------------- + src/test/unittests/CMakeLists.txt | 2 +- + 3 files changed, 2 insertions(+), 39 deletions(-) + delete mode 100644 src/test/integtests/arch/ArchInternetTests.cpp + +diff --git a/src/test/integtests/CMakeLists.txt b/src/test/integtests/CMakeLists.txt +index e71499a..24c3891 100644 +--- a/src/test/integtests/CMakeLists.txt ++++ b/src/test/integtests/CMakeLists.txt +@@ -68,4 +68,4 @@ endif() + + add_executable(integtests ${sources}) + target_link_libraries(integtests +- arch base client common io ipc mt net platform server synergy gtest gmock ${libs} ${OPENSSL_LIBS}) ++arch base client common io ipc mt net platform server shared gtest gmock ${libs} ${OPENSSL_LIBS}) +diff --git a/src/test/integtests/arch/ArchInternetTests.cpp b/src/test/integtests/arch/ArchInternetTests.cpp +deleted file mode 100644 +index 95823e9..0000000 +--- a/src/test/integtests/arch/ArchInternetTests.cpp ++++ /dev/null +@@ -1,37 +0,0 @@ +-/* +- * synergy -- mouse and keyboard sharing utility +- * Copyright (C) 2014-2016 Symless Ltd. +- * +- * This package is free software; you can redistribute it and/or +- * modify it under the terms of the GNU General Public License +- * found in the file LICENSE that should have accompanied this file. +- * +- * This package is distributed in the hope that it will be useful, +- * but WITHOUT ANY WARRANTY; without even the implied warranty of +- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- * GNU General Public License for more details. +- * +- * You should have received a copy of the GNU General Public License +- * along with this program. If not, see <http://www.gnu.org/licenses/>. +- */ +- +-#include "arch/Arch.h" +- +-#include "test/global/gtest.h" +- +-#define TEST_URL "https://symless.com/tests/?testString" +-//#define TEST_URL "http://localhost/synergy/tests/?testString" +- +-TEST(ArchInternetTests, get) +-{ +- ARCH_INTERNET internet; +- String result = internet.get(TEST_URL); +- ASSERT_EQ("Hello world!", result); +-} +- +-TEST(ArchInternetTests, urlEncode) +-{ +- ARCH_INTERNET internet; +- String result = internet.urlEncode("hello=+&world"); +- ASSERT_EQ("hello%3D%2B%26world", result); +-} +diff --git a/src/test/unittests/CMakeLists.txt b/src/test/unittests/CMakeLists.txt +index 9806be9..c6958c5 100644 +--- a/src/test/unittests/CMakeLists.txt ++++ b/src/test/unittests/CMakeLists.txt +@@ -68,4 +68,4 @@ endif() + + add_executable(unittests ${sources}) + target_link_libraries(unittests +- arch base client server common io net platform server synergy mt ipc gtest gmock shared ${libs} ${OPENSSL_LIBS}) ++arch base client server common io net platform server mt ipc gtest gmock shared ${libs} ${OPENSSL_LIBS}) +-- +2.18.0 Deleted: openssl11.patch =================================================================== --- openssl11.patch 2018-10-03 21:33:25 UTC (rev 389302) +++ openssl11.patch 2018-10-03 21:43:01 UTC (rev 389303) @@ -1,33 +0,0 @@ -From 9385083cfc27ecaadf1eaf1d014cd6907860072b Mon Sep 17 00:00:00 2001 -From: Joshua Honeycutt <joshua.honeyc...@gmail.com> -Date: Sun, 20 Nov 2016 17:49:30 -0600 -Subject: [PATCH] Adjust showSecureCipherInfo() to build with newer openssl - versions - ---- - src/lib/net/SecureSocket.cpp | 11 ++++++++--- - 1 file changed, 8 insertions(+), 3 deletions(-) - -diff --git a/src/lib/net/SecureSocket.cpp b/src/lib/net/SecureSocket.cpp -index 7076c76..1e35c21 100644 ---- a/src/lib/net/SecureSocket.cpp -+++ b/src/lib/net/SecureSocket.cpp -@@ -805,10 +805,15 @@ SecureSocket::showSecureCipherInfo() - showCipherStackDesc(sStack); - } - -- // m_ssl->m_ssl->session->ciphers is not forward compatable, In future release -- // of OpenSSL, it's not visible, need to use SSL_get_client_ciphers() instead -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ // m_ssl->m_ssl->session->ciphers is not forward compatable, -+ // In future release of OpenSSL, it's not visible, - STACK_OF(SSL_CIPHER) * cStack = m_ssl->m_ssl->session->ciphers; -- if (cStack == NULL) { -+#else -+ // Use SSL_get_client_ciphers() for newer versions -+ STACK_OF(SSL_CIPHER) * cStack = SSL_get_client_ciphers(m_ssl->m_ssl); -+#endif -+ if (cStack == NULL) { - LOG((CLOG_DEBUG1 "remote cipher list not available")); - } - else { Deleted: system-gtest.patch =================================================================== --- system-gtest.patch 2018-10-03 21:33:25 UTC (rev 389302) +++ system-gtest.patch 2018-10-03 21:43:01 UTC (rev 389303) @@ -1,110 +0,0 @@ -From e391e1286d80fa2e38c2440bc2266a0fd7bd37ca Mon Sep 17 00:00:00 2001 -From: anthraxx <leve...@leventepolyak.net> -Date: Thu, 29 Sep 2016 02:04:41 +0200 -Subject: [PATCH] using system gtest and gmock - ---- - src/lib/platform/CMakeLists.txt | 2 +- - src/lib/server/CMakeLists.txt | 2 +- - src/lib/synergy/CMakeLists.txt | 2 +- - src/test/CMakeLists.txt | 12 ++++++------ - src/test/integtests/CMakeLists.txt | 4 ++-- - src/test/unittests/CMakeLists.txt | 4 ++-- - 6 files changed, 13 insertions(+), 13 deletions(-) - -diff --git a/src/lib/platform/CMakeLists.txt b/src/lib/platform/CMakeLists.txt -index 6c272c2..09ddf26 100644 ---- a/src/lib/platform/CMakeLists.txt -+++ b/src/lib/platform/CMakeLists.txt -@@ -31,7 +31,7 @@ endif() - - include_directories( - ../ -- ../../../ext/gtest-1.6.0/include -+ /usr/include/gtest - ) - - if (UNIX) -diff --git a/src/lib/server/CMakeLists.txt b/src/lib/server/CMakeLists.txt -index 2c34af0..f7df650 100644 ---- a/src/lib/server/CMakeLists.txt -+++ b/src/lib/server/CMakeLists.txt -@@ -24,7 +24,7 @@ endif() - include_directories( - ../ - ../../../ext -- ../../../ext/gtest-1.6.0/include -+ /usr/include/gtest - ) - - if (UNIX) -diff --git a/src/lib/synergy/CMakeLists.txt b/src/lib/synergy/CMakeLists.txt -index 0972be8..619709f 100644 ---- a/src/lib/synergy/CMakeLists.txt -+++ b/src/lib/synergy/CMakeLists.txt -@@ -36,7 +36,7 @@ endif() - include_directories( - ../ - ../../../ext -- ../../../ext/gtest-1.6.0/include -+ /usr/include/gtest - ) - - if (UNIX) -diff --git a/src/test/CMakeLists.txt b/src/test/CMakeLists.txt -index 8812150..5d38156 100644 ---- a/src/test/CMakeLists.txt -+++ b/src/test/CMakeLists.txt -@@ -15,13 +15,13 @@ - # along with this program. If not, see <http://www.gnu.org/licenses/>. - - include_directories( -- ../../ext/gtest-1.6.0 -- ../../ext/gtest-1.6.0/include -- ../../ext/gmock-1.6.0 -- ../../ext/gmock-1.6.0/include) -+ /usr/incude/gtest -+ /usr/src/gtest -+ /usr/include/gmock -+ /usr/src/gmock) - --add_library(gtest STATIC ../../ext/gtest-1.6.0/src/gtest-all.cc) --add_library(gmock STATIC ../../ext/gmock-1.6.0/src/gmock-all.cc) -+add_library(gtest STATIC /usr/src/gtest/src/gtest-all.cc) -+add_library(gmock STATIC /usr/src/gmock/gmock-all.cc) - - if (UNIX) - # ignore warnings in gtest and gmock -diff --git a/src/test/integtests/CMakeLists.txt b/src/test/integtests/CMakeLists.txt -index bde35c2..dc4f202 100644 ---- a/src/test/integtests/CMakeLists.txt -+++ b/src/test/integtests/CMakeLists.txt -@@ -56,8 +56,8 @@ endif() - include_directories( - ../../ - ../../lib/ -- ../../../ext/gtest-1.6.0/include -- ../../../ext/gmock-1.6.0/include -+ /usr/include/gtest -+ /usr/include/gmock - ) - - if (UNIX) -diff --git a/src/test/unittests/CMakeLists.txt b/src/test/unittests/CMakeLists.txt -index 4cacdf9..f0a8dbe 100644 ---- a/src/test/unittests/CMakeLists.txt -+++ b/src/test/unittests/CMakeLists.txt -@@ -51,8 +51,8 @@ list(APPEND headers ${platform_sources}) - include_directories( - ../../ - ../../lib/ -- ../../../ext/gtest-1.6.0/include -- ../../../ext/gmock-1.6.0/include -+ /usr/include/gtest -+ /usr/include/gmock - ../../../ext - ) - --- -2.10.0 - Added: use-system-libs.patch =================================================================== --- use-system-libs.patch (rev 0) +++ use-system-libs.patch 2018-10-03 21:43:01 UTC (rev 389303) @@ -0,0 +1,98 @@ +From f013182f0bfee54cc1c22740302be84acc380fda Mon Sep 17 00:00:00 2001 +From: Luca Corbatto <l...@corbatto.de> +Date: Sun, 22 Jul 2018 09:17:58 +0200 +Subject: [PATCH 1/4] Fixes bundled libs + +--- + CMakeLists.txt | 4 ++-- + src/test/CMakeLists.txt | 18 +++++++++--------- + src/test/integtests/CMakeLists.txt | 8 ++++---- + src/test/unittests/CMakeLists.txt | 10 +++++----- + 4 files changed, 20 insertions(+), 20 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 35bbfab..eaf8ab6 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -56,7 +56,7 @@ else() + endif() + + set (libs) +-include_directories (BEFORE SYSTEM ./ext/gtest/include) ++include_directories (BEFORE SYSTEM /usr/include/gtest) + + if (UNIX) + if (NOT APPLE) +diff --git a/src/test/CMakeLists.txt b/src/test/CMakeLists.txt +index 1f78ae0..b62f30c 100644 +--- a/src/test/CMakeLists.txt ++++ b/src/test/CMakeLists.txt +@@ -1,11 +1,11 @@ + # synergy -- mouse and keyboard sharing utility + # Copyright (C) 2012-2016 Symless Ltd. + # Copyright (C) 2011 Nick Bolton +-# ++# + # This package is free software; you can redistribute it and/or + # modify it under the terms of the GNU General Public License + # found in the file LICENSE that should have accompanied this file. +-# ++# + # This package is distributed in the hope that it will be useful, + # but WITHOUT ANY WARRANTY; without even the implied warranty of + # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +@@ -15,13 +15,13 @@ + # along with this program. If not, see <http://www.gnu.org/licenses/>. + + include_directories( +- ../../ext/gtest +- ../../ext/gtest/include +- ../../ext/gmock +- ../../ext/gmock/include) +- +-add_library(gtest STATIC ../../ext/gtest/src/gtest-all.cc) +-add_library(gmock STATIC ../../ext/gmock/src/gmock-all.cc) ++ /usr/src/gtest ++ /usr/include/gtest ++ /usr/src/gmock ++ /usr/include/gmock) ++ ++add_library(gtest STATIC /usr/src/gtest/src/gtest-all.cc) ++add_library(gmock STATIC /usr/src/gmock/gmock-all.cc) + + if (UNIX) + # ignore warnings in gtest and gmock +diff --git a/src/test/integtests/CMakeLists.txt b/src/test/integtests/CMakeLists.txt +index f39968a..e71499a 100644 +--- a/src/test/integtests/CMakeLists.txt ++++ b/src/test/integtests/CMakeLists.txt +@@ -56,8 +56,8 @@ endif() + include_directories( + ../../ + ../../lib/ +- ../../../ext/gtest/include +- ../../../ext/gmock/include ++ /usr/include/gtest ++ /usr/include/gmock + ) + + if (UNIX) +diff --git a/src/test/unittests/CMakeLists.txt b/src/test/unittests/CMakeLists.txt +index 54131eb..9806be9 100644 +--- a/src/test/unittests/CMakeLists.txt ++++ b/src/test/unittests/CMakeLists.txt +@@ -51,9 +51,9 @@ list(APPEND headers ${platform_sources}) + include_directories( + ../../ + ../../lib/ +- ../../../ext/gtest/include +- ../../../ext/gmock/include +- ../../../ext ++ /usr/include/gtest ++ /usr/include/gmock ++ /usr/include + ) + + if (UNIX) +-- +2.18.0