]> andersk Git - splint.git/blobdiff - src/Headers/osd.h
Making fixes for Microsoft Visual C++ compiler.
[splint.git] / src / Headers / osd.h
index f4f8f64d362feb97d21164212a030d96c6ebcd4f..1f176b9a04274b2c7b8c9d8947c66dfabf90b7ac 100644 (file)
@@ -1,5 +1,5 @@
 /*
-** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2001.
+** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2003.
 ** See ../LICENSE for license information.
 **
 */
@@ -79,15 +79,14 @@ extern /*@observer@*/  cstring osd_getHomeDir (void) /*@*/ ;
 
 extern /*@observer@*/ cstring osd_getEnvironmentVariable (cstring) ;
 
-# ifndef NOLCL
 /*@constant int CALL_SUCCESS@*/
 # define CALL_SUCCESS 0
 extern int osd_system (cstring p_cmd) /*@modifies fileSystem@*/ ;
-# endif
 
 extern cstring osd_absolutePath (cstring p_cwd, cstring p_filename) /*@*/ ;
-extern cstring osd_outputPath (cstring p_filename) /*@*/ ;
+extern /*@only@*/ cstring osd_outputPath (cstring p_filename) /*@*/ ;
 extern void osd_initMod (void) /*@modifies internalState@*/ ;
+extern void osd_destroyMod (void) /*@modifies internalState@*/ ;
 
 extern bool osd_equalCanonicalPrefix (cstring p_dirpath, cstring p_prefixpath) /*@*/ ;
 
@@ -104,6 +103,108 @@ extern int osd_getPid (void) ;
 extern int /*pid_t*/ osd_getPid (void) ;
 # endif
 
+# ifdef WIN32
+/* Win32 doesn't support ISO C99 correctly... */
+# define snprintf _snprintf
+# endif
+
+/*
+** Win32 convention?
+*/
+
+# if defined(__IBMC__) && defined(OS2)
+# define S_IFMT (unsigned short)0xFFFF
+# endif
+
+# if defined (OS2) || defined (MSDOS) || defined (WIN32)
+/*@constant observer cstring INCLUDEPATH_VAR@*/
+# define INCLUDEPATH_VAR    cstring_makeLiteralTemp ("INCLUDE")
+# else
+/*@constant observer cstring INCLUDEPATH_VAR@*/
+# define INCLUDEPATH_VAR    cstring_makeLiteralTemp ("CPATH")
+# endif
+
+#if defined (VMS)
+
+/*
+** VMS is here, but hasn't been tested for many releases.  Not sure if this works.
+*/
+
+/*
+** Connection string inserted between directory and filename to make a  
+** full path name.                                                     
+*/
+
+# define    CONNECTSTR ":"
+# define    CONNECTCHAR        ':'
+
+/* Directory separator character for search list. */
+/*@constant static char PATH_SEPARATOR; @*/
+# define PATH_SEPARATOR ':'
+
+# elif defined(MSDOS) || defined(OS2) || defined(WIN32)
+
+/* Connection string inserted between directory and filename to make a  */
+/* full path name.                                                     */
+
+/*@constant observer char *CONNECTSTR@*/
+# define CONNECTSTR    "\\"
+
+/*@constant char CONNECTCHAR@*/
+# define CONNECTCHAR   '\\'
+
+# define HASALTCONNECTCHAR
+
+/*@constant char ALTCONNECTCHAR@*/
+# define ALTCONNECTCHAR '/'
+
+/* Directory separator character for search list. */
+
+/*@constant char PATH_SEPARATOR; @*/
+# define PATH_SEPARATOR ';'
+
+#else
+/* Connection string inserted between directory and filename to make a  */
+/* full path name.                                                     */
+
+/*@constant observer char *CONNECTSTR@*/
+# define CONNECTSTR    "/"
+
+/*@constant char CONNECTCHAR; @*/
+# define CONNECTCHAR   '/'
+
+/* Directory separator character for search list. */
+/*@constant char PATH_SEPARATOR; @*/
+# define PATH_SEPARATOR ':'
+
+#endif
+
+
+# ifdef P_tmpdir
+
+# if defined(OS2) && defined(__IBMC__)
+/*@constant observer char *DEFAULT_TMPDIR; @*/
+# define DEFAULT_TMPDIR "."
+# else
+/*@constant observer char *DEFAULT_TMPDIR; @*/
+# define DEFAULT_TMPDIR P_tmpdir
+# endif
+# else
+# ifdef WIN32
+/*@constant observer char *DEFAULT_TMPDIR; @*/
+# define DEFAULT_TMPDIR "\\WINDOWS\\TEMP\\"
+# else
+/*@constant observer char *DEFAULT_TMPDIR; @*/
+# define DEFAULT_TMPDIR "/tmp/"
+# endif /* WIN32 */
+
+# endif /* P_tmpdir */
+
+# else
+# error "Multiple include"
+# endif
+
+
 # else
 # error "Multiple include"
 # endif
This page took 0.059364 seconds and 4 git commands to generate.