diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog index bf95106fcbdc672d7cdb139064dc5cdcab83569a..5bb9d45a43542261e167d40aae569b519ea98208 100644 --- a/boehm-gc/ChangeLog +++ b/boehm-gc/ChangeLog @@ -1,3 +1,10 @@ +2005-01-01 Bryce McKinlay <mckinlay@redhat.com> + + * configure.ac (AC_CONFIG_HEADERS): Build both include/gc_config.h + and include/gc_ext_config.h. + * include/gc_ext_config.h: New file. Define only THREAD_LOCAL_ALLOC. + * include/gc.h: Undef PACKAGE_* before including gc_config.h. + 2004-12-13 Kelley Cook <kcook@gcc.gnu.org> * configure: Regenerate. diff --git a/boehm-gc/configure b/boehm-gc/configure index 0f659721a8789fd9d17e0c4281dc9345f798c7d1..36243d4c58b09fa2019d746d686d3976c33a6b54 100755 --- a/boehm-gc/configure +++ b/boehm-gc/configure @@ -6580,7 +6580,7 @@ else multilib_arg= fi - ac_config_headers="$ac_config_headers include/gc_config.h" + ac_config_headers="$ac_config_headers include/gc_config.h include/gc_ext_config.h" ac_config_files="$ac_config_files Makefile include/Makefile" @@ -7178,6 +7178,7 @@ do "default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "include/gc_config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS include/gc_config.h" ;; + "include/gc_ext_config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS include/gc_ext_config.h" ;; *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 echo "$as_me: error: invalid argument: $ac_config_target" >&2;} { (exit 1); exit 1; }; };; diff --git a/boehm-gc/configure.ac b/boehm-gc/configure.ac index 7d1c6e3df1b36b96e0c3b9452156a23cb7397903..208a916087219c02add8a0cfb32275363285d0d9 100644 --- a/boehm-gc/configure.ac +++ b/boehm-gc/configure.ac @@ -468,7 +468,7 @@ else multilib_arg= fi -AC_CONFIG_HEADERS([include/gc_config.h]) +AC_CONFIG_HEADERS([include/gc_config.h include/gc_ext_config.h]) AC_CONFIG_FILES(Makefile include/Makefile) AC_OUTPUT diff --git a/boehm-gc/include/gc.h b/boehm-gc/include/gc.h index e1f2aa8f80fe75b154125e46eece81f4bc4b572e..0781a611bb09290f5b39a8b11ecd23db58fd0fcc 100644 --- a/boehm-gc/include/gc.h +++ b/boehm-gc/include/gc.h @@ -30,6 +30,28 @@ # define _GC_H +/* + * As this header includes gc_config.h, preprocessor conflicts can occur with + * clients that include their own autoconf headers. The following #undef's + * work around some likely conflicts. + */ + +# ifdef PACKAGE_NAME +# undef PACKAGE_NAME +# endif +# ifdef PACKAGE_BUGREPORT +# undef PACKAGE_BUGREPORT +# endif +# ifdef PACKAGE_STRING +# undef PACKAGE_STRING +# endif +# ifdef PACKAGE_TARNAME +# undef PACKAGE_TARNAME +# endif +# ifdef PACKAGE_VERSION +# undef PACKAGE_VERSION +# endif + # include <gc_config.h> # include "gc_config_macros.h" diff --git a/boehm-gc/include/gc_ext_config.h.in b/boehm-gc/include/gc_ext_config.h.in new file mode 100644 index 0000000000000000000000000000000000000000..52a662dcf0bf8e7db148d975e87bdaa9cbb55d95 --- /dev/null +++ b/boehm-gc/include/gc_ext_config.h.in @@ -0,0 +1,5 @@ +/* include/gc_ext_config.h.in. This contains definitions needed by +external clients that do not want to include the full gc.h. Currently this +is used by libjava/include/boehm-gc.h. */ + +#undef THREAD_LOCAL_ALLOC diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 0ea15994a068e09de1a93a6d77a3921b2d82dc0e..8ad5dbfe0f6fa87e914ea1ea438dfc75a28b9b03 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,7 @@ +2005-01-01 Bryce McKinlay <mckinlay@redhat.com> + + * include/boehm-gc.h: Include gc_ext_config.h, not gc_config.h. + 2004-12-31 Andreas Jaeger <aj@suse.de> * testsuite/lib/libjava.exp (libjava_find_gij): Handle multilibs. diff --git a/libjava/include/boehm-gc.h b/libjava/include/boehm-gc.h index 61e007ff501a41a34f0939248a55d4da52f82014..e7802b68035cc0e08df3f70171cdea7c3028fcc4 100644 --- a/libjava/include/boehm-gc.h +++ b/libjava/include/boehm-gc.h @@ -26,7 +26,7 @@ extern "C" #include <java/lang/Class.h> #include <string.h> -#include <gc_config.h> +#include <gc_ext_config.h> // for THREAD_LOCAL_ALLOC extern "C" void * GC_gcj_malloc(size_t, void *); extern "C" void * GC_malloc_atomic(size_t);