Fix -nonet targets (zope3-buildout)
[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 buildout-net.cfg:
27         @(                                      \
28             echo "[buildout]";                  \
29             echo "extends = buildout.cfg";      \
30             echo "install-from-cache = false";  \
31             echo "newest = true";               \
32         ) >  buildout-net.cfg
33
34
35 ###########################################################################
36
37 eggs::
38         @$(install) zopeproject
39
40 buildout:: buildout.cfg buildout-net.cfg
41
42 bootstrap::
43         @[ -n "$(PROJECTNAME)" ] || (echo "PROJECTNAME not set"; exit 2)
44         @(                                                              \
45             cd bin &&                                                   \
46             for script in ctl debug; do                                 \
47                 (                                                       \
48                     echo "#!/bin/sh";                                   \
49                     echo 'cd "`dirname "$$0"`/.."';                     \
50                     echo "exec bin/$(PROJECTNAME)-$$script"' "$$@"'     \
51                 ) > $$script;                                           \
52                 chmod ugo+rx $$script;                                  \
53                 echo "Generated script '$(BASEDIR)/bin/$$script'.";     \
54             done                                                        \
55         )
56
57 .gitignore::
58         @$(gitignore) "/bin/"
59         @$(gitignore) "/develop-eggs/"
60         @$(gitignore) "/downloads/"
61         @$(gitignore) "/log/"
62         @$(gitignore) "/var/"
63         @$(gitignore) "/.installed.cfg"
64
65 .env::
66         @$(env) PATH $(BASEDIR)/bin
67
68 clean::
69         rm -rf log var develop-eggs parts
70
71 BUILDOUT_OPTS = -c buildout-net.cfg
72
73 init-nonet: BUILDOUT_OPTS =
74 update-nonet: BUILDOUT_OPTS =