#
# This file has no hash-bang line since it isn't intended to be executable,
# instead it is 'sourced' by other scripts.
#
# @configure_input@
#---------------------------------------------------------------------------#
# Copyright (C) 2003-2007, 2010-2012 The University of Melbourne.
# This file may only be copied under the terms of the GNU General
# Public License - see the file COPYING in the Mercury distribution.
#---------------------------------------------------------------------------#
#
# Mercury.config
#
# Configuration file for the Melbourne Mercury Compiler.
#
# Note to developers: when updating this file consider whether
# Mercury.config.bootstrap.in should also be updated.
#
# Environment variables: MERCURY_STDLIB_DIR, MERCURY_C_COMPILER,
# MERCURY_DEFAULT_GRADE, MERCURY_DEFAULT_OPT_LEVEL,
# MERCURY_JAVA_COMPILER, MERCURY_JAVA_INTERPRETER,
# MERCURY_CSHARP_COMPILER.

# These settings won't override settings in the environment.
MERCURY_STDLIB_DIR=@LIBDIR@
MERCURY_DEFAULT_OPT_LEVEL=-O2
MERCURY_DEFAULT_GRADE=@DEFAULT_GRADE@
MERCURY_C_COMPILER=@CC@
MERCURY_C_COMPILER_TYPE=@C_COMPILER_TYPE@
MERCURY_MATH_LIB=@MATH_LIB@
MERCURY_JAVA_COMPILER=@JAVAC@
MERCURY_JAVA_INTERPRETER=@JAVA_INTERPRETER@
MERCURY_CSHARP_COMPILER=@CSC@
MERCURY_CSHARP_COMPILER_TYPE=@CSHARP_COMPILER_TYPE@
MERCURY_CLI_INTERPRETER=@CLI_INTERPRETER@
MERCURY_ERLANG_COMPILER=@ERLC@
MERCURY_ERLANG_INTERPRETER=@ERL@
MERCURY_TARGET_ARCH=@FULLARCH@
# $(MATH_LIB) needs to be defined because it may
# be used by the substitution for SHARED_LIBS.
MATH_LIB=$(MERCURY_MATH_LIB)

# If you change these, you will also need to change the files indicated in
# scripts/c2init.in.
RT_LIB_NAME=mer_rt
STD_LIB_NAME=mer_std

DEFAULT_MERCURY_LINKAGE=@DEFAULT_LINKAGE@

DEFAULT_GRADEFLAGS=--grade "$(MERCURY_DEFAULT_GRADE)"

