library-szs/CMakeLists.txt

121 lines
No EOL
4 KiB
CMake

cmake_minimum_required(VERSION 3.28)
# Define the project
project(SZS C)
# Dependencies
find_package(Curses REQUIRED)
find_package(OpenSSL REQUIRED)
find_package(PNG REQUIRED)
# Create the library
add_library(SZS SHARED
external/project/dclib/dclib-basics.c
external/project/dclib/dclib-tables.c
external/project/dclib/dclib-numeric.c
external/project/dclib/dclib-color.c
external/project/dclib/dclib-file.c
external/project/dclib/dclib-debug.c
external/project/dclib/dclib-xdump.c
external/project/dclib/dclib-utf8.c
external/project/dclib/lib-dol.c
external/project/dclib/dclib-ui.c
external/project/src/lib-std.c
external/project/src/db-file.c
external/project/src/db-mkw.c
external/project/src/lib-szs.c
external/project/src/file-type.c
external/project/src/lib-pack.c
external/project/src/lib-file.c
external/project/src/lib-breff.c
external/project/src/lib-rarc.c
external/project/src/lib-brres.c
external/project/src/lib-checksum.c
external/project/src/lib-rkc.c
external/project/src/lib-bzip2.c
external/project/src/lib-lzma.c
external/project/src/libbz2/bzlib.c
external/project/src/libbz2/crctable.c
external/project/src/libbz2/randtable.c
external/project/src/liblzma/LzmaEnc.c
external/project/src/liblzma/LzmaDec.c
external/project/dclib/dclib-parser.c
external/project/dclib/lib-bmg.c
external/project/dclib/dclib-regex.c
external/project/dclib/dclib-shift-jis.c
external/project/src/liblzma/LzFind.c
external/project/src/liblzma/CpuArch.c
external/project/src/lib-object.c
external/project/src/db-object.c
external/project/src/libbz2/decompress.c
external/project/src/libbz2/huffman.c
external/project/src/lib-numeric.c
external/project/src/lib-objflow.c
external/project/src/lib-parser.c
external/project/src/lib-parser-func.c
external/project/dclib/lib-mkw.c
external/project/dclib/dclib-vector.c
external/project/src/lib-common.c
external/project/src/libbz2/compress.c
external/project/src/libbz2/blocksort.c
external/project/src/lib-geohit.c
external/project/src/crypto/sha1_one.c
external/project/src/lib-lecode.c
external/project/src/lib-ledis.c
external/project/src/lib-ctcode.c
external/project/src/db-ctcode.c
external/project/src/lib-xbmg.c
external/project/src/lib-analyze.c
external/project/src/lib-lex.c
external/project/src/lib-szs-create.c
external/project/src/lib-kcl.c
external/project/src/lib-transform.c
external/project/src/lib-kmp.c
external/project/src/db-kcl.c
external/project/src/lib-pat.c
external/project/src/lib-mdl.c
external/project/src/lib-image3.c
external/project/src/lib-image2.c
external/project/src/lib-image1.c
external/project/src/lib-kmp-pflags.c
external/project/src/lib-kmp-text.c
external/project/src/lib-kmp-draw.c
external/project/src/analyze.c
source/szs/szs.c
source/bmg/bmg.c
source/bmg/bmg.h
)
# Include additional directories
target_include_directories(SZS PRIVATE
# Libraries
${CURSES_INCLUDE_DIRS}
${OPENSSL_INCLUDE_DIR}
${PNG_INCLUDE_DIRS}
# Local
external/project
external/project/dclib
external/project/src
external/project/src/libbz2
external/project/src/liblzma
external/project/src/ui
external/project/src/crypto
)
# Link with additional libraries
target_link_libraries(SZS PRIVATE
# External Libraries
${CURSES_LIBRARIES}
${OPENSSL_LIBRARIES}
${PNG_LIBRARY}
)
target_compile_definitions(SZS PRIVATE
# Library arguments
BUILD_SZS
# Original Wiimm's arguments
Z7_ST=1
USE_SHA_LIB=1
DCLIB_DEBUG_C
)