|
Packit |
bd2e5d |
#######################################################################
|
|
Packit |
bd2e5d |
# #
|
|
Packit |
bd2e5d |
# MLTk, Tcl/Tk interface of OCaml #
|
|
Packit |
bd2e5d |
# #
|
|
Packit |
bd2e5d |
# Francois Rouaix, Francois Pessaux, Jun Furuse and Pierre Weis #
|
|
Packit |
bd2e5d |
# projet Cristal, INRIA Rocquencourt #
|
|
Packit |
bd2e5d |
# Jacques Garrigue, Kyoto University RIMS #
|
|
Packit |
bd2e5d |
# #
|
|
Packit |
bd2e5d |
# Copyright 2002 Institut National de Recherche en Informatique et #
|
|
Packit |
bd2e5d |
# en Automatique and Kyoto University. All rights reserved. #
|
|
Packit |
bd2e5d |
# This file is distributed under the terms of the GNU Library #
|
|
Packit |
bd2e5d |
# General Public License, with the special exception on linking #
|
|
Packit |
bd2e5d |
# described in file LICENSE found in the OCaml source tree. #
|
|
Packit |
bd2e5d |
# #
|
|
Packit |
bd2e5d |
#######################################################################
|
|
Packit |
bd2e5d |
|
|
Packit |
bd2e5d |
include ../support/Makefile.common
|
|
Packit |
bd2e5d |
|
|
Packit |
bd2e5d |
all: tk.ml # labltk.ml .depend
|
|
Packit |
bd2e5d |
|
|
Packit |
bd2e5d |
# all 3 dependencies are generated by the same rule. When the
|
|
Packit |
bd2e5d |
# target 'all' depends on the 3 files, a 'make -jN' will spawn 3
|
|
Packit |
bd2e5d |
# shell processes, and generate all files 3 times in parallel...
|
|
Packit |
bd2e5d |
|
|
Packit |
bd2e5d |
_tkgen.ml: ../Widgets.src ../compiler/tkcompiler$(EXE)
|
|
Packit |
bd2e5d |
cd ..; $(CAMLRUNGEN) compiler/tkcompiler$(EXE) -outdir labltk
|
|
Packit |
bd2e5d |
|
|
Packit |
bd2e5d |
# dependencies are broken: wouldn't work with gmake 3.77
|
|
Packit |
bd2e5d |
|
|
Packit |
bd2e5d |
#tk.ml labltk.ml .depend: generate
|
|
Packit |
bd2e5d |
|
|
Packit |
bd2e5d |
tk.ml labltk.ml .depend: _tkgen.ml ../builtin/report.ml ../compiler/pp$(EXE) #../builtin/builtin_*.ml
|
|
Packit |
bd2e5d |
(echo 'open StdLabels'; \
|
|
Packit |
bd2e5d |
echo 'open Widget'; \
|
|
Packit |
bd2e5d |
echo 'open Protocol'; \
|
|
Packit |
bd2e5d |
echo 'open Support'; \
|
|
Packit |
bd2e5d |
echo 'open Textvariable'; \
|
|
Packit |
bd2e5d |
cat ../builtin/report.ml; \
|
|
Packit |
bd2e5d |
cat ../builtin/builtin_*.ml; \
|
|
Packit |
bd2e5d |
cat _tkgen.ml; \
|
|
Packit |
bd2e5d |
echo ; \
|
|
Packit |
bd2e5d |
echo ; \
|
|
Packit |
bd2e5d |
echo 'module Tkintf = struct'; \
|
|
Packit |
bd2e5d |
cat ../builtin/builtini_*.ml; \
|
|
Packit |
bd2e5d |
cat _tkigen.ml; \
|
|
Packit |
bd2e5d |
echo 'end (* module Tkintf *)'; \
|
|
Packit |
bd2e5d |
echo ; \
|
|
Packit |
bd2e5d |
echo ; \
|
|
Packit |
bd2e5d |
echo 'open Tkintf' ;\
|
|
Packit |
bd2e5d |
echo ; \
|
|
Packit |
bd2e5d |
echo ; \
|
|
Packit |
bd2e5d |
cat ../builtin/builtinf_*.ml; \
|
|
Packit |
bd2e5d |
cat _tkfgen.ml; \
|
|
Packit |
bd2e5d |
echo ; \
|
|
Packit |
bd2e5d |
) > _tk.ml
|
|
Packit |
bd2e5d |
$(CAMLRUN) ../compiler/pp < _tk.ml > tk.ml
|
|
Packit |
bd2e5d |
rm -f _tk.ml
|
|
Packit |
bd2e5d |
$(CAMLDEP) -slash -I ../support [a-z]*.mli [a-z]*.ml > .depend
|
|
Packit |
bd2e5d |
|
|
Packit |
bd2e5d |
../compiler/pp$(EXE):
|
|
Packit |
bd2e5d |
cd ../compiler; $(MAKE) pp$(EXE)
|
|
Packit |
bd2e5d |
|
|
Packit |
bd2e5d |
../compiler/tkcompiler$(EXE):
|
|
Packit |
bd2e5d |
cd ../compiler; $(MAKE) tkcompiler$(EXE)
|
|
Packit |
bd2e5d |
|
|
Packit |
bd2e5d |
# All .{ml,mli} files are generated in this directory
|
|
Packit |
bd2e5d |
clean:
|
|
Packit |
bd2e5d |
rm -f *.cm* *.ml *.mli *.$(O) *.$(A) .depend
|
|
Packit |
bd2e5d |
|
|
Packit |
bd2e5d |
# rm -f modules
|
|
Packit |
bd2e5d |
|
|
Packit |
bd2e5d |
.PHONY: all generate clean
|