diff options
| author | Dan Nicolaescu | 2010-07-02 01:11:24 -0700 |
|---|---|---|
| committer | Dan Nicolaescu | 2010-07-02 01:11:24 -0700 |
| commit | d9170db5208a86d94a6d8a89c8fa1e678bd094bd (patch) | |
| tree | f15dc1b36d3807346f6f346b1c229e53a6a72ca4 | |
| parent | 986011195e5c40b9644c21da166c12cb34176350 (diff) | |
| download | emacs-d9170db5208a86d94a6d8a89c8fa1e678bd094bd.tar.gz emacs-d9170db5208a86d94a6d8a89c8fa1e678bd094bd.zip | |
Define USE_LISP_UNION_TYPE using autoconf.
* configure.in (--enable-use-lisp-union-type): New flag.
* src/lisp.h: Document that USE_LISP_UNION_TYPE is now enabled using autoconf.
| -rw-r--r-- | ChangeLog | 4 | ||||
| -rwxr-xr-x | configure | 18 | ||||
| -rw-r--r-- | configure.in | 10 | ||||
| -rw-r--r-- | etc/NEWS | 4 | ||||
| -rw-r--r-- | src/ChangeLog | 2 | ||||
| -rw-r--r-- | src/config.in | 3 | ||||
| -rw-r--r-- | src/lisp.h | 7 |
7 files changed, 43 insertions, 5 deletions
| @@ -1,3 +1,7 @@ | |||
| 1 | 2010-07-02 Dan Nicolaescu <dann@ics.uci.edu> | ||
| 2 | |||
| 3 | * configure.in (--enable-use-lisp-union-type): New flag. | ||
| 4 | |||
| 1 | 2010-06-30 Dan Nicolaescu <dann@ics.uci.edu> | 5 | 2010-06-30 Dan Nicolaescu <dann@ics.uci.edu> |
| 2 | 6 | ||
| 3 | Fix CFLAGS for non-GCC compilers. | 7 | Fix CFLAGS for non-GCC compilers. |
| @@ -825,6 +825,7 @@ enable_asserts | |||
| 825 | enable_maintainer_mode | 825 | enable_maintainer_mode |
| 826 | enable_locallisppath | 826 | enable_locallisppath |
| 827 | enable_checking | 827 | enable_checking |
| 828 | enable_use_lisp_union_type | ||
| 828 | enable_profiling | 829 | enable_profiling |
| 829 | enable_autodepend | 830 | enable_autodepend |
| 830 | enable_largefile | 831 | enable_largefile |
| @@ -1477,6 +1478,10 @@ Optional Features: | |||
| 1477 | only specific categories of checks. Categories are: | 1478 | only specific categories of checks. Categories are: |
| 1478 | all,yes,no. Flags are: stringbytes, stringoverrun, | 1479 | all,yes,no. Flags are: stringbytes, stringoverrun, |
| 1479 | stringfreelist, xmallocoverrun, conslist | 1480 | stringfreelist, xmallocoverrun, conslist |
| 1481 | --enable-use-lisp-union-type | ||
| 1482 | use a union for the Lisp_Object data type. This is | ||
| 1483 | only useful for development for catching certain | ||
| 1484 | types of bugs. | ||
| 1480 | --enable-profiling build emacs with profiling support. This might not | 1485 | --enable-profiling build emacs with profiling support. This might not |
| 1481 | work on all platforms | 1486 | work on all platforms |
| 1482 | --enable-autodepend automatically generate dependencies to .h-files. | 1487 | --enable-autodepend automatically generate dependencies to .h-files. |
| @@ -2978,6 +2983,17 @@ $as_echo "#define GC_CHECK_CONS_LIST 1" >>confdefs.h | |||
| 2978 | 2983 | ||
| 2979 | fi | 2984 | fi |
| 2980 | 2985 | ||
| 2986 | # Check whether --enable-use-lisp-union-type was given. | ||
| 2987 | if test "${enable_use_lisp_union_type+set}" = set; then : | ||
| 2988 | enableval=$enable_use_lisp_union_type; if test "${enableval}" != "no"; then | ||
| 2989 | |||
| 2990 | $as_echo "#define USE_LISP_UNION_TYPE 1" >>confdefs.h | ||
| 2991 | |||
| 2992 | fi | ||
| 2993 | fi | ||
| 2994 | |||
| 2995 | |||
| 2996 | |||
| 2981 | # Check whether --enable-profiling was given. | 2997 | # Check whether --enable-profiling was given. |
| 2982 | if test "${enable_profiling+set}" = set; then : | 2998 | if test "${enable_profiling+set}" = set; then : |
| 2983 | enableval=$enable_profiling; ac_enable_profiling="${enableval}" | 2999 | enableval=$enable_profiling; ac_enable_profiling="${enableval}" |
| @@ -4290,7 +4306,7 @@ if test x$GCC = xyes; then | |||
| 4290 | C_OPTIMIZE_SWITCH=-O2 | 4306 | C_OPTIMIZE_SWITCH=-O2 |
| 4291 | test "x$GCC_TEST_OPTIONS" != x && CC="$CC $GCC_TEST_OPTIONS" | 4307 | test "x$GCC_TEST_OPTIONS" != x && CC="$CC $GCC_TEST_OPTIONS" |
| 4292 | else | 4308 | else |
| 4293 | C_OPTIMIZE_SWITCH=-O | 4309 | C_OPTIMIZE_SWITCH=-O |
| 4294 | test "x$NON_GCC_TEST_OPTIONS" != x && CC="$CC $NON_GCC_TEST_OPTIONS" | 4310 | test "x$NON_GCC_TEST_OPTIONS" != x && CC="$CC $NON_GCC_TEST_OPTIONS" |
| 4295 | fi | 4311 | fi |
| 4296 | 4312 | ||
diff --git a/configure.in b/configure.in index 97e2adc753c..b04bf6ea744 100644 --- a/configure.in +++ b/configure.in | |||
| @@ -305,6 +305,16 @@ if test x$ac_gc_check_cons_list != x ; then | |||
| 305 | [Define this to check for errors in cons list.]) | 305 | [Define this to check for errors in cons list.]) |
| 306 | fi | 306 | fi |
| 307 | 307 | ||
| 308 | AC_ARG_ENABLE(use-lisp-union-type, | ||
| 309 | [AS_HELP_STRING([--enable-use-lisp-union-type], | ||
| 310 | [use a union for the Lisp_Object data type. | ||
| 311 | This is only useful for development for catching certain types of bugs.])], | ||
| 312 | if test "${enableval}" != "no"; then | ||
| 313 | AC_DEFINE(USE_LISP_UNION_TYPE, 1, | ||
| 314 | [Define this to use a lisp union for the Lisp_Object data type.]) | ||
| 315 | fi) | ||
| 316 | |||
| 317 | |||
| 308 | AC_ARG_ENABLE(profiling, | 318 | AC_ARG_ENABLE(profiling, |
| 309 | [AS_HELP_STRING([--enable-profiling], | 319 | [AS_HELP_STRING([--enable-profiling], |
| 310 | [build emacs with profiling support. | 320 | [build emacs with profiling support. |
| @@ -47,6 +47,10 @@ to configure. Note that other libraries used by Emacs, RSVG and GConf, | |||
| 47 | also depend on Gtk+. You can disable them with --without-rsvg and | 47 | also depend on Gtk+. You can disable them with --without-rsvg and |
| 48 | --without-gconf. | 48 | --without-gconf. |
| 49 | 49 | ||
| 50 | ** There is a new configure option --enable-use-lisp-union-type. | ||
| 51 | This is only useful for Emacs developers to debug certain types of bugs. | ||
| 52 | These is not a new feature; only the configure flag is new. | ||
| 53 | |||
| 50 | 54 | ||
| 51 | * Startup Changes in Emacs 24.1 | 55 | * Startup Changes in Emacs 24.1 |
| 52 | 56 | ||
diff --git a/src/ChangeLog b/src/ChangeLog index 45d8bf3fc4f..46d41bf24bd 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,7 @@ | |||
| 1 | 2010-07-02 Dan Nicolaescu <dann@ics.uci.edu> | 1 | 2010-07-02 Dan Nicolaescu <dann@ics.uci.edu> |
| 2 | 2 | ||
| 3 | * lisp.h: Document that USE_LISP_UNION_TYPE is now enabled using autoconf. | ||
| 4 | |||
| 3 | Cleanup old code. | 5 | Cleanup old code. |
| 4 | * dired.c (BSD4_3): Remove all uses, redundant with BSD4_2. | 6 | * dired.c (BSD4_3): Remove all uses, redundant with BSD4_2. |
| 5 | * syssignal.h: Remove code for Lynx, not supported anymore. | 7 | * syssignal.h: Remove code for Lynx, not supported anymore. |
diff --git a/src/config.in b/src/config.in index 962edf62571..b1370dcbb95 100644 --- a/src/config.in +++ b/src/config.in | |||
| @@ -933,6 +933,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 933 | /* Define to 1 if using GTK. */ | 933 | /* Define to 1 if using GTK. */ |
| 934 | #undef USE_GTK | 934 | #undef USE_GTK |
| 935 | 935 | ||
| 936 | /* Define this to use a lisp union for the Lisp_Object data type. */ | ||
| 937 | #undef USE_LISP_UNION_TYPE | ||
| 938 | |||
| 936 | /* Define to 1 if using the Lucid X toolkit. */ | 939 | /* Define to 1 if using the Lucid X toolkit. */ |
| 937 | #undef USE_LUCID | 940 | #undef USE_LUCID |
| 938 | 941 | ||
diff --git a/src/lisp.h b/src/lisp.h index 1941a2471a4..0da668bb87f 100644 --- a/src/lisp.h +++ b/src/lisp.h | |||
| @@ -95,10 +95,9 @@ extern void die P_((const char *, const char *, int)) NO_RETURN; | |||
| 95 | #endif | 95 | #endif |
| 96 | #endif /* ENABLE_CHECKING */ | 96 | #endif /* ENABLE_CHECKING */ |
| 97 | 97 | ||
| 98 | /* Define this to make Lisp_Object use a union type instead of the | 98 | /* Use the configure flag --enable-use-lisp-union-type to make |
| 99 | default int. FIXME: It might be better to add a flag to configure | 99 | Lisp_Object use a union type instead of the default int. The flag |
| 100 | to do this. */ | 100 | causes USE_LISP_UNION_TYPE to be defined. */ |
| 101 | /* #define USE_LISP_UNION_TYPE */ | ||
| 102 | 101 | ||
| 103 | /***** Select the tagging scheme. *****/ | 102 | /***** Select the tagging scheme. *****/ |
| 104 | /* There are basically two options that control the tagging scheme: | 103 | /* There are basically two options that control the tagging scheme: |