aboutsummaryrefslogtreecommitdiff
path: root/security/quantis/Makefile
blob: be28d5744db6fab366ed4fb36f8823640718e527 (plain) (blame)
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
102
103
104
105
106
107
108
109
110
111
112
# Created by: Alex Dupre <ale@FreeBSD.org>
# $FreeBSD$

PORTNAME=	quantis
DISTVERSION=	v18.03.08
PORTREVISION=	1
CATEGORIES=	security devel java
MASTER_SITES=	https://www.idquantique.com/wordpress/wp-content/uploads/
DISTNAME=	Quantis-${DISTVERSION}

MAINTAINER=	ale@FreeBSD.org
COMMENT=	Libraries and utilities to access Quantis devices

LICENSE=	BSD3CLAUSE GPLv2
LICENSE_COMB=	dual
LICENSE_FILE_BSD3CLAUSE=${WRKSRC}/../License.txt

BROKEN=		does not build
BROKEN_aarch64=		fails to build: Could not find JNI (missing: JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY)
BROKEN_armv6=		fails to build: Could not find JNI (missing: JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY)
BROKEN_armv7=		fails to build: Could not find JNI (missing: JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY)

USES=		cmake compiler:c++11-lang zip:infozip

OPTIONS_DEFINE=	PCI USB JAVA COMPAT TOOL GUI DOCS EXAMPLES
OPTIONS_DEFAULT=PCI USB JAVA TOOL
NO_OPTIONS_SORT=yes

PCI_DESC=	Enable Quantis PCI support
USB_DESC=	Enable Quantis USB support
JAVA_DESC=	Enable Java support
COMPAT_DESC=	Build API v1 compatibility libraries
TOOL_DESC=	Build EasyQuantis application
GUI_DESC=	Build QT4 GUI for EasyQuantis application

EXTRACT_BEFORE_ARGS=	-aqo
USE_LDCONFIG=	yes
SUB_FILES=	pkg-message

WRKSRC=		${WRKDIR}/Quantis-${DISTVERSION}/Libs-Apps

KMODDIR?=	/boot/modules

PORTDOCS=	*
PORTEXAMPLES=	*

.include <bsd.port.options.mk>

.if ${PORT_OPTIONS:MPCI}
RUN_DEPENDS+=	${KMODDIR}/quantis.ko:security/quantis-kmod
.else
CMAKE_ARGS+=	-DDISABLE_QUANTIS_PCI=1
.endif

.if ! ${PORT_OPTIONS:MUSB}
CMAKE_ARGS+=	-DDISABLE_QUANTIS_USB=1
PKGMESSAGE=	${PKGDIR}/notexistent
.endif

.if ${PORT_OPTIONS:MJAVA}
USE_JAVA=	yes
JAVA_VERSION=	1.6+
JAVA_OS=	native
.else
CMAKE_ARGS+=	-DDISABLE_QUANTIS_JAVA=1
.endif

.if ${PORT_OPTIONS:MCOMPAT}
CMAKE_ARGS+=	-DENABLE_QUANTIS_COMPAT=1

PLIST_SUB+=	COMPAT=""
.else
PLIST_SUB+=	COMPAT="@comment "
.endif

.if ${PORT_OPTIONS:MTOOL}
BUILD_DEPENDS+=	${LOCALBASE}/lib/libboost_date_time.a:devel/boost-libs
CXXFLAGS+=	-I${LOCALBASE}/include

. if ${PORT_OPTIONS:MGUI}
DEPRECATED=		Qt4 has been EOL since december 2015
EXPIRATION_DATE=	2019-03-15

USES+=		qt:4
USE_QT+=	corelib gui moc_build uic_build rcc_build qmake_build
. else
CMAKE_ARGS+=	-DDISABLE_EASYQUANTIS_GUI=1
. endif

PLIST_SUB+=	TOOL=""
.else
CMAKE_ARGS+=	-DDISABLE_EASYQUANTIS=1

PLIST_SUB+=	TOOL="@comment "
.endif

post-patch:
	@${REINPLACE_CMD} '/  if(CMAKE_COMPILER_IS_GNU/s/)/ MATCHES "0")/' \
		${WRKSRC}/CMake/CompilersFlags.cmake

post-install:
	@${MKDIR} ${STAGEDIR}${DOCSDIR}
	${INSTALL_DATA} ${WRKSRC}/../*.txt ${STAGEDIR}${DOCSDIR}
	${INSTALL_DATA} ${WRKSRC}/../User_Manual.pdf ${STAGEDIR}${DOCSDIR}
	@${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
	@(cd ${WRKSRC}/../Samples; ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR} "-not -empty")
.if ${PORT_OPTIONS:MUSB}
	@${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/devd
	${INSTALL_DATA} ${FILESDIR}/quantis.conf ${STAGEDIR}${EXAMPLESDIR}/devd
.endif

.include <bsd.port.mk>