Bug 206136

Summary: sysutils/synergy: Update to 1.7.5
Product: Ports & Packages Reporter: John Baldwin <jhb>
Component: Individual Port(s)Assignee: Kevin Lo <kevlo>
Status: Closed FIXED    
Severity: Affects Only Me CC: w.schwarzenfeld
Priority: --- Flags: bugzilla: maintainer-feedback? (kevlo)
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
synergy_175.patch none

Description John Baldwin freebsd_committer freebsd_triage 2016-01-11 17:19:24 UTC
Created attachment 165401 [details]
synergy_175.patch

Update synergy port to 1.7.5.
Comment 1 w.schwarzenfeld 2016-01-11 18:52:10 UTC
Fails with clang in the port or with poudriere (10.2-RELEASE-p8 amd64). But compiles fine if I add USE_GCC= 4.8+ to the Makefile.
Comment 2 John Baldwin freebsd_committer freebsd_triage 2016-01-11 19:15:09 UTC
I just built this today on 10.2-stable.  It built fine there:


> uname -a
FreeBSD XXX 10.2-STABLE FreeBSD 10.2-STABLE #38 r293613: Sat Jan  9 14:19:13 PST 2016     XXX:/usr/obj/usr/src/sys/XXX  amd64
> cc -v
FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
Target: x86_64-unknown-freebsd10.2
Thread model: posix
Selected GCC installation: 
> pkg info synergy-1.7.5 
synergy-1.7.5
Name           : synergy
Version        : 1.7.5
Installed on   : Mon Jan 11 08:50:44 2016 PST
Origin         : sysutils/synergy
Architecture   : freebsd:10:x86:64
Prefix         : /usr/local
...

