# @configure_input@ #************************************************************************** #* * #* 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. * #* * #************************************************************************** # The configuration Makefile ## Variables defining the current version of OCaml OCAML_DEVELOPMENT_VERSION=@OCAML_DEVELOPMENT_VERSION@ OCAML_VERSION_MAJOR=@OCAML_VERSION_MAJOR@ OCAML_VERSION_MINOR=@OCAML_VERSION_MINOR@ OCAML_VERSION_PATCHLEVEL=@OCAML_VERSION_PATCHLEVEL@ OCAML_VERSION_EXTRA=@OCAML_VERSION_EXTRA@ ## The EMPTY variable, used in other definitions EMPTY= ## Arguments passed to the configure script CONFIGURE_ARGS=@CONFIGURE_ARGS@ ## Top build directory TOP_BUILDDIR = @top_builddir@ ## Installation directories prefix=@prefix@ exec_prefix=@exec_prefix@ ### Where to install the binaries BINDIR=@bindir@ datarootdir=@datarootdir@ ### Where to install the standard library LIBDIR=@libdir@ ### Where to install the stub code for the standard library STUBLIBDIR=@libdir@/stublibs ### Where to install the man pages # Man pages for commands go in $(MANDIR)/man1 # Man pages for the library go in $(MANDIR)/man3 MANDIR=@mandir@ PROGRAMS_MAN_DIR=$(MANDIR)/man1 LIBRARIES_MAN_DIR=$(MANDIR)/man3 ### 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. SHEBANGSCRIPTS=@shebangscripts@ LONG_SHEBANG=@long_shebang@ # For compatibility HASHBANGSCRIPTS:=$(SHEBANGSCRIPTS) ### Path to the libtool script LIBTOOL = $(TOP_BUILDDIR)/libtool ### Which C compiler to use TOOLPREF=@ac_tool_prefix@ CC=@CC@ CC_HAS_DEBUG_PREFIX_MAP=@cc_has_debug_prefix_map@ AS_HAS_DEBUG_PREFIX_MAP=@as_has_debug_prefix_map@ ### Additional link-time options # To support dynamic loading of shared libraries (they need to look at # our own symbols): OC_LDFLAGS=@oc_ldflags@ LDFLAGS?=@LDFLAGS@ ### How to invoke the C preprocessor through the C compiler CPP=@CPP@ ### How to invoke ranlib RANLIB=@RANLIB@ RANLIBCMD=@RANLIBCMD@ ### How to invoke ar ARCMD=@AR@ ### Extension of object files O=@OBJEXT@ EXT_OBJ=.@OBJEXT@ ### How to tell the C compiler to output an object file OUTPUTOBJ=@outputobj@ ### Extension of static libraries A=@libext@ EXT_LIB=.@libext@ ### Extension of assembler files S=@S@ EXT_ASM=.@S@ ### Extension for shared libraries SO=@SO@ EXT_DLL=.@SO@ SHAREDLIB_CFLAGS=@sharedlib_cflags@ # Compile-time option to $(CC) to add a directory to be searched # at run-time for shared libraries RPATH=@rpath@ ############# Configuration for the native-code compiler ### Whether the native compiler has been enabled or not NATIVE_COMPILER=@native_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=@arch@ # Whether the architecture has 64 bits ARCH64=@arch64@ # Endianness for this architecture ENDIANNESS=@endianness@ ### 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=@model@ ### Name of operating system family for the native-code compiler. SYSTEM=@system@ ### Command and flags to use for assembling ocamlopt-generated code ASM=@AS@ ### Command and flags to use for assembling .S files (often with preprocessing) ASPP=@ASPP@ ### Set to "true" to install ".byte" executables (ocamlc.byte, etc.) INSTALL_BYTECODE_PROGRAMS=@install_bytecode_programs@ ############# Configuration for the contributed libraries ### Which libraries to compile and install # Currently available: # dynlink Dynamic linking (bytecode and native) # (win32)unix Unix system calls # str Regular expressions and high-level string processing # systhreads Same as threads, requires POSIX threads OTHERLIBRARIES=@otherlibraries@ ### Link-time options to ocamlc or ocamlopt for linking with POSIX threads # Needed for the "systhreads" package PTHREAD_LIBS=@PTHREAD_LIBS@ PTHREAD_CAML_LIBS=$(addprefix -cclib ,$(PTHREAD_LIBS)) PTHREAD_CFLAGS=@PTHREAD_CFLAGS@ UNIX_OR_WIN32=@unix_or_win32@ UNIXLIB=@unixlib@ INSTALL_SOURCE_ARTIFACTS=@install_source_artifacts@ OC_CFLAGS=@oc_cflags@ CFLAGS?=@CFLAGS@ OC_CPPFLAGS=@oc_cppflags@ CPPFLAGS?=@CPPFLAGS@ OCAMLC_CFLAGS=@ocamlc_cflags@ OCAMLC_CPPFLAGS=@ocamlc_cppflags@ BYTECCLIBS=@bytecclibs@ EXE=@exeext@ OUTPUTEXE=@outputexe@ SUPPORTS_SHARED_LIBRARIES=@supports_shared_libraries@ MKSHAREDLIBRPATH=@mksharedlibrpath@ DYNLINKOPTS=@DLLIBS@ NATDYNLINK=@natdynlink@ NATDYNLINKOPTS=@natdynlinkopts@ SYSLIB=@syslib@ MKLIB=@mklib@ # #7678: ocamlopt uses these only to compile .c files, and the behaviour for the # two drivers should be identical. OCAMLOPT_CFLAGS=@ocamlc_cflags@ OCAMLOPT_CPPFLAGS=@ocamlc_cppflags@ NATIVECCLIBS=@nativecclibs@ SYSTHREAD_SUPPORT=@systhread_support@ PACKLD=@PACKLD@ FLEXDLL_CHAIN=@flexdll_chain@ EXTRALIBS=@extralibs@ CCOMPTYPE=@ccomptype@ TOOLCHAIN=@toolchain@ CMXS=@cmxs@ # On Windows, MKDLL, MKEXE and MKMAINDLL must ultimately be equivalent to # $(FLEXLINK_CMD) $(FLEXLINK_FLAGS) [-exe|-maindll] # or OCAML_FLEXLINK overriding will not work (see utils/config.mlp) MKEXE=@mkexe@ MKDLL=@mksharedlib@ MKMAINDLL=@mkmaindll@ MKEXEDEBUGFLAG=@mkexedebugflag@ RUNTIMED=@debug_runtime@ INSTRUMENTED_RUNTIME=@instrumented_runtime@ INSTRUMENTED_RUNTIME_LIBS=@instrumented_runtime_libs@ WITH_DEBUGGER=@with_debugger@ WITH_CAMLTEX=@with_camltex@ WITH_OCAMLDOC=@ocamldoc@ WITH_OCAMLTEST=@ocamltest@ ASM_CFI_SUPPORTED=@asm_cfi_supported@ WITH_FRAME_POINTERS=@frame_pointers@ WITH_PROFINFO=@profinfo@ PROFINFO_WIDTH=@profinfo_width@ LIBUNWIND_AVAILABLE=@libunwind_available@ LIBUNWIND_INCLUDE_FLAGS=@libunwind_include_flags@ LIBUNWIND_LINK_FLAGS=@libunwind_link_flags@ WITH_FPIC=@fpic@ TARGET=@target@ HOST=@host@ FLAMBDA=@flambda@ WITH_FLAMBDA_INVARIANTS=@flambda_invariants@ FORCE_INSTRUMENTED_RUNTIME=@force_instrumented_runtime@ WITH_CMM_INVARIANTS=@cmm_invariants@ FORCE_SAFE_STRING=@force_safe_string@ DEFAULT_SAFE_STRING=@default_safe_string@ WINDOWS_UNICODE=@windows_unicode@ AFL_INSTRUMENT=@afl@ FLAT_FLOAT_ARRAY=@flat_float_array@ FUNCTION_SECTIONS=@function_sections@ AWK=@AWK@ STDLIB_MANPAGES=@stdlib_manpages@ NAKED_POINTERS=false ### Native command to build ocamlrun.exe ifeq "$(TOOLCHAIN)" "msvc" MERGEMANIFESTEXE=test ! -f $(1).manifest \ || mt -nologo -outputresource:$(1) -manifest $(1).manifest \ && rm -f $(1).manifest MKEXE_USING_COMPILER=$(CC) $(OC_CFLAGS) $(CFLAGS) $(OUTPUTEXE)$(1) $(2) \ /link /subsystem:console $(OC_LDFLAGS) $(LDFLAGS) && ($(MERGEMANIFESTEXE)) else MKEXE_USING_COMPILER=$(CC) $(OC_CFLAGS) $(CFLAGS) $(OC_LDFLAGS) $(LDFLAGS) \ $(OUTPUTEXE)$(1) $(2) endif # ifeq "$(TOOLCHAIN)" "msvc" FLEXLINK_FLAGS=@flexlink_flags@ FLEXLINK_CMD=flexlink FLEXLINK=$(FLEXLINK_CMD) $(FLEXLINK_FLAGS) # Deprecated variables ## Variables renamed in OCaml 4.13 RUNTIMEI=$(INSTRUMENTED_RUNTIME) ### pthread-related variables PTHREAD_LINK=$(PTHREAD_LIBS) PTHREAD_CAML_LINK=$(PTHREAD_CAML_LIBS) ### It is expected that the value of PTHREAD_LINK changes between OCaml ### 4.12 and 4.13. Indeed, for OCaml 4.12 most of the time the variable ### contained -lpthread. From 4.13 onward it will most of the time be ### empty since we have -pthread in CFLAGS which implies -lpthread.