Makefile 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. # $OpenBSD: Makefile,v 1.92 2017/04/10 11:46:33 sthen Exp $
  2. COMMENT-main= UPS monitoring program supporting many brands
  3. COMMENT-cgi= CGIs for monitoring Nut-based UPSs
  4. COMMENT-snmp= driver for monitoring UPS via SNMP
  5. COMMENT-xml= driver for monitoring UPS via XML/HTTP
  6. DISTNAME= nut-2.7.4
  7. PKGNAME-main= ${DISTNAME}
  8. PKGNAME-cgi= ${DISTNAME:S/-/-cgi-/}
  9. PKGNAME-snmp= ${DISTNAME:S/-/-snmp-/}
  10. PKGNAME-xml= ${DISTNAME:S/-/-xml-/}
  11. REVISION-main= 0
  12. SHARED_LIBS += upsclient 4.0 # .4.0
  13. SHARED_LIBS += nutclient 0.0 # .0.0
  14. SHARED_LIBS += nutscan 2.0 # .1.0
  15. CATEGORIES= sysutils
  16. HOMEPAGE= http://www.networkupstools.org/
  17. MAINTAINER= Stuart Henderson <sthen@openbsd.org>
  18. # GPLv2+, some scripts (not packaged) are GPLv3+
  19. PERMIT_PACKAGE_CDROM= Yes
  20. COMMON += c crypto pthread
  21. WANTLIB-main += ${COMMON} ltdl m ssl ${LIBCXX} usb usb-1.0
  22. WANTLIB-xml += ${COMMON} ${MODGETTEXT_WANTLIB} expat neon proxy ssl z
  23. WANTLIB-cgi += ${COMMON} ${MODGETTEXT_WANTLIB} X11 expat fontconfig
  24. WANTLIB-cgi += freetype gd jpeg m png ssl upsclient xcb z
  25. WANTLIB-snmp += ${COMMON} m netsnmp
  26. MASTER_SITES= ${HOMEPAGE}source/2.7/
  27. MODULES= devel/gettext \
  28. lang/python
  29. MODPY_RUNDEP= No
  30. # if avahi is present at build time, avahi support is built in nut-scanner,
  31. # but it's dlopen()'d at runtime, so support is optional, so we don't list a
  32. # hard run dependency for this (to reduce deps in the common case).
  33. BUILD_DEPENDS+= net/avahi
  34. BUILD_DEPENDS+= textproc/asciidoc>=8.6.8 \
  35. textproc/docbook-xsl
  36. WEB_ROOT= /var/www
  37. SUBST_VARS= BASESYSCONFDIR WEB_ROOT
  38. USE_GROFF= Yes
  39. CONFIGURE_STYLE= gnu
  40. SYSCONFDIR= ${BASESYSCONFDIR}/nut
  41. LDFLAGS+= -L${LOCALBASE}/lib -pthread
  42. CONFIGURE_ARGS+= --datadir=${PREFIX}/share/nut \
  43. --htmldir=${PREFIX}/share/doc/nut \
  44. --includedir=${PREFIX}/include/nut \
  45. --with-dev \
  46. --with-doc=html-single \
  47. --with-hal-libs="" \
  48. --with-ssl \
  49. --with-statepath=/var/db/nut \
  50. --with-user=_ups \
  51. --with-group=_ups \
  52. --without-ipmi \
  53. CPPFLAGS="-I${LOCALBASE}/include" \
  54. LDFLAGS="${LDFLAGS}"
  55. PSEUDO_FLAVORS= no_snmp no_xml
  56. FLAVOR?=
  57. MULTI_PACKAGES= -main -cgi
  58. .if ${FLAVOR:Mno_snmp}
  59. CONFIGURE_ARGS+= --without-snmp
  60. .else
  61. MULTI_PACKAGES+= -snmp
  62. .endif
  63. .if ${FLAVOR:Mno_xml}
  64. CONFIGURE_ARGS+= --without-neon
  65. .else
  66. MULTI_PACKAGES+= -xml
  67. .endif
  68. LIB_DEPENDS-main= devel/libtool,-ltdl \
  69. devel/libusb-compat
  70. RUN_DEPENDS-main= # empty
  71. PREFIX-cgi= ${WEB_ROOT}
  72. LIB_DEPENDS-xml= net/neon
  73. RUN_DEPENDS-xml= ${RUN_DEPENDS} \
  74. sysutils/nut
  75. LIB_DEPENDS-snmp= net/net-snmp
  76. RUN_DEPENDS-snmp= sysutils/nut
  77. LIB_DEPENDS-cgi= ${LIB_DEPENDS} \
  78. graphics/jpeg \
  79. graphics/gd \
  80. sysutils/nut
  81. .if ${MULTI_PACKAGES:M-cgi}
  82. BUILD_DEPENDS+= graphics/gd>=1.8.3
  83. CONFIGURE_ARGS+= --with-cgi \
  84. --with-cgipath="${WEB_ROOT}/cgi-bin/nut" \
  85. --with-gd-libs="-L${X11BASE}/lib -L${PREFIX}/lib \
  86. -lgd -lpng -lz -ljpeg -lm -lfreetype -lX11" \
  87. --with-gd-includes="-I${PREFIX}/include"
  88. .endif
  89. USE_GMAKE= Yes
  90. USE_LIBTOOL= gnu# -all-static
  91. FAKE_FLAGS= sysconfdir=${PREFIX}/share/examples/nut
  92. NO_TEST= Yes
  93. pre-configure:
  94. ${SUBST_CMD} ${WRKSRC}/conf/upssched.conf.sample.in
  95. -ln -s ${MODPY_BIN} ${WRKDIR}/bin/python
  96. post-install:
  97. ${INSTALL_DATA_DIR} ${WRKINST}${WEB_ROOT}/conf/nut/
  98. .for file in hosts.conf upsset.conf upsstats.html upsstats-single.html
  99. ${INSTALL_DATA} ${WRKBUILD}/conf/${file}.sample \
  100. ${WRKINST}${WEB_ROOT}/conf/nut/
  101. .endfor
  102. ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/nut/
  103. cd ${WRKSRC}/docs; cp -R ../[A-LN-Z]* ../MAINTAINERS \
  104. *html cables images ${PREFIX}/share/doc/nut/
  105. ${INSTALL_SCRIPT} ${WRKSRC}/scripts/avahi/nut.service \
  106. ${PREFIX}/share/examples/nut
  107. .include <bsd.port.mk>