update Sun Jan 17 06:37:00 PST 2010
[pkgsrc.git] / sysutils / webmin / wbm.mk
1 # $NetBSD: wbm.mk,v 1.8 2007/10/08 08:47:09 obache Exp $
2 #
3 # Makefile fragment for Webmin modules
4 #
5 # Then following variables may be set prior to including this file:
6 #
7 # WBM_NAME              Module name.
8 #
9 # WBM_STD_MODULE        if "YES", then this package provided as standard
10 #                       module.  defaults to "YES".
11 #
12 # WBM_MOD_REV           Updated revision number since the each release.
13 #                       Updated modules are taken from following URL:
14 #                       http://www.webmin.com/updates.html
15 #
16 # WBM_DEPEND_MODULES    Depending webmin modules.
17 #
18
19 .include "version.mk"
20
21 WBM_STD_MODULE?=YES
22
23 .if defined(WBM_MOD_REV) && !empty(WBM_MOD_REV) || !empty(WBM_STD_MODULE:M[Nn][Oo])
24 PKGNAME?=       wbm-${WBM_NAME}-${WBM_VERSION:S/0$/${WBM_MOD_REV}/}
25 DISTNAME?=      ${WBM_NAME}-${WBM_VERSION}-${WBM_MOD_REV}
26 MASTER_SITES?=  http://www.webmin.com/updates/
27 EXTRACT_SUFX?=  .wbm.gz
28 EXTRACT_OPTS+=  -f tar
29 WRKSRC?=        ${WRKDIR}
30 WBMSRC=         ${WRKDIR}/${WBM_NAME}
31 .else
32 PKGNAME=        wbm-${WBM_NAME}-${WBM_VERSION}
33 DISTNAME=       webmin-${WBM_VERSION}
34 MASTER_SITES=   ${MASTER_SITE_SOURCEFORGE:=webadmin/}
35 WBMSRC=         ${WRKSRC}/${WBM_NAME}
36 EXTRACT_ELEMENTS=${DISTNAME}/${WBM_NAME}
37 .endif
38 CATEGORIES+=    sysutils www
39
40 MAINTAINER?=    pkgsrc-users@NetBSD.org
41 HOMEPAGE?=      http://www.webmin.com/standard.html
42
43 USE_TOOLS+=     perl:run
44 DEPENDS+=       webmin>=${WBM_VERSION}:../../sysutils/webmin
45
46 .for m in ${WBM_DEPEND_MODULES}
47 DEPENDS+=       wbm-${m}>=${WBM_VERSION}:../../sysutils/wbm-${m}
48 .endfor
49
50 EVAL_PREFIX+=   PREFIX.webmin=webmin
51 WEBMIN_DIR=     ${PREFIX.webmin}/share/webmin
52 WEBMIN_EGDIR=   ${PREFIX.webmin}/share/examples/webmin
53 WEBMIN_VARDIR=  ${VARBASE}/webmin
54 WBM_DIR=        ${PREFIX}/share/webmin
55 WBM_EGDIR=      ${PREFIX}/share/examples/webmin
56
57
58 PKG_SYSCONFSUBDIR=      webmin
59 OWN_DIRS_PERMS+=        ${PKG_SYSCONFDIR}/${WBM_NAME}                   \
60                         ${ROOT_USER} ${ROOT_GROUP} 0700
61 CONF_FILES_PERMS+=      ${WBM_EGDIR}/${WBM_NAME}/config                 \
62                         ${PKG_SYSCONFDIR}/${WBM_NAME}/config            \
63                         ${ROOT_USER} ${ROOT_GROUP} 0600
64 FILES_SUBST+=           WBM_NAME=${WBM_NAME:Q}
65 FILES_SUBST+=           WEBMIN_DIR=${WEBMIN_DIR:Q}
66 FILES_SUBST+=           WEBMIN_VARDIR=${WEBMIN_VARDIR:Q}
67 BUILD_DEFS+=            VARBASE
68
69 INSTALL_TEMPLATES+=     ${PKGSRCDIR}/sysutils/webmin/files/wbm-install.tmpl
70 DEINSTALL_TEMPLATES+=   ${PKGSRCDIR}/sysutils/webmin/files/wbm-deinstall.tmpl
71
72 # WBM_NAME is the name of the module directory
73 WBM_NAME?=              ${DISTNAME}
74 WEBMIN_OSTYPE_cmd=      ${AWK} '/^os_type=/ {sub("os_type=",""); print}' \
75                         ${WEBMIN_EGDIR}/config
76 WEBMIN_OSVERSION_cmd=   ${AWK} '/^os_version=/ {sub("os_version=",""); print}' \
77                         ${WEBMIN_EGDIR}/config
78
79 .PHONY: wbm-configure wbm-build wbm-install
80
81 wbm-configure:
82         ${FIND} ${WBMSRC} -name "*.orig" -print | ${XARGS} ${RM} -f
83
84 wbm-build:
85         ${FIND} ${WBMSRC} -name '*.cgi' -print -o -name '*.pl' -print | \
86         ${PERL5} ${WEBMIN_DIR}/perlpath.pl ${PERL5} -
87
88 wbm-install:
89         ${CP} -R ${WBMSRC} ${WBM_DIR}/.
90         ${PERL5} ${WEBMIN_DIR}/copyconfig.pl                            \
91                 ${WEBMIN_OSTYPE_cmd:sh:Q} ${WEBMIN_OSVERSION_cmd:sh:Q}  \
92                 ${WBM_DIR} ${WBM_EGDIR} ${WBM_NAME}
93
94 do-configure: wbm-configure
95 do-build: wbm-build
96 do-install: wbm-install