public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* DOS/Windows-related changes in the include subdirectory
@ 1999-09-06  1:14 Eli Zaretskii
  1999-09-06  8:10 ` Ian Lance Taylor
  0 siblings, 1 reply; 7+ messages in thread
From: Eli Zaretskii @ 1999-09-06  1:14 UTC (permalink / raw)
  To: binutils

This adds a new file with several macros for platform-independent
handling of file names.

1999-07-08  Eli Zaretskii  <eliz@is.elta.co.il>

	* filenames.h: New file.
	(DOSISH_FILENAMES, MONOCASE_FILENAMES, FILENAME_CMP): New macros.

*** /dev/null	Sat Jul 31 17:57:06 1999
--- include/filename.h	Tue Jul 27 19:15:42 1999
***************
*** 0 ****
--- 1,23 ----
+ /* Macros for taking apart, interpreting and processing file names.
+ 
+    These are here because some non-Posix (a.k.a. DOSish) systems have
+    the drive letter brain-damage at the beginning of an absolute file
+    name, use forward- and back-slash in path names interchangeably, and
+    some of them have case-insensitive file names.  */
+ 
+ #if defined(__MSDOS__) || defined(_WIN32)
+ #define IS_SLASH(c)	((c) == '/' || (c) == '\\')
+ #define IS_ABSOLUTE(f)	(IS_SLASH((f)[0]) || (f)[0] && (f)[1] == ':')
+ #define DOSISH_FILENAMES 1
+ #define MONOCASE_FILENAMES 1
+ #else
+ #define IS_SLASH(c)	((c) == '/')
+ #define IS_ABSOLUTE(f)	(IS_SLASH((f)[0]))
+ #define MONOCASE_FILENAMES 0
+ #endif
+ 
+ #if MONOCASE_FILENAMES
+ #define FILENAME_CMP(s1, s2)  strcasecmp(s1, s2)
+ #else
+ #define FILENAME_CMP(s1, s2)  strcmp(s1, s2)
+ #endif

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~1999-09-07  5:54 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-09-06  1:14 DOS/Windows-related changes in the include subdirectory Eli Zaretskii
1999-09-06  8:10 ` Ian Lance Taylor
1999-09-06 10:22   ` Eli Zaretskii
1999-09-06 10:31     ` Ian Lance Taylor
1999-09-06 11:20       ` Mark E.
1999-09-07  5:54     ` Eli Zaretskii
1999-09-07  5:49   ` Eli Zaretskii

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).