Skip to content
Newer
Older
100644 288 lines (228 sloc) 10 KB
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
1 #!/usr/bin/make
2
3 # [ Warning ] don't use make to solve dependencies !!
4 #
5 # we rely on ocamlbuild which already handles them ; every rule should
6 # call it only once (no recursion)
7 #
8 # More info in build/Makefile.bld
9
10 include config.make
11
12 INSTALL ?= cp -u -L
1321ba9 @fperrin On FreeBSD check and use gmake, use make elsewhere
fperrin authored Sep 21, 2011
13 MAKE ?= $_
14 export MAKE
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
15
e7282e7 [enhance] make: do not rebuild opa packages if the variable is set
Louis Gesbert authored Jul 6, 2011
16 ifndef NO_REBUILD_OPA_PACKAGES
8a40e70 [feature] build: support for optional libraries, enabled libnattraver…
Louis Gesbert authored Jun 24, 2011
17 OPAOPT += "--rebuild"
e7282e7 [enhance] make: do not rebuild opa packages if the variable is set
Louis Gesbert authored Jul 6, 2011
18 endif
8a40e70 [feature] build: support for optional libraries, enabled libnattraver…
Louis Gesbert authored Jun 24, 2011
19
20 ifneq ($(HAS_CAMLIDL)$(HAS_LIBNATPMP)$(HAS_MINIUPNPC),111)
21 export DISABLED_LIBS = libnattraversal
22 endif
23
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
24 .PHONY: default
25 default: all
26
27 include build/Makefile.bld
28
29 export
30
31 ##
32 ## STANDARD TARGETS
33 ##
34
35 .PHONY: all
a54a2d4 @OpaOnWindowsNow [enhance] Makefile: manpages should be the first thing we build
OpaOnWindowsNow authored Mar 14, 2012
36 all: $(MYOCAMLBUILD)
4a6014e @BourgerieQuentin [enhance] build: install the both set of packages
BourgerieQuentin authored Jun 18, 2012
37 $(OCAMLBUILD) $(call target-tools,$(ALL_TOOLS)) opa-both-packages.stamp
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
38 @$(call copy-tools,$(ALL_TOOLS))
7c0c2fe @Aqua-Ye [feature] build: added a variable check to prevent generating manpage…
Aqua-Ye authored Apr 26, 2012
39 ifndef NO_MANPAGES
3e3c2e6 @jlmess77 [fix] Makefile: Use $(MAKE) instead of hardcore "make".
jlmess77 authored Mar 29, 2012
40 $(MAKE) manpages
7c0c2fe @Aqua-Ye [feature] build: added a variable check to prevent generating manpage…
Aqua-Ye authored Apr 26, 2012
41 endif
33e6901 @Aqua-Ye [fix] Makefile: re-include opa-create
Aqua-Ye authored Jun 21, 2012
42 $(MAKE) $(OPA_TOOLS)
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
43
44 .PHONY: build
45 build: all
46
47 .PHONY: runtime-libs
48 runtime-libs: $(MYOCAMLBUILD)
49 $(OCAMLBUILD) runtime-libs.stamp
50
37c04ec [cleanup] Makefile,comments: tiny cleanup & fixes
Louis Gesbert authored Jun 28, 2011
51 .PHONY: $(BUILD_DIR)/bin/opa
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
52 $(BUILD_DIR)/bin/opa: $(MYOCAMLBUILD)
4a6014e @BourgerieQuentin [enhance] build: install the both set of packages
BourgerieQuentin authored Jun 18, 2012
53 $(OCAMLBUILD) opa-both-packages.stamp $(target-tool-opa-bin)
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
54 @$(copy-tool-opa-bin)
01242f2 [cleanup] Makefile: replaced calls to 'pwd' with make builtin command…
Mathieu Baudet authored Jan 5, 2012
55 @utils/install.sh --quiet --dir $(realpath $(BUILD_DIR)) --ocaml-prefix $(OCAMLLIB)/../..
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
56
57 .PHONY: opa
58 opa: $(BUILD_DIR)/bin/opa
59
4a6014e @BourgerieQuentin [enhance] build: install the both set of packages
BourgerieQuentin authored Jun 18, 2012
60 .PHONY: opa-flat-packages
61 .PHONY: opa-node-packages
62 opa-flat-packages: $(MYOCAMLBUILD)
662e95e @BourgerieQuentin [enhance] compiler, packages: Allows to have several backends (separa…
BourgerieQuentin authored May 28, 2012
63 $(OCAMLBUILD) opa-packages.stamp
75a4f89 @BourgerieQuentin [enhance] build: Added rules to compile stdlib to nodejs backend
BourgerieQuentin authored Jun 28, 2012
64 opa-node-packages: $(MYOCAMLBUILD)
65 $(OCAMLBUILD) opa-node-packages.stamp
4a6014e @BourgerieQuentin [enhance] build: install the both set of packages
BourgerieQuentin authored Jun 18, 2012
66 opa-both-packages: $(MYOCAMLBUILD)
67 $(OCAMLBUILD) opa-both-packages.stamp
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
68
69 .PHONY: stdlib
4a6014e @BourgerieQuentin [enhance] build: install the both set of packages
BourgerieQuentin authored Jun 18, 2012
70 stdlib: opa-both-packages
71 stdlib-flat: opa-flat-packages
75a4f89 @BourgerieQuentin [enhance] build: Added rules to compile stdlib to nodejs backend
BourgerieQuentin authored Jun 28, 2012
72 stdlib-node: opa-node-packages
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
73
af6c538 @cedricss [fix] Compile: fix release compilation
cedricss authored Jun 7, 2012
74 DISTRIB_TOOLS = opa-bin opa-plugin-builder-bin opa-plugin-browser-bin bslServerLib.ml opa-db-server opa-db-tool opa-cloud opatop opa-translate
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
75
fcef231 @cedricss [enhance] Compile: Makefile improved for opa tools. Built them before…
cedricss authored Jun 11, 2012
76 OPA_TOOLS = opa-create
77
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
78 .PHONY: distrib
79 distrib: $(MYOCAMLBUILD)
0d63254 @Aqua-Ye [fix] Makefile: build both packages for distrib
Aqua-Ye authored Jun 18, 2012
80 $(OCAMLBUILD) $(call target-tools,$(DISTRIB_TOOLS)) opa-both-packages.stamp
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
81 @$(call copy-tools,$(DISTRIB_TOOLS))
33e6901 @Aqua-Ye [fix] Makefile: re-include opa-create
Aqua-Ye authored Jun 21, 2012
82 $(MAKE) $(OPA_TOOLS)
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
83
8c3019b [enhance] manpages: added target install-man to install manpages by d…
Mathieu Baudet authored Jan 5, 2012
84 .PHONY: manpages
5baea24 [fix] manpages: when called from the main Makefile, do not assume 'in…
Mathieu Baudet authored Jan 5, 2012
85 manpages: $(MYOCAMLBUILD)
ead3206 @jlmess77 [fix] Makefile: Use $(MAKE) instead of hardcore "make" to allow FreeB…
jlmess77 authored Jan 25, 2012
86 $(MAKE) -C manpages OCAMLBUILD="$(OCAMLBUILD)" BLDDIR=../$(BUILD_DIR)
8c3019b [enhance] manpages: added target install-man to install manpages by d…
Mathieu Baudet authored Jan 5, 2012
87
2b39809 @cedricss [feature] opa-create: new tool to generate application skeletons
cedricss authored Jun 6, 2012
88 .PHONY: opa-create
89 opa-create: $(MYOCAMLBUILD)
90 $(OCAMLBUILD) tools/opa-create/src/opa-create.exe
91 @$(copy-tool-opa-create)
92 .PHONY: install-opa-create
93 install-opa-create:
94 @$(install-opa-create)
95 target-tool-opa-create = tools/opa-create/src/opa-create.exe
96 copy-tool-opa-create = mkdir -p $(BUILD_DIR)/bin && $(INSTALL) $(BUILD_DIR)/tools/opa-create/src/opa-create.exe $(BUILD_DIR)/bin/opa-create
97 install-opa-create = mkdir -p $(PREFIX)/bin && $(INSTALL) $(BUILD_DIR)/bin/opa-create $(INSTALL_DIR)/bin/opa-create
98
99
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
100 ##
101 ## INSTALLATION
102 ##
103
104 .PHONY: install*
105
894a751 @delroth Support make DESTDIR=... install for easier packaging
delroth authored Jun 21, 2011
106 STDLIB_DIR = $(INSTALL_DIR)/lib/opa/stdlib
662e95e @BourgerieQuentin [enhance] compiler, packages: Allows to have several backends (separa…
BourgerieQuentin authored May 28, 2012
107
108 FLAT_STDLIB_SUFFIX_DIR=stdlib.qmlflat
109 STDLIB_FLAT_DIR=$(STDLIB_DIR)/$(FLAT_STDLIB_SUFFIX_DIR)
110 BUILD_FLAT_DIR=$(BUILD_DIR)/$(FLAT_STDLIB_SUFFIX_DIR)
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
111 define install-package
662e95e @BourgerieQuentin [enhance] compiler, packages: Allows to have several backends (separa…
BourgerieQuentin authored May 28, 2012
112 @printf "Installing into $(STDLIB_FLAT_DIR)/$*.opx\r"
113 @mkdir -p "$(STDLIB_FLAT_DIR)/$*.opx/_build"
114 @find "$(BUILD_FLAT_DIR)/$*.opx" -maxdepth 1 ! -type d -exec $(INSTALL) {} "$(STDLIB_FLAT_DIR)/$*.opx/" \;
115 @$(INSTALL) $(BUILD_FLAT_DIR)/$*.opx/_build/*.a "$(STDLIB_FLAT_DIR)/$*.opx/_build/"
116 @$(INSTALL) $(BUILD_FLAT_DIR)/$*.opx/_build/*.cmi "$(STDLIB_FLAT_DIR)/$*.opx/_build/"
117 @$(INSTALL) $(BUILD_FLAT_DIR)/$*.opx/_build/*.cmxa "$(STDLIB_FLAT_DIR)/$*.opx/_build/"
118 endef
119
120 NODE_STDLIB_SUFFIX_DIR=stdlib.qmljs
121 STDLIB_NODE_DIR=$(STDLIB_DIR)/$(NODE_STDLIB_SUFFIX_DIR)
122 BUILD_NODE_DIR=$(BUILD_DIR)/$(NODE_STDLIB_SUFFIX_DIR)
123 define install-node-package
124 @printf "Installing into $(STDLIB_NODE_DIR)/$*.opx\r"
125 @mkdir -p "$(STDLIB_NODE_DIR)/$*.opx/_build"
126 @find "$(BUILD_NODE_DIR)/$*.opx" -maxdepth 1 ! -type d -exec $(INSTALL) {} "$(STDLIB_NODE_DIR)/$*.opx/" \;
127 @$(INSTALL) $(BUILD_NODE_DIR)/$*.opx/*.js "$(STDLIB_NODE_DIR)/$*.opx/"
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
128 endef
129
2f55085 @OpaOnWindowsNow [fix] Makefile: install plugins
OpaOnWindowsNow authored Oct 21, 2011
130 define install-plugin
131 @printf "Installing into $(STDLIB_DIR)/$*.opp^[[K\r"
132 @mkdir -p "$(STDLIB_DIR)/$*.opp"
8371716 @BourgerieQuentin [fix] plugins: Install and searching
BourgerieQuentin authored Oct 28, 2011
133 @$(INSTALL) $(BUILD_DIR)/$*.opp/*.bypass "$(STDLIB_DIR)/$*.opp/";
134 @$(INSTALL) $(BUILD_DIR)/$*.opp/*MLRuntime.* "$(STDLIB_DIR)/$*.opp/";
2f55085 @OpaOnWindowsNow [fix] Makefile: install plugins
OpaOnWindowsNow authored Oct 21, 2011
135 endef
136
137
138
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
139 OPA_PACKAGES := $(shell cd stdlib && ./all_packages.sh)
2f55085 @OpaOnWindowsNow [fix] Makefile: install plugins
OpaOnWindowsNow authored Oct 21, 2011
140 OPA_PLUGINS := $(shell cd stdlib && ./all_plugins.sh)
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
141
142 # Rules installing everything that has been compiled
143 #
144 # This doesn't rely on install rules generated by Makefile.bld ;
145 # instead it assumes that what you want to install has been properly
8c3019b [enhance] manpages: added target install-man to install manpages by d…
Mathieu Baudet authored Jan 5, 2012
146 # put in $(BUILD_DIR)/{bin,lib/opa,share/opa,share/man}.
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
147 #
148 # This is the case of tools (because of Makefile.bld),
149 # and of opa runtime libs (because build rules copy them
150 # to $(BUILD_DIR)/lib/opa/static).
151 # This doesn't install the other libs though, use target install-libs
152 # for that
153
154 install-packageopt-%:
662e95e @BourgerieQuentin [enhance] compiler, packages: Allows to have several backends (separa…
BourgerieQuentin authored May 28, 2012
155 $(if $(wildcard $(BUILD_FLAT_DIR)/$*.opx/_build/*),$(install-package))
156
157 install-node-packageopt-%:
158 $(if $(wildcard $(BUILD_NODE_DIR)/$*.opx/*.js),$(install-node-package))
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
159
160 install-package-%:
161 $(install-package)
162
662e95e @BourgerieQuentin [enhance] compiler, packages: Allows to have several backends (separa…
BourgerieQuentin authored May 28, 2012
163 install-node-package-%:
164 $(install-node-package)
165
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
166 install-packages: $(addprefix install-packageopt-,$(OPA_PACKAGES))
662e95e @BourgerieQuentin [enhance] compiler, packages: Allows to have several backends (separa…
BourgerieQuentin authored May 28, 2012
167 @printf "Installation to $(STDLIB_FLAT_DIR) done.\n"
168
169 install-node-packages: $(addprefix install-node-packageopt-,$(OPA_PACKAGES))
170 @printf "Installation to $(STDLIB_NODE_DIR) done.\n"
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
171
172 install-all-packages: $(addprefix install-package-,$(OPA_PACKAGES))
662e95e @BourgerieQuentin [enhance] compiler, packages: Allows to have several backends (separa…
BourgerieQuentin authored May 28, 2012
173 @printf "Installation to $(STDLIB_FLAT_DIR) done.\n"
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
174
2f55085 @OpaOnWindowsNow [fix] Makefile: install plugins
OpaOnWindowsNow authored Oct 21, 2011
175 install-pluginopt-%:
176 $(if $(wildcard $(BUILD_DIR)/$*.opp/),$(install-plugin))
177
178 install-plugin-%:
179 $(install-plugin)
180
181 install-plugins: $(addprefix install-pluginopt-,$(OPA_PLUGINS))
182 @printf "Installation to $(STDLIB_DIR) done.\n"
183
184 install-all-plugins: $(addprefix install-plugin-,$(OPA_PLUGINS))
185 @printf "Installation to $(STDLIB_DIR) done.\n"
186
187
188
fcef231 @cedricss [enhance] Compile: Makefile improved for opa tools. Built them before…
cedricss authored Jun 11, 2012
189 install-bin:
8037018 [fix] Makefiles: using a more portable printf instead of echo
Louis Gesbert authored Jun 23, 2011
190 @printf "Installing into $(INSTALL_DIR)/bin\r"
894a751 @delroth Support make DESTDIR=... install for easier packaging
delroth authored Jun 21, 2011
191 @mkdir -p $(INSTALL_DIR)/bin
192 @$(if $(wildcard $(BUILD_DIR)/bin/*),$(INSTALL) -r $(BUILD_DIR)/bin/* $(INSTALL_DIR)/bin)
193 @utils/install.sh --quiet --dir $(INSTALL_DIR) --ocamllib $(OCAMLLIB) --ocamlopt $(OCAMLOPT)
8037018 [fix] Makefiles: using a more portable printf instead of echo
Louis Gesbert authored Jun 23, 2011
194 @printf "Installation to $(INSTALL_DIR)/bin done.\n"
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
195
196 install-lib:
8037018 [fix] Makefiles: using a more portable printf instead of echo
Louis Gesbert authored Jun 23, 2011
197 @printf "Installing into $(INSTALL_DIR)/lib/opa\r"
894a751 @delroth Support make DESTDIR=... install for easier packaging
delroth authored Jun 21, 2011
198 @mkdir -p $(INSTALL_DIR)/lib/opa
199 @$(if $(wildcard $(BUILD_DIR)/lib/opa/*),$(INSTALL) -r $(BUILD_DIR)/lib/opa/* $(INSTALL_DIR)/lib/opa/)
8037018 [fix] Makefiles: using a more portable printf instead of echo
Louis Gesbert authored Jun 23, 2011
200 @printf "Installation to $(INSTALL_DIR)/lib/opa done.\n"
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
201
202 install-share:
8037018 [fix] Makefiles: using a more portable printf instead of echo
Louis Gesbert authored Jun 23, 2011
203 @printf "Installing into $(INSTALL_DIR)/share/opa\r"
894a751 @delroth Support make DESTDIR=... install for easier packaging
delroth authored Jun 21, 2011
204 @mkdir -p $(INSTALL_DIR)/share/opa
205 @$(if $(wildcard $(BUILD_DIR)/share/opa/*),$(INSTALL) -r $(BUILD_DIR)/share/opa/* $(INSTALL_DIR)/share/opa/)
8037018 [fix] Makefiles: using a more portable printf instead of echo
Louis Gesbert authored Jun 23, 2011
206 @printf "Installation to $(INSTALL_DIR)/share/opa done.\n"
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
207
8c3019b [enhance] manpages: added target install-man to install manpages by d…
Mathieu Baudet authored Jan 5, 2012
208 install-man:
209 @printf "Installing into $(INSTALL_DIR)/share/man\r"
210 @if [ -d $(BUILD_DIR)/man/man1 ]; then \
211 mkdir -p $(INSTALL_DIR)/share/man/man1; \
212 $(INSTALL) -r $(BUILD_DIR)/man/man1/*.1 $(INSTALL_DIR)/share/man/man1; \
213 fi
214 @printf "Installation to $(INSTALL_DIR)/share/man done.\n"
215
4a6014e @BourgerieQuentin [enhance] build: install the both set of packages
BourgerieQuentin authored Jun 18, 2012
216 install: install-bin install-lib install-share install-plugins install-packages install-node-packages install-man
8037018 [fix] Makefiles: using a more portable printf instead of echo
Louis Gesbert authored Jun 23, 2011
217 @printf "Installation into $(INSTALL_DIR) done.\n"
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
218
465b551 @Aqua-Ye [enhance] build: added option to not install ocaml
Aqua-Ye authored Jun 25, 2012
219 install-node: install-bin install-lib install-share install-plugins install-node-packages install-man
220 @printf "Installation into $(INSTALL_DIR) done.\n"
221
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
222 .PHONY: uninstall
223 uninstall:
894a751 @delroth Support make DESTDIR=... install for easier packaging
delroth authored Jun 21, 2011
224 rm -rf $(INSTALL_DIR)/lib/opa
225 @[ ! -d $(INSTALL_DIR)/lib ] || [ -n "`ls -A $(INSTALL_DIR)/lib`" ] || rmdir $(INSTALL_DIR)/lib
226 rm -rf $(INSTALL_DIR)/share/opa
227 rm -rf $(INSTALL_DIR)/share/doc/opa
228 @[ ! -d $(INSTALL_DIR)/share ] || [ -n "`ls -A $(INSTALL_DIR)/share`" ] || rmdir $(INSTALL_DIR)/share
1b2772b [fix] Makefile: zealous uninstall
Louis Gesbert authored Jul 8, 2011
229 $(foreach file,$(wildcard $(BUILD_DIR)/bin/*),rm -f $(INSTALL_DIR)/bin/$(notdir $(file));)
894a751 @delroth Support make DESTDIR=... install for easier packaging
delroth authored Jun 21, 2011
230 @utils/install.sh --uninstall --dir $(INSTALL_DIR)
231 @[ ! -d $(INSTALL_DIR)/bin ] || [ -n "`ls -A $(INSTALL_DIR)/bin`" ] || rmdir $(INSTALL_DIR)/bin
8037018 [fix] Makefiles: using a more portable printf instead of echo
Louis Gesbert authored Jun 23, 2011
232 @printf "Uninstall done.\n"
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
233
234 # Install our ocamlbuild-generation engine
235 install-bld:
894a751 @delroth Support make DESTDIR=... install for easier packaging
delroth authored Jun 21, 2011
236 @mkdir -p $(INSTALL_DIR)/bin
22b433a @fperrin Don't assume that bash is in /bin
fperrin authored Aug 29, 2011
237 @echo "#!/usr/bin/env bash" > $(INSTALL_DIR)/bin/bld
238 @echo "set -e" >> $(INSTALL_DIR)/bin/bld
239 @echo "set -u" >> $(INSTALL_DIR)/bin/bld
894a751 @delroth Support make DESTDIR=... install for easier packaging
delroth authored Jun 21, 2011
240 @chmod 755 $(INSTALL_DIR)/bin/bld
241 @echo "BLDDIR=$(PREFIX)/share/opa/bld $(PREFIX)/share/opa/bld/gen_myocamlbuild.sh" >> $(INSTALL_DIR)/bin/bld
242 @echo "_build/myocamlbuild -no-plugin -j 6 \"\$$@\"" >> $(INSTALL_DIR)/bin/bld
243 @mkdir -p $(INSTALL_DIR)/share/opa/bld
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
244 @$(INSTALL) build/gen_myocamlbuild.sh build/myocamlbuild_*fix.ml config.sh config.mli config.ml\
894a751 @delroth Support make DESTDIR=... install for easier packaging
delroth authored Jun 21, 2011
245 $(INSTALL_DIR)/share/opa/bld
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
246
247 # Install an opa wrapper with different stdlib and options (for some backwards-compatibility)
248 install-qmlflat: # depends on opabsl_for_compiler, but we don't want to run ocamlbuild twice
894a751 @delroth Support make DESTDIR=... install for easier packaging
delroth authored Jun 21, 2011
249 @mkdir -p $(INSTALL_DIR)/bin $(INSTALL_DIR)/share/opa/mlstatebsl
250 @$(INSTALL) $(BUILD_DIR)/opabsl/mlstatebsl/opabslgen_*.opa $(INSTALL_DIR)/share/opa/mlstatebsl
22b433a @fperrin Don't assume that bash is in /bin
fperrin authored Aug 29, 2011
251 @echo "#!/usr/bin/env bash" > $(INSTALL_DIR)/bin/qmlflat
252 @echo "set -e" >> $(INSTALL_DIR)/bin/qmlflat
253 @echo "set -u" >> $(INSTALL_DIR)/bin/qmlflat
894a751 @delroth Support make DESTDIR=... install for easier packaging
delroth authored Jun 21, 2011
254 @chmod 755 $(INSTALL_DIR)/bin/qmlflat
84c2f7f @BourgerieQuentin [fix] compilers: derived compiler should also handle syntax options.
BourgerieQuentin authored Feb 7, 2012
255 @echo 'exec opa --parser classic --no-stdlib --no-server --no-cps --no-closure --no-ei --no-constant-sharing --no-undot --separated off --value-restriction disabled --no-warn duplicateL0 --no-warn typer.warncoerce --no-warn unused --no-discard-of-unused-stdlib --no-warn pattern $$(if ! grep -qE "(^| )--no-stdlib( |$$)" <<<"$$*"; then echo $(shell sed "s%^[^# ]\+%$(PREFIX)/share/opa/mlstatebsl/opabslgen_&%; t OK; d; :OK" opabsl/mlstatebsl/bsl-sources); fi) "$$@"' \
894a751 @delroth Support make DESTDIR=... install for easier packaging
delroth authored Jun 21, 2011
256 >> $(INSTALL_DIR)/bin/qmlflat
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
257
258 # installs some dev tools on top of the normal install; these should not change often
c2f0a5d [feature] make: installing more dev tools in the install-all target
Louis Gesbert authored Jun 22, 2011
259 install-all: install install-bld install-qmlflat utils/maxmem
894a751 @delroth Support make DESTDIR=... install for easier packaging
delroth authored Jun 21, 2011
260 @$(INSTALL) platform_helper.sh $(INSTALL_DIR)/bin/
776f981 [contrib] pull request #1 from git://github.com/delroth/opalang
François-Régis Sinot authored Jun 23, 2011
261 @$(INSTALL) utils/maxmem $(INSTALL_DIR)/bin/
c2f0a5d [feature] make: installing more dev tools in the install-all target
Louis Gesbert authored Jun 22, 2011
262 @rm utils/maxmem
776f981 [contrib] pull request #1 from git://github.com/delroth/opalang
François-Régis Sinot authored Jun 23, 2011
263 @$(INSTALL) utils/plotmem $(INSTALL_DIR)/bin/
fccc685 Initial open-source release
MLstate authored Jun 21, 2011
264
265 ##
266 ## DOCUMENTATION
267 ##
268 # (in this section, multiple calls to ocamlbuild are tolerated)
269
270 .PHONY: doc.jsbsl
271 doc.jsbsl: $(MYOCAMLBUILD)
272 $(OCAMLBUILD) $@/index.html
273
274 # this rules provides the doc.html target (from Makefile.bld)
275 # the sed are just there to help sorting by filename-within-directory
276 .PHONY: doc.odocl
277 doc.odocl:
278 echo $(foreach lib,$(ALL_LIBS),$(lib-cmi-$(lib):%.cmi=%)) \
279 | sed 's# \+#\n#g' \
280 | sed 's#\(.*\)/\([^/]*\)#\1 \2#' \
281 | sort -k 2 -u \
282 | sed 's#\(.*\) \([^ ]*\)#\1/\2#' \
283 >$@
284
285 .PHONY: packages-api
286 packages-api: $(MYOCAMLBUILD)
5e9da00 @BourgerieQuentin [enhance] compiler, syntax: Default syntax is now js-like
BourgerieQuentin authored Feb 2, 2012
287 OPAOPT="$(OPAOPT) --rebuild --api --parser classic" $(OCAMLBUILD) opa-packages.stamp
Something went wrong with that request. Please try again.