mirror of https://github.com/inolen/redream.git
142 lines
4.5 KiB
CMake
142 lines
4.5 KiB
CMake
cmake_minimum_required(VERSION 3.1)
|
|
|
|
project(chdr C)
|
|
|
|
#--------------------------------------------------
|
|
# static libs
|
|
#--------------------------------------------------
|
|
|
|
# crypto
|
|
set(CRYPTO_SOURCES
|
|
deps/crypto/md5.c
|
|
deps/crypto/sha1.c)
|
|
|
|
add_library(crypto-static STATIC ${CRYPTO_SOURCES})
|
|
list(APPEND CHDR_INCLUDES deps/crypto)
|
|
list(APPEND CHDR_LIBS crypto-static)
|
|
|
|
# flac
|
|
set(FLAC_SOURCES
|
|
deps/flac-1.3.2/src/libFLAC/bitmath.c
|
|
deps/flac-1.3.2/src/libFLAC/bitreader.c
|
|
#deps/flac-1.3.2/src/libFLAC/bitwriter.c
|
|
deps/flac-1.3.2/src/libFLAC/cpu.c
|
|
deps/flac-1.3.2/src/libFLAC/crc.c
|
|
deps/flac-1.3.2/src/libFLAC/fixed.c
|
|
deps/flac-1.3.2/src/libFLAC/fixed_intrin_sse2.c
|
|
deps/flac-1.3.2/src/libFLAC/fixed_intrin_ssse3.c
|
|
deps/flac-1.3.2/src/libFLAC/float.c
|
|
deps/flac-1.3.2/src/libFLAC/format.c
|
|
deps/flac-1.3.2/src/libFLAC/lpc.c
|
|
deps/flac-1.3.2/src/libFLAC/lpc_intrin_avx2.c
|
|
deps/flac-1.3.2/src/libFLAC/lpc_intrin_sse2.c
|
|
deps/flac-1.3.2/src/libFLAC/lpc_intrin_sse41.c
|
|
deps/flac-1.3.2/src/libFLAC/lpc_intrin_sse.c
|
|
deps/flac-1.3.2/src/libFLAC/md5.c
|
|
deps/flac-1.3.2/src/libFLAC/memory.c
|
|
deps/flac-1.3.2/src/libFLAC/metadata_iterators.c
|
|
deps/flac-1.3.2/src/libFLAC/metadata_object.c
|
|
#deps/flac-1.3.2/src/libFLAC/ogg_decoder_aspect.c
|
|
#deps/flac-1.3.2/src/libFLAC/ogg_encoder_aspect.c
|
|
#deps/flac-1.3.2/src/libFLAC/ogg_helper.c
|
|
#deps/flac-1.3.2/src/libFLAC/ogg_mapping.c
|
|
deps/flac-1.3.2/src/libFLAC/stream_decoder.c
|
|
#deps/flac-1.3.2/src/libFLAC/stream_encoder.c
|
|
#deps/flac-1.3.2/src/libFLAC/stream_encoder_framing.c
|
|
#deps/flac-1.3.2/src/libFLAC/stream_encoder_intrin_avx2.c
|
|
#deps/flac-1.3.2/src/libFLAC/stream_encoder_intrin_sse2.c
|
|
#deps/flac-1.3.2/src/libFLAC/stream_encoder_intrin_ssse3.c
|
|
deps/flac-1.3.2/src/libFLAC/window.c)
|
|
if(WIN32)
|
|
list(APPEND FLAC_SOURCES deps/flac-1.3.2/src/libFLAC/windows_unicode_filenames.c)
|
|
endif()
|
|
|
|
if(APPLE)
|
|
list(APPEND FLAC_DEFS HAVE_SYS_PARAM_H)
|
|
endif()
|
|
|
|
add_library(flac-static STATIC ${FLAC_SOURCES})
|
|
target_include_directories(flac-static PUBLIC deps/flac-1.3.2/include deps/flac-1.3.2/src/libFLAC/include)
|
|
target_compile_definitions(flac-static PRIVATE PACKAGE_VERSION="1.3.2" FLAC__HAS_OGG=0 FLAC__NO_DLL HAVE_LROUND HAVE_STDINT_H HAVE_STDLIB_H ${FLAC_DEFS})
|
|
list(APPEND CHDR_INCLUDES deps/flac-1.3.2/src/libFLAC/include)
|
|
list(APPEND CHDR_DEFS FLAC__NO_DLL)
|
|
list(APPEND CHDR_LIBS flac-static)
|
|
|
|
# lzma
|
|
set(LZMA_SOURCES
|
|
#deps/lzma-16.04/C/7zAlloc.c
|
|
#deps/lzma-16.04/C/7zArcIn.c
|
|
#deps/lzma-16.04/C/7zBuf2.c
|
|
#deps/lzma-16.04/C/7zBuf.c
|
|
#deps/lzma-16.04/C/7zCrc.c
|
|
#deps/lzma-16.04/C/7zCrcOpt.c
|
|
#deps/lzma-16.04/C/7zDec.c
|
|
#deps/lzma-16.04/C/7zFile.c
|
|
#deps/lzma-16.04/C/7zStream.c
|
|
#deps/lzma-16.04/C/Aes.c
|
|
#deps/lzma-16.04/C/AesOpt.c
|
|
deps/lzma-16.04/C/Alloc.c
|
|
#deps/lzma-16.04/C/Bcj2.c
|
|
#deps/lzma-16.04/C/Bcj2Enc.c
|
|
deps/lzma-16.04/C/Bra86.c
|
|
deps/lzma-16.04/C/Bra.c
|
|
deps/lzma-16.04/C/BraIA64.c
|
|
deps/lzma-16.04/C/CpuArch.c
|
|
deps/lzma-16.04/C/Delta.c
|
|
#deps/lzma-16.04/C/DllSecur.c
|
|
deps/lzma-16.04/C/LzFind.c
|
|
#deps/lzma-16.04/C/LzFindMt.c
|
|
#deps/lzma-16.04/C/Lzma2Dec.c
|
|
#deps/lzma-16.04/C/Lzma2Enc.c
|
|
deps/lzma-16.04/C/Lzma86Dec.c
|
|
deps/lzma-16.04/C/Lzma86Enc.c
|
|
deps/lzma-16.04/C/LzmaDec.c
|
|
deps/lzma-16.04/C/LzmaEnc.c
|
|
deps/lzma-16.04/C/LzmaLib.c
|
|
#deps/lzma-16.04/C/MtCoder.c
|
|
#deps/lzma-16.04/C/Ppmd7.c
|
|
#deps/lzma-16.04/C/Ppmd7Dec.c
|
|
#deps/lzma-16.04/C/Ppmd7Enc.c
|
|
#deps/lzma-16.04/C/Sha256.c
|
|
deps/lzma-16.04/C/Sort.c
|
|
#deps/lzma-16.04/C/Threads.c
|
|
#deps/lzma-16.04/C/Xz.c
|
|
#deps/lzma-16.04/C/XzCrc64.c
|
|
#deps/lzma-16.04/C/XzCrc64Opt.c
|
|
#deps/lzma-16.04/C/XzDec.c
|
|
#deps/lzma-16.04/C/XzEnc.c
|
|
#deps/lzma-16.04/C/XzIn.c
|
|
)
|
|
|
|
add_library(lzma-static STATIC ${LZMA_SOURCES})
|
|
target_compile_options(lzma-static PRIVATE -D_7ZIP_ST)
|
|
list(APPEND CHDR_INCLUDES deps/lzma-16.04/C)
|
|
list(APPEND CHDR_LIBS lzma-static)
|
|
|
|
# zlib
|
|
add_subdirectory(deps/zlib-1.2.11 EXCLUDE_FROM_ALL)
|
|
list(APPEND CHDR_INCLUDES deps/zlib-1.2.11 ${CMAKE_CURRENT_BINARY_DIR}/deps/zlib-1.2.11)
|
|
list(APPEND CHDR_LIBS zlibstatic)
|
|
|
|
#--------------------------------------------------
|
|
# chdr
|
|
#--------------------------------------------------
|
|
|
|
set(CHDR_SOURCES
|
|
src/bitstream.c
|
|
src/bitstream.h
|
|
src/cdrom.c
|
|
src/cdrom.h
|
|
src/chd.c
|
|
src/chd.h
|
|
src/coretypes.h
|
|
src/flac.c
|
|
src/flac.h
|
|
src/huffman.c
|
|
src/huffman.h)
|
|
|
|
add_library(chdr-static STATIC ${CHDR_SOURCES})
|
|
target_include_directories(chdr-static PRIVATE ${CHDR_INCLUDES})
|
|
target_compile_definitions(chdr-static PRIVATE ${CHDR_DEFS})
|
|
target_link_libraries(chdr-static ${CHDR_LIBS})
|