2 # declare the packages to be built and their dependencies
3 # initial version from Mark Huang
4 # Mark Huang <mlhuang@cs.princeton.edu>
5 # Copyright (C) 2003-2006 The Trustees of Princeton University
6 # rewritten by Thierry Parmentelat - INRIA Sophia Antipolis
11 ### the madwifi drivers ship with fedora16's kernel rpm
14 # lxc-userspace: scripts for entering containers
16 lxc-userspace-MODULES := lxc-userspace
17 lxc-userspace-SPEC := lxc-userspace.spec
19 IN_NODEIMAGE += lxc-userspace
22 # transforward: root context module for transparent port forwarding
24 # with 4.19, the jprobe api has gone entirely
25 # https://github.com/torvalds/linux/commit/4de58696de076d9bd2745d1cbe0930635c3f5ac9
27 ifneq "$(DISTRONAME)" "$(filter $(DISTRONAME), f29 f31 f33)"
29 transforward-MODULES := transforward
30 transforward-SPEC := transforward.spec
32 IN_NODEIMAGE += transforward
36 # procprotect: root context module for protecting against weaknesses in /proc
41 # ipfw: root context module, and slice companion
46 # comgt - a companion to umts tools
48 comgt-MODULES := comgt
49 comgt-SPEC := comgt.spec
54 # umts: root context stuff
56 umts-backend-MODULES := planetlab-umts-tools
57 umts-backend-SPEC := backend.spec
58 IN_NODEIMAGE += umts-backend
64 umts-frontend-MODULES := planetlab-umts-tools
65 umts-frontend-SPEC := frontend.spec
66 IN_SLICEIMAGE += umts-frontend
72 nodeupdate-MODULES := nodeupdate
73 nodeupdate-SPEC := NodeUpdate.spec
75 IN_NODEIMAGE += nodeupdate
80 ipod-MODULES := PingOfDeath
81 ipod-SPEC := ipod.spec
88 plnode-utils-MODULES := plnode-utils
89 plnode-utils-SPEC := plnode-utils-lxc.spec
91 IN_NODEIMAGE += plnode-utils
96 nodemanager-MODULES := nodemanager
97 nodemanager-SPEC := nodemanager.spec
99 IN_NODEIMAGE += nodemanager
104 sshd-MODULES := pl_sshd
105 sshd-SPEC := pl_sshd.spec
110 # codemux: Port 80 demux
112 codemux-MODULES := codemux
113 codemux-SPEC := codemux.spec
115 IN_NODEIMAGE += codemux
123 # our own brew of libvirt
124 # is no longer needed since f22
130 pf2slice-MODULES := pf2slice
131 pf2slice-SPEC := pf2slice.spec
138 vsys-SPEC := vsys.spec
139 # ocaml-docs is not needed anymore but keep it on a tmp basis as some tags may still have it
140 vsys-STOCK-DEVEL-RPMS += ocaml-ocamldoc ocaml-docs
145 # vsyssh : installed in slivers
147 vsyssh-MODULES := vsys
148 vsyssh-SPEC := vsyssh.spec
149 IN_SLICEIMAGE += vsyssh
155 vsys-scripts-MODULES := vsys-scripts
156 vsys-scripts-SPEC := root-context/vsys-scripts.spec
157 IN_NODEIMAGE += vsys-scripts
160 vsys-wrapper-MODULES := vsys-scripts
161 vsys-wrapper-SPEC := slice-context/vsys-wrapper.spec
162 IN_SLICEIMAGE += vsys-wrapper
168 bind_public-MODULES := bind_public
169 bind_public-SPEC := bind_public.spec
170 IN_SLICEIMAGE += bind_public
173 # in fedora 29, this triggers nasty-looking compile messages
174 # not trying too hard, we're mostly after the server-side of f29 and above
175 ifneq "$(DISTRONAME)" "$(filter $(DISTRONAME), f29 f31 f33)"
179 sliver-openvswitch-MODULES := sliver-openvswitch
180 sliver-openvswitch-SPEC := sliver-openvswitch.spec
181 IN_SLICEIMAGE += sliver-openvswitch
182 ALL += sliver-openvswitch
188 plcapi-MODULES := plcapi
189 plcapi-SPEC := plcapi.spec
196 drupal-MODULES := drupal
197 drupal-SPEC := drupal.spec
198 drupal-BUILD-FROM-SRPM := yes
203 # use the plewww module instead
205 plewww-MODULES := plewww
206 plewww-SPEC := plewww.spec
211 # www-register-wizard
213 www-register-wizard-MODULES := www-register-wizard
214 www-register-wizard-SPEC := www-register-wizard.spec
215 ALL += www-register-wizard
216 IN_MYPLC += www-register-wizard
221 # WARNING: as of f27 I have to remove support for SSL in pcucontrol
222 # see pcucontrol.spec for details
223 pcucontrol-MODULES := pcucontrol
224 pcucontrol-SPEC := pcucontrol.spec
230 #monitor-MODULES := monitor
231 #monitor-SPEC := Monitor.spec
232 #monitor-STOCK-DEVEL-RPMS += net-snmp net-snmp-devel
234 #IN_NODEIMAGE += monitor
239 plcrt-MODULES := PLCRT
240 plcrt-SPEC := plcrt.spec
245 nodeconfig-MODULES := nodeconfig
246 nodeconfig-SPEC := nodeconfig.spec
248 IN_MYPLC += nodeconfig
253 bootmanager-MODULES := bootmanager
254 bootmanager-SPEC := bootmanager.spec
256 IN_MYPLC += bootmanager
259 # pypcilib : used in bootcd
261 pypcilib-MODULES := pypcilib
262 pypcilib-SPEC := pypcilib.spec
264 IN_BOOTCD += pypcilib
269 pyplnet-MODULES := pyplnet
270 pyplnet-SPEC := pyplnet.spec
272 IN_NODEIMAGE += pyplnet
279 bootcd-MODULES := bootcd build
280 bootcd-SPEC := bootcd.spec
281 bootcd-DEPEND-PACKAGES := $(IN_BOOTCD)
282 bootcd-DEPEND-FILES := RPMS/yumgroups.xml
283 bootcd-RPMDATE := yes
290 sliceimage-MODULES := sliceimage build
291 sliceimage-SPEC := sliceimage.spec
292 sliceimage-DEPEND-PACKAGES := $(IN_SLICEIMAGE)
293 sliceimage-DEPEND-FILES := RPMS/yumgroups.xml
294 sliceimage-RPMDATE := yes
296 IN_NODEIMAGE += sliceimage
299 # lxc-specific sliceimage initialization
301 lxc-sliceimage-MODULES := sliceimage
302 lxc-sliceimage-SPEC := lxc-sliceimage.spec
303 lxc-sliceimage-RPMDATE := yes
304 ALL += lxc-sliceimage
305 IN_NODEIMAGE += lxc-sliceimage
310 nodeimage-MODULES := nodeimage build
311 nodeimage-SPEC := nodeimage.spec
312 nodeimage-DEPEND-PACKAGES := $(IN_NODEIMAGE)
313 nodeimage-DEPEND-FILES := RPMS/yumgroups.xml
314 nodeimage-RPMDATE := yes
316 IN_MYPLC += nodeimage
321 # all rpms resulting from packages marked as being in nodeimage and sliceimage
322 NODEREPO_RPMS = $(foreach package,$(IN_NODEIMAGE) $(IN_NODEREPO) $(IN_SLICEIMAGE),$($(package).rpms))
323 # replace space with +++ (specvars cannot deal with spaces)
325 NODEREPO_RPMS_3PLUS = $(subst $(SPACE),+++,$(NODEREPO_RPMS))
327 noderepo-MODULES := nodeimage
328 noderepo-SPEC := noderepo.spec
329 # package requires all embedded packages
330 noderepo-DEPEND-PACKAGES := $(IN_NODEIMAGE) $(IN_NODEREPO) $(IN_SLICEIMAGE)
331 noderepo-DEPEND-FILES := RPMS/yumgroups.xml
332 #export rpm list to the specfile
333 noderepo-SPECVARS = node_rpms_plus=$(NODEREPO_RPMS_3PLUS)
334 noderepo-RPMDATE := yes
341 # all rpms resulting from packages marked as being in vserver
342 SLICEREPO_RPMS = $(foreach package,$(IN_SLICEIMAGE),$($(package).rpms))
343 # replace space with +++ (specvars cannot deal with spaces)
345 SLICEREPO_RPMS_3PLUS = $(subst $(SPACE),+++,$(SLICEREPO_RPMS))
347 slicerepo-MODULES := nodeimage
348 slicerepo-SPEC := slicerepo.spec
349 # package requires all embedded packages
350 slicerepo-DEPEND-PACKAGES := $(IN_SLICEIMAGE)
351 slicerepo-DEPEND-FILES := RPMS/yumgroups.xml
352 #export rpm list to the specfile
353 slicerepo-SPECVARS = slice_rpms_plus=$(SLICEREPO_RPMS_3PLUS)
354 slicerepo-RPMDATE := yes
358 # MyPLC : lightweight packaging, dependencies are yum-installed in a vserver
360 myplc-MODULES := myplc
361 myplc-SPEC := myplc.spec
362 myplc-DEPEND-FILES := myplc-release RPMS/yumgroups.xml
365 # myplc-docs only contains docs for PLCAPI and NMAPI, but
366 # we still need to pull MyPLC, as it is where the specfile lies,
367 # together with the utility script docbook2drupal.sh
368 myplc-docs-MODULES := myplc plcapi nodemanager monitor
369 myplc-docs-SPEC := myplc-docs.spec
372 # using some other name than myplc-release, as this is a make target already
373 release-MODULES := myplc
374 release-SPEC := myplc-release.spec
375 release-RPMDATE := yes
378 ##############################
380 # sfa - Slice Facility Architecture
382 # this is python2, somehow the tests won't pass against a py3 plcapi
383 # oddly enough, when the py2 sfa code issues xmlrpc calls over ssl
384 # to the underlying myplc, we get SSL handshake issues
385 # so, let's keep this out of the way for now
386 # 2019 mar 27: reinstating for hopefully connecting fed4fire
388 #ifneq "$(DISTRONAME)" "$(filter $(DISTRONAME), f27 f29 f31)"