Do you have more details on the failure?
Comment 3 w.schwarzenfeld 2016-01-11 19:32:05 UTC
Scanning dependencies of target arch
[  0%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/Arch.cpp.o
c++: error: argument unused during compilation: '-L/usr/local/lib'
c++: error: argument unused during compilation: '-L/usr/local/lib'
*** Error code 1

Stop.
make[4]: stopped in /usr/ports/sysutils/synergy/work/synergy-1.7.5-stable
*** Error code 1

Stop.
make[3]: stopped in /usr/ports/sysutils/synergy/work/synergy-1.7.5-stable
*** Error code 1

Stop.
make[2]: stopped in /usr/ports/sysutils/synergy/work/synergy-1.7.5-stable
*** Error code 1
========================================-- Looking for IceConnectionNumber in SM;ICE
-- Looking for IceConnectionNumber in SM;ICE - not found
-- Looking for DPMSQueryExtension in Xext;X11
-- Looking for DPMSQueryExtension in Xext;X11 - not found
-- Looking for XTestQueryExtension in Xtst;Xext;X11
-- Looking for XTestQueryExtension in Xtst;Xext;X11 - not found
-- Looking for XineramaQueryExtension in Xinerama
-- Looking for XineramaQueryExtension in Xinerama - not found
-- Looking for XISelectEvents in Xi
-- Looking for XISelectEvents in Xi - not found
-- Looking for XRRQueryExtension in Xrandr
-- Looking for XRRQueryExtension in Xrandr - not found
CMake Error at CMakeLists.txt:250 (message):
  Missing library: Xtst


-- Configuring incomplete, errors occurred!
See also "/usr/ports/sysutils/synergy/work/synergy-1.7.5-stable/CMakeFiles/CMakeOutput.log".
See also "/usr/ports/sysutils/synergy/work/synergy-1.7.5-stable/CMakeFiles/CMakeError.log".
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/sysutils/synergy
*** Error code 1

Stop.
make: stopped in /usr/ports/sysutils/synergy
[ngorx@newgorx /usr/ports/sysutils/synergy]$ 

Same error on 9.3-RELEASE-i386-p32 with clang.
Also works with USE_GCC=4.8+ fine.
if I change
CFLAGS+=        -I${LOCALBASE}/include -L${LOCALBASE}/lib
to
CFLAGS+=        -I${LOCALBASE}/include 
LDFLAGS+=        -L${LOCALBASE}/lib
Comment 4 w.schwarzenfeld 2016-01-11 19:36:43 UTC
Something was puzzled in the clipboard, the second part should be

========================================
if I change
CFLAGS+=        -I${LOCALBASE}/include -L${LOCALBASE}/lib
to
CFLAGS+=        -I${LOCALBASE}/include 
LDFLAGS+=        -L${LOCALBASE}/lib

-- Looking for IceConnectionNumber in SM;ICE
-- Looking for IceConnectionNumber in SM;ICE - not found
-- Looking for DPMSQueryExtension in Xext;X11
-- Looking for DPMSQueryExtension in Xext;X11 - not found
-- Looking for XTestQueryExtension in Xtst;Xext;X11
-- Looking for XTestQueryExtension in Xtst;Xext;X11 - not found
-- Looking for XineramaQueryExtension in Xinerama
-- Looking for XineramaQueryExtension in Xinerama - not found
-- Looking for XISelectEvents in Xi
-- Looking for XISelectEvents in Xi - not found
-- Looking for XRRQueryExtension in Xrandr
-- Looking for XRRQueryExtension in Xrandr - not found
CMake Error at CMakeLists.txt:250 (message):
  Missing library: Xtst


-- Configuring incomplete, errors occurred!
See also "/usr/ports/sysutils/synergy/work/synergy-1.7.5-stable/CMakeFiles/CMakeOutput.log".
See also "/usr/ports/sysutils/synergy/work/synergy-1.7.5-stable/CMakeFiles/CMakeError.log".
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/sysutils/synergy
*** Error code 1

Stop.
make: stopped in /usr/ports/sysutils/synergy
[ngorx@newgorx /usr/ports/sysutils/synergy]$ 

Same error on 9.3-RELEASE-i386-p32 with clang.
Also works with USE_GCC=4.8+ fine.
Comment 5 w.schwarzenfeld 2016-01-11 19:42:13 UTC
Fail with clang34, clang36 and clang37.
Comment 6 w.schwarzenfeld 2016-01-11 21:28:51 UTC
Another problem:
synergys -c /home/user/synergy.conf --log "/var/log/synergy" --name server
/usr/local/lib/compat/libstdc++.so.6: version GLIBCXX_3.4.11 required by /usr/local/bin/synergys not found
Comment 7 w.schwarzenfeld 2016-01-11 21:46:31 UTC
libstc++.so.6 solved.
Comment 8 John Baldwin freebsd_committer freebsd_triage 2016-01-11 22:48:09 UTC
I see the warnings about -L/usr/local/lib not used, but that doesn't error for me.  The same thing was true for synergy-1.7.4 btw.  This is a line from a build of 1.7.4 before the patch to update to 1.7.5:

[ 93%] Building CXX object src/cmd/synergys/CMakeFiles/synergys.dir/XWindowsServerTaskBarReceiver.cpp.o
cd /wrkdirs/usr/ports/sysutils/synergy/work/synergy-1.7.4-stable/src/cmd/synergys && /usr/bin/c++   -DHAVE_CONFIG_H -DSYSAPI_UNIX=1 -DWINAPI_XWINDOWS=1 -I/wrkdirs/usr/ports/sysutils/synergy/work/synergy-1.7.4-stable/src/cmd/synergys/.. -I/wrkdirs/usr/ports/sysutils/synergy/work/synergy-1.7.4-stable/src/cmd/synergys/../../lib -I/wrkdirs/usr/ports/sysutils/synergy/work/synergy-1.7.4-stable/src/cmd/synergys/../../.. -O2 -pipe -march=corei7-avx -I/usr/local/include -L/usr/local/lib -fstack-protector -fno-strict-aliasing -fPIC -O2 -pipe -march=corei7-avx -I/usr/local/include -L/usr/local/lib -fstack-protector -fno-strict-aliasing -o CMakeFiles/synergys.dir/XWindowsServerTaskBarReceiver.cpp.o -c /wrkdirs/usr/ports/sysutils/synergy/work/synergy-1.7.4-stable/src/cmd/synergys/XWindowsServerTaskBarReceiver.cpp
c++: warning: argument unused during compilation: '-L/usr/local/lib'
c++: warning: argument unused during compilation: '-L/usr/local/lib'

Do you have something custom set in /etc/make.conf that is enabling -Werror?

Also, are you able to build 1.7.4 fine?

The symbol problem is the normal one of using newer GCC and needing to set the rpath or LD_LIBRARY_PATH to pull in the newer STL runtime.
Comment 9 w.schwarzenfeld 2016-01-11 23:17:38 UTC
Yes, now I see I can also compile 1.7.4 only with gcc.
Comment 10 commit-hook freebsd_committer freebsd_triage 2016-01-15 09:28:15 UTC
A commit references this bug:

Author: kevlo
Date: Fri Jan 15 09:27:51 UTC 2016
New revision: 406147
URL: https://svnweb.freebsd.org/changeset/ports/406147

Log:
  Update to 1.7.5

  PR:	206136
  Submitted by:	jhb

Changes:
  head/sysutils/synergy/Makefile
  head/sysutils/synergy/distinfo
  head/sysutils/synergy/files/patch-CMakeLists.txt
Comment 11 Kevin Lo freebsd_committer freebsd_triage 2016-01-15 09:29:04 UTC
Committed, thanks.