Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 216 lines (161 sloc) 5.478 kb
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
1 PYTHON ?= python
2 WAF = $(PYTHON) tools/waf-light
90ab079 ry Use --jobs=1 with WAF
ry authored
3
8af0abd ry prepare for release - website under new user
ry authored
4 web_root = node@nodejs.org:~/web/nodejs.org/
ade8cf9 Micheil Smith Build API page into build/doc; simplify doctool.
miksago authored
5
7ea19d0 Robert Mustacchi Use same make as when originally invoked
rmustacc authored
6 #
7 # Because we recursively call make from waf we need to make sure that we are
8 # using the correct make. Not all makes are GNU Make, but this likely only
9 # works with gnu make. To deal with this we remember how the user invoked us
10 # via a make builtin variable and use that in all subsequent operations
11 #
12 export NODE_MAKE := $(MAKE)
13
e5a0fbe Rasmus Added support for cross compilation and also fixed DEST_CPU to represent...
rsms authored
14 all: program
a7300c8 ry WAF builds in out/ instead of build/
ry authored
15 @-[ -f out/Release/node ] && ls -lh out/Release/node
861f28f ry Don't unnecessarily output the makefile from the configure script.
ry authored
16
97c9745 ry Back to WAF
ry authored
17 all-progress:
18 @$(WAF) -p build
861f28f ry Don't unnecessarily output the makefile from the configure script.
ry authored
19
e5a0fbe Rasmus Added support for cross compilation and also fixed DEST_CPU to represent...
rsms authored
20 program:
21 @$(WAF) --product-type=program build
22
23 staticlib:
24 @$(WAF) --product-type=cstaticlib build
25
26 dynamiclib:
27 @$(WAF) --product-type=cshlib build
28
97c9745 ry Back to WAF
ry authored
29 install:
30 @$(WAF) install
bf0d278 ry Improve "make dist" remove generated doc from repo.
ry authored
31
97c9745 ry Back to WAF
ry authored
32 uninstall:
33 @$(WAF) uninstall
15594ea ry Replace WAF with make/autoconf
ry authored
34
97c9745 ry Back to WAF
ry authored
35 test: all
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
36 $(PYTHON) tools/test.py --mode=release simple message
bf0d278 ry Improve "make dist" remove generated doc from repo.
ry authored
37
38f948a Ben Noordhuis http: make http2 the default, legacy backend is available with --use-htt...
bnoordhuis authored
38 test-http1: all
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
39 $(PYTHON) tools/test.py --mode=release --use-http1 simple message
e1bb241 Ben Noordhuis test: add targets `test-http2` and `test-all-http2`
bnoordhuis authored
40
d02131d ry Add 'make test-valgrind'
ry authored
41 test-valgrind: all
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
42 $(PYTHON) tools/test.py --mode=release --valgrind simple message
d02131d ry Add 'make test-valgrind'
ry authored
43
97c9745 ry Back to WAF
ry authored
44 test-all: all
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
45 $(PYTHON) tools/test.py --mode=debug,release
d75de86 isaacs add 'make test-npm'
isaacs authored
46 make test-npm
861f28f ry Don't unnecessarily output the makefile from the configure script.
ry authored
47
38f948a Ben Noordhuis http: make http2 the default, legacy backend is available with --use-htt...
bnoordhuis authored
48 test-all-http1: all
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
49 $(PYTHON) tools/test.py --mode=debug,release --use-http1
e1bb241 Ben Noordhuis test: add targets `test-http2` and `test-all-http2`
bnoordhuis authored
50
d02131d ry Add 'make test-valgrind'
ry authored
51 test-all-valgrind: all
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
52 $(PYTHON) tools/test.py --mode=debug,release --valgrind
d02131d ry Add 'make test-valgrind'
ry authored
53
97c9745 ry Back to WAF
ry authored
54 test-release: all
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
55 $(PYTHON) tools/test.py --mode=release
6670154 ry 'make test' only runs the simple test
ry authored
56
97c9745 ry Back to WAF
ry authored
57 test-debug: all
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
58 $(PYTHON) tools/test.py --mode=debug
861f28f ry Don't unnecessarily output the makefile from the configure script.
ry authored
59
97c9745 ry Back to WAF
ry authored
60 test-message: all
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
61 $(PYTHON) tools/test.py message
125b868 ry Add message tests
ry authored
62
97c9745 ry Back to WAF
ry authored
63 test-simple: all
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
64 $(PYTHON) tools/test.py simple
ade8cf9 Micheil Smith Build API page into build/doc; simplify doctool.
miksago authored
65
97c9745 ry Back to WAF
ry authored
66 test-pummel: all
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
67 $(PYTHON) tools/test.py pummel
ade8cf9 Micheil Smith Build API page into build/doc; simplify doctool.
miksago authored
68
97c9745 ry Back to WAF
ry authored
69 test-internet: all
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
70 $(PYTHON) tools/test.py internet
04fac19 Arlo Breault Split tests.
arlolra authored
71
d75de86 isaacs add 'make test-npm'
isaacs authored
72 test-npm: all
73 ./node deps/npm/test/run.js
74
75 test-npm-publish: all
76 npm_package_config_publishtest=true ./node deps/npm/test/run.js
15286c8 ry Start 'make test-uv' command
ry authored
77
a7300c8 ry WAF builds in out/ instead of build/
ry authored
78 out/Release/node: all
ade8cf9 Micheil Smith Build API page into build/doc; simplify doctool.
miksago authored
79
80 apidoc_sources = $(wildcard doc/api/*.markdown)
a7300c8 ry WAF builds in out/ instead of build/
ry authored
81 apidocs = $(addprefix out/,$(apidoc_sources:.markdown=.html))
ade8cf9 Micheil Smith Build API page into build/doc; simplify doctool.
miksago authored
82
ae17e2d ry Fix doc generation for new website
ry authored
83 apidoc_dirs = out/doc out/doc/api/ out/doc/api/assets out/doc/about out/doc/community out/doc/logos
2392775 ry Fix make doc
ry authored
84
a7300c8 ry WAF builds in out/ instead of build/
ry authored
85 apiassets = $(subst api_assets,api/assets,$(addprefix out/,$(wildcard doc/api_assets/*)))
320e002 ry fix 'make doc'
ry authored
86
90d1e47 ry make doc improvements
ry authored
87 website_files = \
a7300c8 ry WAF builds in out/ instead of build/
ry authored
88 out/doc/index.html \
89 out/doc/v0.4_announcement.html \
90 out/doc/cla.html \
91 out/doc/sh_main.js \
92 out/doc/sh_javascript.min.js \
93 out/doc/sh_vim-dark.css \
5c0d11b isaacs doc: Add images to makefile
isaacs authored
94 out/doc/sh.css \
a7300c8 ry WAF builds in out/ instead of build/
ry authored
95 out/doc/logo.png \
ae17e2d ry Fix doc generation for new website
ry authored
96 out/doc/favicon.ico \
97 out/doc/pipe.css \
98 out/doc/about/index.html \
99 out/doc/close-downloads.png \
100 out/doc/community/index.html \
101 out/doc/community/not-invented-here.png \
5c0d11b isaacs doc: Add images to makefile
isaacs authored
102 out/doc/logos/index.html \
103 out/doc/microsoft-logo.png \
104 out/doc/ryan-speaker.jpg \
ae17e2d ry Fix doc generation for new website
ry authored
105 out/doc/download-logo.png \
106 out/doc/ebay-logo.png \
5c0d11b isaacs doc: Add images to makefile
isaacs authored
107 out/doc/footer-logo-alt.png \
ae17e2d ry Fix doc generation for new website
ry authored
108 out/doc/footer-logo.png \
5c0d11b isaacs doc: Add images to makefile
isaacs authored
109 out/doc/icons-interior.png \
ae17e2d ry Fix doc generation for new website
ry authored
110 out/doc/icons.png \
5c0d11b isaacs doc: Add images to makefile
isaacs authored
111 out/doc/home-icons.png \
112 out/doc/joyent-logo_orange_nodeorg-01.png \
ae17e2d ry Fix doc generation for new website
ry authored
113 out/doc/linkedin-logo.png \
5c0d11b isaacs doc: Add images to makefile
isaacs authored
114 out/doc/logo-light.png \
115 out/doc/mac_osx_nodejs_installer_logo.png \
ae17e2d ry Fix doc generation for new website
ry authored
116 out/doc/microsoft-logo.png \
117 out/doc/platform-icons.png \
5c0d11b isaacs doc: Add images to makefile
isaacs authored
118 out/doc/sponsored.png \
119 out/doc/twitter-bird.png \
120 out/doc/community-icons.png \
ae17e2d ry Fix doc generation for new website
ry authored
121 out/doc/yahoo-logo.png
a7300c8 ry WAF builds in out/ instead of build/
ry authored
122
ce3ccc8 Ben Noordhuis build: fix circular dependency in doc target
bnoordhuis authored
123 doc docs: out/Release/node $(apidoc_dirs) $(website_files) $(apiassets) $(apidocs)
320e002 ry fix 'make doc'
ry authored
124
ade8cf9 Micheil Smith Build API page into build/doc; simplify doctool.
miksago authored
125 $(apidoc_dirs):
126 mkdir -p $@
2392775 ry Fix make doc
ry authored
127
a7300c8 ry WAF builds in out/ instead of build/
ry authored
128 out/doc/api/assets/%: doc/api_assets/% out/doc/api/assets/
ade8cf9 Micheil Smith Build API page into build/doc; simplify doctool.
miksago authored
129 cp $< $@
130
a7300c8 ry WAF builds in out/ instead of build/
ry authored
131 out/doc/%: doc/%
90d1e47 ry make doc improvements
ry authored
132 cp $< $@
133
a7300c8 ry WAF builds in out/ instead of build/
ry authored
134 out/doc/api/%.html: doc/api/%.markdown out/Release/node $(apidoc_dirs) $(apiassets) tools/doctool/doctool.js
135 out/Release/node tools/doctool/doctool.js doc/template.html $< > $@
ade8cf9 Micheil Smith Build API page into build/doc; simplify doctool.
miksago authored
136
a7300c8 ry WAF builds in out/ instead of build/
ry authored
137 out/doc/%:
2392775 ry Fix make doc
ry authored
138
861f28f ry Don't unnecessarily output the makefile from the configure script.
ry authored
139 website-upload: doc
ee73132 ry use rsync instead of scp to upload website
ry authored
140 rsync -r out/doc/ node@nodejs.org:~/web/nodejs.org/
ade8cf9 Micheil Smith Build API page into build/doc; simplify doctool.
miksago authored
141
a7300c8 ry WAF builds in out/ instead of build/
ry authored
142 docopen: out/doc/api/all.html
143 -google-chrome out/doc/api/all.html
861f28f ry Don't unnecessarily output the makefile from the configure script.
ry authored
144
2c016ba ry 'make distclean' should not call 'waf clean'
ry authored
145 docclean:
a7300c8 ry WAF builds in out/ instead of build/
ry authored
146 -rm -rf out/doc
2c016ba ry 'make distclean' should not call 'waf clean'
ry authored
147
d67fdcc ry clean should not docclean
ry authored
148 clean:
1dad95a ry Print 'make clean' commands
ry authored
149 $(WAF) clean
150 -find tools -name "*.pyc" | xargs rm -f
861f28f ry Don't unnecessarily output the makefile from the configure script.
ry authored
151
ff64094 ry Make 'make distclean' work on solaris
ry authored
152 distclean: docclean
1dad95a ry Print 'make clean' commands
ry authored
153 -find tools -name "*.pyc" | xargs rm -f
dc39ab3 ry Improve OSX installer
ry authored
154 -rm -rf dist-osx
a7300c8 ry WAF builds in out/ instead of build/
ry authored
155 -rm -rf out/ node node_g
861f28f ry Don't unnecessarily output the makefile from the configure script.
ry authored
156
97c9745 ry Back to WAF
ry authored
157 check:
158 @tools/waf-light check
861f28f ry Don't unnecessarily output the makefile from the configure script.
ry authored
159
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
160 VERSION=v$(shell $(PYTHON) tools/getnodeversion.py)
bf0d278 ry Improve "make dist" remove generated doc from repo.
ry authored
161 TARNAME=node-$(VERSION)
5bc1809 ry Add 'make dist-upload'
ry authored
162 TARBALL=$(TARNAME).tar.gz
9d1bdbc ry Fixes #2084. Makeify tools/osx-dist.sh
ry authored
163 PKG=out/$(TARNAME).pkg
164
165 packagemaker=/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker
bf0d278 ry Improve "make dist" remove generated doc from repo.
ry authored
166
ade8cf9 Micheil Smith Build API page into build/doc; simplify doctool.
miksago authored
167 #dist: doc/node.1 doc/api
5bc1809 ry Add 'make dist-upload'
ry authored
168 dist: $(TARBALL) $(PKG)
169
9d1bdbc ry Fixes #2084. Makeify tools/osx-dist.sh
ry authored
170 PKGDIR=out/dist-osx
171
172 pkg: $(PKG)
173
5bc1809 ry Add 'make dist-upload'
ry authored
174 $(PKG):
9d1bdbc ry Fixes #2084. Makeify tools/osx-dist.sh
ry authored
175 -rm -rf $(PKGDIR)
d84a6ba isaacs Remove snapshot from Mac binary build
isaacs authored
176 $(WAF) configure --prefix=/usr/local --without-snapshot
177 DESTDIR=$(PKGDIR) $(WAF) install
9d1bdbc ry Fixes #2084. Makeify tools/osx-dist.sh
ry authored
178 $(packagemaker) \
179 --id "org.nodejs.NodeJS-$(VERSION)" \
180 --doc tools/osx-pkg.pmdoc \
181 --out $(PKG)
5bc1809 ry Add 'make dist-upload'
ry authored
182
183 $(TARBALL): out/doc
a1138c6 Micheil Smith Cleanup Makefile for JSLint, CPPLint
miksago authored
184 git archive --format=tar --prefix=$(TARNAME)/ HEAD | tar xf -
bf0d278 ry Improve "make dist" remove generated doc from repo.
ry authored
185 mkdir -p $(TARNAME)/doc
186 cp doc/node.1 $(TARNAME)/doc/node.1
a7300c8 ry WAF builds in out/ instead of build/
ry authored
187 cp -r out/doc/api $(TARNAME)/doc/api
ce2d5ad ry Change the 'make dist' to remove v8 test dir
ry authored
188 rm -rf $(TARNAME)/deps/v8/test # too big
a0198d0 ry Remove logos from package
ry authored
189 rm -rf $(TARNAME)/doc/logos # too big
ce2d5ad ry Change the 'make dist' to remove v8 test dir
ry authored
190 tar -cf $(TARNAME).tar $(TARNAME)
191 rm -rf $(TARNAME)
bf0d278 ry Improve "make dist" remove generated doc from repo.
ry authored
192 gzip -f -9 $(TARNAME).tar
861f28f ry Don't unnecessarily output the makefile from the configure script.
ry authored
193
5bc1809 ry Add 'make dist-upload'
ry authored
194 dist-upload: $(TARBALL) $(PKG)
195 ssh node@nodejs.org mkdir -p web/nodejs.org/dist/$(VERSION)
196 scp $(TARBALL) node@nodejs.org:~/web/nodejs.org/dist/$(VERSION)/$(TARBALL)
197 scp $(PKG) node@nodejs.org:~/web/nodejs.org/dist/$(VERSION)/$(TARNAME).pkg
198
ff456b3 ry Add 'make bench' script
ry authored
199 bench:
200 benchmark/http_simple_bench.sh
201
3cf4827 ry Add idle connection test
ry authored
202 bench-idle:
203 ./node benchmark/idle_server.js &
204 sleep 1
205 ./node benchmark/idle_clients.js &
206
ac58d3a ry Import cpplint.py
ry authored
207 jslint:
b073989 Maciej Małecki makefile: ignore `lib/punycode.js` while linting
mmalecki authored
208 PYTHONPATH=tools/closure_linter/ $(PYTHON) tools/closure_linter/closure_linter/gjslint.py --unix_mode --strict --nojsdoc -r lib/ -r src/ -r test/ --exclude_files lib/punycode.js
3cf4827 ry Add idle connection test
ry authored
209
ac58d3a ry Import cpplint.py
ry authored
210 cpplint:
472a72d Ben Noordhuis build: honour the PYTHON environment variable
bnoordhuis authored
211 @$(PYTHON) tools/cpplint.py $(wildcard src/*.cc src/*.h src/*.c)
ac58d3a ry Import cpplint.py
ry authored
212
213 lint: jslint cpplint
a128451 ry Import Google's closure_linter
ry authored
214
5bc1809 ry Add 'make dist-upload'
ry authored
215 .PHONY: lint cpplint jslint bench clean docopen docclean doc dist distclean dist-upload check uninstall install all program staticlib dynamiclib test test-all website-upload
Something went wrong with that request. Please try again.