######################################################################### # # # 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$ # Configuration for Windows, Visual C++ compiler ######### General configuration PREFIX=C:/ocamlms64 ### 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=msvc CCOMPTYPE=msvc O=obj A=lib S=asm SO=s.obj DO=d.obj DBGO=dbg.obj EXE=.exe ########## Configuration for the bytecode compiler ### Which C compiler to use for the bytecode interpreter. BYTECC=cl /nologo -D_CRT_SECURE_NO_DEPRECATE ### Additional compile-time options for $(BYTECC). (For static linking.) BYTECCCOMPOPTS=/Ox /MT ### Additional compile-time options for $(BYTECC). (For debug version.) BYTECCDBGCOMPOPTS=-DDEBUG /Zi /W3 /Wp64 ### Additional link-time options for $(BYTECC). (For static linking.) BYTECCLINKOPTS=/MT ### Additional compile-time options for $(BYTECC). (For building a DLL.) DLLCCCOMPOPTS=/Ox /MD -DCAML_DLL ### Libraries needed EXTRALIBS=bufferoverflowu.lib BYTECCLIBS=advapi32.lib $(EXTRALIBS) NATIVECCLIBS=advapi32.lib $(EXTRALIBS) ### How to invoke the C preprocessor CPP=cl /nologo /EP ### 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)) ### How to build a DLL MKDLL=link /nologo /dll /machine:AMD64 /out:$(1) /implib:$(2) $(3) $(EXTRALIBS) && ($(MERGEMANIFEST)) ### How to build a static library MKLIB=link /lib /nologo /machine:AMD64 /out:$(1) $(2) ### Canonicalize the name of a system library SYSLIB=$(1).lib ### The ranlib command RANLIBCMD= ############# Configuration for the native-code compiler ### Name of architecture for the native-code compiler ARCH=amd64 ### Name of architecture model for the native-code compiler. MODEL=default ### Name of operating system family for the native-code compiler. SYSTEM=win64 ### Which C compiler to use for the native-code compiler. NATIVECC=cl /nologo ### Additional compile-time options for $(NATIVECC). NATIVECCCOMPOPTS=/Ox /MT ### Additional link-time options for $(NATIVECC) NATIVECCLINKOPTS=/MT ### Build partially-linked object file PARTIALLD=link /lib /nologo /machine:AMD64 PACKLD=ld -r --oformat pe-i386 ############# Configuration for the contributed libraries OTHERLIBRARIES=win32unix systhreads str num win32graph dynlink bigarray ### Name of the target architecture for the "num" library BNG_ARCH=generic BNG_ASM_LEVEL=0 ############# Aliases for common commands MAKEREC=$(MAKE) -f Makefile.nt MAKECMD=$(MAKE)