comparison src/lread.c @ 780:578cb2932d72

[xemacs-hg @ 2002-03-18 10:07:30 by ben] config.inc.samp, xemacs.mak: Deal with never-ending perl quoting problems. README: Include a long, long description of the suggested directory layout for developing XEmacs. This should probably go as part of a larger document, a "Getting Started with Developing XEmacs". #### Does such a document exist? etc\unicode\mule-ucs\*: New directory, containing translation files for the remaining charsets that are not in unicode\unicode-consortium but are in mule-ucs. etc\unicode\other\*: New directory, containing translation files made up on an ad-hoc basis. etc\unicode\README: Update. * Some ChangeLog entries from stuff that got applied long ago never got checked in, due to the nasty SCCS "oops, i forgot again ..." bug. mule\lao.el: Convert stuff to XEmacs-style. mule\thai-xtis.el: Move thai-xtis-chars.el stuff to here, since we can now handle encountering characters of a charset before the charset is defined. mule\thai-xtis-chars.el: Removed, moved into thai-xtis.el. mule\mule-msw-init.el: Move some stuff into mule-msw-init-late.el, which references charsets and thus needs to be delayed until after all charsets have been created. mule\mule-msw-init-late.el: New file, some stuff from mule-msw-init.el. dumped-lisp.el: Load the remaining languages -- lao, indian, devanagari, tibetan. Load new file mule-msw-init-late. unicode.el: Load the new tables for Ethiopic, Vietnamese, and other languages extracted from mule-ucs. mule\lao.el: Convert stuff to XEmacs-style. mule\thai-xtis.el: Move thai-xtis-chars.el stuff to here, since we can now handle encountering characters of a charset before the charset is defined. mule\thai-xtis-chars.el: Removed, moved into thai-xtis.el. mule\mule-msw-init.el: Move some stuff into mule-msw-init-late.el, which references charsets and thus needs to be delayed until after all charsets have been created. mule\mule-msw-init-late.el: New file, some stuff from mule-msw-init.el. mule\lao.el: Convert stuff to XEmacs-style. mule\thai-xtis.el: Move thai-xtis-chars.el stuff to here, since we can now handle encountering characters of a charset before the charset is defined. mule\thai-xtis-chars.el: Removed, moved into thai-xtis.el. mule\mule-msw-init.el: Move some stuff into mule-msw-init-late.el, which references charsets and thus needs to be delayed until after all charsets have been created. mule\mule-msw-init-late.el: New file, some stuff from mule-msw-init.el. dumped-lisp.el: Load the remaining languages -- lao, indian, devanagari, tibetan. Load new file mule-msw-init-late. unicode.el: Load the new tables for Ethiopic, Vietnamese, and other languages extracted from mule-ucs. mule\lao.el: Convert stuff to XEmacs-style. mule\thai-xtis.el: Move thai-xtis-chars.el stuff to here, since we can now handle encountering characters of a charset before the charset is defined. mule\thai-xtis-chars.el: Removed, moved into thai-xtis.el. mule\mule-msw-init.el: Move some stuff into mule-msw-init-late.el, which references charsets and thus needs to be delayed until after all charsets have been created. mule\mule-msw-init-late.el: New file, some stuff from mule-msw-init.el. fns.c, lread.c: Add variable require-prints-loading-message to cause loading messages to get printed when a file is loading during a `require', which normally doesn't happen. This can be set using env var XEMACSDEBUG to debug problems with non-interactive compilation. Modify load-internal so it prints "Requiring: ..." instead of "Loading: ..." when appropriate.
author ben
date Mon, 18 Mar 2002 10:07:39 +0000
parents 943eaba38521
children e38acbeb1cae
comparison
equal deleted inserted replaced
779:a29c4eef8f00 780:578cb2932d72
1 /* Lisp parsing and input streams. 1 /* Lisp parsing and input streams.
2 Copyright (C) 1985-1989, 1992-1995 Free Software Foundation, Inc. 2 Copyright (C) 1985-1989, 1992-1995 Free Software Foundation, Inc.
3 Copyright (C) 1995 Tinker Systems. 3 Copyright (C) 1995 Tinker Systems.
4 Copyright (C) 1996, 2001 Ben Wing. 4 Copyright (C) 1996, 2001, 2002 Ben Wing.
5 5
6 This file is part of XEmacs. 6 This file is part of XEmacs.
7 7
8 XEmacs is free software; you can redistribute it and/or modify it 8 XEmacs is free software; you can redistribute it and/or modify it
9 under the terms of the GNU General Public License as published by the 9 under the terms of the GNU General Public License as published by the
541 Lisp_Object newer = Qnil; 541 Lisp_Object newer = Qnil;
542 Lisp_Object handler = Qnil; 542 Lisp_Object handler = Qnil;
543 Lisp_Object found = Qnil; 543 Lisp_Object found = Qnil;
544 struct gcpro gcpro1, gcpro2, gcpro3; 544 struct gcpro gcpro1, gcpro2, gcpro3;
545 int reading_elc = 0; 545 int reading_elc = 0;
546 int message_p = NILP (nomessage); 546 int from_require = EQ (nomessage, Qrequire);
547 int message_p = NILP (nomessage) || from_require;
547 /*#ifdef DEBUG_XEMACS*/ 548 /*#ifdef DEBUG_XEMACS*/
548 static Lisp_Object last_file_loaded; 549 static Lisp_Object last_file_loaded;
549 /*#endif*/ 550 /*#endif*/
550 struct stat s1, s2; 551 struct stat s1, s2;
551 GCPRO3 (file, newer, found); 552 GCPRO3 (file, newer, found);
645 646
646 if (!memcmp (".elc", foundstr + foundlen - 4, 4)) 647 if (!memcmp (".elc", foundstr + foundlen - 4, 4))
647 reading_elc = 1; 648 reading_elc = 1;
648 } 649 }
649 650
650 #define PRINT_LOADING_MESSAGE(done) do { \ 651 #define PRINT_LOADING_MESSAGE_1(loading, done) do { \
651 if (load_ignore_elc_files) \ 652 if (load_ignore_elc_files) \
652 { \ 653 { \
653 if (message_p) \ 654 if (message_p) \
654 message ("Loading %s..." done, XSTRING_DATA (newer)); \ 655 message (loading done, XSTRING_DATA (newer)); \
655 } \ 656 } \
656 else if (!NILP (newer)) \ 657 else if (!NILP (newer)) \
657 message ("Loading %s..." done " (file %s is newer)", \ 658 message (loading done " (file %s is newer)", \
658 XSTRING_DATA (file), \ 659 XSTRING_DATA (file), \
659 XSTRING_DATA (newer)); \ 660 XSTRING_DATA (newer)); \
660 else if (source_only) \ 661 else if (source_only) \
661 message ("Loading %s..." done " (file %s.elc does not exist)", \ 662 message (loading done " (file %s.elc does not exist)", \
662 XSTRING_DATA (file), \ 663 XSTRING_DATA (file), \
663 XSTRING_DATA (Ffile_name_nondirectory (file))); \ 664 XSTRING_DATA (Ffile_name_nondirectory (file))); \
664 else if (message_p) \ 665 else if (message_p) \
665 message ("Loading %s..." done, XSTRING_DATA (file)); \ 666 message (loading done, XSTRING_DATA (file)); \
666 } while (0) 667 } while (0)
668
669 #define PRINT_LOADING_MESSAGE(done) \
670 do { \
671 if (from_require) \
672 PRINT_LOADING_MESSAGE_1 ("Requiring %s...", done); \
673 else \
674 PRINT_LOADING_MESSAGE_1 ("Loading %s...", done); \
675 } while (0)
667 676
668 PRINT_LOADING_MESSAGE (""); 677 PRINT_LOADING_MESSAGE ("");
669 678
670 { 679 {
671 /* Lisp_Object's must be malloc'ed, not stack-allocated */ 680 /* Lisp_Object's must be malloc'ed, not stack-allocated */