update Sun Jan 17 06:37:00 PST 2010
[pkgsrc.git] / sysutils / xentools20 / Makefile
1 # $NetBSD: Makefile,v 1.35 2010/01/17 12:02:46 wiz Exp $
2 #
3
4 DISTNAME=               xen-2.0.7-src
5 PKGNAME=                xentools20-2.0.7
6 PKGREVISION=            12
7 CATEGORIES=             sysutils
8 MASTER_SITES=           http://www.cl.cam.ac.uk/research/srg/netos/xen/downloads/
9 EXTRACT_SUFX=           .tgz
10
11 MAINTAINER=             bouyer@NetBSD.org
12 HOMEPAGE=               http://www.cl.cam.ac.uk/research/srg/netos/xen/
13 COMMENT=                Userland Tools for Xen
14
15 DEPENDS+=               ${PYPKGPREFIX}-twisted-[0-9]*:../../net/py-twisted
16
17 PKG_SYSCONFSUBDIR=      xen
18
19 ONLY_FOR_PLATFORM=      Linux-2.[46]*-i386 NetBSD-*-i386
20
21 CONFLICTS+=             libxen-[0-9]*
22
23 WRKSRC=                 ${WRKDIR}/xen-2.0/tools
24
25 EGDIR=                  ${PREFIX}/share/examples/xen
26 MESSAGE_SUBST=          EGDIR=${EGDIR}
27
28 USE_TOOLS+=             gmake
29 MAKE_ENV+=              EGDIR=${EGDIR:Q}
30 MAKE_ENV+=              MV=${MV:Q} PYTHON=${PYTHONBIN:Q} SED=${SED:Q}
31 PY_PATCHPLIST=          yes
32 PYTHON_PATCH_SCRIPTS=   python/xen/util/console_client.py
33 PYTHON_PATCH_SCRIPTS+=  python/xen/xend/server/SrvServer.py
34 PYTHON_PATCH_SCRIPTS+=  python/xen/xend/XendClient.py
35 PYTHON_PATCH_SCRIPTS+=  python/xen/xend/sxp.py
36 PYTHON_PATCH_SCRIPTS+=  xfrd/xfrdClient.py
37 PYTHON_PATCH_SCRIPTS+=  misc/xensymoops
38 PYTHON_PATCH_SCRIPTS+=  misc/xencons
39 PYTHON_PATCH_SCRIPTS+=  misc/xm
40 PYTHON_PATCH_SCRIPTS+=  misc/xensv
41 PYTHON_PATCH_SCRIPTS+=  misc/netfix
42 PYTHON_PATCH_SCRIPTS+=  misc/xend
43 PYTHON_PATCH_SCRIPTS+=  xentrace/xentrace_format
44
45 SUBST_CLASSES+=          paths py conf
46 SUBST_STAGE.paths=      pre-configure
47 SUBST_FILES.paths=      python/xen/xend/server/SrvDaemon.py
48 SUBST_FILES.paths+=     python/xen/xend/XendDomainInfo.py
49 SUBST_FILES.paths+=     python/xen/sv/Daemon.py
50 SUBST_SED.paths=        -e "s|/usr/sbin|${PREFIX}/sbin|g"
51 SUBST_MESSAGE.paths=    Fixing hardcoded paths.
52
53 SUBST_STAGE.py=         pre-configure
54 SUBST_FILES.py=         python/Makefile
55 SUBST_SED.py=           -e "s,python,${PYTHONBIN},g"
56
57 SUBST_STAGE.conf=       pre-configure
58 SUBST_FILES.conf=       python/xen/xend/XendRoot.py
59 SUBST_SED.conf=         -e "s,@XENDCONFDIR@,${PKG_SYSCONFDIR},g"
60
61 .include "../../mk/bsd.prefs.mk"
62
63 .if ${OPSYS} == "NetBSD"
64 SUBST_CLASSES+=         proc
65 SUBST_STAGE.proc=       pre-configure
66 SUBST_FILES.proc=       python/xen/xend/XendVnet.py
67 SUBST_FILES.proc+=      libxc/xc_misc.c
68 SUBST_FILES.proc+=      xentrace/xentrace.c
69 SUBST_SED.proc=         -e "s|/proc|/kern|g"
70 PROCPATH=               /kern
71 .else
72 PROCPATH=               /proc
73 .endif
74
75 RCD_SCRIPTS=            xend xendomains
76 FILES_SUBST+=           RCD_INTERPRETER=${PYTHONBIN:Q}
77 FILES_SUBST+=           PROCPATH=${PROCPATH:Q}
78 FILES_SUBST+=           PKG_SYSCONFDIR=${PKG_SYSCONFDIR:Q}
79
80 XEND_SCRIPTS=           network block-enbd vif-bridge block-file
81
82 CONF_FILES=             ${EGDIR}/xend-config.sxp \
83                         ${PKG_SYSCONFDIR}/xend-config.sxp
84 .for s in ${XEND_SCRIPTS}
85 CONF_FILES_PERMS+=      ${EGDIR}/${s} ${PKG_SYSCONFDIR}/${s}            \
86                         ${ROOT_USER} ${ROOT_GROUP} 0755
87 .endfor
88
89 pre-build:
90         ${MKDIR} ${WRKSRC}/libxc/xen/NetBSD
91         ${CP} ${FILESDIR}/xenio.h ${WRKSRC}/libxc/xen/NetBSD
92
93 .if ${OPSYS} == "NetBSD"
94 post-build:
95         cd ${FILESDIR}; for src in *-nbsd; do                           \
96                 dst="$${src%-nbsd}";                                    \
97                 ${SED}  -e "s|@PKG_SYSCONFDIR@|${PKG_SYSCONFDIR}|g"     \
98                         $$src > ${WRKSRC}/examples/$$dst;               \
99         done
100 .endif
101
102 post-install:
103         ${INSTALL_DATA_DIR} ${EGDIR}
104         for f in xend-config.sxp xmexample1 xmexample2 xmexample3; do   \
105                 ${INSTALL_DATA} ${WRKSRC}/examples/$$f ${EGDIR}/$$f;    \
106         done
107 .for s in ${XEND_SCRIPTS}
108         ${INSTALL_SCRIPT} ${WRKSRC}/examples/${s} ${EGDIR}/${s}
109 .endfor
110
111 .include "../../lang/python/application.mk"
112 .include "../../lang/python/extension.mk"
113 .include "../../devel/zlib/buildlink3.mk"
114 .include "../../www/curl/buildlink3.mk"
115
116 .include "../../mk/bsd.pkg.mk"