#************************************************************************** #* * #* 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 Lesser General Public License version 2.1, with the * #* special exception on linking described in the file LICENSE. * #* * #************************************************************************** ### Compile-time configuration ########## General configuration ### Where to install the binaries BINDIR=/usr/local/bin ### Where to install the standard library LIBDIR=/usr/local/lib/ocaml STUBLIBDIR=$(LIBDIR)/stublibs ### Where to install the man pages # Man pages for commands go in $(MANDIR)/man$(MANEXT) # Man pages for the library go in $(MANDIR)/mano MANDIR=/usr/local/man MANEXT=1 ### Do #! scripts work on your system? ### Beware: on some systems (e.g. SunOS 4), this will work only if ### the string "#!$(BINDIR)/ocamlrun" is less than 32 characters long. ### In doubt, set HASHBANGSCRIPTS to false. HASHBANGSCRIPTS=true #HASHBANGSCRIPTS=false ########## Configuration for the bytecode compiler ### Which C compiler to use for the bytecode interpreter. ### Performance of the bytecode interpreter is *much* improved ### if Gnu CC version 2 is used. #CC=gcc #BYTECFLAGS= ### Additional compile-time options for $(BYTECC). # If using gcc on Intel x86: # (the -fno-defer-pop option circumvents a bug in certain versions of gcc) #BYTECCCOMPOPTS=-fno-defer-pop -Wall # If using gcc and being cautious: #BYTECCCOMPOPTS=-Wall # Otherwise: #BYTECCCOMPOPTS= ### Additional link-time options for $(BYTECC) # To support dynamic loading of shared libraries (they need to look at # our own symbols): #LDFLAGS=-Wl,-E # Otherwise: #LDFLAGS= ### Libraries needed # On most platforms: #CCLIBS=-lcurses -ltermcap -lm ### How to invoke the C preprocessor # This is not needed anymore. Leave these lines commented out. # On most machines: #CPP=/lib/cpp -P # Under Solaris: #CPP=/usr/ccs/lib/cpp -P # Under FreeBSD: #CPP=cpp -P ### How to invoke ranlib RANLIB=ranlib RANLIBCMD=ranlib # If ranlib is not needed: #RANLIB=ar rs #RANLIBCMD= ### How to invoke ar #ARCMD=ar ### Shared library support # Extension for shared libraries: so if supported, a if not supported #SO=so #SO=a # Set to nothing if shared libraries supported, and to -custom if not supported #CUSTOM_IF_NOT_SHARED= #CUSTOM_IF_NOT_SHARED=-custom # Options to $(BYTECC) to produce shared objects (e.g. PIC) #SHAREDCCCOMPOPTS=-fPIC # How to build a shared library, invoked with output .so as first arg # and object files as remaining args #MKSHAREDLIB=gcc -shared -o # Compile-time option to $(BYTECC) to add a directory to be searched # at run-time for shared libraries #RPATH=-Wl,-rpath ############# Configuration for the native-code compiler ### Name of architecture for the native-code compiler ### Currently supported: ### ### i386 Intel Pentium PCs under Linux, *BSD*, NextStep ### power Macintosh under Mac OS X and Linux ### arm ARM under Linux ### ### Set ARCH=none if your machine is not supported #ARCH=i386 #ARCH=power #ARCH=arm #ARCH=none ### Name of architecture model for the native-code compiler. ### Some architectures come in several slightly different flavors ### that share a common code generator. This variable tailors the ### behavior of the code generator to the particular flavor used. ### Currently needed only if ARCH=power; leave MODEL=default for ### other architectures. ### If ARCH=power: set MODEL=ppc ### For other architectures: leave MODEL=default ### #MODEL=ppc #MODEL=default ### Name of operating system family for the native-code compiler. #SYSTEM=solaris #SYSTEM=linux #SYSTEM=linux_elf #SYSTEM=bsd #SYSTEM=unknown #NATIVECFLAGS= # For gcc if cautious: #NATIVECCCOMPOPTS=-Wall # Compile-time option to $(NATIVECC) to add a directory to be searched # at run-time for shared libraries #RPATH=-Wl,-rpath ### Command and flags to use for assembling ocamlopt-generated code #ASM=as ### Command and flags to use for assembling .S files (often with preprocessing) # If gcc is available: #ASPP=gcc -c # On Solaris: #ASPP=as -P ### Extra flags to use for assembling .S files in profiling mode #ASPPPROFFLAGS=-DPROFILING ### Whether profiling with gprof is supported # If yes: (e.g. x86/Linux): #PROFILING=true # If no: #PROFILING=false ### Option to give to the C compiler for profiling #CC_PROFILE=-pg #CC_PROFILE=-xpg ############# Configuration for the contributed libraries ### Which libraries to compile and install # Currently available: # unix Unix system calls # str Regular expressions and high-level string processing # threads Lightweight concurrent processes # systhreads Same as threads, requires POSIX threads # graph Portable drawing primitives for X11 # dynlink Dynamic linking of bytecode # bigarray Large, multidimensional numerical arrays OTHERLIBRARIES=unix str threads graph dynlink bigarray ### Link-time options to ocamlc or ocamlopt for linking with POSIX threads # Needed for the "systhreads" package # Usually: #PTHREAD_LINK=-cclib -lpthread # For Solaris: #PTHREAD_LINK=-cclib -lpthread -cclib -lposix4 ### -I options for finding the X11/*.h includes # Needed for the "graph" package # Usually: #X11_INCLUDES=-I/usr/X11R6/include # For SunOS with OpenLook: #X11_INCLUDES=/usr/openwin/include ### Link-time options to ocamlc or ocamlopt for linking with X11 libraries # Needed for the "graph" package # Usually: #X11_LINK=-lX11 # For SunOS with OpenLook: #X11_LINK=-L$(X11_LIB) -lX11