diff --git a/CMakeLists.txt b/CMakeLists.txt index bc5cd6e..4b90ecd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -31,24 +31,24 @@ check_symbol_exists(iconv iconv.h HAVE_ICONV) set(SIZE_FORMAT "zi") check_c_source_compiles("#include \nint main(int argc, char **argv) { size_t value = 0; printf(\"%${SIZE_FORMAT}\", value); return 0; }" SIZE_FORMAT_ZI) if(NOT SIZE_FORMAT_ZI) - set(SIZE_FORMAT "i") - check_c_source_compiles("#include \nint main(int argc, char **argv) { size_t value = 0; printf(\"%${SIZE_FORMAT}\", value); return 0; }" SIZE_FORMAT_I) - if(NOT SIZE_FORMAT_I) - set(SIZE_FORMAT "li") - check_c_source_compiles("#include \nint main(int argc, char **argv) { size_t value = 0; printf(\"%${SIZE_FORMAT}\", value); return 0; }" SIZE_FORMAT_LI) - if(NOT SIZE_FORMAT_LI) - message(FATAL_ERROR "You must be using a really weird platform!") - endif() - endif() + set(SIZE_FORMAT "i") + check_c_source_compiles("#include \nint main(int argc, char **argv) { size_t value = 0; printf(\"%${SIZE_FORMAT}\", value); return 0; }" SIZE_FORMAT_I) + if(NOT SIZE_FORMAT_I) + set(SIZE_FORMAT "li") + check_c_source_compiles("#include \nint main(int argc, char **argv) { size_t value = 0; printf(\"%${SIZE_FORMAT}\", value); return 0; }" SIZE_FORMAT_LI) + if(NOT SIZE_FORMAT_LI) + message(FATAL_ERROR "You must be using a really weird platform!") + endif() + endif() endif() find_package(ZLIB REQUIRED) find_package(OpenSSL) -if (${OPENSSL_FOUND}) - option(USE_OUR_OWN_MD5 "Build using own md5 implementation" OFF) +if(${OPENSSL_FOUND}) + option(USE_OUR_OWN_MD5 "Build using own md5 implementation" OFF) else() - option(USE_OUR_OWN_MD5 "Build using own md5 implementation" ON) + option(USE_OUR_OWN_MD5 "Build using own md5 implementation" ON) endif() message(STATUS "OPENSSL_FOUND: ${OPENSSL_FOUND}") diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt index f0d9f30..26989aa 100644 --- a/lib/CMakeLists.txt +++ b/lib/CMakeLists.txt @@ -1,45 +1,41 @@ -cmake_minimum_required(VERSION 3.6) - -project(libunshield C) - add_subdirectory(convert_utf) if(USE_OUR_OWN_MD5) add_subdirectory(md5) endif() -set(LIBUNSHIELD_HEADES - "internal.h" - "libunshield.h" - "log.h" - "cabfile.h" +set(LIBUNSHIELD_HEADERS + internal.h + libunshield.h + log.h + cabfile.h ) set(LIBUNSHIELD_SOURCES - "component.c" - "directory.c" - "file.c" - "file_group.c" - "helper.c" - "libunshield.c" - "log.c" + component.c + directory.c + file.c + file_group.c + helper.c + libunshield.c + log.c ) if(BUILD_STATIC) - add_library(${PROJECT_NAME} STATIC ${LIBUNSHIELD_HEADES} ${LIBUNSHIELD_SOURCES}) + add_library(libunshield STATIC ${LIBUNSHIELD_HEADERS} ${LIBUNSHIELD_SOURCES}) else() - add_library(${PROJECT_NAME} SHARED ${LIBUNSHIELD_HEADES} ${LIBUNSHIELD_SOURCES}) + add_library(libunshield SHARED ${LIBUNSHIELD_HEADERS} ${LIBUNSHIELD_SOURCES}) endif() -target_include_directories(${PROJECT_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) -target_link_libraries(${PROJECT_NAME} PUBLIC ZLIB::ZLIB convert_utf) +target_include_directories(libunshield PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) +target_link_libraries(libunshield PUBLIC ZLIB::ZLIB convert_utf) set_target_properties(libunshield PROPERTIES OUTPUT_NAME unshield) set_target_properties(libunshield PROPERTIES VERSION 0.0.0 SOVERSION 0) if(USE_OUR_OWN_MD5) - target_link_libraries(${PROJECT_NAME} PUBLIC md5) + target_link_libraries(libunshield PUBLIC md5) else() - target_link_libraries(${PROJECT_NAME} PUBLIC OpenSSL::Crypto) + target_link_libraries(libunshield PUBLIC OpenSSL::Crypto) endif() install(TARGETS libunshield RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) diff --git a/lib/convert_utf/CMakeLists.txt b/lib/convert_utf/CMakeLists.txt index 6a66530..eaf4c44 100644 --- a/lib/convert_utf/CMakeLists.txt +++ b/lib/convert_utf/CMakeLists.txt @@ -1,16 +1,16 @@ -set(LIBCONVERT_UTF_HEADES - "ConvertUTF.h" +set(LIBCONVERT_UTF_HEADERS + ConvertUTF.h ) set(LIBCONVERT_UTF_SOURCES - "ConvertUTF.c" + ConvertUTF.c ) if(BUILD_STATIC AND MSVC) set_msvc_runtime_static() endif() -add_library(convert_utf STATIC ${LIBCONVERT_UTF_HEADES} ${LIBCONVERT_UTF_SOURCES}) +add_library(convert_utf STATIC ${LIBCONVERT_UTF_HEADERS} ${LIBCONVERT_UTF_SOURCES}) # Linux/Clang-7 # relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; diff --git a/lib/md5/CMakeLists.txt b/lib/md5/CMakeLists.txt index 1986b24..73a0c94 100644 --- a/lib/md5/CMakeLists.txt +++ b/lib/md5/CMakeLists.txt @@ -1,14 +1,14 @@ -set(LIBMD5_UTF_HEADES - "global.h" - "md5.h" +set(LIBMD5_HEADERS + global.h + md5.h ) -set(LIBMD5_UTF_SOURCES - "md5c.c" +set(LIBMD5_SOURCES + md5c.c ) if(BUILD_STATIC AND MSVC) set_msvc_runtime_static() endif() -add_library(md5 STATIC ${LIBMD5_UTF_HEADES} ${LIBMD5_UTF_SOURCES}) +add_library(md5 STATIC ${LIBMD5_HEADERS} ${LIBMD5_SOURCES}) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index a8f1671..77d6825 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,9 +1,9 @@ -LIST(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/lib" isSystemDir) -IF("${isSystemDir}" STREQUAL "-1") -SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}") +list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/lib" isSystemDir) +if("${isSystemDir}" STREQUAL "-1") + set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}") endif() -add_executable(unshield "unshield.c") +add_executable(unshield unshield.c) target_link_libraries(unshield libunshield) if(WIN32) if(HAVE_ICONV) @@ -12,7 +12,7 @@ if(WIN32) target_link_libraries(unshield ${ZLIB_LIBRARIES}) endif() -add_executable(unshield-deobfuscate "unshield-deobfuscate.c") +add_executable(unshield-deobfuscate unshield-deobfuscate.c) target_link_libraries(unshield-deobfuscate libunshield) if(WIN32) target_link_libraries(unshield-deobfuscate ${ZLIB_LIBRARIES})