N: Pieterjan Camerlynck <pieterjan.camerlynck@gmail.com>
F: package/libdvbpsi/
F: package/mraa/
+F: package/synergy/
N: Pranit Sirsat <Pranit.Sirsat@imgtec.com>
F: package/paho-mqtt-c/
--- /dev/null
+From cb6b00947ea125c3246654bb3dd3986b64e974d4 Mon Sep 17 00:00:00 2001
+From: Pieterjan Camerlynck <pieterjan.camerlynck@gmail.com>
+Date: Mon, 27 Mar 2017 21:51:59 +0200
+Subject: [PATCH] allow building of synergy without tests
+
+Upstream status: https://github.com/symless/synergy/pull/5943
+
+Signed-off-by: Pieterjan Camerlynck <pieterjan.camerlynck@gmail.com>
+---
+ CMakeLists.txt | 2 ++
+ src/CMakeLists.txt | 2 +-
+ src/lib/synergy/KeyMap.h | 4 ++++
+ src/test/unittests/synergy/KeyMapTests.cpp | 2 ++
+ 4 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 94c474e..cceac45 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -39,6 +39,8 @@ endif()
+ # First, declare project (important for prerequisite checks).
+ project(synergy C CXX)
+
++option(BUILD_TESTS "Override building of tests" ON)
++
+ # put binaries in a different dir to make them easier to find.
+ set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
+ set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 237ba48..96dadd2 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -50,6 +50,6 @@ add_subdirectory(lib)
+ add_subdirectory(cmd)
+ add_subdirectory(micro)
+
+-if (NOT ${CMAKE_SYSTEM_NAME} MATCHES "IRIX")
++if (BUILD_TESTS AND NOT ${CMAKE_SYSTEM_NAME} MATCHES "IRIX")
+ add_subdirectory(test)
+ endif()
+diff --git a/src/lib/synergy/KeyMap.h b/src/lib/synergy/KeyMap.h
+index de869e6..51e7e07 100644
+--- a/src/lib/synergy/KeyMap.h
++++ b/src/lib/synergy/KeyMap.h
+@@ -24,7 +24,9 @@
+ #include "common/stdset.h"
+ #include "common/stdvector.h"
+
++#ifdef TEST_ENV
+ #include "gtest/gtest_prod.h"
++#endif
+
+ namespace synergy {
+
+@@ -326,6 +328,7 @@ public:
+
+ //@}
+
++#ifdef TEST_ENV
+ private:
+ FRIEND_TEST(KeyMapTests,
+ findBestKey_requiredDown_matchExactFirstItem);
+@@ -340,6 +343,7 @@ private:
+ FRIEND_TEST(KeyMapTests,
+ findBestKey_onlyOneRequiredDown_matchTwoRequiredChangesItem);
+ FRIEND_TEST(KeyMapTests, findBestKey_noRequiredDown_cannotMatch);
++#endif
+
+ private:
+ //! Ways to synthesize a key
+diff --git a/src/test/unittests/synergy/KeyMapTests.cpp b/src/test/unittests/synergy/KeyMapTests.cpp
+index 1a195af..fe2a5e4 100644
+--- a/src/test/unittests/synergy/KeyMapTests.cpp
++++ b/src/test/unittests/synergy/KeyMapTests.cpp
+@@ -15,6 +15,8 @@
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
++#define TEST_ENV
++
+ #include "synergy/KeyMap.h"
+
+ #include "test/global/gtest.h"
+--
+2.7.4
+
+++ /dev/null
-[PATCH] fix build with modern toolchains
-
-Several files are missing the correct includes for exit/getenvmemcpy/strlen/..
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- lib/arch/CArchDaemonUnix.cpp | 1 +
- lib/arch/CMultibyte.cpp | 1 +
- lib/base/CStringUtil.cpp | 1 +
- lib/client/CClient.cpp | 3 ++-
- lib/client/CServerProxy.cpp | 1 +
- lib/net/CTCPSocket.cpp | 2 +-
- lib/platform/CXWindowsScreen.cpp | 1 +
- lib/server/CClientProxy1_3.cpp | 1 +
- lib/server/CServer.cpp | 1 +
- lib/synergy/CPacketStreamFilter.cpp | 1 +
- lib/synergy/IKeyState.cpp | 1 +
- lib/synergy/IPrimaryScreen.cpp | 1 +
- 12 files changed, 13 insertions(+), 2 deletions(-)
-
-Index: synergy-1.3.1/lib/arch/CArchDaemonUnix.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/arch/CArchDaemonUnix.cpp
-+++ synergy-1.3.1/lib/arch/CArchDaemonUnix.cpp
-@@ -19,6 +19,7 @@
- #include <sys/stat.h>
- #include <fcntl.h>
- #include <errno.h>
-+#include <stdlib.h>
-
- //
- // CArchDaemonUnix
-Index: synergy-1.3.1/lib/arch/CMultibyte.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/arch/CMultibyte.cpp
-+++ synergy-1.3.1/lib/arch/CMultibyte.cpp
-@@ -19,6 +19,7 @@
- #include "CArch.h"
- #include <limits.h>
- #include <string.h>
-+#include <stdlib.h>
- #if HAVE_LOCALE_H
- # include <locale.h>
- #endif
-Index: synergy-1.3.1/lib/base/CStringUtil.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/base/CStringUtil.cpp
-+++ synergy-1.3.1/lib/base/CStringUtil.cpp
-@@ -19,6 +19,7 @@
- #include <cctype>
- #include <cstdio>
- #include <cstdlib>
-+#include <cstring>
- #include <algorithm>
-
- //
-Index: synergy-1.3.1/lib/client/CClient.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/client/CClient.cpp
-+++ synergy-1.3.1/lib/client/CClient.cpp
-@@ -26,7 +26,8 @@
- #include "CLog.h"
- #include "IEventQueue.h"
- #include "TMethodEventJob.h"
--
-+#include <string.h>
-+#include <stdlib.h>
- //
- // CClient
- //
-Index: synergy-1.3.1/lib/client/CServerProxy.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/client/CServerProxy.cpp
-+++ synergy-1.3.1/lib/client/CServerProxy.cpp
-@@ -24,6 +24,7 @@
- #include "TMethodEventJob.h"
- #include "XBase.h"
- #include <memory>
-+#include <string.h>
-
- //
- // CServerProxy
-Index: synergy-1.3.1/lib/net/CTCPSocket.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/net/CTCPSocket.cpp
-+++ synergy-1.3.1/lib/net/CTCPSocket.cpp
-@@ -24,7 +24,7 @@
- #include "CArch.h"
- #include "XArch.h"
- #include <string.h>
--
-+#include <stdlib.h>
- //
- // CTCPSocket
- //
-Index: synergy-1.3.1/lib/platform/CXWindowsScreen.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/platform/CXWindowsScreen.cpp
-+++ synergy-1.3.1/lib/platform/CXWindowsScreen.cpp
-@@ -27,6 +27,7 @@
- #include "IEventQueue.h"
- #include "TMethodEventJob.h"
- #include <cstring>
-+#include <stdlib.h>
- #if X_DISPLAY_MISSING
- # error X11 is required to build synergy
- #else
-Index: synergy-1.3.1/lib/server/CClientProxy1_3.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/server/CClientProxy1_3.cpp
-+++ synergy-1.3.1/lib/server/CClientProxy1_3.cpp
-@@ -17,6 +17,7 @@
- #include "CLog.h"
- #include "IEventQueue.h"
- #include "TMethodEventJob.h"
-+#include <string.h>
-
- //
- // CClientProxy1_3
-Index: synergy-1.3.1/lib/server/CServer.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/server/CServer.cpp
-+++ synergy-1.3.1/lib/server/CServer.cpp
-@@ -29,6 +29,7 @@
- #include "TMethodEventJob.h"
- #include "CArch.h"
- #include <string.h>
-+#include <stdlib.h>
-
- //
- // CServer
-Index: synergy-1.3.1/lib/synergy/CPacketStreamFilter.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/synergy/CPacketStreamFilter.cpp
-+++ synergy-1.3.1/lib/synergy/CPacketStreamFilter.cpp
-@@ -16,6 +16,7 @@
- #include "IEventQueue.h"
- #include "CLock.h"
- #include "TMethodEventJob.h"
-+#include <string.h>
-
- //
- // CPacketStreamFilter
-Index: synergy-1.3.1/lib/synergy/IKeyState.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/synergy/IKeyState.cpp
-+++ synergy-1.3.1/lib/synergy/IKeyState.cpp
-@@ -14,6 +14,7 @@
-
- #include "IKeyState.h"
- #include <string.h>
-+#include <stdlib.h>
-
- //
- // IKeyState
-Index: synergy-1.3.1/lib/synergy/IPrimaryScreen.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/synergy/IPrimaryScreen.cpp
-+++ synergy-1.3.1/lib/synergy/IPrimaryScreen.cpp
-@@ -13,6 +13,7 @@
- */
-
- #include "IPrimaryScreen.h"
-+#include <stdlib.h>
-
- //
- // IPrimaryScreen
+++ /dev/null
-Remove -Werror from CXXFLAGS
-
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
-
-Index: synergy-1.3.1/configure.in
-===================================================================
---- synergy-1.3.1.orig/configure.in
-+++ synergy-1.3.1/configure.in
-@@ -239,7 +239,6 @@ dnl checks for system services
-
- dnl enable maximum compiler warnings and warnings are errors.
- ACX_CXX_WARNINGS
--ACX_CXX_WARNINGS_ARE_ERRORS
-
- dnl adjust compiler and linker variables
- CXXFLAGS="$CXXFLAGS $SYNERGY_CXXFLAGS $ARCH_CFLAGS"
+++ /dev/null
-From b79d478c21ed6af20554ead97da72de845dc3206 Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <peter@korsgaard.com>
-Date: Sat, 25 Feb 2017 21:57:19 +0100
-Subject: [PATCH] Fix build with gcc 6
-
-Gcc 6.x defaults to C++14, and the iostream operator bool behaviour changed
-in C++11. In previous versions, a somewhat odd operator void* was used to
-return the status of the stream as a pointer. Since C++11 a more sensible
-operator bool is used to return the stream staus.
-
-For details, see:
-
-http://en.cppreference.com/w/cpp/io/basic_ios/operator_bool
-
-The code in CConfigReadContext assumes the pre-C++11 behaviour and provides
-its own operator void overload to return the status of the embedded
-iostream. With C++11, iostream no longer provides this overload, breaking
-the build:
-
-CConfig.cpp: In member function 'CConfigReadContext::operator void*() const':
-CConfig.cpp:1851:9: error: cannot convert 'std::istream {aka std::basic_istream<char>}' to 'void*' in return
- return m_stream;
-
-To fix it, backport part of upstream commit 3d963bfbe7897d0a33ad (possible
-fix for mavericks) which changes the code to simply provide a getStream()
-method which returns a reference to the embedded stream and the calling code
-is changed to use operator bool on the returned stream, making the code
-compatible with both old and new compilers.
-
-This upstream commit is part of the 1.6.0 release, so can be dropped when
-the version is bumped.
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- lib/server/CConfig.cpp | 7 +------
- lib/server/CConfig.h | 2 +-
- 2 files changed, 2 insertions(+), 7 deletions(-)
-
-diff --git a/lib/server/CConfig.cpp b/lib/server/CConfig.cpp
-index a502fe78..d67dde20 100644
---- a/lib/server/CConfig.cpp
-+++ b/lib/server/CConfig.cpp
-@@ -607,7 +607,7 @@ void
- CConfig::read(CConfigReadContext& context)
- {
- CConfig tmp;
-- while (context) {
-+ while (context.getStream()) {
- tmp.readSection(context);
- }
- *this = tmp;
-@@ -1846,11 +1846,6 @@ CConfigReadContext::getLineNumber() const
- return m_line;
- }
-
--CConfigReadContext::operator void*() const
--{
-- return m_stream;
--}
--
- bool
- CConfigReadContext::operator!() const
- {
-diff --git a/lib/server/CConfig.h b/lib/server/CConfig.h
-index c0d2faa8..0ee453cb 100644
---- a/lib/server/CConfig.h
-+++ b/lib/server/CConfig.h
-@@ -480,7 +480,6 @@ public:
- bool readLine(CString&);
- UInt32 getLineNumber() const;
-
-- operator void*() const;
- bool operator!() const;
-
- OptionValue parseBoolean(const CString&) const;
-@@ -502,6 +501,7 @@ public:
- IPlatformScreen::CButtonInfo*
- parseMouse(const CString& mouse) const;
- KeyModifierMask parseModifier(const CString& modifiers) const;
-+ std::istream& getStream() const { return m_stream; };
-
- private:
- // not implemented
---
-2.11.0
-
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_WCHAR
depends on BR2_USE_MMU # fork()
+ select BR2_PACKAGE_LIBCURL
+ select BR2_PACKAGE_OPENSSL
+ select BR2_PACKAGE_XLIB_LIBX11
select BR2_PACKAGE_XLIB_LIBXTST
help
Synergy lets you easily share a single mouse and
operating systems, each with its own display,
without special hardware.
- http://synergy2.sourceforge.net/
+ https://github.com/symless/synergy/
comment "synergy needs a toolchain w/ C++, wchar"
depends on BR2_PACKAGE_XORG7
# Locally computed:
-sha256 4a15e26456498dda5f3aa7d688a4892e0c50394a2f01685136fbc954bacc9691 synergy-1.3.1.tar.gz
+sha256 d913005e911bb6e5aa459f88fe91b40d59c37ea7207399814e4d450fd8634ec1 synergy-v1.8.5-stable.tar.gz
#
################################################################################
-SYNERGY_VERSION = 1.3.1
-SYNERGY_SITE = http://downloads.sourceforge.net/project/synergy2/Sources/$(SYNERGY_VERSION)
-SYNERGY_AUTORECONF = YES
-SYNERGY_CONF_OPTS = \
- --x-includes=$(STAGING_DIR)/usr/include/X11 \
- --x-libraries=$(STAGING_DIR)/usr/lib
-SYNERGY_DEPENDENCIES = \
- xlib_libXtst \
- $(if $(BR2_PACKAGE_XLIB_LIBXINERAMA),xlib_libXinerama)
+SYNERGY_VERSION = v1.8.5-stable
+SYNERGY_SITE = $(call github,symless,synergy,$(SYNERGY_VERSION))
SYNERGY_LICENSE = GPLv2
-SYNERGY_LICENSE_FILES = COPYING
+SYNERGY_LICENSE_FILES = LICENSE
+SYNERGY_DEPENDENCIES = libcurl openssl xlib_libX11 xlib_libXtst
-$(eval $(autotools-package))
+ifeq ($(BR2_PACKAGE_XLIB_LIBXEXT),y)
+SYNERGY_DEPENDENCIES += xlib_libXext
+endif
+
+ifeq ($(BR2_PACKAGE_XLIB_LIBXI),y)
+SYNERGY_DEPENDENCIES += xlib_libXi
+endif
+
+ifeq ($(BR2_PACKAGE_XLIB_LIBXINERAMA),y)
+SYNERGY_DEPENDENCIES += xlib_libXinerama
+endif
+
+ifeq ($(BR2_PACKAGE_XLIB_LIBXRANDR),y)
+SYNERGY_DEPENDENCIES += xlib_libXrandr
+endif
+
+define SYNERGY_INSTALL_TARGET_CMDS
+ $(INSTALL) -D -m 0755 $(@D)/bin/synergyc $(TARGET_DIR)/usr/bin/synergyc
+ $(INSTALL) -D -m 0755 $(@D)/bin/synergys $(TARGET_DIR)/usr/bin/synergys
+endef
+
+$(eval $(cmake-package))