Index: cpukit/ChangeLog
===================================================================
--- cpukit/ChangeLog	(revision d9120e5665b12d6ef5c81fbcfc62234475759a36)
+++ cpukit/ChangeLog	(revision dfce6724fed632447e1c2a1fd837b7f18897bd23)
@@ -1,2 +1,8 @@
+2010-06-01 	Chris Johns <chrisj@rtems.org>
+
+	* libcsupport/include/rtems/libio.h: Make the struct name the same
+	as the typedef.
+	* sapi/include/confdefs.h: Fixes for use in C++.
+
 2010-06-01 	Ralf CorsÃ©pius <ralf.corsepius@rtems.org>
 
Index: cpukit/libcsupport/include/rtems/libio.h
===================================================================
--- cpukit/libcsupport/include/rtems/libio.h	(revision d9120e5665b12d6ef5c81fbcfc62234475759a36)
+++ cpukit/libcsupport/include/rtems/libio.h	(revision dfce6724fed632447e1c2a1fd837b7f18897bd23)
@@ -293,5 +293,5 @@
  * File system table used by mount to manage file systems.
  */
-typedef struct _rtems_filesystem_table {
+typedef struct rtems_filesystem_table_t {
   const char                    *type;
   rtems_filesystem_fsmount_me_t  mount_h;
@@ -301,5 +301,5 @@
  * File system table runtime loaded nodes.
  */
-typedef struct _rtems_filesystem_table_node {
+typedef struct rtems_filesystem_table_node_t {
   rtems_chain_node         node;
   rtems_filesystem_table_t entry;
Index: cpukit/sapi/include/confdefs.h
===================================================================
--- cpukit/sapi/include/confdefs.h	(revision d9120e5665b12d6ef5c81fbcfc62234475759a36)
+++ cpukit/sapi/include/confdefs.h	(revision dfce6724fed632447e1c2a1fd837b7f18897bd23)
@@ -72,5 +72,4 @@
   #define CONFIGURE_NEWLIB_EXTENSION 0
 #endif
-
 
 #include <rtems/libio.h>
@@ -231,10 +230,14 @@
    * If disabling the file system undef everything. If DEVFS as the base
    * filesystem undefine all other filesystems because you cannot mount other
-   * filesystems.
+   * filesystems. Same for miniIMFS.
    */
   #if defined(CONFIGURE_APPLICATION_DISABLE_FILESYSTEM) || \
-      defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM)
+      defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM) || \
+      defined(CONFIGURE_USE_MINIIMFS_AS_BASE_FILESYSTEM)
     #if defined(CONFIGURE_APPLICATION_DISABLE_FILESYSTEM)
       #undef CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM
+      #undef CONFIGURE_USE_MINIIMFS_AS_BASE_FILESYSTEM
+    #elif defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM)
+      #undef CONFIGURE_USE_MINIIMFS_AS_BASE_FILESYSTEM
     #endif
     #undef CONFIGURE_FILESYSTEM_miniIMFS
@@ -252,7 +255,8 @@
    * We will have either DEVFS or IMFS defined after this.
    */
-  #if defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM) && \
-      !defined(CONFIGURE_FILESYSTEM_DEVFS)
+  #if defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM)
     #define CONFIGURE_FILESYSTEM_DEVFS
+  #elif defined(CONFIGURE_USE_MINIIMFS_AS_BASE_FILESYSTEM)
+    #define CONFIGURE_FILESYSTEM_miniIMFS
   #elif !defined(CONFIGURE_FILESYSTEM_IMFS)
     #define CONFIGURE_FILESYSTEM_IMFS
@@ -276,8 +280,4 @@
                     IMFS_MEMFILE_DEFAULT_BYTES_PER_BLOCK
 #endif
-
-#ifdef CONFIGURE_INIT
-  int imfs_rq_memfile_bytes_per_block = CONFIGURE_IMFS_MEMFILE_BYTES_PER_BLOCK;
-#endif /* CONFIGURE_INIT */
 
 /**
@@ -358,5 +358,6 @@
    *  DEVFS variables.
    */
-  #if defined(CONFIGURE_APPLICATION_DISABLE_FILESYSTEM) && !defined(RTEMS_COVERAGE)
+  #if defined(CONFIGURE_APPLICATION_DISABLE_FILESYSTEM) && \
+      !defined(RTEMS_COVERAGE)
     #define CONFIGURE_MEMORY_FOR_DEVFS  0
   #elif defined(CONFIGURE_FILESYSTEM_DEVFS)
@@ -376,4 +377,9 @@
   #endif
 
+  #if defined(CONFIGURE_FILESYSTEM_IMFS) || \
+      defined(CONFIGURE_FILESYSTEM_miniIMFS)
+    int imfs_rq_memfile_bytes_per_block = CONFIGURE_IMFS_MEMFILE_BYTES_PER_BLOCK;
+  #endif
+
   /**
    * Table termination record.
@@ -384,5 +390,8 @@
    * The default file system table. Must be terminated with the NULL entry if
    * you provide your own.
-   */
+   *
+   * The extern is needed to stop the table being removed by the optimizer.
+   */
+  extern const rtems_filesystem_table_t configuration_filesystem_table[];
   #ifndef CONFIGURE_HAS_OWN_FILESYSTEM_TABLE
     const rtems_filesystem_table_t configuration_filesystem_table[] = {
@@ -429,5 +438,5 @@
    */
   #if !defined(CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM) || \
-       defined(RTEMS_COVERAGE)
+      defined(RTEMS_COVERAGE)
     #if defined(CONFIGURE_PIPES_ENABLED)
       bool rtems_pipe_configured = true;
