changeset 3379:b544987e2eca

[xemacs-hg @ 2006-05-06 08:09:35 by aidan] Fix the win32 build following my lib-src/DOC format changes.
author aidan
date Sat, 06 May 2006 08:09:37 +0000
parents b90d5053b5ca
children 72f5451ab2f0
files src/ChangeLog src/lisp.h src/symbols.c src/sysfile.h
diffstat 4 files changed, 39 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Fri May 05 21:51:13 2006 +0000
+++ b/src/ChangeLog	Sat May 06 08:09:37 2006 +0000
@@ -1,3 +1,13 @@
+2006-05-06  Aidan Kehoe  <kehoea@parhasard.net>
+
+	* lisp.h (struct Lisp_Subr):
+	Document that prompt, doc, and name should not be char *. 
+	* symbols.c (Fsubr_name):
+	Cast name to const Ibyte * before returning it. 
+	* sysfile.h:
+	Make versions of DIRECTORY_SEP, IS_DIRECTORY_SEP and IS_ANY_SEP
+	available to make-docfile and other non-emacs processes on win32. 
+	
 2006-04-30  Stephen J. Turnbull  <stephen@xemacs.org>
 
 	* font-mgr.c (string_list_to_fcobjectset): Remove debugging output.
--- a/src/lisp.h	Fri May 05 21:51:13 2006 +0000
+++ b/src/lisp.h	Sat May 06 08:09:37 2006 +0000
@@ -2676,6 +2676,8 @@
   struct lrecord_header lheader;
   short min_args;
   short max_args;
+  /* #### We should make these const Ascbyte * or const Ibyte *, not const
+     char *. */
   const char *prompt;
   const char *doc;
   const char *name;
--- a/src/symbols.c	Fri May 05 21:51:13 2006 +0000
+++ b/src/symbols.c	Sat May 06 08:09:37 2006 +0000
@@ -729,7 +729,7 @@
   if (!SUBRP (subr))
     wrong_type_argument (Qsubrp, subr);
   name = XSUBR (subr)->name;
-  return make_string (name, strlen (name));
+  return make_string ((const Ibyte *)name, strlen (name));
 }
 
 DEFUN ("setplist", Fsetplist, 2, 2, 0, /*
--- a/src/sysfile.h	Fri May 05 21:51:13 2006 +0000
+++ b/src/sysfile.h	Sat May 06 08:09:37 2006 +0000
@@ -467,6 +467,7 @@
 #define SEPCHAR ';'
 #define DEFAULT_DIRECTORY_SEP '\\'
 
+#ifdef emacs
 DECLARE_INLINE_HEADER (Ibyte sysfile_get_directory_sep (void))
 {
   if (!CHARP (Vdirectory_sep_char)
@@ -484,6 +485,13 @@
 }
 #define DIRECTORY_SEP sysfile_get_directory_sep()
 
+#else /* emacs */
+
+/* The above Lisp variables are not available to make-docfile, etc. */
+#define DIRECTORY_SEP DEFAULT_DIRECTORY_SEP
+
+#endif /* emacs */
+
 #else /* not WIN32_NATIVE */
 
 #define SEPCHAR ':'
@@ -499,6 +507,8 @@
 
 #define IS_DEVICE_SEP(c) ((c) == DEVICE_SEP)
 
+#ifdef emacs
+
 DECLARE_INLINE_HEADER (int IS_DIRECTORY_SEP (Ichar c))
 {
   return (c == '/' || c == '\\');
@@ -509,6 +519,22 @@
   return (c == '/' || c == '\\' || c == ':');
 }
 
+#else /* emacs */
+
+/* The Ichar typedef is not available to make-docfile, etc. */
+
+DECLARE_INLINE_HEADER (int IS_DIRECTORY_SEP (int c))
+{
+  return (c == '/' || c == '\\');
+}
+
+DECLARE_INLINE_HEADER (int IS_ANY_SEP (int c))
+{
+  return (c == '/' || c == '\\' || c == ':');
+}
+
+#endif
+
 #else /* not WIN32_ANY */
 
 #define IS_DEVICE_SEP(c) 0