Index: MANIFEST
===================================================================
RCS file: /cvs/public/parrot/MANIFEST,v
retrieving revision 1.408
diff -u -r1.408 MANIFEST
--- MANIFEST	21 Aug 2003 12:13:04 -0000	1.408
+++ MANIFEST	25 Aug 2003 21:21:48 -0000
@@ -291,6 +291,8 @@
 exec_save.c                                       []
 exec_start.c                                      []
 exit.c                                            []
+file.ops                                          []
+file_spec.c                                       []
 fingerprint_c.pl                                  []
 global_setup.c                                    []
 hash.c                                            []
@@ -1305,6 +1307,7 @@
 include/parrot/exec.h                             [devel]include
 include/parrot/exec_save.h                        [devel]include
 include/parrot/exit.h                             [devel]include
+include/parrot/file_spec.h                        [devel]include
 include/parrot/global_setup.h                     [devel]include
 include/parrot/hash.h                             [devel]include
 include/parrot/headers.h                          [devel]include
@@ -1869,6 +1872,7 @@
 t/op/comp.t                                       []
 t/op/conv.t                                       []
 t/op/debuginfo.t                                  []
+t/op/file_spec.t                                  []
 t/op/gc.t                                         []
 t/op/globals.t                                    []
 t/op/hacks.t                                      []
Index: config/gen/config_h.pl
===================================================================
RCS file: /cvs/public/parrot/config/gen/config_h.pl,v
retrieving revision 1.8
diff -u -r1.8 config_h.pl
--- config/gen/config_h.pl	12 Aug 2003 18:56:47 -0000	1.8
+++ config/gen/config_h.pl	25 Aug 2003 21:21:50 -0000
@@ -9,6 +9,7 @@
 @args=();
 
 sub runstep {
+  Configure::Data->set(uc_osname => uc($^O));
   genfile('config/gen/config_h/config_h.in', 'include/parrot/config.h',
           commentType => '/*',
           ignorePattern => 'PARROT_CONFIG_DATE');
Index: config/gen/config_h/config_h.in
===================================================================
RCS file: /cvs/public/parrot/config/gen/config_h/config_h.in,v
retrieving revision 1.15
diff -u -r1.15 config_h.in
--- config/gen/config_h/config_h.in	13 Aug 2003 12:52:49 -0000	1.15
+++ config/gen/config_h/config_h.in	25 Aug 2003 21:21:51 -0000
@@ -52,6 +52,8 @@
 #define PARROT_BIGENDIAN        ${bigendian}
 #define PARROT_PTR_ALIGNMENT    ${ptr_alignment}
 
+#define PARROT_OS_NAME_IS_${uc_osname}
+
 typedef Parrot_Int INTVAL;
 typedef Parrot_UInt UINTVAL;
 typedef Parrot_Float FLOATVAL;
Index: config/gen/makefiles/root.in
===================================================================
RCS file: /cvs/public/parrot/config/gen/makefiles/root.in,v
retrieving revision 1.113
diff -u -r1.113 root.in
--- config/gen/makefiles/root.in	21 Aug 2003 12:13:05 -0000	1.113
+++ config/gen/makefiles/root.in	25 Aug 2003 21:21:55 -0000
@@ -114,7 +114,7 @@
 	headers$(O) dod$(O) method_util$(O) exit$(O) \
 	misc$(O) spf_render$(O) spf_vtable$(O) datatypes$(O) fingerprint$(O) \
 	nci$(O) cpu_dep$(O) ${asmfun_o} tsq$(O) longopt$(O) events$(O) \
-	dynext$(O)
+	dynext$(O) file_spec$(O)
 
 O_FILES = $(INTERP_O_FILES) $(IO_O_FILES) $(CLASS_O_FILES) \
 	$(ENCODING_O_FILES) $(CHARTYPE_O_FILES)
@@ -413,6 +413,8 @@
 chartype/unicode$(O) : $(GENERAL_H_FILES)
 
 dynext$(O) : $(GENERAL_H_FILES)
+
+file_spec$(O) : $(GENERAL_H_FILES)
 
 exceptions$(O) : $(GENERAL_H_FILES)
 
