OLD | NEW |
1 # Copyright 2011 the V8 project authors. All rights reserved. | 1 # Copyright 2011 the V8 project authors. All rights reserved. |
2 # Redistribution and use in source and binary forms, with or without | 2 # Redistribution and use in source and binary forms, with or without |
3 # modification, are permitted provided that the following conditions are | 3 # modification, are permitted provided that the following conditions are |
4 # met: | 4 # met: |
5 # | 5 # |
6 # * Redistributions of source code must retain the above copyright | 6 # * Redistributions of source code must retain the above copyright |
7 # notice, this list of conditions and the following disclaimer. | 7 # notice, this list of conditions and the following disclaimer. |
8 # * Redistributions in binary form must reproduce the above | 8 # * Redistributions in binary form must reproduce the above |
9 # copyright notice, this list of conditions and the following | 9 # copyright notice, this list of conditions and the following |
10 # disclaimer in the documentation and/or other materials provided | 10 # disclaimer in the documentation and/or other materials provided |
(...skipping 14 matching lines...) Expand all Loading... |
25 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 25 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
26 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 26 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
27 | 27 |
28 | 28 |
29 # Variable default definitions. Override them by exporting them in your shell. | 29 # Variable default definitions. Override them by exporting them in your shell. |
30 CXX ?= "g++" # For distcc: export CXX="distcc g++" | 30 CXX ?= "g++" # For distcc: export CXX="distcc g++" |
31 LINK ?= "g++" | 31 LINK ?= "g++" |
32 OUTDIR ?= out | 32 OUTDIR ?= out |
33 TESTJOBS ?= -j16 | 33 TESTJOBS ?= -j16 |
34 GYPFLAGS ?= | 34 GYPFLAGS ?= |
| 35 TESTFLAGS ?= |
35 | 36 |
36 # Special build flags. Use them like this: "make library=shared" | 37 # Special build flags. Use them like this: "make library=shared" |
37 | 38 |
38 # library=shared || component=shared_library | 39 # library=shared || component=shared_library |
39 ifeq ($(library), shared) | 40 ifeq ($(library), shared) |
40 GYPFLAGS += -Dcomponent=shared_library | 41 GYPFLAGS += -Dcomponent=shared_library |
41 endif | 42 endif |
42 ifdef component | 43 ifdef component |
43 GYPFLAGS += -Dcomponent=$(component) | 44 GYPFLAGS += -Dcomponent=$(component) |
44 endif | 45 endif |
(...skipping 24 matching lines...) Expand all Loading... |
69 # vfp3=off | 70 # vfp3=off |
70 ifeq ($(vfp3), off) | 71 ifeq ($(vfp3), off) |
71 GYPFLAGS += -Dv8_can_use_vfp_instructions=false | 72 GYPFLAGS += -Dv8_can_use_vfp_instructions=false |
72 else | 73 else |
73 GYPFLAGS += -Dv8_can_use_vfp_instructions=true | 74 GYPFLAGS += -Dv8_can_use_vfp_instructions=true |
74 endif | 75 endif |
75 # soname_version=1.2.3 | 76 # soname_version=1.2.3 |
76 ifdef soname_version | 77 ifdef soname_version |
77 GYPFLAGS += -Dsoname_version=$(soname_version) | 78 GYPFLAGS += -Dsoname_version=$(soname_version) |
78 endif | 79 endif |
| 80 # werror=no |
| 81 ifeq ($(werror), no) |
| 82 GYPFLAGS += -Dwerror='' |
| 83 endif |
| 84 # presubmit=no |
| 85 ifeq ($(presubmit), no) |
| 86 TESTFLAGS += --no-presubmit |
| 87 endif |
79 | 88 |
80 # ----------------- available targets: -------------------- | 89 # ----------------- available targets: -------------------- |
81 # - "dependencies": pulls in external dependencies (currently: GYP) | 90 # - "dependencies": pulls in external dependencies (currently: GYP) |
82 # - any arch listed in ARCHES (see below) | 91 # - any arch listed in ARCHES (see below) |
83 # - any mode listed in MODES | 92 # - any mode listed in MODES |
84 # - every combination <arch>.<mode>, e.g. "ia32.release" | 93 # - every combination <arch>.<mode>, e.g. "ia32.release" |
85 # - "native": current host's architecture, release mode | 94 # - "native": current host's architecture, release mode |
86 # - any of the above with .check appended, e.g. "ia32.release.check" | 95 # - any of the above with .check appended, e.g. "ia32.release.check" |
87 # - default (no target specified): build all ARCHES and MODES | 96 # - default (no target specified): build all ARCHES and MODES |
88 # - "check": build all targets and run all tests | 97 # - "check": build all targets and run all tests |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
129 python -c "print raw_input().capitalize()") \ | 138 python -c "print raw_input().capitalize()") \ |
130 builddir="$(shell pwd)/$(OUTDIR)/$@" | 139 builddir="$(shell pwd)/$(OUTDIR)/$@" |
131 | 140 |
132 native: $(OUTDIR)/Makefile-native | 141 native: $(OUTDIR)/Makefile-native |
133 @$(MAKE) -C "$(OUTDIR)" -f Makefile-native \ | 142 @$(MAKE) -C "$(OUTDIR)" -f Makefile-native \ |
134 CXX="$(CXX)" LINK="$(LINK)" BUILDTYPE=Release \ | 143 CXX="$(CXX)" LINK="$(LINK)" BUILDTYPE=Release \ |
135 builddir="$(shell pwd)/$(OUTDIR)/$@" | 144 builddir="$(shell pwd)/$(OUTDIR)/$@" |
136 | 145 |
137 # Test targets. | 146 # Test targets. |
138 check: all | 147 check: all |
139 » @tools/test-wrapper-gypbuild.py $(TESTJOBS) --outdir=$(OUTDIR) | 148 » @tools/test-wrapper-gypbuild.py $(TESTJOBS) --outdir=$(OUTDIR) \ |
| 149 » $(TESTFLAGS) |
140 | 150 |
141 $(addsuffix .check,$(MODES)): $$(basename $$@) | 151 $(addsuffix .check,$(MODES)): $$(basename $$@) |
142 @tools/test-wrapper-gypbuild.py $(TESTJOBS) --outdir=$(OUTDIR) \ | 152 @tools/test-wrapper-gypbuild.py $(TESTJOBS) --outdir=$(OUTDIR) \ |
143 » --mode=$(basename $@) | 153 » --mode=$(basename $@) $(TESTFLAGS) |
144 | 154 |
145 $(addsuffix .check,$(ARCHES)): $$(basename $$@) | 155 $(addsuffix .check,$(ARCHES)): $$(basename $$@) |
146 @tools/test-wrapper-gypbuild.py $(TESTJOBS) --outdir=$(OUTDIR) \ | 156 @tools/test-wrapper-gypbuild.py $(TESTJOBS) --outdir=$(OUTDIR) \ |
147 » --arch=$(basename $@) | 157 » --arch=$(basename $@) $(TESTFLAGS) |
148 | 158 |
149 $(CHECKS): $$(basename $$@) | 159 $(CHECKS): $$(basename $$@) |
150 @tools/test-wrapper-gypbuild.py $(TESTJOBS) --outdir=$(OUTDIR) \ | 160 @tools/test-wrapper-gypbuild.py $(TESTJOBS) --outdir=$(OUTDIR) \ |
151 » --arch-and-mode=$(basename $@) | 161 » --arch-and-mode=$(basename $@) $(TESTFLAGS) |
152 | 162 |
153 native.check: native | 163 native.check: native |
154 @tools/test-wrapper-gypbuild.py $(TESTJOBS) --outdir=$(OUTDIR)/native \ | 164 @tools/test-wrapper-gypbuild.py $(TESTJOBS) --outdir=$(OUTDIR)/native \ |
155 » --arch-and-mode=. | 165 » --arch-and-mode=. $(TESTFLAGS) |
156 | 166 |
157 # Clean targets. You can clean each architecture individually, or everything. | 167 # Clean targets. You can clean each architecture individually, or everything. |
158 $(addsuffix .clean,$(ARCHES)): | 168 $(addsuffix .clean,$(ARCHES)): |
159 rm -f $(OUTDIR)/Makefile-$(basename $@) | 169 rm -f $(OUTDIR)/Makefile-$(basename $@) |
160 rm -rf $(OUTDIR)/$(basename $@).release | 170 rm -rf $(OUTDIR)/$(basename $@).release |
161 rm -rf $(OUTDIR)/$(basename $@).debug | 171 rm -rf $(OUTDIR)/$(basename $@).debug |
162 find $(OUTDIR) -regex '.*\(host\|target\)-$(basename $@)\.mk' -delete | 172 find $(OUTDIR) -regex '.*\(host\|target\)-$(basename $@)\.mk' -delete |
163 | 173 |
164 native.clean: | 174 native.clean: |
165 rm -f $(OUTDIR)/Makefile-native | 175 rm -f $(OUTDIR)/Makefile-native |
(...skipping 30 matching lines...) Expand all Loading... |
196 else mv $(ENVFILE).new $(ENVFILE); fi | 206 else mv $(ENVFILE).new $(ENVFILE); fi |
197 | 207 |
198 # Stores current GYPFLAGS in a file. | 208 # Stores current GYPFLAGS in a file. |
199 $(ENVFILE).new: | 209 $(ENVFILE).new: |
200 @mkdir -p $(OUTDIR); echo "GYPFLAGS=$(GYPFLAGS)" > $(ENVFILE).new; | 210 @mkdir -p $(OUTDIR); echo "GYPFLAGS=$(GYPFLAGS)" > $(ENVFILE).new; |
201 | 211 |
202 # Dependencies. | 212 # Dependencies. |
203 dependencies: | 213 dependencies: |
204 svn checkout --force http://gyp.googlecode.com/svn/trunk build/gyp \ | 214 svn checkout --force http://gyp.googlecode.com/svn/trunk build/gyp \ |
205 --revision 1026 | 215 --revision 1026 |
OLD | NEW |