summaryrefslogtreecommitdiff
path: root/package/nut/Makefile
blob: fa9152eba23910d3bcdf3fa39fa1fffe1b0e74b3 (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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
# This file is part of the OpenADK project. OpenADK is copyrighted
# material, please see the LICENCE file in the top-level directory.

include ${ADK_TOPDIR}/rules.mk

PKG_NAME:=		nut
PKG_VERSION:=		2.7.3
PKG_RELEASE:=		1
PKG_HASH:=		ff44d95d06a51559a0a018eef7f8d17911c1002b6352a7d7580ff75acb12126b
PKG_DESCR:=		network ups tools
PKG_SECTION:=		net/misc
PKG_URL:=		http://www.networkupstools.org/
PKG_SITES:=		http://www.networkupstools.org/source/2.7/

DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.gz

PKG_FLAVOURS_NUT:=	WITH_SNMP WITH_USB
PKGFD_WITH_SNMP:=	enable snmp support
PKGFS_WITH_SNMP:=	libnetsnmp
PKGFB_WITH_SNMP:=	net-snmp
PKGFD_WITH_USB:=	enable usb support
PKGFS_WITH_USB:=	libusb libusb-compat
PKGFB_WITH_USB:=	libusb libusb-compat

PKG_CHOICES_NUT:=	WITHOUT_SSL WITH_LIBRESSL WITH_OPENSSL
PKGCD_WITHOUT_SSL:=	use no ssl
PKGCD_WITH_LIBRESSL:=	use libressl for crypto
PKGCB_WITH_LIBRESSL:=	libressl
PKGCS_WITH_LIBRESSL:=	libressl ca-certificates
PKGCD_WITH_OPENSSL:=	use openssl for crypto
PKGCB_WITH_OPENSSL:=	openssl
PKGCS_WITH_OPENSSL:=	libopenssl ca-certificates

include ${ADK_TOPDIR}/mk/package.mk

$(eval $(call PKG_template,NUT,nut,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))

define DRIVER_template

DRIVERS_$${ADK_PACKAGE_NUT_DRIVER_${1}}+=${2}

endef

DRIVERS_y:=
$(eval $(call DRIVER_template,BESTUPS,bestups))
$(eval $(call DRIVER_template,APCSMART,apcsmart))
$(eval $(call DRIVER_template,EVERUPS,everups))
$(eval $(call DRIVER_template,BELKIN,belkin))
$(eval $(call DRIVER_template,MASTERGUARD,masterguard))
$(eval $(call DRIVER_template,POWERCOM,powercom))
$(eval $(call DRIVER_template,POWERPANEL,powerpanel))
$(eval $(call DRIVER_template,CYBERPOWER,cyberpower))
$(eval $(call DRIVER_template,TRIPPLITE,tripplite))
$(eval $(call DRIVER_template,VICTRONUPS,victronups))
$(eval $(call DRIVER_template,GENERICUPS,genericups))
$(eval $(call DRIVER_template,MGE_UTALK,mge-utalk))
$(eval $(call DRIVER_template,BESTUFERRUPS,bestuferrups))
$(eval $(call DRIVER_template,ISBMEX,isbmex))
$(eval $(call DRIVER_template,ETAPRO,etapro))
$(eval $(call DRIVER_template,LIEBERT,liebert))
$(eval $(call DRIVER_template,TRIPPLITESU,tripplitesu))
$(eval $(call DRIVER_template,SAFENET,safenet))
$(eval $(call DRIVER_template,BELKINUNV,belkinunv))
$(eval $(call DRIVER_template,ONEAC,oneac))
$(eval $(call DRIVER_template,METASYS,metasys))
$(eval $(call DRIVER_template,BESTFCOM,bestfcom))
$(eval $(call DRIVER_template,UPSCODE2,upscode2))
$(eval $(call DRIVER_template,SOLIS,solis))
$(eval $(call DRIVER_template,GAMATRONIC,gamatronic))
$(eval $(call DRIVER_template,MEGATEC,megatec))
$(eval $(call DRIVER_template,RHINO,rhino))

CONFIG_DRIVERS=$(shell echo ${DRIVERS_y} | tr ' ' ',')

INSTALL_DRIVERS_tmp=${DRIVERS_y}
ifneq (${ADK_PACKAGE_NUT_WITH_USB},)
INSTALL_DRIVERS_tmp+=	usbhid-ups tripplite_usb
endif
ifneq (${ADK_PACKAGE_NUT_WITH_SNMP},)
INSTALL_DRIVERS_tmp+=	snmp-ups
endif
INSTALL_DRIVERS=$(shell echo ${INSTALL_DRIVERS_tmp} | tr ' ' ',')

CONFIGURE_ARGS+=	--with-linux-hiddev=${LINUX_DIR}/include/linux/hiddev.h \
			--without-cgi \
			--with-drivers=${INSTALL_DRIVERS} \
			--with-group=0 \
			--with-user=0

ifeq (${ADK_PACKAGE_NUT_WITH_OPENSSL},y)
CONFIGURE_ARGS+=	--with-ssl
CONFIGURE_ENV+=		CPPFLAGS="${TARGET_CPPFLAGS} ${TARGET_LDFLAGS}"
MAKE_FLAGS+=		SSL_CFLAGS="${TARGET_CPPFLAGS}" SSL_LDFLAGS="${TARGET_LDFLAGS} -lssl -lcrypto"
endif
ifeq (${ADK_PACKAGE_NUT_WITH_LIBRESSL},y)
CONFIGURE_ARGS+=	--with-ssl
CONFIGURE_ENV+=		CPPFLAGS="${TARGET_CPPFLAGS} ${TARGET_LDFLAGS}"
MAKE_FLAGS+=		SSL_CFLAGS="${TARGET_CPPFLAGS}" SSL_LDFLAGS="${TARGET_LDFLAGS} -lssl -lcrypto"
endif
ifneq (${ADK_PACKAGE_NUT_WITH_USB},)
CONFIGURE_ARGS+=	--with-usb
endif
ifneq (${ADK_PACKAGE_NUT_WITH_SNMP},)
CONFIGURE_ARGS+=	--with-snmp
endif

nut-install:
	${INSTALL_DIR} ${IDIR_NUT}/usr/{s,}bin ${IDIR_NUT}/etc
	${INSTALL_DIR} ${IDIR_NUT}/usr/lib
	${INSTALL_BIN} ${WRKINST}/usr/sbin/ups{d,mon,sched,drvctl} \
		${IDIR_NUT}/usr/sbin/
	${CP} ${WRKINST}/usr/lib/lib{nut,ups}client.so* ${IDIR_NUT}/usr/lib
	${INSTALL_BIN} ${WRKINST}/usr/bin/{${INSTALL_DRIVERS}} \
		${IDIR_NUT}/usr/bin/
	${INSTALL_BIN} ${WRKINST}/usr/bin/ups{c,cmd,log,rw} \
		${IDIR_NUT}/usr/bin/
	${INSTALL_DATA} ./files/ups{d,}.conf ${IDIR_NUT}/etc/

include ${ADK_TOPDIR}/mk/pkg-bottom.mk