summaryrefslogtreecommitdiff
path: root/net/synergy/Makefile
blob: 17faab6a06b8117f6555573ac08d8c30ecc65f8b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# $NetBSD: Makefile,v 1.76 2022/07/14 13:48:57 tnn Exp $

DISTNAME=		synergy-core-1.14.4.37
PKGREVISION=		1
PKGNAME=		${DISTNAME:S/-core//}
CATEGORIES=		net x11
MASTER_SITES=		${MASTER_SITE_GITHUB:=symless/}
GITHUB_PROJECT=		synergy-core
GITHUB_TAG=		v${PKGVERSION_NOREV}-stable
DISTFILES=		${DEFAULT_DISTFILES}		\
			  googletest-1.10.0.tar.gz	\
			  pugixml-1.12.1.tar.gz
SITES.googletest-1.10.0.tar.gz=	\
	-${MASTER_SITE_GITHUB:=google/}googletest/archive/release-1.10.0.tar.gz
SITES.pugixml-1.12.1.tar.gz=	\
	-${MASTER_SITE_GITHUB:=zeux/}pugixml/archive/v1.12.1.tar.gz

MAINTAINER=		pkgsrc-users@NetBSD.org
HOMEPAGE=		http://synergy-project.org/
COMMENT=		Let a user share a mouse and keyboard among computers
LICENSE=		gnu-gpl-v2

USE_LANGUAGES=		c c++11
USE_CMAKE=		yes
USE_TOOLS+=		pkg-config
CMAKE_ARGS+=		-DSYNERGY_BUILD_LEGACY_GUI=OFF
CMAKE_ARGS+=		-DSYNERGY_BUILD_LEGACY_INSTALLER=OFF

CONFIGURE_ENV+=		GIT_COMMIT=218fa800

EXAMPLES=	MacReadme.txt org.synergy-foss.org.synergyc.plist \
		org.synergy-foss.org.synergys.plist synergy.conf.example \
		synergy.conf.example-advanced synergy.conf.example-basic

SUBST_CLASSES+=			fix-paths
SUBST_STAGE.fix-paths=		pre-configure
SUBST_MESSAGE.fix-paths=	Fixing absolute paths.
SUBST_FILES.fix-paths=		src/lib/arch/unix/ArchFileUnix.cpp
SUBST_FILES.fix-paths+=		src/lib/arch/unix/ArchDaemonUnix.h
SUBST_FILES.fix-paths+=		src/lib/synergy/unix/AppUtilUnix.cpp
SUBST_SED.fix-paths=		-e 's,"/etc,"${PKG_SYSCONFDIR},g'
SUBST_SED.fix-paths+=		-e 's,"/usr/share/X11,"${X11BASE}/share/X11,g'

post-extract:
	${RM} -rf ${WRKSRC}/ext/googletest
	${LN} -s ${WRKDIR}/googletest-* ${WRKSRC}/ext/googletest
	${RM} -rf ${WRKSRC}/ext/pugixml
	${LN} -s ${WRKDIR}/pugixml-* ${WRKSRC}/ext/pugixml

INSTALLATION_DIRS=	bin ${PKGMANDIR}/man1 share/examples/${PKGBASE}

do-install:
.for p in synergyc synergys
	${INSTALL_PROGRAM} ${WRKSRC}/bin/${p} ${DESTDIR}${PREFIX}/bin/${p}
	${INSTALL_MAN} ${WRKSRC}/doc/${p}.man ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1/${p}.1
.endfor
.for f in ${EXAMPLES}
	${INSTALL_DATA} ${WRKSRC}/doc/${f} ${DESTDIR}${PREFIX}/share/examples/${PKGBASE}
.endfor

.include "../../mk/compiler.mk"
.if !empty(PKGSRC_COMPILER:Mclang)
_WRAP_EXTRA_ARGS.CXX+=	-Wno-switch -Wno-unused	\
			-Wno-deprecated-register -Wno-tautological-compare \
			-Wno-logical-op-parentheses -Wno-null-dereference
CWRAPPERS_APPEND.cxx+=	-Wno-switch -Wno-unused	\
			-Wno-deprecated-register -Wno-tautological-compare \
			-Wno-logical-op-parentheses -Wno-null-dereference
.endif

.include "../../mk/endian.mk"
.if ${MACHINE_ENDIAN} == "big"
CFLAGS+=	-DUSYNERGY_BIG_ENDIAN
.else
CFLAGS+=	-DUSYNERGY_LITTLE_ENDIAN
.endif

# XXX surely there exists a better way to do this
.if ${OPSYS} != "Linux"
BUILDLINK_TRANSFORM+=	rm:-ldl
.endif

LDFLAGS.SunOS+=	-lsocket -lnsl

.include "../../net/mDNSResponder/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
.include "../../www/curl/buildlink3.mk"
.if !exists(/System/Library/Frameworks/Carbon.framework)
.include "../../devel/glib2/buildlink3.mk"
.include "../../graphics/gdk-pixbuf2/buildlink3.mk"
.include "../../sysutils/libnotify/buildlink3.mk"
.include "../../x11/libXext/buildlink3.mk"
.include "../../x11/libXinerama/buildlink3.mk"
.include "../../x11/libxkbfile/buildlink3.mk"
.include "../../x11/libXrandr/buildlink3.mk"
.include "../../x11/libXt/buildlink3.mk"
.include "../../x11/libXtst/buildlink3.mk"
.endif
.include "../../mk/dlopen.buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"