1999-11-17 10:59:06 -08:00
|
|
|
#########################################################################
|
|
|
|
# #
|
|
|
|
# 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 #
|
2001-12-07 05:41:02 -08:00
|
|
|
# under the terms of the GNU Library General Public License, with #
|
|
|
|
# the special exception on linking described in file ../LICENSE. #
|
1999-11-17 10:59:06 -08:00
|
|
|
# #
|
|
|
|
#########################################################################
|
|
|
|
|
|
|
|
# $Id$
|
|
|
|
|
2002-06-07 02:49:45 -07:00
|
|
|
# Configuration for Windows, Visual C++ compiler
|
1996-02-21 02:49:46 -08:00
|
|
|
|
|
|
|
######### General configuration
|
|
|
|
|
2005-03-24 09:20:54 -08:00
|
|
|
PREFIX=C:/ocamlms
|
2000-01-31 21:43:25 -08:00
|
|
|
|
2002-08-19 05:24:23 -07:00
|
|
|
### Where to install the binaries.
|
2002-06-07 02:49:45 -07:00
|
|
|
BINDIR=$(PREFIX)/bin
|
1996-02-21 02:49:46 -08:00
|
|
|
|
|
|
|
### Where to install the standard library
|
2002-06-07 02:49:45 -07:00
|
|
|
LIBDIR=$(PREFIX)/lib
|
1996-02-21 02:49:46 -08:00
|
|
|
|
2002-06-27 04:36:02 -07:00
|
|
|
### Where to install the stub DLLs
|
|
|
|
STUBLIBDIR=$(LIBDIR)/stublibs
|
|
|
|
|
1996-03-11 05:58:31 -08:00
|
|
|
### Where to install the info files
|
2000-01-31 21:43:25 -08:00
|
|
|
DISTRIB=$(PREFIX)
|
1996-03-11 05:58:31 -08:00
|
|
|
|
2002-06-07 02:49:45 -07:00
|
|
|
########## Toolchain and OS dependencies
|
|
|
|
|
|
|
|
TOOLCHAIN=msvc
|
|
|
|
CCOMPTYPE=msvc
|
|
|
|
O=obj
|
|
|
|
A=lib
|
|
|
|
S=asm
|
|
|
|
SO=s.obj
|
|
|
|
DO=d.obj
|
|
|
|
EXE=.exe
|
1999-10-14 06:35:59 -07:00
|
|
|
|
1996-02-21 02:49:46 -08:00
|
|
|
########## Configuration for the bytecode compiler
|
|
|
|
|
|
|
|
### Which C compiler to use for the bytecode interpreter.
|
2006-09-20 04:14:37 -07:00
|
|
|
BYTECC=cl /nologo -D_CRT_SECURE_NO_DEPRECATE
|
1996-02-21 02:49:46 -08:00
|
|
|
|
2001-08-28 07:47:48 -07:00
|
|
|
### Additional compile-time options for $(BYTECC). (For static linking.)
|
1996-09-26 08:07:51 -07:00
|
|
|
BYTECCCOMPOPTS=/Ox /MT
|
1996-02-21 02:49:46 -08:00
|
|
|
|
2001-08-28 07:47:48 -07:00
|
|
|
### Additional link-time options for $(BYTECC). (For static linking.)
|
1996-09-26 08:07:51 -07:00
|
|
|
BYTECCLINKOPTS=/MT
|
1996-02-21 02:49:46 -08:00
|
|
|
|
2001-08-28 07:47:48 -07:00
|
|
|
### Additional compile-time options for $(BYTECC). (For building a DLL.)
|
2003-05-12 07:23:10 -07:00
|
|
|
DLLCCCOMPOPTS=/Ox /MD -DCAML_DLL
|
2001-08-28 07:47:48 -07:00
|
|
|
|
1996-02-21 02:49:46 -08:00
|
|
|
### Libraries needed
|
2002-03-06 08:56:19 -08:00
|
|
|
BYTECCLIBS=advapi32.lib
|
|
|
|
NATIVECCLIBS=advapi32.lib
|
1996-02-21 02:49:46 -08:00
|
|
|
|
|
|
|
### How to invoke the C preprocessor
|
1996-12-10 06:45:58 -08:00
|
|
|
CPP=cl /nologo /EP
|
1996-02-21 02:49:46 -08:00
|
|
|
|
2006-09-23 01:51:31 -07:00
|
|
|
### How to merge a .manifest (if any) in a .exe or .dll
|
|
|
|
MERGEMANIFEST=\
|
|
|
|
test ! -f $(1).manifest || \
|
|
|
|
mt -nologo -outputresource:$(1) -manifest $(1).manifest && \
|
|
|
|
rm -f $(1).manifest
|
|
|
|
|
|
|
|
### How to build an EXE
|
|
|
|
MKEXE=$(BYTECC) /Fe$(1) $(2) && ($(MERGEMANIFEST))
|
|
|
|
|
2002-06-07 02:49:45 -07:00
|
|
|
### How to build a DLL
|
2006-09-23 01:51:31 -07:00
|
|
|
MKDLL=link /nologo /dll /out:$(1) /implib:$(2) $(3) && ($(MERGEMANIFEST))
|
2002-06-07 02:49:45 -07:00
|
|
|
|
|
|
|
### How to build a static library
|
2006-09-20 04:14:37 -07:00
|
|
|
MKLIB=link /lib /nologo /out:$(1) $(2)
|
2002-06-07 02:49:45 -07:00
|
|
|
|
|
|
|
### Canonicalize the name of a system library
|
|
|
|
SYSLIB=$(1).lib
|
|
|
|
|
|
|
|
### The ranlib command
|
|
|
|
RANLIBCMD=
|
1996-02-21 02:49:46 -08:00
|
|
|
|
|
|
|
############# Configuration for the native-code compiler
|
|
|
|
|
|
|
|
### Name of architecture for the native-code compiler
|
|
|
|
ARCH=i386
|
|
|
|
|
|
|
|
### Name of architecture model for the native-code compiler.
|
|
|
|
MODEL=default
|
|
|
|
|
|
|
|
### Name of operating system family for the native-code compiler.
|
|
|
|
SYSTEM=win32
|
|
|
|
|
|
|
|
### Which C compiler to use for the native-code compiler.
|
2006-09-20 04:14:37 -07:00
|
|
|
NATIVECC=cl /nologo -D_CRT_SECURE_NO_DEPRECATE
|
1996-02-21 02:49:46 -08:00
|
|
|
|
|
|
|
### Additional compile-time options for $(NATIVECC).
|
1996-12-10 06:45:58 -08:00
|
|
|
NATIVECCCOMPOPTS=/Ox /MT
|
1996-02-21 02:49:46 -08:00
|
|
|
|
|
|
|
### Additional link-time options for $(NATIVECC)
|
1996-12-10 06:45:58 -08:00
|
|
|
NATIVECCLINKOPTS=/MT
|
1996-02-21 02:49:46 -08:00
|
|
|
|
2002-06-07 02:49:45 -07:00
|
|
|
### Build partially-linked object file
|
2006-10-18 01:21:24 -07:00
|
|
|
PARTIALLD=link /lib /nologo
|
|
|
|
PACKLD=link /lib /nologo /out:# there must be no space after this '/out:'
|
2002-06-07 02:49:45 -07:00
|
|
|
|
1996-02-21 02:49:46 -08:00
|
|
|
############# Configuration for the contributed libraries
|
|
|
|
|
2001-11-06 05:21:00 -08:00
|
|
|
OTHERLIBRARIES=win32unix systhreads str num win32graph dynlink bigarray labltk
|
1996-04-01 07:25:05 -08:00
|
|
|
|
1996-02-21 02:49:46 -08:00
|
|
|
### Name of the target architecture for the "num" library
|
2004-04-01 05:08:56 -08:00
|
|
|
BNG_ARCH=generic
|
|
|
|
BNG_ASM_LEVEL=0
|
1996-02-21 02:49:46 -08:00
|
|
|
|
2000-01-31 21:43:25 -08:00
|
|
|
### Configuration for LablTk
|
2002-06-20 09:08:46 -07:00
|
|
|
# Set TK_ROOT to the directory where you installed TCL/TK 8.3
|
|
|
|
TK_ROOT=c:/tcl
|
|
|
|
TK_DEFS=-I$(TK_ROOT)/include
|
2002-07-18 04:08:22 -07:00
|
|
|
# The following definition avoids hard-wiring $(TK_ROOT) in the libraries
|
|
|
|
# produced by OCaml, and is therefore required for binary distribution
|
|
|
|
# of these libraries. However, $(TK_ROOT) must be added to the LIB
|
|
|
|
# environment variable, as described in README.win32.
|
2002-07-03 20:16:03 -07:00
|
|
|
TK_LINK=tk83.lib tcl83.lib
|
2002-07-18 04:08:22 -07:00
|
|
|
# An alternative definition that avoids mucking with the LIB variable,
|
|
|
|
# but hard-wires the Tcl/Tk location in the binaries
|
|
|
|
# TK_LINK=$(TK_ROOT)/tk83.lib $(TK_ROOT)/tcl83.lib
|
2000-01-31 21:43:25 -08:00
|
|
|
|
1996-02-21 02:49:46 -08:00
|
|
|
############# Aliases for common commands
|
|
|
|
|
2002-06-07 02:49:45 -07:00
|
|
|
MAKEREC=$(MAKE) -f Makefile.nt
|
|
|
|
MAKECMD=$(MAKE)
|