diff options
Diffstat (limited to 'm4')
-rw-r--r-- | m4/woe32-dll.m4 | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/m4/woe32-dll.m4 b/m4/woe32-dll.m4 index 73530b4..6b5a037 100644 --- a/m4/woe32-dll.m4 +++ b/m4/woe32-dll.m4 @@ -1,5 +1,5 @@ -# woe32-dll.m4 serial 1 -dnl Copyright (C) 2005 Free Software Foundation, Inc. +# woe32-dll.m4 serial 2 +dnl Copyright (C) 2005-2006 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -8,19 +8,23 @@ dnl From Bruno Haible. # Add --disable-auto-import to the LDFLAGS if the linker supports it. # GNU ld has an --enable-auto-import option, and it is the default on Cygwin -# since July 2005. But it two fatal drawbacks: +# since July 2005. But it has three fatal drawbacks: # - It produces executables and shared libraries with relocations in the # .text segment, defeating the principles of virtual memory. # - For some constructs such as # extern int var; # int * const b = &var; -# it creates an executable that will give an error at runtime, rather than -# either a compile-time or link-time error or a working executable. -# (This is with both gcc and g++.) Whereas this code, not relying on auto- -# import: +# it creates an executable that will give an error at runtime, rather +# than either a compile-time or link-time error or a working executable. +# (This is with both gcc and g++.) Whereas this code, not relying on +# auto-import: # extern __declspec (dllimport) int var; # int * const b = &var; # gives a compile-time error with gcc and works with g++. +# - It doesn't work in some cases (references to a member field of an +# exported struct variable, or to a particular element of an exported +# array variable), requiring code modifications. One platform +# dictates code modifications on all platforms. AC_DEFUN([gl_WOE32_DLL], [ AC_REQUIRE([AC_CANONICAL_HOST]) |