glibc/config.make.in
Roland McGrath 2abf9ff113 * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
calling _dl_start, using GOTOFF access.

	* configure.in (libc_cv_z_execstack): New check.
	* configure: Regenerated.
	* config.make.in (have-z-execstack): New variable set by it.
	* elf/tst-execstack.c: New file.
	* elf/tst-execstack-mod.c: New file.
	* elf/tst-execstack-needed.c: New file.
	* elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
	variables.
	(tests, modules-names): Conditionally include them.
	(distribute): Add tst-execstack-mod.c here.
	($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
	(LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
	($(objpfx)tst-execstack-needed): New target.
	(LDFLAGS-tst-execstack-needed): New variable.

	* sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
	and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
	* elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
	(dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
	Initialize _dl_make_stack_executable_hook.
	* elf/dl-support.c: Define those new variables.
	(_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
	(_dl_phdr): Fix type.
	* elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
	enable execute permission for the stack if necessary.
	* sysdeps/generic/dl-execstack.c: New file.
	* elf/Makefile (dl-routines): Add it.
	* elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
	* sysdeps/unix/sysv/linux/dl-execstack.c: New file.
2003-09-23 12:07:26 +00:00

123 lines
2.9 KiB
Plaintext

# @configure_input@
# From $Id$.
# Don't edit this file. Put configuration parameters in configparms instead.
version = @VERSION@
release = @RELEASE@
# Installation prefixes.
install_root =
prefix = @prefix@
exec_prefix = @exec_prefix@
datadir = @datadir@
libdir = @libdir@
slibdir = @libc_cv_slibdir@
localedir = @libc_cv_localedir@
sysconfdir = @libc_cv_sysconfdir@
libexecdir = @libexecdir@
rootsbindir = @libc_cv_rootsbindir@
infodir = @infodir@
includedir = @includedir@
# Should we use and build ldconfig?
use-ldconfig = @use_ldconfig@
# Maybe the `ldd' script must be rewritten.
ldd-rewrite-script = @ldd_rewrite_script@
# System configuration.
config-machine = @host_cpu@
base-machine = @base_machine@
config-vendor = @host_vendor@
config-os = @host_os@
config-sysdirs = @sysnames@
defines = @DEFINES@
sysincludes = @SYSINCLUDES@
all-warnings = @all_warnings@
elf = @elf@
have-protected = @libc_cv_asm_protected_directive@
have-z-nodelete = @libc_cv_z_nodelete@
have-z-nodlopen = @libc_cv_z_nodlopen@
have-z-initfirst = @libc_cv_z_initfirst@
have-z-combreloc = @libc_cv_z_combreloc@
have-z-execstack = @libc_cv_z_execstack@
have-initfini = @libc_cv_have_initfini@
have-Bgroup = @libc_cv_Bgroup@
need-nopic-initfini = @nopic_initfini@
with-fp = @with_fp@
with-cvs = @with_cvs@
old-glibc-headers = @old_glibc_headers@
unwind-find-fde = @libc_cv_gcc_unwind_find_fde@
have-initfini-array = @libc_cv_initfinit_array@
have-cpp-asm-debuginfo = @libc_cv_cpp_asm_debuginfo@
enable-check-abi = @enable_check_abi@
have-forced-unwind = @libc_cv_forced_unwind@
static-libgcc = @libc_cv_gcc_static_libgcc@
versioning = @VERSIONING@
oldest-abi = @oldest_abi@
no-whole-archive = @no_whole_archive@
exceptions = @exceptions@
have_doors = @linux_doors@
mach-interface-list = @mach_interface_list@
have-bash2 = @libc_cv_have_bash2@
have-ksh = @libc_cv_have_ksh@
sizeof-long-double = @sizeof_long_double@
# Configuration options.
gnu-as = @gnu_as@
gnu-ld = @gnu_ld@
build-static = @static@
build-shared = @shared@
build-pic-default= @pic_default@
build-profile = @profile@
build-omitfp = @omitfp@
build-bounded = @bounded@
build-static-nss = @static_nss@
add-ons = @subdirs@
cross-compiling = @cross_compiling@
force-install = @force_install@
# Build tools.
CC = @CC@
CXX = @CXX@
BUILD_CC = @BUILD_CC@
CFLAGS = @CFLAGS@
ASFLAGS-config = @ASFLAGS_config@
AR = @AR@
RANLIB = @RANLIB@
MAKEINFO = @MAKEINFO@
AS = $(CC) -c
MIG = @MIG@
PWD_P = @PWD_P@
BISON = @BISON@
AUTOCONF = @AUTOCONF@
OBJDUMP = @OBJDUMP@
# Installation tools.
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_INFO = @INSTALL_INFO@
OLD_DEBIAN_INSTALL_INFO = @OLD_DEBIAN_INSTALL_INFO@
LN_S = @LN_S@
MSGFMT = @MSGFMT@
# Script execution tools.
BASH = @BASH@
KSH = @KSH@
AWK = @AWK@
PERL = @PERL@
# Additional libraries.
LIBGD = @LIBGD@
# More variables may be inserted below by configure.