Set the default DLL chracteristics to 0 for Cygwin based targets.

* emultempl/pep.em (DEFAULT_DLL_CHARACTERISTICS): Set to 0 for
	Cygwin targets.
	* emultempl/pep.em (DEFAULT_DLL_CHARACTERISTICS): Likewise.
This commit is contained in:
Jeremy Drake
2021-11-17 16:24:53 +00:00
committed by Nick Clifton
parent ee9e412f14
commit ef6379e16d
3 changed files with 23 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2021-11-17 Jeremy Drake <cygwin@jdrake.com>
* emultempl/pep.em (DEFAULT_DLL_CHARACTERISTICS): Set to 0 for
Cygwin targets.
* emultempl/pep.em (DEFAULT_DLL_CHARACTERISTICS): Likewise.
2021-11-17 Nick Clifton <nickc@redhat.com>
PR 28452

View File

@ -5,6 +5,16 @@ if [ -z "$MACHINE" ]; then
else
OUTPUT_ARCH=${ARCH}:${MACHINE}
fi
case ${target} in
*-*-cygwin*)
cygwin_behavior=1
;;
*)
cygwin_behavior=0;
;;
esac
rm -f e${EMULATION_NAME}.c
(echo;echo;echo;echo;echo)>e${EMULATION_NAME}.c # there, now line numbers match ;-)
fragment <<EOF
@ -104,7 +114,8 @@ fragment <<EOF
#define DEFAULT_PSEUDO_RELOC_VERSION 1
#endif
#define DEFAULT_DLL_CHARACTERISTICS (IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE \
#define DEFAULT_DLL_CHARACTERISTICS (${cygwin_behavior} ? 0 : \
IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE \
| IMAGE_DLL_CHARACTERISTICS_NX_COMPAT)
#if defined(TARGET_IS_i386pe) || ! defined(DLL_SUPPORT)

View File

@ -9,9 +9,11 @@ fi
case ${target} in
*-*-cygwin*)
move_default_addr_high=1
cygwin_behavior=1
;;
*)
move_default_addr_high=0;
cygwin_behavior=0;
;;
esac
@ -99,7 +101,8 @@ fragment <<EOF
#define DLL_SUPPORT
#endif
#define DEFAULT_DLL_CHARACTERISTICS (IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE \
#define DEFAULT_DLL_CHARACTERISTICS (${cygwin_behavior} ? 0 : \
IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE \
| IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA \
| IMAGE_DLL_CHARACTERISTICS_NX_COMPAT)