f79d198387b4e2da1b798a3ab6c7f79dbc56d4c8
[zope-bootstrap.git] / Makefile.zope3-buildout
1 # -*- makefile -*-
2
3 ADMINUSER ?= admin
4 ADMINPWD ?= admin
5 EGGDIR ?= downloads
6
7 ZOPEPROJECT = $(BASEDIR)/$(PYTHON_DIR)/bin/zopeproject
8
9 buildout.cfg:
10         @[ -n "$(PROJECTNAME)" ] || (echo "PROJECTNAME not set"; exit 2)
11         @(                                                                                                                 \
12             mkdir $(BASEDIR)/temp-project && cd $(BASEDIR)/temp-project &&                                                 \
13             echo "zopeproject --no-buildout \"$(PROJECTNAME)\"" &&                                                         \
14             (echo "$(ADMINUSER)"; echo "$(ADMINPWD)"; echo "$(EGGDIR)") | $(ZOPEPROJECT) --no-buildout "$(PROJECTNAME)" && \
15             mv $(PROJECTNAME)/* $(BASEDIR)/                                                                                \
16         ) || ( rm -rf temp-project; false )
17         @echo
18         @(rm -rf $(BASEDIR)/temp-project)
19         @sed -i -e '/\[buildout\]/ba' -eb -e:a                  \
20             -ea\\ -e 'download-cache = $(DLCACHE)/downloads'    \
21             -ea\\ -e 'install-from-cache = true'                \
22             -ea\\ -e 'extends-cache = $(DLCACHE)/extends'       \
23                 buildout.cfg || ( rm -f buildout.cfg; false )
24         @mkdir -p $(DLCACHE)/downloads $(DLCACHE)/extends || ( rm -f buildout.cfg; false )
25
26 ###########################################################################
27
28 eggs::
29         @$(install) zopeproject
30
31 buildout:: buildout.cfg
32
33 bootstrap::
34         @[ -n "$(PROJECTNAME)" ] || (echo "PROJECTNAME not set"; exit 2)
35         @(                                                              \
36             cd bin &&                                                   \
37             for script in ctl debug; do                                 \
38                 (                                                       \
39                     echo "#!/bin/sh";                                   \
40                     echo 'cd "`dirname "$$0"`/.."';                     \
41                     echo "exec bin/$(PROJECTNAME)-$$script"' "$$@"'     \
42                 ) > $$script;                                           \
43                 chmod ugo+rx $$script;                                  \
44                 echo "Generated script '$(BASEDIR)/bin/$$script'.";     \
45             done                                                        \
46         )
47
48 .gitignore::
49         @$(gitignore) "/bin/"
50         @$(gitignore) "/develop-eggs/"
51         @$(gitignore) "/downloads/"
52         @$(gitignore) "/log/"
53         @$(gitignore) "/var/"
54         @$(gitignore) "/.installed.cfg"
55
56
57 .env::
58         @$(env) PATH $(BASEDIR)/bin
59
60 clean::
61         rm -rf log var develop-eggs parts