#########################################################################
#                                                                       #
#                            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.      #
#                                                                       #
#########################################################################

# $Id: Makefile.mingw,v 1.13 2005/08/01 15:51:09 xleroy Exp $

# Configuration for Windows, Mingw compiler

######### General configuration

PREFIX=C:/ocamlmgw

### Where to install the binaries
BINDIR=$(PREFIX)/bin

### Where to install the standard library
LIBDIR=$(PREFIX)/lib

### Where to install the stub DLLs
STUBLIBDIR=$(LIBDIR)/stublibs

### Where to install the info files
DISTRIB=$(PREFIX)

########## Toolchain and OS dependencies

TOOLCHAIN=mingw
CCOMPTYPE=cc
O=o
A=a
S=s
SO=s.o
DO=d.o
EXE=.exe

########## Configuration for the bytecode compiler

### Which C compiler to use for the bytecode interpreter.
BYTECC=gcc -mno-cygwin

### Additional compile-time options for $(BYTECC).  (For static linking.)
BYTECCCOMPOPTS=-O -mms-bitfields -Wall -Wno-unused

### Additional link-time options for $(BYTECC).  (For static linking.)
BYTECCLINKOPTS=

### Additional compile-time options for $(BYTECC).  (For building a DLL.)
DLLCCCOMPOPTS=-O -mms-bitfields -Wall -Wno-unused -DCAML_DLL

### Libraries needed
BYTECCLIBS=
NATIVECCLIBS=

### How to invoke the C preprocessor
CPP=$(BYTECC) -E

### How to build a DLL
MKDLL=$(BYTECC) -shared -o $(1) -Wl,--out-implib,$(2) $(3)

### How to build a static library
MKLIB=rm -f $(1); ar rcs $(1) $(2)

### Canonicalize the name of a system library
SYSLIB=-l$(1)

### The ranlib command
RANLIBCMD=ranlib

############# 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=mingw

### Which C compiler to use for the native-code compiler.
NATIVECC=$(BYTECC)

### Additional compile-time options for $(NATIVECC).
NATIVECCCOMPOPTS=-O -mms-bitfields -Wall -Wno-unused

### Additional link-time options for $(NATIVECC)
NATIVECCLINKOPTS=

### Build partially-linked object file
PARTIALLD=ld -r $(NATIVECCLINKOPTS)
PACKLD=$(PARTIALLD)

############# Configuration for the contributed libraries

OTHERLIBRARIES=win32unix systhreads str num win32graph dynlink bigarray labltk

### Name of the target architecture for the "num" library
BNG_ARCH=ia32
BNG_ASM_LEVEL=1

### Configuration for LablTk
# Set TK_ROOT to the directory where you installed TCL/TK 8.3
# There must be no spaces or special characters in $(TK_ROOT)
TK_ROOT=c:/tcl
TK_DEFS=-I$(TK_ROOT)/include
TK_LINK=$(TK_ROOT)/lib/tk83.lib $(TK_ROOT)/lib/tcl83.lib

############# Aliases for common commands

MAKEREC=$(MAKE) -f Makefile.nt 
MAKECMD=$(MAKE)


syntax highlighted by Code2HTML, v. 0.9.1