summaryrefslogtreecommitdiff
path: root/byterun/Makefile.nt
blob: 788572732018d0b3754bbfac2aeb67da81463586 (plain)
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
#########################################################################
#                                                                       #
#                                 OCaml                                 #
#                                                                       #
#            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 Makefile.common

CFLAGS=-DOCAML_STDLIB_DIR='"$(LIBDIR)"' $(IFLEXDIR)

DBGO=d.$(O)
OBJS=$(COMMONOBJS:.o=.$(O)) win32.$(O) main.$(O)
DOBJS=$(OBJS:.$(O)=.$(DBGO)) instrtrace.$(DBGO)

ocamlrun$(EXE): libcamlrun.$(A) prims.$(O)
	$(MKEXE) -o ocamlrun$(EXE) prims.$(O) $(call SYSLIB,ws2_32) $(EXTRALIBS) libcamlrun.$(A)

ocamlrund$(EXE): libcamlrund.$(A) prims.$(O) main.$(O)
	$(MKEXE) -o ocamlrun$(EXE) $(BYTECCDBGCOMPOPTS) prims.$(O) $(call SYSLIB,ws2_32) $(EXTRALIBS) libcamlrund.$(A)

libcamlrun.$(A): $(OBJS)
	$(call MKLIB,libcamlrun.$(A),$(OBJS))

libcamlrund.$(A): $(DOBJS)
	$(call MKLIB,libcamlrund.$(A),$(DOBJS))

.SUFFIXES: .$(O) .$(DBGO)

.c.$(O):
	$(CC) $(CFLAGS) $(BYTECCCOMPOPTS) -c $<

.c.$(DBGO):
	$(CC) $(CFLAGS) $(BYTECCDBGCOMPOPTS) -c $<
	mv $*.$(O) $*.$(DBGO)

.depend.nt: .depend
	rm -f .depend.win32
	echo "win32.o: win32.c fail.h compatibility.h misc.h config.h \\" >> .depend.win32
	echo " ../config/m.h ../config/s.h mlvalues.h memory.h gc.h \\" >> .depend.win32
	echo " major_gc.h freelist.h minor_gc.h osdeps.h signals.h" >> .depend.win32
	cat .depend >> .depend.win32
	sed -e '/\.d\.o/q' -e 's/^\(.*\)\.o:/\1.$$(O) \1.$$(DBGO):/' .depend.win32 > .depend.nt
	rm -f .depend.win32

include .depend.nt