summaryrefslogtreecommitdiffstats
path: root/depends/xz-embedded
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2013-09-30 02:34:46 +0200
committerPetr Mrázek <peterix@gmail.com>2013-09-30 02:34:46 +0200
commit8b0f8b9e597eb50ff9323037fd5fa1b9e330c467 (patch)
tree3b6613d6c7672803c371ef7043cf35b713b975b1 /depends/xz-embedded
parent604162acdf5283a9759c1b3ce9e90887a6599ce7 (diff)
downloadMultiMC-8b0f8b9e597eb50ff9323037fd5fa1b9e330c467.tar
MultiMC-8b0f8b9e597eb50ff9323037fd5fa1b9e330c467.tar.gz
MultiMC-8b0f8b9e597eb50ff9323037fd5fa1b9e330c467.tar.lz
MultiMC-8b0f8b9e597eb50ff9323037fd5fa1b9e330c467.tar.xz
MultiMC-8b0f8b9e597eb50ff9323037fd5fa1b9e330c467.zip
``Working'' forge unpackers. Needs a lot of hardening but good for alpha.
Diffstat (limited to 'depends/xz-embedded')
-rw-r--r--depends/xz-embedded/CMakeLists.txt20
-rw-r--r--depends/xz-embedded/include/xz.h15
2 files changed, 21 insertions, 14 deletions
diff --git a/depends/xz-embedded/CMakeLists.txt b/depends/xz-embedded/CMakeLists.txt
index f1c6eb8d..d4987f76 100644
--- a/depends/xz-embedded/CMakeLists.txt
+++ b/depends/xz-embedded/CMakeLists.txt
@@ -8,33 +8,25 @@ option(XZ_BUILD_MINIDEC "Build a tiny utility that decompresses xz streams" OFF)
set(CMAKE_C_FLAGS "-std=c99")
include_directories(include)
+SET(XZ_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include" PARENT_SCOPE)
+
+# See include/xz.h for manual feature configuration
+# tweak this list and xz.h to fit your needs
set(XZ_SOURCES
include/xz.h
src/xz_config.h
src/xz_crc32.c
+src/xz_crc64.c
src/xz_dec_lzma2.c
src/xz_dec_stream.c
src/xz_lzma2.h
src/xz_private.h
src/xz_stream.h
+# src/xz_dec_bcj.c
)
# TODO: look into what would be needed for plain old lzma
-# checksum checks
-add_definitions(-DXZ_DEC_ANY_CHECK)
-if(XZ_BUILD_CRC64)
- add_definitions(-DXZ_USE_CRC64)
- LIST(APPEND XZ_SOURCES src/xz_crc64.c)
-endif()
-# TODO: add SHA256
-
-if(XZ_BUILD_BCJ)
- add_definitions(-DXZ_DEC_X86 -DXZ_DEC_POWERPC -DXZ_DEC_IA64)
- add_definitions(-DXZ_DEC_ARM -DXZ_DEC_ARMTHUMB -DXZ_DEC_SPARC)
- LIST(APPEND XZ_SOURCES src/xz_dec_bcj.c)
-endif()
-
add_library(xz-embedded STATIC ${XZ_SOURCES})
add_executable(xzminidec xzminidec.c)
target_link_libraries(xzminidec xz-embedded)
diff --git a/depends/xz-embedded/include/xz.h b/depends/xz-embedded/include/xz.h
index 0a4b38d3..49a96f7b 100644
--- a/depends/xz-embedded/include/xz.h
+++ b/depends/xz-embedded/include/xz.h
@@ -23,6 +23,21 @@
extern "C" {
#endif
+/* Definitions that determine available features */
+#define XZ_DEC_ANY_CHECK 1
+#define XZ_USE_CRC64 1
+
+// native machine code compression stuff
+/*
+#define XZ_DEC_X86
+#define XZ_DEC_POWERPC
+#define XZ_DEC_IA64
+#define XZ_DEC_ARM
+#define XZ_DEC_ARMTHUMB
+#define XZ_DEC_SPARC
+*/
+
+
/* In Linux, this is used to make extern functions static when needed. */
#ifndef XZ_EXTERN
# define XZ_EXTERN extern