Mercurial > hg > xemacs-beta
comparison src/emacs.c @ 2500:3d8143fc88e1
[xemacs-hg @ 2005-01-24 23:33:30 by ben]
get working with VC7
config.inc.samp: Declare OPTIONAL_LIBRARY_DIR as root of library directories.
Redo all graphics library defaults to mirror the versions and
directories in the current binary aux distribution on xemacs
web site. Enable TIFF and COMPFACE by default since you can
now compile with them and binary libs are provided.
xemacs.mak: Put our own directories first in case of conflict (e.g. config.h
in compface).
xemacs.mak: Use MSVCRT to avoid link problems.
s/windowsnt.h:
bytecode.c, print.c: Add casts to avoid warning.
compiler.h: Add MSC_VERSION and include definitions of DOESNT_RETURN and
friends here, like for GCC. Need different definitions for VC7
and VC6.
s/windowsnt.h: Remove stuff moved to compiler.h. Disable warning 4646 ("function
declared with __declspec(noreturn) has non-void return type")
on VC7 since lots of Lisp primitives trigger this and there is
no easy way to kludge around the warning.
glyphs-eimage.c: Some really nasty hacks to allow TIFF and JPEG to both be compiled.
#### The better solution is to move the TIFF and JPEG code to
different files.
glyphs-msw.c: Define __STDC__ to avoid problems with compface.h.
intl-auto-encap-win32.c, intl-auto-encap-win32.h, intl-encap-win32.c, syswindows.h: Those wankers at Microsoft cannot leave well enough alone.
Various functions change parameter types semi-randomly between
VC6 and VC7, so we need to include our own versions that
can handle both kinds with appropriate casting.
EmacsFrame.c, EmacsShell-sub.c, EmacsShell.c, alloc.c, alloca.c, buffer.c, bytecode.c, charset.h, chartab.c, cm.c, console-stream.c, console.c, data.c, debug.h, device-msw.c, device-tty.c, device-x.c, doprnt.c, dumper.c, dynarr.c, elhash.c, emacs.c, eval.c, event-Xt.c, event-gtk.c, event-msw.c, event-stream.c, events.c, extents.c, faces.c, file-coding.c, fileio.c, fns.c, font-lock.c, frame-gtk.c, frame-x.c, frame.c, free-hook.c, gccache-gtk.c, glyphs-eimage.c, glyphs-gtk.c, glyphs-msw.c, glyphs-x.c, glyphs.c, gtk-glue.c, gutter.c, input-method-xlib.c, insdel.c, intl-win32.c, keymap.c, lisp.h, lread.c, lstream.c, macros.c, malloc.c, menubar-gtk.c, menubar-msw.c, menubar-x.c, mule-coding.c, native-gtk-toolbar.c, number.c, objects-msw.c, objects.c, print.c, process-nt.c, process-unix.c, process.c, ralloc.c, rangetab.c, redisplay-gtk.c, redisplay-msw.c, redisplay-output.c, redisplay-tty.c, redisplay-x.c, redisplay.c, regex.c, scrollbar-gtk.c, scrollbar-x.c, search.c, select-x.c, signal.c, specifier.c, specifier.h, strftime.c, sunplay.c, symbols.c, sysdep.c, sysproc.h, text.c, text.h, toolbar-common.c, toolbar-msw.c, toolbar.c, ui-gtk.c, unexnt.c, unicode.c, win32.c, window.c, xgccache.c, s/windowsnt.h: abort() -> ABORT(). Eliminate preprocessor games with abort()
since it creates huge problems in VC7, solvable only by including
massive amounts of files in every compile (and not worth it).
author | ben |
---|---|
date | Mon, 24 Jan 2005 23:34:34 +0000 |
parents | ecf1ebac70d8 |
children | 9b0afdac688e |
comparison
equal
deleted
inserted
replaced
2499:4c5ee4d2e921 | 2500:3d8143fc88e1 |
---|---|
2760 if (options[from] > 0) | 2760 if (options[from] > 0) |
2761 from += options[from]; | 2761 from += options[from]; |
2762 } | 2762 } |
2763 | 2763 |
2764 if (best < 0) | 2764 if (best < 0) |
2765 abort (); | 2765 ABORT (); |
2766 | 2766 |
2767 /* Copy the highest priority remaining option, with its args, to | 2767 /* Copy the highest priority remaining option, with its args, to |
2768 NEW_ARGV. */ | 2768 NEW_ARGV. */ |
2769 new_argv[to++] = argv[best]; | 2769 new_argv[to++] = argv[best]; |
2770 for (i = 0; i < options[best]; i++) | 2770 for (i = 0; i < options[best]; i++) |
3025 { | 3025 { |
3026 int rc = malloc_set_state (malloc_state_ptr); | 3026 int rc = malloc_set_state (malloc_state_ptr); |
3027 if (rc != 0) | 3027 if (rc != 0) |
3028 { | 3028 { |
3029 stderr_out ("malloc_set_state failed, rc = %d\n", rc); | 3029 stderr_out ("malloc_set_state failed, rc = %d\n", rc); |
3030 abort (); | 3030 ABORT (); |
3031 } | 3031 } |
3032 #if 0 | 3032 #if 0 |
3033 free (malloc_state_ptr); | 3033 free (malloc_state_ptr); |
3034 #endif | 3034 #endif |
3035 /* mmap works in glibc-2.1, glibc-2.0 (Non-Mule only) and Linux libc5 */ | 3035 /* mmap works in glibc-2.1, glibc-2.0 (Non-Mule only) and Linux libc5 */ |
3259 | 3259 |
3260 DEFUN ("force-debugging-signal", Fforce_debugging_signal, 0, 1, 0, /* | 3260 DEFUN ("force-debugging-signal", Fforce_debugging_signal, 0, 1, 0, /* |
3261 Cause XEmacs to enter the debugger. | 3261 Cause XEmacs to enter the debugger. |
3262 On some systems, there may be no way to do this gracefully; if so, | 3262 On some systems, there may be no way to do this gracefully; if so, |
3263 nothing happens unless ABORT is non-nil, in which case XEmacs will | 3263 nothing happens unless ABORT is non-nil, in which case XEmacs will |
3264 abort() -- a sure-fire way to immediately get back to the debugger, | 3264 ABORT() -- a sure-fire way to immediately get back to the debugger, |
3265 but also a sure-fire way to kill XEmacs (and dump core on Unix | 3265 but also a sure-fire way to kill XEmacs (and dump core on Unix |
3266 systems)! | 3266 systems)! |
3267 */ | 3267 */ |
3268 (abort_)) | 3268 (abort_)) |
3269 { | 3269 { |
3270 debugging_breakpoint (); | 3270 debugging_breakpoint (); |
3271 if (!NILP (abort_)) | 3271 if (!NILP (abort_)) |
3272 abort (); | 3272 ABORT (); |
3273 return Qnil; | 3273 return Qnil; |
3274 } | 3274 } |
3275 | 3275 |
3276 #endif /* DEBUG_XEMACS */ | 3276 #endif /* DEBUG_XEMACS */ |
3277 | 3277 |
3759 | 3759 |
3760 #ifdef fprintf | 3760 #ifdef fprintf |
3761 #undef fprintf | 3761 #undef fprintf |
3762 #endif | 3762 #endif |
3763 | 3763 |
3764 /* This is called when an assert() fails or when abort() is called -- both | 3764 /* This is called when an assert() fails or when ABORT() is called -- both |
3765 of those are defined in the preprocessor to an expansion involving | 3765 of those are defined in the preprocessor to an expansion involving |
3766 assert_failed(). */ | 3766 assert_failed(). */ |
3767 void | 3767 void |
3768 assert_failed (const Ascbyte *file, int line, const Ascbyte *expr) | 3768 assert_failed (const Ascbyte *file, int line, const Ascbyte *expr) |
3769 { | 3769 { |
4495 { | 4495 { |
4496 } | 4496 } |
4497 | 4497 |
4498 #endif | 4498 #endif |
4499 | 4499 |
4500 #undef abort /* Get access to the real version of abort. We put this all | |
4501 the way at the end to make sure that all calls to abort() | |
4502 anywhere in the above code go through assert_failed(). */ | |
4503 | |
4504 DOESNT_RETURN | 4500 DOESNT_RETURN |
4505 really_abort (void) | 4501 really_abort (void) |
4506 { | 4502 { |
4507 abort (); | 4503 abort (); |
4508 } | 4504 } |