summaryrefslogtreecommitdiff
path: root/src/fs/virtfs.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2017-02-28 22:49:10 +0300
committerAndrei Karas <akaras@inbox.ru>2017-02-28 22:49:10 +0300
commitdb31c2f832dd4067e4670dd469fe3b696188576b (patch)
tree7ed857adddd833cfd5087ee6c22e408637301c5c /src/fs/virtfs.cpp
parent6583c1a039a28a41a865b02598e6da9521046325 (diff)
downloadmanaverse-db31c2f832dd4067e4670dd469fe3b696188576b.tar.gz
manaverse-db31c2f832dd4067e4670dd469fe3b696188576b.tar.bz2
manaverse-db31c2f832dd4067e4670dd469fe3b696188576b.tar.xz
manaverse-db31c2f832dd4067e4670dd469fe3b696188576b.zip
Add configure flag for use physfs.
New configure option: --without-physfs For now manaplus cant be compiled without physfs.
Diffstat (limited to 'src/fs/virtfs.cpp')
-rw-r--r--src/fs/virtfs.cpp30
1 files changed, 28 insertions, 2 deletions
diff --git a/src/fs/virtfs.cpp b/src/fs/virtfs.cpp
index 7aa30940c..3ba214dc7 100644
--- a/src/fs/virtfs.cpp
+++ b/src/fs/virtfs.cpp
@@ -20,8 +20,11 @@
#include "fs/virtfs.h"
-#include "fs/virtfsdir.h"
+#ifdef USE_PHYSFS
#include "fs/virtfsphys.h"
+#else // USE_PHYSFS
+#include "fs/virtfsdir.h"
+#endif // USE_PHYSFS
#include "fs/virtfile.h"
#include "fs/virtfsfuncs.h"
#include "fs/virtlist.h"
@@ -34,33 +37,52 @@ namespace VirtFs
{
void init(const std::string &restrict name)
{
+#ifdef USE_PHYSFS
VirtFsPhys::init(name);
+#else // USE_PHYSFS
VirtFsDir::init(name);
+#endif // USE_PHYSFS
updateDirSeparator();
}
void updateDirSeparator()
{
+#ifdef USE_PHYSFS
+ dirSeparator = VirtFsPhys::getDirSeparator();
+#else // USE_PHYSFS
#ifdef WIN32
dirSeparator = "\\";
#else // WIN32
dirSeparator = "/";
#endif // WIN32
+#endif // USE_PHYSFS
}
const char *getDirSeparator()
{
+#ifdef USE_PHYSFS
+ return VirtFsPhys::getDirSeparator();
+#else // USE_PHYSFS
return dirSeparator;
+#endif // USE_PHYSFS
}
const char *getBaseDir()
{
+#ifdef USE_PHYSFS
+ return VirtFsPhys::getBaseDir();
+#else // USE_PHYSFS
return VirtFsDir::getBaseDir();
+#endif // USE_PHYSFS
}
const char *getUserDir()
{
+#ifdef USE_PHYSFS
+ return VirtFsPhys::getUserDir();
+#else // USE_PHYSFS
return VirtFsDir::getUserDir();
+#endif // USE_PHYSFS
}
bool exists(const std::string &restrict name)
@@ -147,8 +169,12 @@ namespace VirtFs
bool deinit()
{
- VirtFsDir::deinit();
+#ifdef USE_PHYSFS
return VirtFsPhys::deinit();
+#else // USE_PHYSFS
+ VirtFsDir::deinit();
+ return true;
+#endif // USE_PHYSFS
}
void permitLinks(const bool val)