synergy: 1.13.1.41 -> 1.14.1.32

main
talyz 3 years ago committed by Jonathan Ringer
parent 753a895ad2
commit c11d08f023
  1. 97
      pkgs/applications/misc/synergy/build-tests.patch
  2. 73
      pkgs/applications/misc/synergy/default.nix
  3. 43
      pkgs/applications/misc/synergy/macos_build_fix.patch
  4. 1
      pkgs/top-level/all-packages.nix

@ -1,97 +0,0 @@
From 9c2278dad498b8e4040f30c80cf65b3a089ba218 Mon Sep 17 00:00:00 2001
From: talyz <kim.lindberger@gmail.com>
Date: Fri, 14 Feb 2020 16:26:36 +0100
Subject: [PATCH] Build tests again
The tests were accidentally disabled in
688095d0a7d22704b5c3282bc68b41ceca42ab7e. Since then, the code has
drifted slightly: the synergy lib has been renamed from synergy to
synlib in 4263fd17177d7717b04ac6d6ec62efa2f657ed74 and the curl
dependency was dropped in 491bb2de000245a943b8298462c4a9d8f34c9a44.
This reenables the tests, targets the right lib and removes the
obsolete test.
---
src/CMakeLists.txt | 2 +
src/test/integtests/CMakeLists.txt | 2 +-
.../integtests/arch/ArchInternetTests.cpp | 37 -------------------
src/test/unittests/CMakeLists.txt | 2 +-
4 files changed, 4 insertions(+), 39 deletions(-)
delete mode 100644 src/test/integtests/arch/ArchInternetTests.cpp
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index ab63a066..fee080ab 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -22,3 +22,5 @@ add_subdirectory(cmd)
if (SYNERGY_BUILD_LEGACY_GUI)
add_subdirectory(gui)
endif (SYNERGY_BUILD_LEGACY_GUI)
+
+add_subdirectory(test)
diff --git a/src/test/integtests/CMakeLists.txt b/src/test/integtests/CMakeLists.txt
index f39968a3..096ba3d5 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 synlib 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 95823e9f..00000000
--- 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 54131eb2..46307e90 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 synlib mt ipc gtest gmock shared ${libs} ${OPENSSL_LIBS})
--
2.25.0

@ -1,41 +1,90 @@
{ stdenv, lib, fetchpatch, fetchFromGitHub, cmake, openssl, qttools
, ApplicationServices, Carbon, Cocoa, CoreServices, ScreenSaver
, xlibsWrapper, libX11, libXi, libXtst, libXrandr, xinput, avahi-compat
, withGUI ? true, wrapQtAppsHook }:
{ withGUI ? true
, stdenv
, lib
, fetchpatch
, fetchFromGitHub
, wrapQtAppsHook
, cmake
, openssl
, pcre
, util-linux
, libselinux
, libsepol
, pkg-config
, gdk-pixbuf
, libnotify
, qttools
, xlibsWrapper
, libX11
, libXi
, libXtst
, libXrandr
, xinput
, avahi-compat
# macOS / darwin
, ApplicationServices
, Carbon
, Cocoa
, CoreServices
, ScreenSaver
}:
stdenv.mkDerivation rec {
pname = "synergy";
version = "1.13.1.41";
version = "1.14.1.32";
src = fetchFromGitHub {
owner = "symless";
repo = "synergy-core";
rev = "${version}-stable";
fetchSubmodules = true;
sha256 = "1phg0szc9g018zxs5wbys4drzq1cdhyzajfg45l6a3fmi6qdi1kw";
sha256 = "123p75rm22vb3prw1igh0yii2y4bvv7r18iykfvmnr41hh4w7z2p";
};
patches = lib.optional stdenv.isDarwin ./macos_build_fix.patch;
patches = [ ./macos_build_fix.patch ];
postPatch = ''
substituteInPlace src/gui/src/SslCertificate.cpp \
--replace 'kUnixOpenSslCommand[] = "openssl";' 'kUnixOpenSslCommand[] = "${openssl}/bin/openssl";'
'';
cmakeFlags = lib.optional (!withGUI) "-DSYNERGY_BUILD_LEGACY_GUI=OFF";
cmakeFlags = lib.optionals (!withGUI) [
"-DSYNERGY_BUILD_LEGACY_GUI=OFF"
] ++ lib.optionals stdenv.isDarwin [
"-DCMAKE_OSX_DEPLOYMENT_TARGET=10.09"
];
NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-Wno-inconsistent-missing-override";
nativeBuildInputs = [ cmake ] ++ lib.optional withGUI wrapQtAppsHook;
nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];
dontWrapQtApps = true;
buildInputs = [
openssl
pcre
] ++ lib.optionals withGUI [
qttools
] ++ lib.optionals stdenv.isDarwin [
ApplicationServices Carbon Cocoa CoreServices ScreenSaver
ApplicationServices
Carbon
Cocoa
CoreServices
ScreenSaver
] ++ lib.optionals stdenv.isLinux [
xlibsWrapper libX11 libXi libXtst libXrandr xinput avahi-compat
util-linux
libselinux
libsepol
xlibsWrapper
libX11
libXi
libXtst
libXrandr
xinput
avahi-compat
gdk-pixbuf
libnotify
];
installPhase = ''
@ -60,7 +109,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Share one mouse and keyboard between multiple computers";
homepage = "https://synergy-project.org/";
homepage = "https://symless.com/synergy";
license = licenses.gpl2;
maintainers = with maintainers; [ talyz ];
platforms = platforms.all;

