diff --git a/CMakeLists.txt b/CMakeLists.txt index a6f2908..bc6881b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -392,5 +392,39 @@ target_include_directories(HouseTool PRIVATE ) target_link_libraries(HouseTool PortabilityLayer MacRomanConversion) +add_executable(unpacktool + unpacktool/ArchiveDescription.cpp + unpacktool/BWT.cpp + unpacktool/CompactProLZHDecompressor.cpp + unpacktool/CompactProLZHRLEDecompressor.cpp + unpacktool/CompactProParser.cpp + unpacktool/CompactProRLEDecompressor.cpp + unpacktool/CRC.cpp + unpacktool/CSInputBuffer.cpp + unpacktool/DecompressorProxyReader.cpp + unpacktool/LZSSDecompressor.cpp + unpacktool/LZW.cpp + unpacktool/LZWDecompressor.cpp + unpacktool/NullDecompressor.cpp + unpacktool/PrefixCode.cpp + unpacktool/RLE90Decompressor.cpp + unpacktool/StringCommon.cpp + unpacktool/StuffIt13Decompressor.cpp + unpacktool/StuffIt5Parser.cpp + unpacktool/StuffItArsenicDecompressor.cpp + unpacktool/StuffItCommon.cpp + unpacktool/StuffItHuffmanDecompressor.cpp + unpacktool/StuffItParser.cpp + unpacktool/unpacktool.cpp + ) +target_include_directories(unpacktool PRIVATE + Common + GpCommon + PortabilityLayer + MacRomanConversion + UnixCompat + ) +target_link_libraries(unpacktool PortabilityLayer MacRomanConversion) + install (TARGETS ${EXECNAME}) diff --git a/unpacktool/CompactProRLEDecompressor.h b/unpacktool/CompactProRLEDecompressor.h index 51586ea..c207487 100644 --- a/unpacktool/CompactProRLEDecompressor.h +++ b/unpacktool/CompactProRLEDecompressor.h @@ -1,5 +1,7 @@ #pragma once +#include + #include "IDecompressor.h" class CompactProRLEDecompressor : public IDecompressor diff --git a/unpacktool/IDecompressor.h b/unpacktool/IDecompressor.h index b1a5f4c..7371b7f 100644 --- a/unpacktool/IDecompressor.h +++ b/unpacktool/IDecompressor.h @@ -1,6 +1,6 @@ #pragma once -#include +#include struct CSInputBuffer; diff --git a/unpacktool/IFileReader.h b/unpacktool/IFileReader.h index bd40ed7..3c9e043 100644 --- a/unpacktool/IFileReader.h +++ b/unpacktool/IFileReader.h @@ -1,5 +1,6 @@ #pragma once +#include #include struct IFileReader diff --git a/unpacktool/PrefixCode.cpp b/unpacktool/PrefixCode.cpp index 0546bad..eeb588c 100644 --- a/unpacktool/PrefixCode.cpp +++ b/unpacktool/PrefixCode.cpp @@ -1,3 +1,5 @@ +#include + #include "PrefixCode.h" struct XADCodeTreeNode diff --git a/unpacktool/RLE90Decompressor.h b/unpacktool/RLE90Decompressor.h index cf81fea..c8fbc69 100644 --- a/unpacktool/RLE90Decompressor.h +++ b/unpacktool/RLE90Decompressor.h @@ -1,5 +1,7 @@ #pragma once +#include + #include "IDecompressor.h" class RLE90Decompressor : public IDecompressor diff --git a/unpacktool/unpacktool.cpp b/unpacktool/unpacktool.cpp index e82a84b..9412605 100644 --- a/unpacktool/unpacktool.cpp +++ b/unpacktool/unpacktool.cpp @@ -1,4 +1,17 @@ #include +#include + +#include +#include + +#ifdef _WIN32 +#include +#include + +#include "WindowsUnicodeToolShim.h" +#else +#include "UnixCompat.h" +#endif #include "IArchiveParser.h" #include "IFileReader.h" @@ -22,18 +35,8 @@ #include "CompactProLZHRLEDecompressor.h" #include "CSInputBuffer.h" -#include "WindowsUnicodeToolShim.h" - #include "CombinedTimestamp.h" -#include - -#include -#include - -#include -#include - class CFileReader final : public IFileReader { public: