X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=lxc.mk;h=9e23601ea20a1de27e540f7ccb5582caf5397b8b;hb=70240d9d466ff02cd8bea1c6164d91b602d5dd7e;hp=1fb58ed4aa69673e678a69cb355961f1f8b4e55c;hpb=fd1b5faa5199598eaa153514fe22b043e714db32;p=build.git diff --git a/lxc.mk b/lxc.mk index 1fb58ed4..9e23601e 100644 --- a/lxc.mk +++ b/lxc.mk @@ -9,35 +9,32 @@ # # -# kernel -# -# use a package name with srpm in it: -# so the source rpm is created by running make srpm in the codebase -# - -# rebuild kernel-3.1 on fedora14 due to instabilities of the stock kernel -ifeq "$(DISTRONAME)" "f14" -kernel-MODULES := linux-3 -kernel-SPEC := kernel-3.1.spec -kernel-DEVEL-RPMS += gettext elfutils-devel -kernel-BUILD-FROM-SRPM := yes -ifeq "$(HOSTARCH)" "i386" -kernel-RPMFLAGS:= --target i686 --with firmware -else -kernel-RPMFLAGS:= --target $(HOSTARCH) --with firmware -endif -kernel-SPECVARS += kernelconfig=planetlab -KERNELS += kernel +# transforward: root context module for transparent port forwarding +# +transforward-MODULES := transforward +transforward-SPEC := transforward.spec +ALL += transforward +IN_NODEIMAGE += transforward -kernels: $(KERNELS) -kernels-clean: $(foreach package,$(KERNELS),$(package)-clean) +# +# procprotect: root context module for protecting against weaknesses in /proc +# +procprotect-MODULES := procprotect +procprotect-SPEC := procprotect.spec +ALL += procprotect +IN_NODEIMAGE += procprotect -ALL += $(KERNELS) -# this is to mark on which image a given rpm is supposed to go -IN_BOOTCD += $(KERNELS) -IN_SLIVER += $(KERNELS) -IN_BOOTSTRAPFS += $(KERNELS) -endif +# +# ipfw: root context module, and slice companion +# +ipfwroot-MODULES := ipfw +ipfwroot-SPEC := planetlab/ipfwroot.spec +ALL += ipfwroot +IN_NODEIMAGE += ipfwroot + +ipfwslice-MODULES := ipfw +ipfwslice-SPEC := planetlab/ipfwslice.spec +ALL += ipfwslice # # NodeUpdate @@ -45,7 +42,7 @@ endif nodeupdate-MODULES := nodeupdate nodeupdate-SPEC := NodeUpdate.spec ALL += nodeupdate -IN_BOOTSTRAPFS += nodeupdate +IN_NODEIMAGE += nodeupdate # # ipod @@ -53,15 +50,20 @@ IN_BOOTSTRAPFS += nodeupdate ipod-MODULES := PingOfDeath ipod-SPEC := ipod.spec ALL += ipod -IN_BOOTSTRAPFS += ipod +IN_NODEIMAGE += ipod # -# NodeManager +# nodemanager # -nodemanager-MODULES := nodemanager -nodemanager-SPEC := NodeManager.spec -ALL += nodemanager -IN_BOOTSTRAPFS += nodemanager +nodemanager-lib-MODULES := nodemanager +nodemanager-lib-SPEC := nodemanager-lib.spec +ALL += nodemanager-lib +IN_NODEIMAGE += nodemanager-lib + +nodemanager-lxc-MODULES := nodemanager +nodemanager-lxc-SPEC := nodemanager-lxc.spec +ALL += nodemanager-lxc +IN_NODEIMAGE += nodemanager-lxc # # pl_sshd @@ -69,7 +71,7 @@ IN_BOOTSTRAPFS += nodemanager sshd-MODULES := pl_sshd sshd-SPEC := pl_sshd.spec ALL += sshd -IN_BOOTSTRAPFS += sshd +IN_NODEIMAGE += sshd # # codemux: Port 80 demux @@ -77,7 +79,7 @@ IN_BOOTSTRAPFS += sshd codemux-MODULES := codemux codemux-SPEC := codemux.spec ALL += codemux -IN_BOOTSTRAPFS += codemux +IN_NODEIMAGE += codemux # # fprobe-ulog @@ -85,8 +87,15 @@ IN_BOOTSTRAPFS += codemux fprobe-ulog-MODULES := fprobe-ulog fprobe-ulog-SPEC := fprobe-ulog.spec ALL += fprobe-ulog -IN_BOOTSTRAPFS += fprobe-ulog +IN_NODEIMAGE += fprobe-ulog + +#################### libvirt on f16 is too old, sounds like f17 has something fine +local_libvirt=false +ifeq "$(DISTRONAME)" "f16" +local_libvirt=true +endif +ifeq "$(local_libvirt)" "true" # # libvirt # @@ -106,7 +115,8 @@ libvirt-RPMFLAGS := --without storage-disk --without storage-iscsi --without sto --define 'packager PlanetLab' ALL += libvirt IN_NODEREPO += libvirt -IN_BOOTSTRAPFS += libvirt +IN_NODEIMAGE += libvirt +endif # # DistributedRateLimiting @@ -129,11 +139,11 @@ ALL += pf2slice #mom-MODULES := Mom #mom-SPEC := pl_mom.spec #ALL += mom -#IN_BOOTSTRAPFS += mom +#IN_NODEIMAGE += mom # # inotify-tools - local import -# rebuild this on centos5 (not found) - see kexcludes in build.common +# rebuild this on centos5 (not found) - see yumexclude # local_inotify_tools=false ifeq "$(DISTRONAME)" "centos5" @@ -148,18 +158,21 @@ ifeq "$(local_inotify_tools)" "true" inotify-tools-MODULES := inotify-tools inotify-tools-SPEC := inotify-tools.spec inotify-tools-BUILD-FROM-SRPM := yes -IN_BOOTSTRAPFS += inotify-tools +IN_NODEIMAGE += inotify-tools ALL += inotify-tools endif # # openvswitch # -openvswitch-MODULES := openvswitch -openvswitch-SPEC := openvswitch.spec -openvswitch-DEPEND-DEVEL-RPMS += kernel-devel -#IN_BOOTSTRAPFS += openvswitch -#ALL += openvswitch +# openvswitch-MODULES := openvswitch +# openvswitch-SPEC := openvswitch.spec +# openvswitch-DEPEND-DEVEL-RPMS += kernel-devel +# IN_NODEIMAGE += openvswitch +# # build only on f14 as f16 has this natively +# ifeq "$(DISTRONAME)" "$(filter $(DISTRONAME),f14)" +# ALL += openvswitch +# endif # # vsys @@ -171,7 +184,7 @@ vsys-DEVEL-RPMS += ocaml-ocamldoc ocaml-docs ifeq "$(local_inotify_tools)" "true" vsys-DEPEND-DEVEL-RPMS += inotify-tools inotify-tools-devel endif -IN_BOOTSTRAPFS += vsys +IN_NODEIMAGE += vsys ALL += vsys # @@ -179,7 +192,7 @@ ALL += vsys # vsyssh-MODULES := vsys vsyssh-SPEC := vsyssh.spec -IN_SLIVER += vsyssh +IN_SLICEIMAGE += vsyssh ALL += vsyssh # @@ -187,9 +200,17 @@ ALL += vsyssh # vsys-scripts-MODULES := vsys-scripts vsys-scripts-SPEC := vsys-scripts.spec -IN_BOOTSTRAPFS += vsys-scripts +IN_NODEIMAGE += vsys-scripts ALL += vsys-scripts +# +# portforward +# +portforward-MODULES := portforward +portforward-SPEC := portforward.spec +IN_SLICEIMAGE += portforward +ALL += portforward + # # plcapi # @@ -237,7 +258,7 @@ ALL += pcucontrol #monitor-SPEC := Monitor.spec #monitor-DEVEL-RPMS += net-snmp net-snmp-devel #ALL += monitor -#IN_BOOTSTRAPFS += monitor +#IN_NODEIMAGE += monitor # # PLC RT @@ -265,22 +286,10 @@ pyaspects-SPEC := pyaspects.spec pyaspects-BUILD-FROM-SRPM := yes ALL += pyaspects -# -# ejabberd -# -ejabberd-MODULES := ejabberd -ejabberd-SPEC := ejabberd.spec -ejabberd-BUILD-FROM-SRPM := yes -ejabberd-DEVEL-RPMS += erlang pam-devel hevea -# not needed anymore on f12 and above, that come with 2.1.5, and we had 2.1.3 -# so, this is relevant on f8 and centos5 only -ifeq "$(DISTRONAME)" "$(filter $(DISTRONAME),f8 centos5)" -ALL += ejabberd -endif - # sfa now uses the with statement that's not supported on python-2.4 - not even through __future__ +# In addition we now use sqlalchemy and 0.5 as per f12 is not compatible with our model build_sfa=true -ifeq "$(DISTRONAME)" "centos5" +ifeq "$(DISTRONAME)" "$(filter $(DISTRONAME),f8 f12 centos5)" build_sfa=false endif @@ -291,11 +300,11 @@ ifeq "$(build_sfa)" "true" sfa-MODULES := sfa sfa-SPEC := sfa.spec ALL += sfa -endif sface-MODULES := sface sface-SPEC := sface.spec ALL += sface +endif # # nodeconfig @@ -327,7 +336,7 @@ IN_BOOTCD += pypcilib pyplnet-MODULES := pyplnet pyplnet-SPEC := pyplnet.spec ALL += pyplnet -IN_BOOTSTRAPFS += pyplnet +IN_NODEIMAGE += pyplnet IN_MYPLC += pyplnet IN_BOOTCD += pyplnet @@ -337,7 +346,7 @@ IN_BOOTCD += pyplnet omf-resctl-MODULES := omf omf-resctl-SPEC := omf-resctl.spec ALL += omf-resctl -IN_SLIVER += omf-resctl +IN_SLICEIMAGE += omf-resctl # # OMF exp controller @@ -358,37 +367,49 @@ ALL += bootcd IN_MYPLC += bootcd # -# LXC reference images +# images for slices # -lxcref-MODULES := lxc-reference -lxcref-SPEC := lxc-reference.spec -ALL += lxcref -IN_BOOTSTRAPFS += lxcref +sliceimage-MODULES := sliceimage build +sliceimage-SPEC := sliceimage.spec +sliceimage-DEPEND-PACKAGES := $(IN_SLICEIMAGE) +sliceimage-DEPEND-FILES := RPMS/yumgroups.xml +sliceimage-RPMDATE := yes +ALL += sliceimage +IN_NODEIMAGE += sliceimage + +# +# lxc-specific sliceimage initialization +# +lxc-sliceimage-MODULES := sliceimage +lxc-sliceimage-SPEC := lxc-sliceimage.spec +lxc-sliceimage-RPMDATE := yes +ALL += lxc-sliceimage +IN_NODEIMAGE += lxc-sliceimage # -# bootstrapfs +# nodeimage # -bootstrapfs-MODULES := bootstrapfs build -bootstrapfs-SPEC := bootstrapfs.spec -bootstrapfs-DEPEND-PACKAGES := $(IN_BOOTSTRAPFS) -bootstrapfs-DEPEND-FILES := RPMS/yumgroups.xml -bootstrapfs-RPMDATE := yes -ALL += bootstrapfs -IN_MYPLC += bootstrapfs +nodeimage-MODULES := nodeimage build +nodeimage-SPEC := nodeimage.spec +nodeimage-DEPEND-PACKAGES := $(IN_NODEIMAGE) +nodeimage-DEPEND-FILES := RPMS/yumgroups.xml +nodeimage-RPMDATE := yes +ALL += nodeimage +IN_MYPLC += nodeimage # # noderepo # -# all rpms resulting from packages marked as being in bootstrapfs and vserver -NODEREPO_RPMS = $(foreach package,$(IN_BOOTSTRAPFS) $(IN_NODEREPO) $(IN_SLIVER),$($(package).rpms)) +# all rpms resulting from packages marked as being in nodeimage and sliceimage +NODEREPO_RPMS = $(foreach package,$(IN_NODEIMAGE) $(IN_NODEREPO) $(IN_SLICEIMAGE),$($(package).rpms)) # replace space with +++ (specvars cannot deal with spaces) SPACE=$(subst x, ,x) NODEREPO_RPMS_3PLUS = $(subst $(SPACE),+++,$(NODEREPO_RPMS)) -noderepo-MODULES := bootstrapfs +noderepo-MODULES := nodeimage noderepo-SPEC := noderepo.spec # package requires all embedded packages -noderepo-DEPEND-PACKAGES := $(IN_BOOTSTRAPFS) $(IN_NODEREPO) $(IN_SLIVER) +noderepo-DEPEND-PACKAGES := $(IN_NODEIMAGE) $(IN_NODEREPO) $(IN_SLICEIMAGE) noderepo-DEPEND-FILES := RPMS/yumgroups.xml #export rpm list to the specfile noderepo-SPECVARS = node_rpms_plus=$(NODEREPO_RPMS_3PLUS) @@ -400,15 +421,15 @@ IN_MYPLC += noderepo # slicerepo # # all rpms resulting from packages marked as being in vserver -SLICEREPO_RPMS = $(foreach package,$(IN_SLIVER),$($(package).rpms)) +SLICEREPO_RPMS = $(foreach package,$(IN_SLICEIMAGE),$($(package).rpms)) # replace space with +++ (specvars cannot deal with spaces) SPACE=$(subst x, ,x) SLICEREPO_RPMS_3PLUS = $(subst $(SPACE),+++,$(SLICEREPO_RPMS)) -slicerepo-MODULES := bootstrapfs +slicerepo-MODULES := nodeimage slicerepo-SPEC := slicerepo.spec # package requires all embedded packages -slicerepo-DEPEND-PACKAGES := $(IN_SLIVER) +slicerepo-DEPEND-PACKAGES := $(IN_SLICEIMAGE) slicerepo-DEPEND-FILES := RPMS/yumgroups.xml #export rpm list to the specfile slicerepo-SPECVARS = slice_rpms_plus=$(SLICEREPO_RPMS_3PLUS)