mirror of
https://github.com/Mercury-Language/mercury.git
synced 2025-12-09 02:43:21 +00:00
For picreg, this is only the first half of the change; it deletes code
that generates references to this grade component. When this diff has been
installed on all our machines, will come the second half, which will delete
the code that understands references to picreg. The delay is needed because
your current installed compiler is still generating such references.
runtime/mercury_grade.h:
Remove both regparm and picreg as grade components.
doc/user_guide.texi:
Remove the (commented out) documentation of picreg; regparm had
no documentation to delete.
runtime/mercury_std.h:
Remove the small bit of code that implemented regparm.
runtime/mercury_conf_param.h:
Don't define MR_PIC_REG.
runtime/machdeps/i386_regs.h:
runtime/mercury_conf_bootstrap.h:
Remove references to picreg.
scripts/canonical_grade.sh-subr:
scripts/init_grade_options.sh-subr:
scripts/mgnuc.in:
scripts/parse_grade_options.sh-subr:
Keep in place the code that accepts picreg grade components,
but make them do nothing. Mark such do-nothing code so that
it can be deleted when this first-half diff has been bootstrapped.
configure.ac:
Delete the autoconfigured variable EXT_FOR_LINK_WITH_PIC_OBJECTS,
which could be set to either 'lpic_o' or just 'o', because it is now
*always* the latter.
scripts/Mercury.config.bootstrap.in:
scripts/Mercury.config.in:
Remove code that transmitted the value of EXT_FOR_LINK_WITH_PIC_OBJECTS
to the compiler via the --link-with-pic-object-file-extension option.
compiler/options.m:
Keep the --link-with-pic-object-file-extension and --pic-reg options,
but mark them for deletion in the second half of this change.
compiler/compile_target_code.m:
Change the code that dealt with the value of the
--link-with-pic-object-file-extension and --pic-reg options to assume
that the former is always the same as the non-pic file extension,
and that --pic-reg is never needed. The former means that we don't need
to handle link_with_pic as a separate category of object files from
just plain non_pic.
compiler/compute_grade.m:
Keep accepting picreg grades, but mark the code that does this
for deletion.
compiler/make.program_target.m:
compiler/make.module_target.m:
compiler/make.program_target.m:
compiler/make.util.m:
Conform to the changes above.
137 lines
5.4 KiB
Plaintext
137 lines
5.4 KiB
Plaintext
#
|
|
# 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-2004, 2006-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.bootstrap
|
|
#
|
|
# Configuration file for the Melbourne Mercury Compiler.
|
|
#
|
|
# This file is used instead of Mercury.config when building the
|
|
# stage1 compiler. It should only refer to options which are
|
|
# understood by the installed compilers.
|
|
#
|
|
# 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)
|
|
|
|
# This needed for Java classpath.
|
|
INSTALL_JAVA_LIBRARY_DIR=$(MERCURY_STDLIB_DIR)/lib/java
|
|
|
|
# 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@
|
|
|
|
# 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)" \
|
|
--grade "$(MERCURY_DEFAULT_GRADE)" \
|
|
--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-classpath "$(INSTALL_JAVA_LIBRARY_DIR)/$(RT_LIB_NAME).jar" \
|
|
--java-classpath "$(INSTALL_JAVA_LIBRARY_DIR)/$(STD_LIB_NAME).jar" \
|
|
--java-flags "@JAVAC_FLAGS_FOR_HEAP_SIZE_CONFIG@" \
|
|
--object-file-extension ".@OBJ_SUFFIX@" \
|
|
--pic-object-file-extension ".@EXT_FOR_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@" \
|
|
--trace-libs "@TRACE_BASE_LIBS_SYSTEM@" \
|
|
--thread-libs "@THREAD_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@" \
|
|
--host-env-type "@HOST_ENV_TYPE@" \
|
|
--target-env-type "@TARGET_ENV_TYPE@" \
|
|
@HAVE_DELAY_SLOT@ \
|
|
@HAVE_BOXED_FLOATS@ \
|
|
@MCFLAGS_FOR_CC@ \
|
|
$(MERCURY_DEFAULT_OPT_LEVEL) \
|
|
@MMC_USE_SYMLINKS_OPT@ \
|
|
@LIBGRADE_OPTS@
|
|
|