Przeglądaj źródła

Make ISO9660 archiver optional.

Ryan C. Gordon 16 lat temu
rodzic
commit
cd3587bbf3
3 zmienionych plików z 12 dodań i 1 usunięć
  1. 5 0
      CMakeLists.txt
  2. 3 1
      src/archiver_iso9660.c
  3. 4 0
      src/physfs.c

+ 5 - 0
CMakeLists.txt

@@ -272,6 +272,11 @@ IF(PHYSFS_ARCHIVE_QPAK)
     ADD_DEFINITIONS(-DPHYSFS_SUPPORTS_QPAK=1)
 ENDIF(PHYSFS_ARCHIVE_QPAK)
 
+OPTION(PHYSFS_ARCHIVE_ISO9660 "Enable ISO9660 support" TRUE)
+IF(PHYSFS_ARCHIVE_ISO9660)
+    ADD_DEFINITIONS(-DPHYSFS_SUPPORTS_ISO9660=1)
+ENDIF(PHYSFS_ARCHIVE_ISO9660)
+
 
 # See if some archiver required zlib, and see about using system version.
 

+ 3 - 1
src/archiver_iso9660.c

@@ -22,7 +22,7 @@
  * - Ambiguities in the standard
  */
 
-#include "physfs.h"
+#if (defined PHYSFS_SUPPORTS_GRP)
 
 #define __PHYSICSFS_INTERNAL__
 #include "physfs_internal.h"
@@ -1025,5 +1025,7 @@ const PHYSFS_Archiver __PHYSFS_Archiver_ISO9660 =
     ISO9660_stat                /* stat() method           */
 };
 
+#endif  /* defined PHYSFS_SUPPORTS_ISO9660 */
+
 /* end of archiver_iso9660.c ... */
 

+ 4 - 0
src/physfs.c

@@ -93,7 +93,9 @@ static const PHYSFS_ArchiveInfo *supported_types[] =
 #if (defined PHYSFS_SUPPORTS_WAD)
     &__PHYSFS_ArchiveInfo_WAD,
 #endif
+#if (defined PHYSFS_SUPPORTS_ISO9660)
     &__PHYSFS_ArchiveInfo_ISO9660,
+#endif
     NULL
 };
 
@@ -121,7 +123,9 @@ static const PHYSFS_Archiver *archivers[] =
 #if (defined PHYSFS_SUPPORTS_WAD)
     &__PHYSFS_Archiver_WAD,
 #endif
+#if (defined PHYSFS_SUPPORTS_ISO9660)
     &__PHYSFS_Archiver_ISO9660,
+#endif
     NULL
 };