summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorYaakov Selkowitz <yselkowitz@users.sourceforge.net>2014-08-10 12:44:26 -0500
committerJon TURNEY <jon.turney@dronecode.org.uk>2015-04-21 13:50:18 +0100
commit0c2c7562426aec7bdf9b54a7d6993153e0bce489 (patch)
tree4387ea7b8845ead6deb4fd3190883acffed3a198 /configure.ac
parent171d82fa36bb601360da2cc519718c46f137c467 (diff)
Fix _XtInherit on x86_64 Windows
As noted in Initialize.c, _XtInherit needs special treatment as it's both called as a function, and used as a value to compare with. We need to change this trickery for x86_64, as the symbols are no longer underscore prefixed, and the address is 64 bits. We also cannot place the trampoline in the .data section, as it may be marked no-execute, so we use a special section for it instead. v2: Uses of XtInherit must also be marked dllimport, so that they do not use a thunk, but instead indirect via the __imp_XtInherit auto-import. This avoids problems with an incorrect relocation being calculated in the case where libXt and a library using it (e.g. libXaw/libXaw3d/libXm/etc.) are loaded more than 2GiB apart from each other. This is enough to build a working libXt for Cygwin x86_64, because it uses the LP64 data model. I believe that more patches are needed for libXt to work correctly when built for the Windows LLP64 data model. Signed-off-by: Yaakov Selkowitz <yselkowitz@cygwin.com> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
Diffstat (limited to 'configure.ac')
0 files changed, 0 insertions, 0 deletions