@ -1,20 +1,29 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c1e78d1d..13639ba1 100644
index 50e712fa..d39c2ce4 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -328,14 +328,7 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
${OPENSSL_ROOT}/lib/libssl.lib
${OPENSSL_ROOT}/lib/libcrypto.lib
)
-elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
- set (OPENSSL_ROOT /usr/local/opt/openssl)
- include_directories (BEFORE SYSTEM ${OPENSSL_ROOT}/include)
- set (OPENSSL_LIBS
- ${OPENSSL_ROOT}/lib/libssl.a
- ${OPENSSL_ROOT}/lib/libcrypto.a
- )
-elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux|.*BSD|DragonFly")
+elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux|Darwin|.*BSD|DragonFly")
set (OPENSSL_LIBS ssl crypto)
else()
message (FATAL_ERROR "Couldn't find OpenSSL")
@@ -326,9 +326,6 @@ endif()
# Apple has to use static libraries because
# "Use of the Apple-provided OpenSSL libraries by apps is strongly discouraged."
# https://developer.apple.com/library/archive/documentation/Security/Conceptual/cryptoservices/SecureNetworkCommunicationAPIs/SecureNetworkCommunicationAPIs.html
-if(APPLE)
- set(OPENSSL_USE_STATIC_LIBS TRUE)
-endif()
find_package(OpenSSL REQUIRED)
#
diff --git a/src/gui/src/OSXHelpers.mm b/src/gui/src/OSXHelpers.mm
index 0c98afc1..38c190a6 100644
--- a/src/gui/src/OSXHelpers.mm
+++ b/src/gui/src/OSXHelpers.mm
@@ -20,10 +20,6 @@
#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>
#import <Cocoa/Cocoa.h>
-#import <UserNotifications/UNNotification.h>
-#import <UserNotifications/UNUserNotificationCenter.h>
-#import <UserNotifications/UNNotificationContent.h>
-#import <UserNotifications/UNNotificationTrigger.h>
#import <QtGlobal>

@ -28184,7 +28184,6 @@ with pkgs;
};
synergy = libsForQt5.callPackage ../applications/misc/synergy {
stdenv = if stdenv.cc.isClang then llvmPackages_5.stdenv else stdenv;
inherit (darwin.apple_sdk.frameworks) ApplicationServices Carbon Cocoa CoreServices ScreenSaver;
};

Loading…
Cancel
Save