303 lines
9.6 KiB
Plaintext
303 lines
9.6 KiB
Plaintext
#########################################################################
|
|
# #
|
|
# 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$
|
|
|
|
### 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 SHARPBANGSCRIPTS to false.
|
|
SHARPBANGSCRIPTS=true
|
|
#SHARPBANGSCRIPTS=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.
|
|
#BYTECC=gcc
|
|
#BYTECC=cc
|
|
|
|
### Additional compile-time options for $(BYTECC).
|
|
# If using gcc on Intel 386 or Motorola 68k:
|
|
# (the -fno-defer-pop option circumvents a bug in certain versions of gcc)
|
|
#BYTECCCOMPOPTS=-fno-defer-pop -Wall
|
|
# If using gcc and being superstitious:
|
|
#BYTECCCOMPOPTS=-Wall
|
|
# Under NextStep:
|
|
#BYTECCCOMPOPTS=-U__GNUC__ -fno-defer-pop -Wall
|
|
# Otherwise:
|
|
#BYTECCCOMPOPTS=
|
|
|
|
### Additional link-time options for $(BYTECC)
|
|
### If using GCC on a Dec Alpha under OSF1:
|
|
#BYTECCLINKOPTS=-Wl,-T,12000000 -Wl,-D,14000000
|
|
# To support dynamic loading of shared libraries (they need to look at
|
|
# our own symbols):
|
|
#BYTECCLINKOPTS=-Wl,-E
|
|
# Otherwise:
|
|
#BYTECCLINKOPTS=
|
|
|
|
### 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
|
|
# BSD-style:
|
|
#RANLIB=ranlib
|
|
#RANLIBCMD=ranlib
|
|
# If ranlib is not needed:
|
|
#RANLIB=ar rs
|
|
#RANLIBCMD=
|
|
|
|
### 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
|
|
#BYTECCRPATH=-Wl,-rpath
|
|
|
|
############# Configuration for the native-code compiler
|
|
|
|
### Name of architecture for the native-code compiler
|
|
### Currently supported:
|
|
###
|
|
### alpha Digital/Compaq Alpha machines under DUnix/Tru64 or Linux
|
|
### i386 Intel Pentium PCs under Linux, *BSD*, NextStep
|
|
### sparc Sun Sparcstation under SunOS 4.1 or Solaris 2
|
|
### mips SGI machines under IRIX
|
|
### hppa HP 9000/700 under HPUX
|
|
### power Mac OS X; IBM RS6000 and PowerPC workstations under AIX
|
|
### ia64 Intel Itanium/IA64 under Linux
|
|
### arm ARM under Linux
|
|
###
|
|
### Set ARCH=none if your machine is not supported
|
|
#ARCH=alpha
|
|
#ARCH=i386
|
|
#ARCH=sparc
|
|
#ARCH=mips
|
|
#ARCH=hppa
|
|
#ARCH=power
|
|
#ARCH=ia64
|
|
#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: choose between
|
|
### MODEL=rs6000 The original IBM RS6000 workstations
|
|
### (RIOS and RIOS2 processors)
|
|
### MODEL=ppc The newer PowerPC processors
|
|
### (Motorola/IBM PPC601, PPC603, PPC604, G3, G4, etc)
|
|
### The Motorola PPC601 is compatible with both models, but the newer
|
|
### PPCs will work only with MODEL=ppc, and the older IBM RS6000
|
|
### workstations will work only with MODEL=rs6000.
|
|
###
|
|
### For other architectures: leave MODEL=default
|
|
###
|
|
#MODEL=rs6000
|
|
#MODEL=ppc
|
|
#MODEL=default
|
|
|
|
### Name of operating system family for the native-code compiler.
|
|
### If ARCH=sparc: choose between
|
|
### SYSTEM=sunos SunOS 4.1
|
|
### SYSTEM=solaris Solaris 2
|
|
###
|
|
### If ARCH=i386: choose between
|
|
### SYSTEM=linux_aout Linux with a.out binaries
|
|
### SYSTEM=linux_elf Linux with ELF binaries
|
|
### SYSTEM=bsd FreeBSD, probably works for NetBSD also
|
|
### SYSTEM=nextstep NextStep
|
|
###
|
|
### For other architectures: set SYSTEM=unknown
|
|
###
|
|
#SYSTEM=sunos
|
|
#SYSTEM=solaris
|
|
#SYSTEM=linux
|
|
#SYSTEM=linux_elf
|
|
#SYSTEM=bsd
|
|
#SYSTEM=nextstep
|
|
#SYSTEM=unknown
|
|
|
|
### Which C compiler to use for the native-code compiler.
|
|
### cc is better than gcc on the Mips and Alpha.
|
|
#NATIVECC=cc
|
|
#NATIVECC=gcc
|
|
|
|
### Additional compile-time options for $(NATIVECC).
|
|
# For cc on the Alpha:
|
|
#NATIVECCCOMPOPTS=-std1
|
|
# For cc on the Mips:
|
|
#NATIVECCCOMPOPTS=-std
|
|
# For gcc if superstitious:
|
|
#NATIVECCCOMPOPTS=-Wall
|
|
|
|
### Additional link-time options for $(NATIVECC)
|
|
#NATIVECCLINKOPTS=
|
|
|
|
# Compile-time option to $(NATIVECC) to add a directory to be searched
|
|
# at run-time for shared libraries
|
|
#NATIVECCRPATH=-Wl,-rpath
|
|
|
|
### Flags for the assembler
|
|
# For the Alpha or the Mips:
|
|
#ASFLAGS=-O2
|
|
# For the PowerPC:
|
|
#ASFLAGS=-u -m ppc -w
|
|
# For the RS6000:
|
|
#ASFLAGS=-u -m pwr -w
|
|
# Otherwise:
|
|
#ASFLAGS=
|
|
|
|
### Command and flags to use for assembling .S files (often with preprocessing)
|
|
# If gcc is available:
|
|
#ASPP=gcc
|
|
#ASPPFLAGS=-c -DSYS_$(SYSTEM)
|
|
# On SunOS and Solaris:
|
|
#ASPP=$(AS)
|
|
#ASPPFLAGS=-P -DSYS_$(SYSTEM)
|
|
# Otherwise:
|
|
#ASPP=$(AS)
|
|
#ASPPFLAGS=
|
|
|
|
### Extra flags to use for assembling .S files in profiling mode
|
|
# On Digital Unix:
|
|
#ASPPPROFFLAGS=-pg -DPROFILING
|
|
# Otherwise:
|
|
#ASPPPROFFLAGS=-DPROFILING
|
|
|
|
### Whether profiling with gprof is supported
|
|
# If yes: (x86/Linux, Alpha/Digital Unix):
|
|
#PROFILING=prof
|
|
# If no: (all others)
|
|
#PROFILING=noprof
|
|
|
|
### Path to the "objcopy" program from GNU binutils.
|
|
# You need a sufficiently recent version of the binutils so that
|
|
# the option --redefine-sym is supported by objcopy.
|
|
# Leave blank if you don't have "objcopy", but then "ocamlopt -pack"
|
|
# will not work
|
|
#BINUTILS_OBJCOPY=/usr/bin/objcopy
|
|
|
|
### Path to the "nm" program from GNU binutils.
|
|
# Other versions of nm do *not* work for our purposes.
|
|
# Leave blank if you don't have GNU "nm", but then "ocamlopt -pack"
|
|
# will not work
|
|
#BINUTILS_NM=/usr/bin/nm
|
|
|
|
############# 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
|
|
# num Arbitrary-precision rational arithmetic
|
|
# threads Lightweight concurrent processes
|
|
# systhreads Same as threads, requires POSIX threads
|
|
# graph Portable drawing primitives for X11
|
|
# dynlink Dynamic linking of bytecode
|
|
# labltk Tcl/Tk interface
|
|
# bigarray Large, multidimensional numerical arrays
|
|
|
|
OTHERLIBRARIES=unix str num threads graph dynlink labltk bigarray
|
|
|
|
### Name of the target architecture for the "num" library
|
|
# Known targets:
|
|
# x86 68K vax ns mips alpha pyramid i960
|
|
# sparc supersparc sparc-solaris supersparc-solaris
|
|
# See the file otherlibs/num/README for more explanations.
|
|
# If you don't know, leave BIGNUM_ARCH=C, which selects a portable
|
|
# C implementation of these routines.
|
|
BIGNUM_ARCH=alpha
|
|
|
|
### 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" and "labltk" packages
|
|
# 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" and "labltk" packages
|
|
# Usually:
|
|
#X11_LINK=-lX11
|
|
# For SunOS with OpenLook:
|
|
#X11_LINK=-L$(X11_LIB) -lX11
|
|
|
|
### -I options for finding the include file ndbm.h
|
|
# Needed for the "dbm" package
|
|
# Usually:
|
|
#DBM_INCLUDES=
|
|
# For recent Linux systems:
|
|
#DBM_INCLUDES=-I/usr/include/gdbm
|
|
|
|
### Preprocessor options for finding tcl.h and tk.h
|
|
# Needed for the "labltk" package
|
|
# Required only if not in the standard include path.
|
|
# For Tcl/Tk 8.0 on FreeBSD:
|
|
#TK_DEFS="-I/usr/local/include/tcl8.0 -I/usr/local/include/tk8.0"
|
|
|
|
### Linker options for linking tcl and tk libraries
|
|
# Needed for the "labltk" package
|
|
# Usually (with appropriate version numbers):
|
|
#TK_LINK="-ltk8.0 -ltcl8.0"
|
|
# For Tcl/Tk 8.0 on FreeBSD:
|
|
#TK_LINK="-L/usr/local/lib -ltk8.0 -ltcl8.0"
|