File: Makefile

package info (click to toggle)
jocaml 4.01.0-3
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 16,736 kB
  • ctags: 23,836
  • sloc: ml: 111,262; ansic: 32,746; sh: 6,057; lisp: 4,230; makefile: 3,861; asm: 3,734; awk: 88; perl: 45; fortran: 21; sed: 19; cs: 9
file content (89 lines) | stat: -rw-r--r-- 2,749 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#########################################################################
#                                                                       #
#                            Objective Caml                             #
#                                                                       #
#            Xavier Leroy, projet Cristal, INRIA Rocquencourt           #
#                                                                       #
#   Copyright 1999 Institut National de Recherche en Informatique et    #
#   en Automatique.  All rights reserved.  This file is distributed     #
#   under the terms of the GNU Library General Public License, with     #
#   the special exception on linking described in file ../../LICENSE.   #
#                                                                       #
#########################################################################

include ../../config/Makefile

CAMLC=../../ocamlcomp.sh $(NOJOIN) -I ../unix
CAMLOPT=../../ocamlcompopt.sh $(NOJOIN) -I ../unix
JCC=../../ocamlcomp.sh -I ../unix
JCOPT=../../ocamlcompopt.sh -I ../unix
COMPFLAGS=-w +a-4-44 -warn-error +a

STDJOIN_OBJS=joinCom.cmo joinProc.cmo joinTextProc.cmo \
 joinFifo.cmo joinCount.cmo \
 joinHelper.cmo joinPool.cmo joinMapRed.cmo
STDJOIN_MLI=$(STDJOIN_OBJS:.cmo=.mli)
STDJOIN_CMI=$(STDJOIN_OBJS:.cmo=.cmi)
JOIN_OBJS=site.cmo ns.cmo join.cmo $(STDJOIN_OBJS)
JOIN_X=$(JOIN_OBJS:.cmo=.cmx)

VMTHREADSLIB=../threads
VMTHREADSLIB_OBJS=$(VMTHREADSLIB)/threads.cma

SYSTHREADSLIB=../systhreads
SYSTHREADSLIB_OBJS=$(SYSTHREADSLIB)/threads.cma

THREADS=../systhreads

all: vmjoin.cma join.cma 

allopt: join.cmxa

$(JOIN_OBJS): join.cmi $(VMTHREADSLIB_OBJS) $(SYSTHREADSLIB_OBJS)

$(JOIN_X): join.cmi $(SYSTHREADSLIB)/threads.cmxa

vmjoin.cma: $(JOIN_OBJS) 
	if test -f $(VMTHREADSLIB_OBJS); then \
		$(CAMLC) -a -o vmjoin.cma  $(JOIN_OBJS); \
	fi


join.cma: $(JOIN_OBJS) 
	$(CAMLC) -a -o join.cma $(JOIN_OBJS)

join.cmxa: $(JOIN_X)
	$(CAMLOPT) -a -o join.cmxa $(JOIN_X)

partialclean::
	/bin/rm -f join.{cma,cmxa,a} vmjoin.cma
	rm -f $(JOIN_OBJS) $(JOIN_X) *.cmi *.o

clean: partialclean

install:
	cp join.mli join.cmi $(LIBDIR)/vmthreads
	cp $(STDJOIN_MLI) $(STDJOIN_CMI) $(LIBDIR)/vmthreads
	cp vmjoin.cma $(LIBDIR)/vmthreads/join.cma
	cp join.mli join.cmi $(LIBDIR)/threads
	cp  $(STDJOIN_MLI) $(STDJOIN_CMI) $(LIBDIR)/threads
	cp join.cma $(LIBDIR)/threads/join.cma

installopt:
	cp join.cmxa join.a $(LIBDIR)/threads

.SUFFIXES: .ml .mli .cmo .cmi .cmx

.mli.cmi:
	$(CAMLC) -c $(COMPFLAGS) -I $(THREADS) $<

.ml.cmo:
	$(JCC) -c $(COMPFLAGS) -I $(THREADS) $(OCAMLPP) $<

.ml.cmx:
	$(JCOPT) -c $(COMPFLAGS) -I $(THREADS) $(OCAMLPP) $<

depend:
	../../boot/ocamlrun ../../tools/ocamldep *.mli *.ml > .depend

include .depend