diff --git a/hecl/.gitmodules b/hecl/.gitmodules index e63cf39c9..3a94f75e1 100644 --- a/hecl/.gitmodules +++ b/hecl/.gitmodules @@ -7,3 +7,6 @@ [submodule "extern/libSquish"] path = extern/libSquish url = https://github.com/jackoalan/libSquish.git +[submodule "extern/LogVisor"] + path = extern/LogVisor + url = https://github.com/RetroView/LogVisor.git diff --git a/hecl/driver/ToolBase.hpp b/hecl/driver/ToolBase.hpp index 61d88b756..bdee10338 100644 --- a/hecl/driver/ToolBase.hpp +++ b/hecl/driver/ToolBase.hpp @@ -3,12 +3,13 @@ #include #include -#include #include #include #include #include +#include "HECL/Database.hpp" + struct ToolPassInfo { HECL::SystemString pname; diff --git a/hecl/driver/driver.pro b/hecl/driver/driver.pro index 7f4ff7eca..2b526fa7f 100644 --- a/hecl/driver/driver.pro +++ b/hecl/driver/driver.pro @@ -10,12 +10,13 @@ clang:LIBS += -stdlib=libc++ -lc++abi INCLUDEPATH += ../include ../extern/Athena/include ../extern LIBPATH += $$OUT_PWD/../lib \ - $$OUT_PWD/../dataspec \ $$OUT_PWD/../blender \ + $$OUT_PWD/../extern/LogVisor \ + $$OUT_PWD/../extern/RetroCommon/NODLib/lib \ $$OUT_PWD/../extern/blowfish \ $$OUT_PWD/../extern/libpng -LIBS += -lhecl -lhecl-dataspec -lhecl-blender -lblowfish -lpng +LIBS += -lhecl -lhecl-blender -lblowfish -lNOD -lLogVisor -lpng -lpthread SOURCES += \ $$PWD/main.cpp diff --git a/hecl/driver/main.cpp b/hecl/driver/main.cpp index 0fb793c78..ab194daca 100644 --- a/hecl/driver/main.cpp +++ b/hecl/driver/main.cpp @@ -5,7 +5,7 @@ #include #include #include -#include +#include "HECL/Database.hpp" #include "ToolBase.hpp" #include "ToolInit.hpp" diff --git a/hecl/extern/Athena b/hecl/extern/Athena index 2b37765ef..6ac88b37f 160000 --- a/hecl/extern/Athena +++ b/hecl/extern/Athena @@ -1 +1 @@ -Subproject commit 2b37765effa731d2b38da0fa4578c7be7edccaa5 +Subproject commit 6ac88b37f481c762b1cfc532eea2062b730a81b1 diff --git a/hecl/extern/LogVisor b/hecl/extern/LogVisor new file mode 160000 index 000000000..33f2f7b27 --- /dev/null +++ b/hecl/extern/LogVisor @@ -0,0 +1 @@ +Subproject commit 33f2f7b279991a7be81310024636f43ecbf5ed24 diff --git a/hecl/extern/RetroCommon b/hecl/extern/RetroCommon index 94d61da80..a1c1462bf 160000 --- a/hecl/extern/RetroCommon +++ b/hecl/extern/RetroCommon @@ -1 +1 @@ -Subproject commit 94d61da80dcc7df398f3e8b2ed0196149906a6b0 +Subproject commit a1c1462bfbbf7482fe7944f769f237228b2d2766 diff --git a/hecl/hecl.pro b/hecl/hecl.pro index ba9020dc5..8bbe35af5 100644 --- a/hecl/hecl.pro +++ b/hecl/hecl.pro @@ -10,17 +10,22 @@ exists ($$PWD/llvm) { DEFINES += HECL_LLVM=1 } +# Make LogVisor headers global +LOGVISOR_INCLUDE = $$PWD/extern/LogVisor/include + HEADERS += \ - include/HECL.hpp \ - include/HECLBackend.hpp \ - include/HECLDatabase.hpp \ - include/HECLFrontend.hpp \ - include/HECLRuntime.hpp + include/HECL/HECL.hpp \ + include/HECL/Backend.hpp \ + include/HECL/Database.hpp \ + include/HECL/Frontend.hpp \ + include/HECL/Runtime.hpp SUBDIRS += \ + extern/LogVisor \ extern/blowfish \ extern/libpng \ extern/libSquish \ + extern/Athena \ extern/RetroCommon \ blender \ lib \ @@ -29,6 +34,7 @@ SUBDIRS += \ driver.depends = extern/blowfish driver.depends = extern/libpng driver.depends = extern/libSquish +driver.depends = extern/Athena driver.depends = extern/RetroCommon driver.depends = blender driver.depends = lib diff --git a/hecl/include/HECLBackend.hpp b/hecl/include/HECL/Backend.hpp similarity index 100% rename from hecl/include/HECLBackend.hpp rename to hecl/include/HECL/Backend.hpp diff --git a/hecl/include/HECLDatabase.hpp b/hecl/include/HECL/Database.hpp similarity index 100% rename from hecl/include/HECLDatabase.hpp rename to hecl/include/HECL/Database.hpp diff --git a/hecl/include/HECLFrontend.hpp b/hecl/include/HECL/Frontend.hpp similarity index 100% rename from hecl/include/HECLFrontend.hpp rename to hecl/include/HECL/Frontend.hpp diff --git a/hecl/include/HECL.hpp b/hecl/include/HECL/HECL.hpp similarity index 100% rename from hecl/include/HECL.hpp rename to hecl/include/HECL/HECL.hpp diff --git a/hecl/include/HECLRuntime.hpp b/hecl/include/HECL/Runtime.hpp similarity index 100% rename from hecl/include/HECLRuntime.hpp rename to hecl/include/HECL/Runtime.hpp diff --git a/hecl/lib/HECL.cpp b/hecl/lib/HECL.cpp index 4cc368966..ed6724e20 100644 --- a/hecl/lib/HECL.cpp +++ b/hecl/lib/HECL.cpp @@ -1 +1 @@ -#include "HECL.hpp" +#include "HECL/HECL.hpp" diff --git a/hecl/lib/ProjectPath.cpp b/hecl/lib/ProjectPath.cpp index 582b77f7c..3ec9153e5 100644 --- a/hecl/lib/ProjectPath.cpp +++ b/hecl/lib/ProjectPath.cpp @@ -1,4 +1,4 @@ -#include "HECL.hpp" +#include "HECL/HECL.hpp" #include #include diff --git a/hecl/lib/WideStringConvert.cpp b/hecl/lib/WideStringConvert.cpp index 3f28250e0..531ab0e9e 100644 --- a/hecl/lib/WideStringConvert.cpp +++ b/hecl/lib/WideStringConvert.cpp @@ -1,4 +1,4 @@ -#include "HECL.hpp" +#include "HECL/HECL.hpp" #include #include diff --git a/hecl/lib/database/Project.cpp b/hecl/lib/database/Project.cpp index 4eb42d8e1..db76909d0 100644 --- a/hecl/lib/database/Project.cpp +++ b/hecl/lib/database/Project.cpp @@ -9,7 +9,7 @@ #include #endif -#include "HECLDatabase.hpp" +#include "HECL/Database.hpp" namespace HECL { diff --git a/hecl/lib/database/Registry.cpp b/hecl/lib/database/Registry.cpp new file mode 100644 index 000000000..cb1a705e9 --- /dev/null +++ b/hecl/lib/database/Registry.cpp @@ -0,0 +1,12 @@ +#include "HECL/Database.hpp" + +namespace HECL +{ +namespace Database +{ + +/* Centralized registry for DataSpec lookup */ +std::vector DATA_SPEC_REGISTRY; + +} +} diff --git a/hecl/lib/database/database.pri b/hecl/lib/database/database.pri index 716d3ef5e..39cd984df 100644 --- a/hecl/lib/database/database.pri +++ b/hecl/lib/database/database.pri @@ -1,4 +1,5 @@ HEADERS += SOURCES += \ - $$PWD/Project.cpp + $$PWD/Project.cpp \ + $$PWD/Registry.cpp diff --git a/hecl/lib/lib.pro b/hecl/lib/lib.pro index 2433ff42b..d16782154 100644 --- a/hecl/lib/lib.pro +++ b/hecl/lib/lib.pro @@ -15,7 +15,6 @@ include (frontend/frontend.pri) include (backend/backend.pri) include (database/database.pri) include (runtime/runtime.pri) -include(../extern/Athena/AthenaCore.pri) SOURCES += \ HECL.cpp \ diff --git a/hecl/lib/runtime/HECLRuntime.cpp b/hecl/lib/runtime/HECLRuntime.cpp index 724ecc31b..15ce100ad 100644 --- a/hecl/lib/runtime/HECLRuntime.cpp +++ b/hecl/lib/runtime/HECLRuntime.cpp @@ -1,4 +1,4 @@ -#include "HECLRuntime.hpp" +#include "HECL/Runtime.hpp" namespace HECL {