# The default optimization level should be after
# all the options that describe the machine configuration.
DEFAULT_MCFLAGS=\
		@ALL_LOCAL_C_INCL_DIR_MMC_OPTS@ \
		@ALL_LOCAL_C_LIB_DIR_MMC_OPTS@ \
		--cc "$(MERCURY_C_COMPILER)" \
		--c-compiler-type "$(MERCURY_C_COMPILER_TYPE)" \
		--java-compiler "$(MERCURY_JAVA_COMPILER)" \
		--java-interpreter "$(MERCURY_JAVA_INTERPRETER)" \
		--csharp-compiler "$(MERCURY_CSHARP_COMPILER)" \
		--csharp-compiler-type "$(MERCURY_CSHARP_COMPILER_TYPE)" \
		--cli-interpreter "$(MERCURY_CLI_INTERPRETER)" \
		--erlang-compiler "$(MERCURY_ERLANG_COMPILER)" \
		--erlang-interpreter "$(MERCURY_ERLANG_INTERPRETER)" \
		--cflags-for-ansi "@CFLAGS_FOR_ANSI@" \
		--cflags-for-optimization "@CFLAGS_FOR_OPT@" \
		--cflags-for-warnings "@CFLAGS_FOR_WARNINGS@" \
		--cflags-for-threads "@CFLAGS_FOR_THREADS@" \
		--cflags-for-debug "@CFLAGS_FOR_DEBUG@" \
		--cflags-for-regs "@CFLAGS_FOR_REGS@" \
		--cflags-for-gotos "@CFLAGS_FOR_GOTOS@" \
		--cflags-for-pic "@CFLAGS_FOR_PIC@" \
		--c-flag-to-name-object-file "@OBJFILE_OPT@" \
		--java-flags "@JAVAC_FLAGS_FOR_HEAP_SIZE@" \
		--object-file-extension ".@OBJ_SUFFIX@" \
		--pic-object-file-extension ".@EXT_FOR_PIC_OBJECTS@" \
		--link-with-pic-object-file-extension ".@EXT_FOR_LINK_WITH_PIC_OBJECTS@" \
		--executable-file-extension "@EXT_FOR_EXE@" \
		--shared-library-extension ".@EXT_FOR_SHARED_LIB@" \
		--library-extension ".@LIB_SUFFIX@" \
		--create-archive-command "@AR@" \
		--create-archive-command-output-flag "@AR_LIBFILE_OPT@" \
		--create-archive-command-flags "@ARFLAGS@" \
		--ranlib-command "@RANLIB@" \
		--ranlib-flags "@RANLIBFLAGS@" \
		--link-executable-command "@LINK_EXE@" \
		--link-shared-lib-command "@LINK_SHARED_OBJ@" \
		--strip-executable-command "@STRIP_EXE@" \
		--strip-executable-shared-flags "@STRIP_EXE_SHARED_FLAGS@" \
		--strip-executable-static-flags "@STRIP_EXE_STATIC_FLAGS@" \
		--trace-libs "@TRACE_BASE_LIBS_SYSTEM@" \
		--thread-libs "@THREAD_LIBS@" \
		--hwloc-libs "@HWLOC_LIBS@" \
		--hwloc-static-libs "@HWLOC_STATIC_LIBS@" \
		--shared-libs "@SHARED_LIBS@" \
		--math-lib "@MATH_LIB@" \
		--readline-libs "@READLINE_LIBRARIES@" \
		--linker-opt-separator "@LINK_OPT_SEP@" \
		--linker-thread-flags "@LDFLAGS_FOR_THREADS@" \
		--shlib-linker-thread-flags "@LD_LIBFLAGS_FOR_THREADS@" \
		--linker-trace-flags "@LDFLAGS_FOR_TRACE@" \
		--shlib-linker-trace-flags "@LD_LIBFLAGS_FOR_TRACE@" \
		--linker-static-flags "@LD_STATIC_FLAGS@" \
		--linker-strip-flag "@LD_STRIP_FLAG@" \
		--linker-debug-flags "@LDFLAGS_FOR_DEBUG@" \
		--shlib-linker-debug-flags "@LD_LIBFLAGS_FOR_DEBUG@" \
		--linker-link-lib-flag "@LINK_LIB@" \
		--linker-link-lib-suffix "@LINK_LIB_SUFFIX@" \
		--shlib-linker-link-lib-flag "@LINK_LIB@" \
		--shlib-linker-link-lib-suffix "@LINK_LIB_SUFFIX@" \
		--linker-path-flag "@LIB_LIBPATH@" \
		--linker-rpath-flag "@EXE_RPATH_OPT@" \
		--linker-rpath-separator "@EXE_RPATH_SEP@" \
		--shlib-linker-rpath-flag "@SHLIB_RPATH_OPT@" \
		--shlib-linker-rpath-separator "@SHLIB_RPATH_SEP@" \
		@SHLIB_USE_INSTALL_NAME@ \
		--shlib-linker-install-name-flag "@SHLIB_INSTALL_NAME_FLAG@" \
		--linker-allow-undefined-flag "@ALLOW_UNDEFINED@" \
		--linker-error-undefined-flag "@ERROR_UNDEFINED@" \
		--fullarch "$(MERCURY_TARGET_ARCH)" \
		--install-prefix "@PREFIX@" \
		--num-real-r-regs "@NUM_REAL_R_REGS@" \
		--num-real-r-temps "@NUM_REAL_R_TEMPS@" \
		--conf-low-tag-bits "@LOW_TAG_BITS@" \
		--bits-per-word "@BITS_PER_WORD@" \
		--bytes-per-word "@BYTES_PER_WORD@" \
		--sync-term-size "@SYNC_TERM_SIZE@" \
		--dotnet-library-version "@MS_DOTNET_LIBRARY_VERSION@" \
		--host-env-type "@HOST_ENV_TYPE@" \
		--target-env-type "@TARGET_ENV_TYPE@" \
		@RESTRICTED_COMMAND_LINE_OPT@ \
		@HAVE_DELAY_SLOT@ \
		@HAVE_BOXED_FLOATS@ \
		@MCFLAGS_FOR_CC@ \
		$(MERCURY_DEFAULT_OPT_LEVEL) \
		@MMC_USE_SYMLINKS_OPT@
