76c5d261b46689a084728ea97e685fb5ab5a6f75
[build.git] / Makefile
1 #
2 # PlanetLab RPM generation
3 #
4 # Mark Huang <mlhuang@cs.princeton.edu>
5 # Copyright (C) 2003-2006 The Trustees of Princeton University
6 #
7 # $Id: Makefile,v 1.89 2007/09/12 20:26:20 mef Exp $
8 #
9
10 # Default target
11 all:
12
13 # By default, the naming convention for built RPMS is
14 # <name>-<version>-<release>.<PLDISTRO>.<arch>.rpm
15 # Set PLDISTRO on the command line to differentiate between downstream
16 # variants.
17 PLDISTRO := planetlab
18
19 include $(PLDISTRO).mk
20
21 RPMBUILD ?= bash ./rpmbuild.sh
22 CVS_RSH ?= ssh
23
24 ifeq ($(findstring $(package),$(ALL)),)
25
26 # Build all packages
27 all: $(ALL)
28
29 # Recurse
30 $(ALL):
31         @echo -n "XXXXXXXXXXXXXXX -- BEG $@ " ; date
32         $(MAKE) package=$@
33         @echo -n "XXXXXXXXXXXXXXX -- END $@ " ; date
34
35 # Remove files generated by this package
36 $(foreach package,$(ALL),$(package)-clean): %-clean:
37         $(MAKE) package=$* clean
38
39 # Remove all generated files
40 clean:
41         rm -rf BUILD RPMS SOURCES SPECS SRPMS .rpmmacros tmp parseSpec
42
43 .PHONY: all $(ALL) $(foreach package,$(ALL),$(package)-clean) clean
44
45 else
46
47 # Define variables for Rules.mk
48 #CVSROOT := $(if $($(package)-CVSROOT),$($(package)-CVSROOT),$(CVSROOT))
49 #SVNPATH := $(if $($(package)-SVNPATH),$($(package)-SVNPATH),$(SVNPATH))
50 TAG := $(if $($(package)-TAG),$($(package)-TAG),$(TAG))
51 MODULE := $($(package)-MODULE)
52 SPEC := $($(package)-SPEC)
53 RPMFLAGS := $(if $($(package)-RPMFLAGS),$($(package)-RPMFLAGS),$(RPMFLAGS))
54 RPMBUILD := $(if $($(package)-RPMBUILD),$($(package)-RPMBUILD),$(RPMBUILD))
55 CVS_RSH := $(if $($(package)-CVS_RSH),$($(package)-CVS_RSH),$(CVS_RSH))
56
57 include Rules.mk
58
59 endif