From 327278436d32f93aca601a68ad0de0f2f8826f21 Mon Sep 17 00:00:00 2001 From: Martin Natano Date: Mon, 30 May 2022 23:58:19 +0200 Subject: [PATCH] Remove support for building with system libraries --- .github/workflows/ci.yml | 51 +- CMake/DefineOptions.cmake | 27 - CMake/Modules/FindFFMPEG.cmake | 141 ---- CMake/Modules/FindMad.cmake | 11 - CMake/Modules/FindOgg.cmake | 15 - CMake/Modules/FindPcre.cmake | 17 - CMake/Modules/FindVorbis.cmake | 18 - CMake/Modules/FindVorbisFile.cmake | 16 - StepmaniaCore.cmake | 867 +++++++++++------------ extern/CMakeLists.txt | 14 +- extern/CMakeProject-glew.cmake | 34 +- extern/CMakeProject-jpeg.cmake | 173 +++-- extern/CMakeProject-json.cmake | 31 +- extern/CMakeProject-mad.cmake | 138 ++-- extern/CMakeProject-pcre.cmake | 78 +-- extern/CMakeProject-png.cmake | 89 ++- extern/CMakeProject-tomcrypt.cmake | 948 +++++++++++++------------- extern/CMakeProject-tommath.cmake | 353 +++++----- extern/CMakeProject-zlib.cmake | 72 +- src/CMakeData-arch.cmake | 24 +- src/CMakeData-rage.cmake | 16 +- src/CMakeLists.txt | 193 ++---- src/RageSoundReader_FileReader.cpp | 15 +- src/arch/ArchHooks/ArchHooks_Unix.cpp | 4 - src/archutils/Win32/arch_setup.h | 4 - src/config.in.hpp | 9 - 26 files changed, 1389 insertions(+), 1969 deletions(-) delete mode 100644 CMake/Modules/FindFFMPEG.cmake delete mode 100644 CMake/Modules/FindMad.cmake delete mode 100644 CMake/Modules/FindOgg.cmake delete mode 100644 CMake/Modules/FindPcre.cmake delete mode 100644 CMake/Modules/FindVorbis.cmake delete mode 100644 CMake/Modules/FindVorbisFile.cmake diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e4fbb44b21..5bfd62c97b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,7 +4,7 @@ name: Continuous integration jobs: ubuntu-build-bundled: - name: "Ubuntu: Build with bundled libraries" + name: Ubuntu runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 @@ -32,53 +32,8 @@ jobs: - name: Build run: cmake --build build - ubuntu-build-system: - name: "Ubuntu: Build with system libraries" - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - name: Checkout submodules - run: git submodule update --init - - name: Install dependencies - run: sudo apt-get update && sudo apt-get install -y - ffmpeg - libasound2-dev - libgl-dev - libglew-dev - libgtk-3-dev - libjack-dev - libjsoncpp-dev - libmad0-dev - libpng-dev - libpulse-dev - libtomcrypt-dev - libtommath-dev - libudev-dev - libva-dev - libvorbis-dev - libxinerama-dev - libx11-dev - libxrandr-dev - libxtst-dev - ninja-build - - name: Configure - run: cmake -G Ninja -B build - -DWITH_SYSTEM_FFMPEG=ON - -DWITH_SYSTEM_GLEW=ON - -DWITH_SYSTEM_JPEG=ON - -DWITH_SYSTEM_JSONCPP=ON - -DWITH_SYSTEM_MAD=ON - -DWITH_SYSTEM_OGG=ON - -DWITH_SYSTEM_PCRE=ON - -DWITH_SYSTEM_PNG=ON - -DWITH_SYSTEM_TOMCRYPT=ON - -DWITH_SYSTEM_TOMMATH=ON - -DWITH_SYSTEM_ZLIB=ON - - name: Build - run: cmake --build build - macos-build-bundled: - name: "macOS: Build with bundled libraries" + name: macOS runs-on: macos-latest steps: - uses: actions/checkout@v2 @@ -93,7 +48,7 @@ jobs: run: cmake --build build windows-build-bundled: - name: "Windows: Build with bundled libraries" + name: Windows runs-on: windows-latest steps: - uses: actions/checkout@v2 diff --git a/CMake/DefineOptions.cmake b/CMake/DefineOptions.cmake index f29f23cdf9..a93211186b 100644 --- a/CMake/DefineOptions.cmake +++ b/CMake/DefineOptions.cmake @@ -27,34 +27,11 @@ option( "Build without the ROLC assembly instructions for tomcrypt." OFF) -# Turn this option off to disable using WAV files with the game. Note that it is -# recommended to keep this on. -option(WITH_WAV "Build with WAV Support." ON) - -# Turn this option off to disable using MP3 files with the game. -option(WITH_MP3 "Build with MP3 Support." ON) - -# Turn this option off to disable using OGG files with the game. -option(WITH_OGG "Build with OGG/Vorbis Support." ON) - # Turn this option on to log every segment added or removed. option(WITH_LOGGING_TIMING_DATA "Build with logging all Add and Erase Segment calls." OFF) -option(WITH_SYSTEM_PNG "Build with system PNG library (may not work on 1.6+)" - OFF) -option(WITH_SYSTEM_OGG "Build with system OGG libraries" OFF) -option(WITH_SYSTEM_GLEW "Build with system GLEW library" OFF) -option(WITH_SYSTEM_TOMCRYPT "Build with system libtomcrypt" OFF) -option(WITH_SYSTEM_MAD "Build with system libmad" OFF) -option(WITH_SYSTEM_JSONCPP "Build with system jsoncpp" OFF) -option(WITH_SYSTEM_JPEG "Build with system jpeglib" OFF) -option(WITH_SYSTEM_PCRE "Build with system PCRE" OFF) -option(WITH_SYSTEM_ZLIB "Build against system zlib" OFF) - if(NOT MSVC) - # Turn this option off to disable using FFMEPG. - option(WITH_FFMPEG "Build with FFMPEG." ON) # Change this number to utilize a different number of jobs for building # FFMPEG. option(WITH_FFMPEG_JOBS "Build FFMPEG with this many jobs." 2) @@ -71,10 +48,6 @@ endif() if(WIN32) option(WITH_MINIMAID "Build with Minimaid Lights Support." OFF) elseif(LINUX) - # Builder beware: later versions of ffmpeg may break! - option(WITH_SYSTEM_FFMPEG - "Build with the system's FFMPEG, disabled build with bundled's FFMPEG" - OFF) option(WITH_MINIMAID "Build with Minimaid Lights Support." OFF) option(WITH_TTY "Build with Linux TTY Input Support." OFF) option(WITH_PROFILING "Build with Profiling Support." OFF) diff --git a/CMake/Modules/FindFFMPEG.cmake b/CMake/Modules/FindFFMPEG.cmake deleted file mode 100644 index 1803319a12..0000000000 --- a/CMake/Modules/FindFFMPEG.cmake +++ /dev/null @@ -1,141 +0,0 @@ -# This was copied from the robotology/ycm project. - -# .rst: FindFFMPEG -# ---------- -# -# Find the native FFMPEG includes and library -# -# This module defines:: -# -# FFMPEG_INCLUDE_DIR, where to find avcodec.h, avformat.h ... FFMPEG_LIBRARIES, -# the libraries to link against to use FFMPEG. FFMPEG_FOUND, If false, do not -# try to use FFMPEG. -# -# also defined, but not for general use are:: -# -# FFMPEG_avformat_LIBRARY, where to find the FFMPEG avformat library. -# FFMPEG_avcodec_LIBRARY, where to find the FFMPEG avcodec library. -# -# This is useful to do it this way so that we can always add more libraries if -# needed to ``FFMPEG_LIBRARIES`` if ffmpeg ever changes... - -# ============================================================================= -# Copyright: 1993-2008 Ken Martin, Will Schroeder, Bill Lorensen -# -# Distributed under the OSI-approved BSD License (the "License"); see -# accompanying file Copyright.txt for details. -# -# This software is distributed WITHOUT ANY WARRANTY; without even the implied -# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# License for more information. -# ============================================================================= -# (To distribute this file outside of YCM, substitute the full License text for -# the above reference.) - -# Originally from VTK project - -find_path(FFMPEG_INCLUDE_DIR - libavformat/avformat.h - $ENV{FFMPEG_DIR} - $ENV{FFMPEG_DIR}/ffmpeg - $ENV{FFMPEG_DIR}/include/ffmpeg - /usr/local/include/ffmpeg - /usr/include/ffmpeg - /usr/include/ - /usr/local/include/) - -find_library(FFMPEG_avformat_LIBRARY - avformat - $ENV{FFMPEG_DIR} - $ENV{FFMPEG_DIR}/lib - $ENV{FFMPEG_DIR}/libavformat - /usr/local/lib - /usr/lib) - -find_library(FFMPEG_avcodec_LIBRARY - avcodec - $ENV{FFMPEG_DIR} - $ENV{FFMPEG_DIR}/lib - $ENV{FFMPEG_DIR}/libavcodec - /usr/local/lib - /usr/lib) - -find_library(FFMPEG_avutil_LIBRARY - avutil - $ENV{FFMPEG_DIR} - $ENV{FFMPEG_DIR}/lib - $ENV{FFMPEG_DIR}/libavutil - /usr/local/lib - /usr/lib) - -if(NOT DISABLE_SWSCALE) - find_library(FFMPEG_swscale_LIBRARY - swscale - $ENV{FFMPEG_DIR} - $ENV{FFMPEG_DIR}/lib - $ENV{FFMPEG_DIR}/libswscale - /usr/local/lib - /usr/lib) -endif(NOT DISABLE_SWSCALE) - -find_library(FFMPEG_avdevice_LIBRARY - avdevice - $ENV{FFMPEG_DIR} - $ENV{FFMPEG_DIR}/lib - $ENV{FFMPEG_DIR}/libavdevice - /usr/local/lib - /usr/lib) - -find_library(_FFMPEG_z_LIBRARY_ - z - $ENV{FFMPEG_DIR} - $ENV{FFMPEG_DIR}/lib - /usr/local/lib - /usr/lib) - -if(FFMPEG_INCLUDE_DIR) - if(FFMPEG_avformat_LIBRARY) - if(FFMPEG_avcodec_LIBRARY) - if(FFMPEG_avutil_LIBRARY) - set(FFMPEG_FOUND "YES") - set(FFMPEG_LIBRARIES - ${FFMPEG_avformat_LIBRARY} - ${FFMPEG_avcodec_LIBRARY} - ${FFMPEG_avutil_LIBRARY}) - if(FFMPEG_swscale_LIBRARY) - set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} ${FFMPEG_swscale_LIBRARY}) - endif() - if(FFMPEG_avdevice_LIBRARY) - set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} ${FFMPEG_avdevice_LIBRARY}) - endif() - if(_FFMPEG_z_LIBRARY_) - set(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} ${_FFMPEG_z_LIBRARY_}) - endif() - endif() - endif() - endif() -endif() - -mark_as_advanced(FFMPEG_INCLUDE_DIR - FFMPEG_INCLUDE_DIR1 - FFMPEG_INCLUDE_DIR2 - FFMPEG_INCLUDE_DIR3 - FFMPEG_INCLUDE_DIR4 - FFMPEG_INCLUDE_DIR5 - FFMPEG_avformat_LIBRARY - FFMPEG_avcodec_LIBRARY - FFMPEG_avutil_LIBRARY - FFMPEG_swscale_LIBRARY - FFMPEG_avdevice_LIBRARY - _FFMPEG_z_LIBRARY_) - -# Set package properties if FeatureSummary was included -if(COMMAND set_package_properties) - set_package_properties( - FFMPEG - PROPERTIES - DESCRIPTION - "A complete, cross-platform solution to record, convert and stream audio and video" - ) - set_package_properties(FFMPEG PROPERTIES URL "http://ffmpeg.org/") -endif() diff --git a/CMake/Modules/FindMad.cmake b/CMake/Modules/FindMad.cmake deleted file mode 100644 index 8be04ce3d3..0000000000 --- a/CMake/Modules/FindMad.cmake +++ /dev/null @@ -1,11 +0,0 @@ -find_path(LIBMAD_INCLUDE_DIR mad.h) - -find_library(LIBMAD_LIBRARY mad) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(LIBMAD - DEFAULT_MSG - LIBMAD_LIBRARY - LIBMAD_INCLUDE_DIR) - -mark_as_advanced(LIBMAD_LIBRARY LIBMAD_INCLUDE_DIR) diff --git a/CMake/Modules/FindOgg.cmake b/CMake/Modules/FindOgg.cmake deleted file mode 100644 index 40d7408fa6..0000000000 --- a/CMake/Modules/FindOgg.cmake +++ /dev/null @@ -1,15 +0,0 @@ -# Borrowed from code.openhub.net - -# Base Io build system Written by Jeremy Tregunna -# -# Find libogg. - -find_path(OGG_INCLUDE_DIR ogg/ogg.h) - -set(OGG_NAMES ${OGG_NAMES} ogg libogg) -find_library(OGG_LIBRARY NAMES ${OGG_NAMES} PATH) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(OGG DEFAULT_MSG OGG_LIBRARY OGG_INCLUDE_DIR) - -mark_as_advanced(OGG_LIBRARY OGG_INCLUDE_DIR) diff --git a/CMake/Modules/FindPcre.cmake b/CMake/Modules/FindPcre.cmake deleted file mode 100644 index 16fc74eed9..0000000000 --- a/CMake/Modules/FindPcre.cmake +++ /dev/null @@ -1,17 +0,0 @@ -# Find pcre using standard tools. - -# The following will be set: - -# PCRE_INCLUDE_DIR PCRE_LIBRARY PCRE_FOUND - -find_path(PCRE_INCLUDE_DIR NAMES pcre.h) -find_library(PCRE_LIBRARY NAMES pcre) - -# Properly pass QUIETLY and REQUIRED. -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(PCRE - DEFAULT_MSG - PCRE_INCLUDE_DIR - PCRE_LIBRARY) - -mark_as_advanced(PCRE_INCLUDE_DIR PCRE_LIBRARY) diff --git a/CMake/Modules/FindVorbis.cmake b/CMake/Modules/FindVorbis.cmake deleted file mode 100644 index 1a73a26e61..0000000000 --- a/CMake/Modules/FindVorbis.cmake +++ /dev/null @@ -1,18 +0,0 @@ -# Borrowed from code.openhub.net - -# Base Io build system Written by Jeremy Tregunna -# -# Find libvorbis. - -find_path(VORBIS_INCLUDE_DIR vorbis/codec.h) - -set(VORBIS_NAMES ${VORBIS_NAMES} vorbis libvorbis) -find_library(VORBIS_LIBRARY NAMES ${VORBIS_NAMES} PATH) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(VORBIS - DEFAULT_MSG - VORBIS_LIBRARY - VORBIS_INCLUDE_DIR) - -mark_as_advanced(VORBIS_LIBRARY VORBIS_INCLUDE_DIR) diff --git a/CMake/Modules/FindVorbisFile.cmake b/CMake/Modules/FindVorbisFile.cmake deleted file mode 100644 index bb0a566011..0000000000 --- a/CMake/Modules/FindVorbisFile.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# Inspired by Jeremy Tregunna's cmake work -# -# Find libvorbisfile. - -find_path(VORBISFILE_INCLUDE_DIR vorbis/vorbisfile.h) - -set(VORBISFILE_NAMES ${VORBISFILE_NAMES} vorbisfile libvorbisfile) -find_library(VORBISFILE_LIBRARY NAMES ${VORBISFILE_NAMES} PATH) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(VORBISFILE - DEFAULT_MSG - VORBISFILE_LIBRARY - VORBISFILE_INCLUDE_DIR) - -mark_as_advanced(VORBISFILE_LIBRARY VORBISFILE_INCLUDE_DIR) diff --git a/StepmaniaCore.cmake b/StepmaniaCore.cmake index 51b8830a96..beb0a1c2ec 100644 --- a/StepmaniaCore.cmake +++ b/StepmaniaCore.cmake @@ -1,470 +1,401 @@ -# Include the macros and functions. - -include(${CMAKE_CURRENT_LIST_DIR}/CMake/CMakeMacros.cmake) - -# Make Xcode's 'Archive' build work -set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/extern") - -# Set up helper variables for future configuring. -set(SM_CMAKE_DIR "${CMAKE_CURRENT_LIST_DIR}/CMake") -set(SM_EXTERN_DIR "${CMAKE_CURRENT_LIST_DIR}/extern") -set(SM_INSTALLER_DIR "${CMAKE_CURRENT_LIST_DIR}/Installer") -set(SM_XCODE_DIR "${CMAKE_CURRENT_LIST_DIR}/Xcode") -set(SM_PROGRAM_DIR "${CMAKE_CURRENT_LIST_DIR}/Program") -set(SM_BUILD_DIR "${CMAKE_CURRENT_LIST_DIR}/Build") -set(SM_SRC_DIR "${CMAKE_CURRENT_LIST_DIR}/src") -set(SM_DOC_DIR "${CMAKE_CURRENT_LIST_DIR}/Docs") -set(SM_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}") - -# TODO: Reconsile the OS dependent naming scheme. -set(SM_EXE_NAME "ITGmania") - -# Some OS specific helpers. -if(CMAKE_SYSTEM_NAME MATCHES "Linux") - set(LINUX TRUE) -else() - set(LINUX FALSE) -endif() - -if(CMAKE_SYSTEM_NAME MATCHES "Darwin") - set(MACOSX TRUE) -else() - set(MACOSX FALSE) -endif() - -if(CMAKE_SYSTEM_NAME MATCHES "BSD") - set(BSD TRUE) -else() - set(BSD FALSE) -endif() - -# Allow for finding our libraries in a standard location. -list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}" - "${SM_CMAKE_DIR}/Modules/") - -include("${SM_CMAKE_DIR}/DefineOptions.cmake") - -include("${SM_CMAKE_DIR}/SMDefs.cmake") - -# Put the predefined targets in separate groups. -set_property(GLOBAL PROPERTY USE_FOLDERS ON) - -# Set up the linker flags for MSVC builds. -configure_msvc_runtime() - -# Checks the standard include directories for c-style headers. We may use C++ in -# this project, but the check works better with plain C headers. -include(CheckIncludeFiles) -check_include_files(alloca.h HAVE_ALLOCA_H) -check_include_files(assert.h HAVE_ASSERT_H) -check_include_files(dlfcn.h HAVE_DLFCN_H) -check_include_files(dirent.h HAVE_DIRENT_H) -check_include_files(errno.h HAVE_ERRNO_H) -check_include_files(fcntl.h HAVE_FCNTL_H) -check_include_files(float.h HAVE_FLOAT_H) -check_include_files(inttypes.h HAVE_INTTYPES_H) -check_include_files(limits.h HAVE_LIMITS_H) -check_include_files(math.h HAVE_MATH_H) -check_include_files(memory.h HAVE_MEMORY_H) -check_include_files(stdarg.h HAVE_STDARG_H) -check_include_files(stddef.h HAVE_STDDEF_H) -check_include_files(stdint.h HAVE_STDINT_H) -check_include_files(stdlib.h HAVE_STDLIB_H) -check_include_files(strings.h HAVE_STRINGS_H) -check_include_files(string.h HAVE_STRING_H) -check_include_files(unistd.h HAVE_UNISTD_H) -check_include_files(sys/param.h HAVE_SYS_PARAM_H) -check_include_files(sys/stat.h HAVE_SYS_STAT_H) -check_include_files(sys/types.h HAVE_SYS_TYPES_H) -check_include_files(sys/utsname.h HAVE_SYS_UTSNAME_H) -check_include_files(sys/wait.h HAVE_SYS_WAIT_H) - -check_include_files(endian.h HAVE_ENDIAN_H) -check_include_files(sys/endian.h HAVE_SYS_ENDIAN_H) -check_include_files(machine/endian.h HAVE_MACHINE_ENDIAN_H) - -if(HAVE_STDLIB_H AND HAVE_STDARG_H AND HAVE_STRING_H AND HAVE_FLOAT_H) - set(STDC_HEADERS 1) -endif() - -include(CheckFunctionExists) -include(CheckSymbolExists) -include(CheckCXXSymbolExists) - -# Mostly Windows functions. -check_function_exists(_mkdir HAVE__MKDIR) -check_cxx_symbol_exists(_snprintf cstdio HAVE__SNPRINTF) -check_cxx_symbol_exists(stricmp cstring HAVE_STRICMP) -check_cxx_symbol_exists(_stricmp cstring HAVE__STRICMP) - -# Mostly non-Windows functions. -check_function_exists(fcntl HAVE_FCNTL) -check_function_exists(fork HAVE_FORK) -check_function_exists(mkdir HAVE_MKDIR) -check_cxx_symbol_exists(snprintf cstdio HAVE_SNPRINTF) -check_cxx_symbol_exists(strcasecmp cstring HAVE_STRCASECMP) -check_function_exists(waitpid HAVE_WAITPID) - -# Mostly universal symbols. -check_cxx_symbol_exists(powf cmath HAVE_POWF) -check_cxx_symbol_exists(sqrtf cmath HAVE_SQRTF) -check_cxx_symbol_exists(sinf cmath HAVE_SINF) -check_cxx_symbol_exists(tanf cmath HAVE_TANF) -check_cxx_symbol_exists(cosf cmath HAVE_COSF) -check_cxx_symbol_exists(acosf cmath HAVE_ACOSF) -check_cxx_symbol_exists(truncf cmath HAVE_TRUNCF) -check_cxx_symbol_exists(roundf cmath HAVE_ROUNDF) -check_cxx_symbol_exists(lrintf cmath HAVE_LRINTF) -check_cxx_symbol_exists(strtof cstdlib HAVE_STRTOF) -check_symbol_exists(M_PI math.h HAVE_M_PI) -check_symbol_exists(size_t stddef.h HAVE_SIZE_T_STDDEF) -check_symbol_exists(size_t stdlib.h HAVE_SIZE_T_STDLIB) -check_symbol_exists(size_t stdio.h HAVE_SIZE_T_STDIO) -check_symbol_exists(posix_fadvise fcntl.h HAVE_POSIX_FADVISE) - -if(MINGW) - set(NEED_WINDOWS_LOADING_WINDOW TRUE) - check_symbol_exists(PBS_MARQUEE commctrl.h HAVE_PBS_MARQUEE) - check_symbol_exists(PBM_SETMARQUEE commctrl.h HAVE_PBM_SETMARQUEE) -endif() - -# Checks to make it easier to work with 32-bit/64-bit builds if required. -include(CheckTypeSize) -check_type_size(int16_t SIZEOF_INT16_T) -check_type_size(uint16_t SIZEOF_UINT16_T) -check_type_size(u_int16_t SIZEOF_U_INT16_T) -check_type_size(int32_t SIZEOF_INT32_T) -check_type_size(uint32_t SIZEOF_UINT32_T) -check_type_size(u_int32_t SIZEOF_U_INT32_T) -check_type_size(int64_t SIZEOF_INT64_T) -check_type_size(char SIZEOF_CHAR) -check_type_size("unsigned char" SIZEOF_UNSIGNED_CHAR) -check_type_size(short SIZEOF_SHORT) -check_type_size("unsigned short" SIZEOF_UNSIGNED_SHORT) -check_type_size(int SIZEOF_INT) -check_type_size("unsigned int" SIZEOF_UNSIGNED_INT) -check_type_size(long SIZEOF_LONG) -check_type_size("unsigned long" SIZEOF_UNSIGNED_LONG) -check_type_size("long long" SIZEOF_LONG_LONG) -check_type_size(float SIZEOF_FLOAT) -check_type_size(double SIZEOF_DOUBLE) -check_type_size(intptr_t SIZEOF_INTPTR_T) -check_type_size(pid_t SIZEOF_PID_T) -check_type_size(size_t SIZEOF_SIZE_T) -check_type_size(ssize_t SIZEOF_SSIZE_T) - -if(WIN32) - if(SIZEOF_INTPTR_T EQUAL 8) - set(SM_WIN32_ARCH "x64") - else() - set(SM_WIN32_ARCH "x86") - endif() -endif() - -include(TestBigEndian) -test_big_endian(BIGENDIAN) -if(${BIGENDIAN}) - set(ENDIAN_BIG 1) -else() - set(ENDIAN_LITTLE 1) -endif() - -check_compile_features("${SM_CMAKE_DIR}/TestCode" - "${SM_CMAKE_DIR}/TestCode/test_external.c" - "Checking for external name shortening requirements" - "not needed" - "needed" - SM_BUILT_LONG_NAME - TRUE) - -if(NOT SM_BUILT_LONG_NAME) - set(NEED_SHORT_EXTERNAL_NAMES 1) -endif() - -check_compile_features("${SM_CMAKE_DIR}/TestCode" - "${SM_CMAKE_DIR}/TestCode/test_broken.c" - "Checking if incomplete types are broken." - "not broken" - "broken" - SM_BUILT_INCOMPLETE_TYPE - FALSE) - -if(SM_BUILT_INCOMPLETE_TYPE) - set(INCOMPLETE_TYPES_BROKEN 1) -endif() - -# Dependencies go here. -include(ExternalProject) - -if(WITH_WAV) - # TODO: Identify which headers to check for ensuring this will always work. - set(HAS_WAV TRUE) -endif() - -if(WITH_MP3) - if(WIN32 OR MACOSX) - set(HAS_MP3 TRUE) - else() - find_package(Mad) - if(NOT LIBMAD_FOUND) - message( - FATAL_ERROR - "Libmad library not found. If you wish to skip mp3 support, set WITH_MP3 to OFF when configuring." - ) - else() - set(HAS_MP3 TRUE) - endif() - endif() -endif(WITH_MP3) - -if(WITH_OGG) - if(WIN32 OR MACOSX) - set(HAS_OGG TRUE) - else() - find_package(Ogg) - find_package(Vorbis) - find_package(VorbisFile) - - if(NOT (OGG_FOUND AND VORBIS_FOUND AND VORBISFILE_FOUND)) - message( - FATAL_ERROR - "Not all vorbis libraries were found. If you wish to skip vorbis support, set WITH_OGG to OFF when configuring." - ) - else() - set(HAS_OGG TRUE) - endif() - endif() -endif() - -find_package(nasm) -find_package(yasm) - -find_package(BZip2) -if(NOT ${BZIP2_FOUND} AND NOT MSVC) - message(FATAL_ERROR "Bzip2 support required.") -endif() - -find_package(Iconv) - -find_package(Threads) -if(${Threads_FOUND}) - set(HAS_PTHREAD TRUE) - list(APPEND CMAKE_REQUIRED_LIBRARIES pthread) - check_symbol_exists(pthread_mutex_timedlock pthread.h - HAVE_PTHREAD_MUTEX_TIMEDLOCK) - check_symbol_exists(pthread_cond_timedwait pthread.h - HAVE_PTHREAD_COND_TIMEDWAIT) -else() - set(HAS_PTHREAD FALSE) -endif() - -if(WIN32) - if(MINGW AND WITH_FFMPEG AND NOT WITH_SYSTEM_FFMPEG) - include("${SM_CMAKE_DIR}/SetupFfmpeg.cmake") - set(HAS_FFMPEG TRUE) - else() - # FFMPEG...it can be evil. - find_library(LIB_SWSCALE - NAMES "swscale" - PATHS "${SM_EXTERN_DIR}/ffmpeg-w32/${SM_WIN32_ARCH}" - NO_DEFAULT_PATH) - get_filename_component(LIB_SWSCALE ${LIB_SWSCALE} NAME) - - find_library(LIB_AVCODEC - NAMES "avcodec" - PATHS "${SM_EXTERN_DIR}/ffmpeg-w32/${SM_WIN32_ARCH}" - NO_DEFAULT_PATH) - get_filename_component(LIB_AVCODEC ${LIB_AVCODEC} NAME) - - find_library(LIB_AVFORMAT - NAMES "avformat" - PATHS "${SM_EXTERN_DIR}/ffmpeg-w32/${SM_WIN32_ARCH}" - NO_DEFAULT_PATH) - get_filename_component(LIB_AVFORMAT ${LIB_AVFORMAT} NAME) - - find_library(LIB_AVUTIL - NAMES "avutil" - PATHS "${SM_EXTERN_DIR}/ffmpeg-w32/${SM_WIN32_ARCH}" - NO_DEFAULT_PATH) - get_filename_component(LIB_AVUTIL ${LIB_AVUTIL} NAME) - - list(APPEND SM_FFMPEG_WIN32_DLLS - "avcodec-59.dll" - "avformat-59.dll" - "avutil-57.dll" - "swscale-6.dll" - ) - foreach(dll ${SM_FFMPEG_WIN32_DLLS}) - file(REMOVE "${SM_PROGRAM_DIR}/${dll}") - file(COPY "${SM_EXTERN_DIR}/ffmpeg-w32/${SM_WIN32_ARCH}/${dll}" DESTINATION "${SM_PROGRAM_DIR}/") - endforeach() - endif() -elseif(MACOSX) - if(WITH_FFMPEG AND NOT WITH_SYSTEM_FFMPEG) - include("${SM_CMAKE_DIR}/SetupFfmpeg.cmake") - set(HAS_FFMPEG TRUE) - endif() - - set(WITH_CRASH_HANDLER TRUE) - set(CMAKE_OSX_ARCHITECTURES arm64;x86_64) - set(CMAKE_OSX_DEPLOYMENT_TARGET "11") - - find_library(MAC_FRAME_ACCELERATE Accelerate ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_APPKIT AppKit ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_AUDIOTOOLBOX AudioToolbox - ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_AUDIOUNIT AudioUnit ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_CARBON Carbon ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_COCOA Cocoa ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_COREAUDIO CoreAudio ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_COREFOUNDATION CoreFoundation - ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_CORESERVICES CoreServices - ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_FOUNDATION Foundation ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_IOKIT IOKit ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_OPENGL OpenGL ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_SYSTEM System ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - - mark_as_advanced(MAC_FRAME_ACCELERATE - MAC_FRAME_APPKIT - MAC_FRAME_AUDIOTOOLBOX - MAC_FRAME_AUDIOUNIT - MAC_FRAME_CARBON - MAC_FRAME_COCOA - MAC_FRAME_COREAUDIO - MAC_FRAME_COREFOUNDATION - MAC_FRAME_CORESERVICES - MAC_FRAME_FOUNDATION - MAC_FRAME_IOKIT - MAC_FRAME_OPENGL - MAC_FRAME_SYSTEM) +# Include the macros and functions. - if(HAS_FFMPEG) - find_library(MAC_FRAME_COREMEDIA CoreMedia ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_COREVIDEO CoreVideo ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) - find_library(MAC_FRAME_VIDEOTOOLBOX VideoToolbox ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) +include(${CMAKE_CURRENT_LIST_DIR}/CMake/CMakeMacros.cmake) + +# Make Xcode's 'Archive' build work +set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/extern") + +# Set up helper variables for future configuring. +set(SM_CMAKE_DIR "${CMAKE_CURRENT_LIST_DIR}/CMake") +set(SM_EXTERN_DIR "${CMAKE_CURRENT_LIST_DIR}/extern") +set(SM_INSTALLER_DIR "${CMAKE_CURRENT_LIST_DIR}/Installer") +set(SM_XCODE_DIR "${CMAKE_CURRENT_LIST_DIR}/Xcode") +set(SM_PROGRAM_DIR "${CMAKE_CURRENT_LIST_DIR}/Program") +set(SM_BUILD_DIR "${CMAKE_CURRENT_LIST_DIR}/Build") +set(SM_SRC_DIR "${CMAKE_CURRENT_LIST_DIR}/src") +set(SM_DOC_DIR "${CMAKE_CURRENT_LIST_DIR}/Docs") +set(SM_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}") + +# TODO: Reconsile the OS dependent naming scheme. +set(SM_EXE_NAME "ITGmania") + +# Some OS specific helpers. +if(CMAKE_SYSTEM_NAME MATCHES "Linux") + set(LINUX TRUE) +else() + set(LINUX FALSE) +endif() + +if(CMAKE_SYSTEM_NAME MATCHES "Darwin") + set(MACOSX TRUE) +else() + set(MACOSX FALSE) +endif() + +if(CMAKE_SYSTEM_NAME MATCHES "BSD") + set(BSD TRUE) +else() + set(BSD FALSE) +endif() + +# Allow for finding our libraries in a standard location. +list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}" + "${SM_CMAKE_DIR}/Modules/") + +include("${SM_CMAKE_DIR}/DefineOptions.cmake") + +include("${SM_CMAKE_DIR}/SMDefs.cmake") + +# Put the predefined targets in separate groups. +set_property(GLOBAL PROPERTY USE_FOLDERS ON) + +# Set up the linker flags for MSVC builds. +configure_msvc_runtime() + +# Checks the standard include directories for c-style headers. We may use C++ in +# this project, but the check works better with plain C headers. +include(CheckIncludeFiles) +check_include_files(alloca.h HAVE_ALLOCA_H) +check_include_files(assert.h HAVE_ASSERT_H) +check_include_files(dlfcn.h HAVE_DLFCN_H) +check_include_files(dirent.h HAVE_DIRENT_H) +check_include_files(errno.h HAVE_ERRNO_H) +check_include_files(fcntl.h HAVE_FCNTL_H) +check_include_files(float.h HAVE_FLOAT_H) +check_include_files(inttypes.h HAVE_INTTYPES_H) +check_include_files(limits.h HAVE_LIMITS_H) +check_include_files(math.h HAVE_MATH_H) +check_include_files(memory.h HAVE_MEMORY_H) +check_include_files(stdarg.h HAVE_STDARG_H) +check_include_files(stddef.h HAVE_STDDEF_H) +check_include_files(stdint.h HAVE_STDINT_H) +check_include_files(stdlib.h HAVE_STDLIB_H) +check_include_files(strings.h HAVE_STRINGS_H) +check_include_files(string.h HAVE_STRING_H) +check_include_files(unistd.h HAVE_UNISTD_H) +check_include_files(sys/param.h HAVE_SYS_PARAM_H) +check_include_files(sys/stat.h HAVE_SYS_STAT_H) +check_include_files(sys/types.h HAVE_SYS_TYPES_H) +check_include_files(sys/utsname.h HAVE_SYS_UTSNAME_H) +check_include_files(sys/wait.h HAVE_SYS_WAIT_H) + +check_include_files(endian.h HAVE_ENDIAN_H) +check_include_files(sys/endian.h HAVE_SYS_ENDIAN_H) +check_include_files(machine/endian.h HAVE_MACHINE_ENDIAN_H) + +if(HAVE_STDLIB_H AND HAVE_STDARG_H AND HAVE_STRING_H AND HAVE_FLOAT_H) + set(STDC_HEADERS 1) +endif() + +include(CheckFunctionExists) +include(CheckSymbolExists) +include(CheckCXXSymbolExists) + +# Mostly Windows functions. +check_function_exists(_mkdir HAVE__MKDIR) +check_cxx_symbol_exists(_snprintf cstdio HAVE__SNPRINTF) +check_cxx_symbol_exists(stricmp cstring HAVE_STRICMP) +check_cxx_symbol_exists(_stricmp cstring HAVE__STRICMP) + +# Mostly non-Windows functions. +check_function_exists(fcntl HAVE_FCNTL) +check_function_exists(fork HAVE_FORK) +check_function_exists(mkdir HAVE_MKDIR) +check_cxx_symbol_exists(snprintf cstdio HAVE_SNPRINTF) +check_cxx_symbol_exists(strcasecmp cstring HAVE_STRCASECMP) +check_function_exists(waitpid HAVE_WAITPID) + +# Mostly universal symbols. +check_cxx_symbol_exists(powf cmath HAVE_POWF) +check_cxx_symbol_exists(sqrtf cmath HAVE_SQRTF) +check_cxx_symbol_exists(sinf cmath HAVE_SINF) +check_cxx_symbol_exists(tanf cmath HAVE_TANF) +check_cxx_symbol_exists(cosf cmath HAVE_COSF) +check_cxx_symbol_exists(acosf cmath HAVE_ACOSF) +check_cxx_symbol_exists(truncf cmath HAVE_TRUNCF) +check_cxx_symbol_exists(roundf cmath HAVE_ROUNDF) +check_cxx_symbol_exists(lrintf cmath HAVE_LRINTF) +check_cxx_symbol_exists(strtof cstdlib HAVE_STRTOF) +check_symbol_exists(M_PI math.h HAVE_M_PI) +check_symbol_exists(size_t stddef.h HAVE_SIZE_T_STDDEF) +check_symbol_exists(size_t stdlib.h HAVE_SIZE_T_STDLIB) +check_symbol_exists(size_t stdio.h HAVE_SIZE_T_STDIO) +check_symbol_exists(posix_fadvise fcntl.h HAVE_POSIX_FADVISE) + +if(MINGW) + set(NEED_WINDOWS_LOADING_WINDOW TRUE) + check_symbol_exists(PBS_MARQUEE commctrl.h HAVE_PBS_MARQUEE) + check_symbol_exists(PBM_SETMARQUEE commctrl.h HAVE_PBM_SETMARQUEE) +endif() + +# Checks to make it easier to work with 32-bit/64-bit builds if required. +include(CheckTypeSize) +check_type_size(int16_t SIZEOF_INT16_T) +check_type_size(uint16_t SIZEOF_UINT16_T) +check_type_size(u_int16_t SIZEOF_U_INT16_T) +check_type_size(int32_t SIZEOF_INT32_T) +check_type_size(uint32_t SIZEOF_UINT32_T) +check_type_size(u_int32_t SIZEOF_U_INT32_T) +check_type_size(int64_t SIZEOF_INT64_T) +check_type_size(char SIZEOF_CHAR) +check_type_size("unsigned char" SIZEOF_UNSIGNED_CHAR) +check_type_size(short SIZEOF_SHORT) +check_type_size("unsigned short" SIZEOF_UNSIGNED_SHORT) +check_type_size(int SIZEOF_INT) +check_type_size("unsigned int" SIZEOF_UNSIGNED_INT) +check_type_size(long SIZEOF_LONG) +check_type_size("unsigned long" SIZEOF_UNSIGNED_LONG) +check_type_size("long long" SIZEOF_LONG_LONG) +check_type_size(float SIZEOF_FLOAT) +check_type_size(double SIZEOF_DOUBLE) +check_type_size(intptr_t SIZEOF_INTPTR_T) +check_type_size(pid_t SIZEOF_PID_T) +check_type_size(size_t SIZEOF_SIZE_T) +check_type_size(ssize_t SIZEOF_SSIZE_T) + +if(WIN32) + if(SIZEOF_INTPTR_T EQUAL 8) + set(SM_WIN32_ARCH "x64") + else() + set(SM_WIN32_ARCH "x86") endif() -elseif(LINUX) - if(WITH_GTK3) - find_package("GTK3" 2.0) - if(${GTK3_FOUND}) - set(HAS_GTK3 TRUE) - else() - set(HAS_GTK3 FALSE) - message( - "GTK3 was not found on your system. There will be no loading window.") - endif() - else() - set(HAS_GTK3 FALSE) - endif() - - set(HAS_X11 FALSE) - if(WITH_X11) - find_package(X11 REQUIRED) - set(HAS_X11 TRUE) - endif() - - find_package("ZLIB" REQUIRED) - find_package("JPEG" REQUIRED) - - find_package(Dl) - - set(HAS_XRANDR FALSE) - if(WITH_XRANDR) - find_package(Xrandr REQUIRED) - set(HAS_XRANDR TRUE) - endif() - - set(HAS_LIBXTST FALSE) - if(WITH_LIBXTST) - find_package(Xtst REQUIRED) - set(HAS_LIBXTST TRUE) - endif() - - set(HAS_XINERAMA FALSE) - if(WITH_XINERAMA) - find_package(Xinerama REQUIRED) - set(HAS_XINERAMA TRUE) - endif() - - set(HAS_PULSE FALSE) - if(WITH_PULSEAUDIO) - find_package(PulseAudio REQUIRED) - set(HAS_PULSE TRUE) - endif() - - set(HAS_ALSA FALSE) - if(WITH_ALSA) - find_package(ALSA REQUIRED) - set(HAS_ALSA TRUE) - endif() - - set(HAS_JACK FALSE) - if(WITH_JACK) - find_package(JACK REQUIRED) - set(HAS_JACK TRUE) - endif() - - set(HAS_OSS FALSE) - if(WITH_OSS) - find_package(OSS) - set(HAS_OSS TRUE) - endif() - - if( NOT (HAS_OSS OR HAS_JACK OR HAS_ALSA OR HAS_PULSE) ) - message( - FATAL_ERROR - "No sound libraries found (or selected). You will require at least one." - ) - else() - message( - STATUS - "-- At least one sound library was found. Do not worry if any were not found at this stage." - ) - endif() - - if(WITH_FFMPEG AND NOT YASM_FOUND AND NOT NASM_FOUND) - message( - "Neither NASM nor YASM were found. Please install at least one of them if you wish for ffmpeg support." - ) - set(WITH_FFMPEG OFF) - endif() - - if(WITH_FFMPEG) - if(WITH_SYSTEM_FFMPEG) - find_package("FFMPEG") - if(NOT FFMPEG_FOUND) - message( - FATAL_ERROR - "System ffmpeg not found! Either install the libraries or remove the argument, then try again." - ) - else() - - message( - STATUS - "-- Warning! Your version of ffmpeg may be too high! If you want to use the system ffmpeg, clear your cmake cache and do not include the system ffmpeg argument." - ) - set(HAS_FFMPEG TRUE) - endif() - else() - find_package("Va") - include("${SM_CMAKE_DIR}/SetupFfmpeg.cmake") - set(HAS_FFMPEG TRUE) - endif() - else() - set(HAS_FFMPEG FALSE) - endif() - - set(OpenGL_GL_PREFERENCE GLVND) - find_package(OpenGL REQUIRED) - find_package(GLEW REQUIRED) -endif(WIN32) # LINUX, APPLE - -configure_file("${SM_SRC_DIR}/config.in.hpp" - "${SM_SRC_DIR}/generated/config.hpp") -configure_file("${SM_SRC_DIR}/verstub.in.cpp" - "${SM_SRC_DIR}/generated/verstub.cpp") - -# Define installer based items for cpack. -include("${CMAKE_CURRENT_LIST_DIR}/CMake/CPackSetup.cmake") +endif() + +include(TestBigEndian) +test_big_endian(BIGENDIAN) +if(${BIGENDIAN}) + set(ENDIAN_BIG 1) +else() + set(ENDIAN_LITTLE 1) +endif() + +check_compile_features("${SM_CMAKE_DIR}/TestCode" + "${SM_CMAKE_DIR}/TestCode/test_external.c" + "Checking for external name shortening requirements" + "not needed" + "needed" + SM_BUILT_LONG_NAME + TRUE) + +if(NOT SM_BUILT_LONG_NAME) + set(NEED_SHORT_EXTERNAL_NAMES 1) +endif() + +check_compile_features("${SM_CMAKE_DIR}/TestCode" + "${SM_CMAKE_DIR}/TestCode/test_broken.c" + "Checking if incomplete types are broken." + "not broken" + "broken" + SM_BUILT_INCOMPLETE_TYPE + FALSE) + +if(SM_BUILT_INCOMPLETE_TYPE) + set(INCOMPLETE_TYPES_BROKEN 1) +endif() + +# Dependencies go here. +include(ExternalProject) + +find_package(nasm) +find_package(yasm) + +find_package(BZip2) +if(NOT ${BZIP2_FOUND} AND NOT MSVC) + message(FATAL_ERROR "Bzip2 support required.") +endif() + +find_package(Iconv) + +find_package(Threads) +if(${Threads_FOUND}) + set(HAS_PTHREAD TRUE) + list(APPEND CMAKE_REQUIRED_LIBRARIES pthread) + check_symbol_exists(pthread_mutex_timedlock pthread.h + HAVE_PTHREAD_MUTEX_TIMEDLOCK) + check_symbol_exists(pthread_cond_timedwait pthread.h + HAVE_PTHREAD_COND_TIMEDWAIT) +else() + set(HAS_PTHREAD FALSE) +endif() + +if(WIN32) + if(MINGW) + include("${SM_CMAKE_DIR}/SetupFfmpeg.cmake") + else() + # FFMPEG...it can be evil. + find_library(LIB_SWSCALE + NAMES "swscale" + PATHS "${SM_EXTERN_DIR}/ffmpeg-w32/${SM_WIN32_ARCH}" + NO_DEFAULT_PATH) + get_filename_component(LIB_SWSCALE ${LIB_SWSCALE} NAME) + + find_library(LIB_AVCODEC + NAMES "avcodec" + PATHS "${SM_EXTERN_DIR}/ffmpeg-w32/${SM_WIN32_ARCH}" + NO_DEFAULT_PATH) + get_filename_component(LIB_AVCODEC ${LIB_AVCODEC} NAME) + + find_library(LIB_AVFORMAT + NAMES "avformat" + PATHS "${SM_EXTERN_DIR}/ffmpeg-w32/${SM_WIN32_ARCH}" + NO_DEFAULT_PATH) + get_filename_component(LIB_AVFORMAT ${LIB_AVFORMAT} NAME) + + find_library(LIB_AVUTIL + NAMES "avutil" + PATHS "${SM_EXTERN_DIR}/ffmpeg-w32/${SM_WIN32_ARCH}" + NO_DEFAULT_PATH) + get_filename_component(LIB_AVUTIL ${LIB_AVUTIL} NAME) + + list(APPEND SM_FFMPEG_WIN32_DLLS + "avcodec-59.dll" + "avformat-59.dll" + "avutil-57.dll" + "swscale-6.dll" + ) + foreach(dll ${SM_FFMPEG_WIN32_DLLS}) + file(REMOVE "${SM_PROGRAM_DIR}/${dll}") + file(COPY "${SM_EXTERN_DIR}/ffmpeg-w32/${SM_WIN32_ARCH}/${dll}" DESTINATION "${SM_PROGRAM_DIR}/") + endforeach() + endif() +elseif(MACOSX) + include("${SM_CMAKE_DIR}/SetupFfmpeg.cmake") + + set(WITH_CRASH_HANDLER TRUE) + set(CMAKE_OSX_ARCHITECTURES arm64;x86_64) + set(CMAKE_OSX_DEPLOYMENT_TARGET "11") + + find_library(MAC_FRAME_ACCELERATE Accelerate ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_APPKIT AppKit ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_AUDIOTOOLBOX AudioToolbox + ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_AUDIOUNIT AudioUnit ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_CARBON Carbon ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_COCOA Cocoa ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_COREAUDIO CoreAudio ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_COREFOUNDATION CoreFoundation + ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_CORESERVICES CoreServices + ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_FOUNDATION Foundation ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_IOKIT IOKit ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_OPENGL OpenGL ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_SYSTEM System ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + + mark_as_advanced(MAC_FRAME_ACCELERATE + MAC_FRAME_APPKIT + MAC_FRAME_AUDIOTOOLBOX + MAC_FRAME_AUDIOUNIT + MAC_FRAME_CARBON + MAC_FRAME_COCOA + MAC_FRAME_COREAUDIO + MAC_FRAME_COREFOUNDATION + MAC_FRAME_CORESERVICES + MAC_FRAME_FOUNDATION + MAC_FRAME_IOKIT + MAC_FRAME_OPENGL + MAC_FRAME_SYSTEM) + + find_library(MAC_FRAME_COREMEDIA CoreMedia ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_COREVIDEO CoreVideo ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) + find_library(MAC_FRAME_VIDEOTOOLBOX VideoToolbox ${CMAKE_SYSTEM_FRAMEWORK_PATH} REQUIRED) +elseif(LINUX) + if(WITH_GTK3) + find_package("GTK3" 2.0) + if(${GTK3_FOUND}) + set(HAS_GTK3 TRUE) + else() + set(HAS_GTK3 FALSE) + message( + "GTK3 was not found on your system. There will be no loading window.") + endif() + else() + set(HAS_GTK3 FALSE) + endif() + + set(HAS_X11 FALSE) + if(WITH_X11) + find_package(X11 REQUIRED) + set(HAS_X11 TRUE) + endif() + + find_package("ZLIB" REQUIRED) + find_package("JPEG" REQUIRED) + + find_package(Dl) + + set(HAS_XRANDR FALSE) + if(WITH_XRANDR) + find_package(Xrandr REQUIRED) + set(HAS_XRANDR TRUE) + endif() + + set(HAS_LIBXTST FALSE) + if(WITH_LIBXTST) + find_package(Xtst REQUIRED) + set(HAS_LIBXTST TRUE) + endif() + + set(HAS_XINERAMA FALSE) + if(WITH_XINERAMA) + find_package(Xinerama REQUIRED) + set(HAS_XINERAMA TRUE) + endif() + + set(HAS_PULSE FALSE) + if(WITH_PULSEAUDIO) + find_package(PulseAudio REQUIRED) + set(HAS_PULSE TRUE) + endif() + + set(HAS_ALSA FALSE) + if(WITH_ALSA) + find_package(ALSA REQUIRED) + set(HAS_ALSA TRUE) + endif() + + set(HAS_JACK FALSE) + if(WITH_JACK) + find_package(JACK REQUIRED) + set(HAS_JACK TRUE) + endif() + + set(HAS_OSS FALSE) + if(WITH_OSS) + find_package(OSS) + set(HAS_OSS TRUE) + endif() + + if( NOT (HAS_OSS OR HAS_JACK OR HAS_ALSA OR HAS_PULSE) ) + message( + FATAL_ERROR + "No sound libraries found (or selected). You will require at least one." + ) + else() + message( + STATUS + "-- At least one sound library was found. Do not worry if any were not found at this stage." + ) + endif() + + if(NOT YASM_FOUND AND NOT NASM_FOUND) + message(FATAL_ERROR + "Neither NASM nor YASM were found. Please install at least one of them if you wish for ffmpeg support." + ) + endif() + + find_package("Va") + include("${SM_CMAKE_DIR}/SetupFfmpeg.cmake") + + set(OpenGL_GL_PREFERENCE GLVND) + find_package(OpenGL REQUIRED) + find_package(GLEW REQUIRED) +endif(WIN32) # LINUX, APPLE + +configure_file("${SM_SRC_DIR}/config.in.hpp" + "${SM_SRC_DIR}/generated/config.hpp") +configure_file("${SM_SRC_DIR}/verstub.in.cpp" + "${SM_SRC_DIR}/generated/verstub.cpp") + +# Define installer based items for cpack. +include("${CMAKE_CURRENT_LIST_DIR}/CMake/CPackSetup.cmake") diff --git a/extern/CMakeLists.txt b/extern/CMakeLists.txt index e22d288d83..6313919bd4 100644 --- a/extern/CMakeLists.txt +++ b/extern/CMakeLists.txt @@ -4,17 +4,9 @@ include(CMakeProject-json.cmake) include(CMakeProject-mad.cmake) include(CMakeProject-zlib.cmake) include(CMakeProject-jpeg.cmake) -if(WITH_OGG) - if(WITH_SYSTEM_OGG) - find_package(Ogg REQUIRED) - find_package(Vorbis REQUIRED) - find_package(VorbisFile REQUIRED) - else() - include(CMakeProject-ogg.cmake) - include(CMakeProject-vorbis.cmake) - include(CMakeProject-vorbisfile.cmake) - endif() -endif() +include(CMakeProject-ogg.cmake) +include(CMakeProject-vorbis.cmake) +include(CMakeProject-vorbisfile.cmake) include(CMakeProject-pcre.cmake) include(CMakeProject-tomcrypt.cmake) include(CMakeProject-tommath.cmake) diff --git a/extern/CMakeProject-glew.cmake b/extern/CMakeProject-glew.cmake index ed13e0380b..3786f64ec2 100644 --- a/extern/CMakeProject-glew.cmake +++ b/extern/CMakeProject-glew.cmake @@ -1,28 +1,20 @@ -if(WITH_SYSTEM_GLEW) - find_package(GLEW REQUIRED) - set(GLEW_INCLUDE_DIRS ${GLEW_INCLUDE_DIRS} PARENT_SCOPE) - set(GLEW_LIBRARIES ${GLEW_LIBRARIES} PARENT_SCOPE) - set(GLEW_LIBRARY_RELEASE ${GLEW_LIBRARY_RELEASE} PARENT_SCOPE) -else() +set(GLEW_SRC "glew/src/glew.c") - set(GLEW_SRC "glew/src/glew.c") +set(GLEW_HPP "glew/include/GL/eglew.h" + "glew/include/GL/glew.h" + "glew/include/GL/glxew.h" + "glew/include/GL/wglew.h") - set(GLEW_HPP "glew/include/GL/eglew.h" - "glew/include/GL/glew.h" - "glew/include/GL/glxew.h" - "glew/include/GL/wglew.h") +source_group("" FILES ${GLEW_SRC} ${GLEW_HPP}) - source_group("" FILES ${GLEW_SRC} ${GLEW_HPP}) +add_library("glew" STATIC ${GLEW_SRC} ${GLEW_HPP}) - add_library("glew" STATIC ${GLEW_SRC} ${GLEW_HPP}) +set_property(TARGET "glew" PROPERTY FOLDER "External Libraries") - set_property(TARGET "glew" PROPERTY FOLDER "External Libraries") +target_compile_definitions("glew" PRIVATE GLEW_STATIC) - target_compile_definitions("glew" PRIVATE GLEW_STATIC) +if(MSVC) + target_compile_definitions("glew" PRIVATE _MBCS) +endif(MSVC) - if(MSVC) - target_compile_definitions("glew" PRIVATE _MBCS) - endif(MSVC) - - target_include_directories("glew" PUBLIC "glew/include") -endif() +target_include_directories("glew" PUBLIC "glew/include") diff --git a/extern/CMakeProject-jpeg.cmake b/extern/CMakeProject-jpeg.cmake index de1c394f51..d12970f3f8 100644 --- a/extern/CMakeProject-jpeg.cmake +++ b/extern/CMakeProject-jpeg.cmake @@ -1,97 +1,92 @@ -if(WITH_SYSTEM_JPEG) - find_package(JPEG REQUIRED) - set(JPEG_LIBRARIES ${JPEG_LIBRARIES} PARENT_SCOPE) -else() - configure_file("config.jpeg.in.h" "libjpeg/jconfig.h") +configure_file("config.jpeg.in.h" "libjpeg/jconfig.h") - set(JPEG_SRC "libjpeg/cjpegalt.c" - "libjpeg/djpegalt.c" - "libjpeg/jaricom.c" - "libjpeg/jcapimin.c" - "libjpeg/jcapistd.c" - "libjpeg/jcarith.c" - "libjpeg/jccoefct.c" - "libjpeg/jccolor.c" - "libjpeg/jcdctmgr.c" - "libjpeg/jchuff.c" - "libjpeg/jcinit.c" - "libjpeg/jcmainct.c" - "libjpeg/jcmarker.c" - "libjpeg/jcmaster.c" - "libjpeg/jcomapi.c" - "libjpeg/jcparam.c" - "libjpeg/jcprepct.c" - "libjpeg/jcsample.c" - "libjpeg/jctrans.c" - "libjpeg/jdapimin.c" - "libjpeg/jdapistd.c" - "libjpeg/jdarith.c" - "libjpeg/jdatadst.c" - "libjpeg/jdcoefct.c" - "libjpeg/jdcolor.c" - "libjpeg/jddctmgr.c" - "libjpeg/jdhuff.c" - "libjpeg/jdinput.c" - "libjpeg/jdmainct.c" - "libjpeg/jdmarker.c" - "libjpeg/jdmaster.c" - "libjpeg/jdmerge.c" - "libjpeg/jdpostct.c" - "libjpeg/jdsample.c" - "libjpeg/jdtrans.c" - "libjpeg/jerror.c" - "libjpeg/jfdctflt.c" - "libjpeg/jfdctfst.c" - "libjpeg/jfdctint.c" - "libjpeg/jidctflt.c" - "libjpeg/jidctfst.c" - "libjpeg/jidctint.c" - "libjpeg/jmemmgr.c" - "libjpeg/jmemnobs.c" - "libjpeg/jquant1.c" - "libjpeg/jquant2.c" - "libjpeg/jutils.c" - "libjpeg/rdbmp.c" - "libjpeg/rdcolmap.c" - "libjpeg/rdgif.c" - "libjpeg/rdjpgcom.c" - "libjpeg/rdppm.c" - "libjpeg/rdrle.c" - "libjpeg/rdswitch.c" - "libjpeg/rdtarga.c" - "libjpeg/transupp.c" - "libjpeg/wrbmp.c" - "libjpeg/wrgif.c" - "libjpeg/wrjpgcom.c" - "libjpeg/wrppm.c" - "libjpeg/wrrle.c" - "libjpeg/wrtarga.c") +set(JPEG_SRC "libjpeg/cjpegalt.c" + "libjpeg/djpegalt.c" + "libjpeg/jaricom.c" + "libjpeg/jcapimin.c" + "libjpeg/jcapistd.c" + "libjpeg/jcarith.c" + "libjpeg/jccoefct.c" + "libjpeg/jccolor.c" + "libjpeg/jcdctmgr.c" + "libjpeg/jchuff.c" + "libjpeg/jcinit.c" + "libjpeg/jcmainct.c" + "libjpeg/jcmarker.c" + "libjpeg/jcmaster.c" + "libjpeg/jcomapi.c" + "libjpeg/jcparam.c" + "libjpeg/jcprepct.c" + "libjpeg/jcsample.c" + "libjpeg/jctrans.c" + "libjpeg/jdapimin.c" + "libjpeg/jdapistd.c" + "libjpeg/jdarith.c" + "libjpeg/jdatadst.c" + "libjpeg/jdcoefct.c" + "libjpeg/jdcolor.c" + "libjpeg/jddctmgr.c" + "libjpeg/jdhuff.c" + "libjpeg/jdinput.c" + "libjpeg/jdmainct.c" + "libjpeg/jdmarker.c" + "libjpeg/jdmaster.c" + "libjpeg/jdmerge.c" + "libjpeg/jdpostct.c" + "libjpeg/jdsample.c" + "libjpeg/jdtrans.c" + "libjpeg/jerror.c" + "libjpeg/jfdctflt.c" + "libjpeg/jfdctfst.c" + "libjpeg/jfdctint.c" + "libjpeg/jidctflt.c" + "libjpeg/jidctfst.c" + "libjpeg/jidctint.c" + "libjpeg/jmemmgr.c" + "libjpeg/jmemnobs.c" + "libjpeg/jquant1.c" + "libjpeg/jquant2.c" + "libjpeg/jutils.c" + "libjpeg/rdbmp.c" + "libjpeg/rdcolmap.c" + "libjpeg/rdgif.c" + "libjpeg/rdjpgcom.c" + "libjpeg/rdppm.c" + "libjpeg/rdrle.c" + "libjpeg/rdswitch.c" + "libjpeg/rdtarga.c" + "libjpeg/transupp.c" + "libjpeg/wrbmp.c" + "libjpeg/wrgif.c" + "libjpeg/wrjpgcom.c" + "libjpeg/wrppm.c" + "libjpeg/wrrle.c" + "libjpeg/wrtarga.c") - set(JPEG_HPP "libjpeg/jconfig.h" - "libjpeg/jdct.h" - "libjpeg/jerror.h" - "libjpeg/jinclude.h" - "libjpeg/jmemsys.h" - "libjpeg/jmorecfg.h" - "libjpeg/jpegint.h" - "libjpeg/jpeglib.h" - "libjpeg/jversion.h" - "libjpeg/transupp.h") +set(JPEG_HPP "libjpeg/jconfig.h" + "libjpeg/jdct.h" + "libjpeg/jerror.h" + "libjpeg/jinclude.h" + "libjpeg/jmemsys.h" + "libjpeg/jmorecfg.h" + "libjpeg/jpegint.h" + "libjpeg/jpeglib.h" + "libjpeg/jversion.h" + "libjpeg/transupp.h") - source_group("" FILES ${JPEG_SRC} ${JPEG_HPP}) +source_group("" FILES ${JPEG_SRC} ${JPEG_HPP}) - add_library("jpeg" STATIC ${JPEG_SRC} ${JPEG_HPP}) +add_library("jpeg" STATIC ${JPEG_SRC} ${JPEG_HPP}) - disable_project_warnings("jpeg") +disable_project_warnings("jpeg") - set_property(TARGET "jpeg" PROPERTY FOLDER "External Libraries") +set_property(TARGET "jpeg" PROPERTY FOLDER "External Libraries") - if(MSVC) - target_compile_definitions("jpeg" PRIVATE _CRT_SECURE_NO_WARNINGS) - endif(MSVC) +if(MSVC) + target_compile_definitions("jpeg" PRIVATE _CRT_SECURE_NO_WARNINGS) +endif(MSVC) - target_include_directories("jpeg" PUBLIC - "libjpeg" - "${CMAKE_CURRENT_BINARY_DIR}/libjpeg" - ) -endif() +target_include_directories("jpeg" PUBLIC + "libjpeg" + "${CMAKE_CURRENT_BINARY_DIR}/libjpeg" +) diff --git a/extern/CMakeProject-json.cmake b/extern/CMakeProject-json.cmake index acd4f45cc7..095406c2a6 100644 --- a/extern/CMakeProject-json.cmake +++ b/extern/CMakeProject-json.cmake @@ -1,26 +1,21 @@ -if(WITH_SYSTEM_JSONCPP) - find_package(PkgConfig REQUIRED) - pkg_check_modules(JSONCPP REQUIRED jsoncpp) -else() - set(JSON_SRC "jsoncpp/jsoncpp.cpp") +set(JSON_SRC "jsoncpp/jsoncpp.cpp") - set(JSON_HPP "jsoncpp/json/json-forwards.h" - "jsoncpp/json/json.h") +set(JSON_HPP "jsoncpp/json/json-forwards.h" + "jsoncpp/json/json.h") - source_group("" FILES ${JSON_SRC} ${JSON_HPP}) +source_group("" FILES ${JSON_SRC} ${JSON_HPP}) - add_library("jsoncpp" STATIC ${JSON_SRC} ${JSON_HPP}) +add_library("jsoncpp" STATIC ${JSON_SRC} ${JSON_HPP}) - set_property(TARGET "jsoncpp" PROPERTY FOLDER "External Libraries") - set_property(TARGET "jsoncpp" PROPERTY CXX_STANDARD 11) - set_property(TARGET "jsoncpp" PROPERTY CXX_STANDARD_REQUIRED ON) - set_property(TARGET "jsoncpp" PROPERTY CXX_EXTENSIONS OFF) +set_property(TARGET "jsoncpp" PROPERTY FOLDER "External Libraries") +set_property(TARGET "jsoncpp" PROPERTY CXX_STANDARD 11) +set_property(TARGET "jsoncpp" PROPERTY CXX_STANDARD_REQUIRED ON) +set_property(TARGET "jsoncpp" PROPERTY CXX_EXTENSIONS OFF) - disable_project_warnings("jsoncpp") +disable_project_warnings("jsoncpp") - target_include_directories("jsoncpp" PUBLIC "jsoncpp") +target_include_directories("jsoncpp" PUBLIC "jsoncpp") - if(MSVC) - target_compile_definitions("jsoncpp" PRIVATE _CRT_SECURE_NO_WARNINGS) - endif() +if(MSVC) + target_compile_definitions("jsoncpp" PRIVATE _CRT_SECURE_NO_WARNINGS) endif() diff --git a/extern/CMakeProject-mad.cmake b/extern/CMakeProject-mad.cmake index 8986c17b64..a9f9b41981 100644 --- a/extern/CMakeProject-mad.cmake +++ b/extern/CMakeProject-mad.cmake @@ -1,79 +1,75 @@ -if(WITH_SYSTEM_MAD) - find_package(Mad REQUIRED) -else() - set(MAD_SRC "libmad/bit.c" - "libmad/decoder.c" - "libmad/fixed.c" - "libmad/frame.c" - "libmad/huffman.c" - "libmad/layer12.c" - "libmad/layer3.c" - "libmad/stream.c" - "libmad/synth.c" - "libmad/timer.c" - "libmad/version.c") +set(MAD_SRC "libmad/bit.c" + "libmad/decoder.c" + "libmad/fixed.c" + "libmad/frame.c" + "libmad/huffman.c" + "libmad/layer12.c" + "libmad/layer3.c" + "libmad/stream.c" + "libmad/synth.c" + "libmad/timer.c" + "libmad/version.c") - set(MAD_HPP "libmad/bit.h" - "libmad/config.h" - "libmad/decoder.h" - "libmad/fixed.h" - "libmad/frame.h" - "libmad/global.h" - "libmad/huffman.h" - "libmad/layer12.h" - "libmad/layer3.h" - "libmad/mad.h" - "libmad/stream.h" - "libmad/synth.h" - "libmad/timer.h" - "libmad/version.h") +set(MAD_HPP "libmad/bit.h" + "libmad/config.h" + "libmad/decoder.h" + "libmad/fixed.h" + "libmad/frame.h" + "libmad/global.h" + "libmad/huffman.h" + "libmad/layer12.h" + "libmad/layer3.h" + "libmad/mad.h" + "libmad/stream.h" + "libmad/synth.h" + "libmad/timer.h" + "libmad/version.h") - set(MAD_DAT "libmad/D.dat" - "libmad/imdct_s.dat" - "libmad/qc_table.dat" - "libmad/rq_table.dat" - "libmad/sf_table.dat") +set(MAD_DAT "libmad/D.dat" + "libmad/imdct_s.dat" + "libmad/qc_table.dat" + "libmad/rq_table.dat" + "libmad/sf_table.dat") - source_group("Source Files" FILES ${MAD_SRC}) - source_group("Header Files" FILES ${MAD_HPP}) - source_group("Data Files" FILES ${MAD_DAT}) +source_group("Source Files" FILES ${MAD_SRC}) +source_group("Header Files" FILES ${MAD_HPP}) +source_group("Data Files" FILES ${MAD_DAT}) - add_library("mad" STATIC ${MAD_SRC} ${MAD_HPP} ${MAD_DAT}) +add_library("mad" STATIC ${MAD_SRC} ${MAD_HPP} ${MAD_DAT}) - set_property(TARGET "mad" PROPERTY FOLDER "External Libraries") +set_property(TARGET "mad" PROPERTY FOLDER "External Libraries") - disable_project_warnings("mad") +disable_project_warnings("mad") - if(ENDIAN_BIG) - set(WORDS_BIGENDIAN 1) - endif() - - target_compile_definitions("mad" PRIVATE $<$:DEBUG>) - target_compile_definitions("mad" PRIVATE HAVE_CONFIG_H) - - if(MSVC) - target_compile_definitions("mad" PRIVATE _CRT_SECURE_NO_WARNINGS) - # TODO: Remove the need for this check since it's tied to 32-bit builds from - # first glance. - target_compile_definitions("mad" PRIVATE ASO_ZEROCHECK) - target_compile_definitions("mad" PRIVATE $<$:FPM_DEFAULT>) - if(SM_WIN32_ARCH MATCHES "x64") - target_compile_definitions("mad" PRIVATE $<$:FPM_64BIT>) - target_compile_definitions("mad" PRIVATE $<$:FPM_64BIT>) - target_compile_definitions("mad" PRIVATE $<$:FPM_64BIT>) - else() - target_compile_definitions("mad" PRIVATE $<$:FPM_INTEL>) - target_compile_definitions("mad" PRIVATE $<$:FPM_INTEL>) - target_compile_definitions("mad" PRIVATE $<$:FPM_INTEL>) - endif() - # TODO: Provide a proper define for inline. - target_compile_definitions("mad" PRIVATE inline=__inline) - elseif(APPLE OR UNIX) - target_compile_definitions("mad" PRIVATE FPM_64BIT=1) - endif(MSVC) - - target_include_directories("mad" PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/libmad") - target_include_directories("mad" PUBLIC "libmad") - - configure_file("config.mad.in.h" "libmad/config.h") +if(ENDIAN_BIG) + set(WORDS_BIGENDIAN 1) endif() + +target_compile_definitions("mad" PRIVATE $<$:DEBUG>) +target_compile_definitions("mad" PRIVATE HAVE_CONFIG_H) + +if(MSVC) + target_compile_definitions("mad" PRIVATE _CRT_SECURE_NO_WARNINGS) + # TODO: Remove the need for this check since it's tied to 32-bit builds from + # first glance. + target_compile_definitions("mad" PRIVATE ASO_ZEROCHECK) + target_compile_definitions("mad" PRIVATE $<$:FPM_DEFAULT>) + if(SM_WIN32_ARCH MATCHES "x64") + target_compile_definitions("mad" PRIVATE $<$:FPM_64BIT>) + target_compile_definitions("mad" PRIVATE $<$:FPM_64BIT>) + target_compile_definitions("mad" PRIVATE $<$:FPM_64BIT>) + else() + target_compile_definitions("mad" PRIVATE $<$:FPM_INTEL>) + target_compile_definitions("mad" PRIVATE $<$:FPM_INTEL>) + target_compile_definitions("mad" PRIVATE $<$:FPM_INTEL>) + endif() + # TODO: Provide a proper define for inline. + target_compile_definitions("mad" PRIVATE inline=__inline) +elseif(APPLE OR UNIX) + target_compile_definitions("mad" PRIVATE FPM_64BIT=1) +endif(MSVC) + +target_include_directories("mad" PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/libmad") +target_include_directories("mad" PUBLIC "libmad") + +configure_file("config.mad.in.h" "libmad/config.h") diff --git a/extern/CMakeProject-pcre.cmake b/extern/CMakeProject-pcre.cmake index 25a9675135..4870378dcd 100644 --- a/extern/CMakeProject-pcre.cmake +++ b/extern/CMakeProject-pcre.cmake @@ -1,49 +1,45 @@ -if(WITH_SYSTEM_PCRE) - find_package(Pcre REQUIRED) -else() - set(PCRE_SRC "pcre/pcre_byte_order.c" - "pcre/pcre_chartables.c" - "pcre/pcre_compile.c" - "pcre/pcre_config.c" - "pcre/pcre_dfa_exec.c" - "pcre/pcre_exec.c" - "pcre/pcre_fullinfo.c" - "pcre/pcre_get.c" - "pcre/pcre_globals.c" - "pcre/pcre_jit_compile.c" - "pcre/pcre_maketables.c" - "pcre/pcre_newline.c" - "pcre/pcre_ord2utf8.c" - "pcre/pcre_refcount.c" - "pcre/pcre_string_utils.c" - "pcre/pcre_study.c" - "pcre/pcre_tables.c" - "pcre/pcre_ucd.c" - "pcre/pcre_valid_utf8.c" - "pcre/pcre_version.c" - "pcre/pcre_xclass.c") +set(PCRE_SRC "pcre/pcre_byte_order.c" + "pcre/pcre_chartables.c" + "pcre/pcre_compile.c" + "pcre/pcre_config.c" + "pcre/pcre_dfa_exec.c" + "pcre/pcre_exec.c" + "pcre/pcre_fullinfo.c" + "pcre/pcre_get.c" + "pcre/pcre_globals.c" + "pcre/pcre_jit_compile.c" + "pcre/pcre_maketables.c" + "pcre/pcre_newline.c" + "pcre/pcre_ord2utf8.c" + "pcre/pcre_refcount.c" + "pcre/pcre_string_utils.c" + "pcre/pcre_study.c" + "pcre/pcre_tables.c" + "pcre/pcre_ucd.c" + "pcre/pcre_valid_utf8.c" + "pcre/pcre_version.c" + "pcre/pcre_xclass.c") - set(PCRE_HPP "pcre/pcre_internal.h" - "pcre/pcre.h" - "pcre/ucp.h") +set(PCRE_HPP "pcre/pcre_internal.h" + "pcre/pcre.h" + "pcre/ucp.h") - configure_file("config.pcre.in.h" "pcre/config.h" COPYONLY) - configure_file("pcre/pcre.h.generic" "pcre/pcre.h" COPYONLY) - configure_file("pcre/pcre_chartables.c.dist" "pcre/pcre_chartables.c" COPYONLY) +configure_file("config.pcre.in.h" "pcre/config.h" COPYONLY) +configure_file("pcre/pcre.h.generic" "pcre/pcre.h" COPYONLY) +configure_file("pcre/pcre_chartables.c.dist" "pcre/pcre_chartables.c" COPYONLY) - source_group("" FILES ${PCRE_SRC} ${PCRE_HPP}) +source_group("" FILES ${PCRE_SRC} ${PCRE_HPP}) - add_library("pcre" STATIC ${PCRE_SRC} ${PCRE_HPP}) +add_library("pcre" STATIC ${PCRE_SRC} ${PCRE_HPP}) - set_property(TARGET "pcre" PROPERTY FOLDER "External Libraries") +set_property(TARGET "pcre" PROPERTY FOLDER "External Libraries") - disable_project_warnings("pcre") +disable_project_warnings("pcre") - target_compile_definitions("pcre" PRIVATE HAVE_CONFIG_H) - target_compile_definitions("pcre" PUBLIC PCRE_STATIC) +target_compile_definitions("pcre" PRIVATE HAVE_CONFIG_H) +target_compile_definitions("pcre" PUBLIC PCRE_STATIC) - target_include_directories("pcre" PUBLIC - "pcre" - "${CMAKE_CURRENT_BINARY_DIR}/pcre" - ) -endif() +target_include_directories("pcre" PUBLIC + "pcre" + "${CMAKE_CURRENT_BINARY_DIR}/pcre" +) diff --git a/extern/CMakeProject-png.cmake b/extern/CMakeProject-png.cmake index 403aa4acee..e43905803a 100644 --- a/extern/CMakeProject-png.cmake +++ b/extern/CMakeProject-png.cmake @@ -1,57 +1,50 @@ -if(WITH_SYSTEM_PNG) - find_package(PNG REQUIRED) - set(PNG_LIBRARIES ${PNG_LIBRARIES} PARENT_SCOPE) -else() - set(PNG_SRC - "libpng/png.c" - "libpng/pngerror.c" - "libpng/pngget.c" - "libpng/pngmem.c" - "libpng/pngpread.c" - "libpng/pngread.c" - "libpng/pngrio.c" - "libpng/pngrtran.c" - "libpng/pngrutil.c" - "libpng/pngset.c" - "libpng/pngtest.c" - "libpng/pngtrans.c" - "libpng/pngwio.c" - "libpng/pngwrite.c" - "libpng/pngwtran.c" - "libpng/pngwutil.c") +set(PNG_SRC "libpng/png.c" + "libpng/pngerror.c" + "libpng/pngget.c" + "libpng/pngmem.c" + "libpng/pngpread.c" + "libpng/pngread.c" + "libpng/pngrio.c" + "libpng/pngrtran.c" + "libpng/pngrutil.c" + "libpng/pngset.c" + "libpng/pngtest.c" + "libpng/pngtrans.c" + "libpng/pngwio.c" + "libpng/pngwrite.c" + "libpng/pngwtran.c" + "libpng/pngwutil.c") - configure_file("libpng/scripts/pnglibconf.h.prebuilt" - "libpng/pnglibconf.h" - COPYONLY) +configure_file("libpng/scripts/pnglibconf.h.prebuilt" + "libpng/pnglibconf.h" + COPYONLY) - set(PNG_HPP - "libpng/png.h" - "libpng/pngconf.h" - "libpng/pngdebug.h" - "libpng/pnginfo.h" - "libpng/pnglibconf.h" - "libpng/pngpriv.h" - "libpng/pngstruct.h") +set(PNG_HPP "libpng/png.h" + "libpng/pngconf.h" + "libpng/pngdebug.h" + "libpng/pnginfo.h" + "libpng/pnglibconf.h" + "libpng/pngpriv.h" + "libpng/pngstruct.h") - source_group("" FILES ${PNG_SRC}) - source_group("" FILES ${PNG_HPP}) +source_group("" FILES ${PNG_SRC}) +source_group("" FILES ${PNG_HPP}) - add_library("png" STATIC ${PNG_SRC} ${PNG_HPP}) +add_library("png" STATIC ${PNG_SRC} ${PNG_HPP}) - set_property(TARGET "png" PROPERTY FOLDER "External Libraries") +set_property(TARGET "png" PROPERTY FOLDER "External Libraries") - disable_project_warnings("png") +disable_project_warnings("png") - target_compile_definitions("png" PRIVATE PNG_ARM_NEON_OPT=0 - PNG_INTEL_SSE_OPT=0) +target_compile_definitions("png" PRIVATE PNG_ARM_NEON_OPT=0 + PNG_INTEL_SSE_OPT=0) - if(MSVC) - target_compile_definitions("png" PRIVATE _CRT_SECURE_NO_WARNINGS) - endif() - - target_include_directories("png" PUBLIC - "zlib" - "libpng" - "${CMAKE_CURRENT_BINARY_DIR}/libpng" - ) +if(MSVC) + target_compile_definitions("png" PRIVATE _CRT_SECURE_NO_WARNINGS) endif() + +target_include_directories("png" PUBLIC + "zlib" + "libpng" + "${CMAKE_CURRENT_BINARY_DIR}/libpng" +) diff --git a/extern/CMakeProject-tomcrypt.cmake b/extern/CMakeProject-tomcrypt.cmake index 030e057550..e4551d358f 100644 --- a/extern/CMakeProject-tomcrypt.cmake +++ b/extern/CMakeProject-tomcrypt.cmake @@ -1,489 +1,483 @@ -if(WITH_SYSTEM_TOMCRYPT) - find_library(TOMCRYPT_LIBRARY tomcrypt) -else() - set(TOMCRYPT_SRC - "libtomcrypt/src/ciphers/anubis.c" - "libtomcrypt/src/ciphers/blowfish.c" - "libtomcrypt/src/ciphers/camellia.c" - "libtomcrypt/src/ciphers/cast5.c" - "libtomcrypt/src/ciphers/des.c" - "libtomcrypt/src/ciphers/kasumi.c" - "libtomcrypt/src/ciphers/khazad.c" - "libtomcrypt/src/ciphers/kseed.c" - "libtomcrypt/src/ciphers/multi2.c" - "libtomcrypt/src/ciphers/noekeon.c" - "libtomcrypt/src/ciphers/rc2.c" - "libtomcrypt/src/ciphers/rc5.c" - "libtomcrypt/src/ciphers/rc6.c" - "libtomcrypt/src/ciphers/skipjack.c" - "libtomcrypt/src/ciphers/xtea.c" - "libtomcrypt/src/ciphers/aes/aes.c" - "libtomcrypt/src/ciphers/safer/safer.c" - "libtomcrypt/src/ciphers/safer/saferp.c" - "libtomcrypt/src/ciphers/twofish/twofish.c" - "libtomcrypt/src/encauth/ccm/ccm_add_aad.c" - "libtomcrypt/src/encauth/ccm/ccm_add_nonce.c" - "libtomcrypt/src/encauth/ccm/ccm_done.c" - "libtomcrypt/src/encauth/ccm/ccm_init.c" - "libtomcrypt/src/encauth/ccm/ccm_memory.c" - "libtomcrypt/src/encauth/ccm/ccm_process.c" - "libtomcrypt/src/encauth/ccm/ccm_reset.c" - "libtomcrypt/src/encauth/ccm/ccm_test.c" - "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_add_aad.c" - "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_decrypt.c" - "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_done.c" - "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_encrypt.c" - "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_init.c" - "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_memory.c" - "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_setiv.c" - "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_setiv_rfc7905.c" - "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_test.c" - "libtomcrypt/src/encauth/eax/eax_addheader.c" - "libtomcrypt/src/encauth/eax/eax_decrypt.c" - "libtomcrypt/src/encauth/eax/eax_decrypt_verify_memory.c" - "libtomcrypt/src/encauth/eax/eax_done.c" - "libtomcrypt/src/encauth/eax/eax_encrypt.c" - "libtomcrypt/src/encauth/eax/eax_encrypt_authenticate_memory.c" - "libtomcrypt/src/encauth/eax/eax_init.c" - "libtomcrypt/src/encauth/eax/eax_test.c" - "libtomcrypt/src/encauth/gcm/gcm_add_aad.c" - "libtomcrypt/src/encauth/gcm/gcm_add_iv.c" - "libtomcrypt/src/encauth/gcm/gcm_done.c" - "libtomcrypt/src/encauth/gcm/gcm_gf_mult.c" - "libtomcrypt/src/encauth/gcm/gcm_init.c" - "libtomcrypt/src/encauth/gcm/gcm_memory.c" - "libtomcrypt/src/encauth/gcm/gcm_mult_h.c" - "libtomcrypt/src/encauth/gcm/gcm_process.c" - "libtomcrypt/src/encauth/gcm/gcm_reset.c" - "libtomcrypt/src/encauth/gcm/gcm_test.c" - "libtomcrypt/src/encauth/ocb/ocb_decrypt.c" - "libtomcrypt/src/encauth/ocb/ocb_decrypt_verify_memory.c" - "libtomcrypt/src/encauth/ocb/ocb_done_decrypt.c" - "libtomcrypt/src/encauth/ocb/ocb_done_encrypt.c" - "libtomcrypt/src/encauth/ocb/ocb_encrypt.c" - "libtomcrypt/src/encauth/ocb/ocb_encrypt_authenticate_memory.c" - "libtomcrypt/src/encauth/ocb/ocb_init.c" - "libtomcrypt/src/encauth/ocb/ocb_ntz.c" - "libtomcrypt/src/encauth/ocb/ocb_shift_xor.c" - "libtomcrypt/src/encauth/ocb/ocb_test.c" - "libtomcrypt/src/encauth/ocb/s_ocb_done.c" - "libtomcrypt/src/encauth/ocb3/ocb3_add_aad.c" - "libtomcrypt/src/encauth/ocb3/ocb3_decrypt.c" - "libtomcrypt/src/encauth/ocb3/ocb3_decrypt_last.c" - "libtomcrypt/src/encauth/ocb3/ocb3_decrypt_verify_memory.c" - "libtomcrypt/src/encauth/ocb3/ocb3_done.c" - "libtomcrypt/src/encauth/ocb3/ocb3_encrypt.c" - "libtomcrypt/src/encauth/ocb3/ocb3_encrypt_authenticate_memory.c" - "libtomcrypt/src/encauth/ocb3/ocb3_encrypt_last.c" - "libtomcrypt/src/encauth/ocb3/ocb3_init.c" - "libtomcrypt/src/encauth/ocb3/ocb3_int_ntz.c" - "libtomcrypt/src/encauth/ocb3/ocb3_int_xor_blocks.c" - "libtomcrypt/src/encauth/ocb3/ocb3_test.c" - "libtomcrypt/src/hashes/blake2b.c" - "libtomcrypt/src/hashes/blake2s.c" - "libtomcrypt/src/hashes/md2.c" - "libtomcrypt/src/hashes/md4.c" - "libtomcrypt/src/hashes/md5.c" - "libtomcrypt/src/hashes/rmd128.c" - "libtomcrypt/src/hashes/rmd160.c" - "libtomcrypt/src/hashes/rmd256.c" - "libtomcrypt/src/hashes/rmd320.c" - "libtomcrypt/src/hashes/sha1.c" - "libtomcrypt/src/hashes/sha3.c" - "libtomcrypt/src/hashes/sha3_test.c" - "libtomcrypt/src/hashes/tiger.c" - "libtomcrypt/src/hashes/chc/chc.c" - "libtomcrypt/src/hashes/helper/hash_file.c" - "libtomcrypt/src/hashes/helper/hash_filehandle.c" - "libtomcrypt/src/hashes/helper/hash_memory.c" - "libtomcrypt/src/hashes/helper/hash_memory_multi.c" - "libtomcrypt/src/hashes/sha2/sha224.c" - "libtomcrypt/src/hashes/sha2/sha256.c" - "libtomcrypt/src/hashes/sha2/sha384.c" - "libtomcrypt/src/hashes/sha2/sha512.c" - "libtomcrypt/src/hashes/sha2/sha512_224.c" - "libtomcrypt/src/hashes/sha2/sha512_256.c" - "libtomcrypt/src/hashes/whirl/whirl.c" - "libtomcrypt/src/mac/blake2/blake2bmac.c" - "libtomcrypt/src/mac/blake2/blake2bmac_file.c" - "libtomcrypt/src/mac/blake2/blake2bmac_memory.c" - "libtomcrypt/src/mac/blake2/blake2bmac_memory_multi.c" - "libtomcrypt/src/mac/blake2/blake2bmac_test.c" - "libtomcrypt/src/mac/blake2/blake2smac.c" - "libtomcrypt/src/mac/blake2/blake2smac_file.c" - "libtomcrypt/src/mac/blake2/blake2smac_memory.c" - "libtomcrypt/src/mac/blake2/blake2smac_memory_multi.c" - "libtomcrypt/src/mac/blake2/blake2smac_test.c" - "libtomcrypt/src/mac/f9/f9_done.c" - "libtomcrypt/src/mac/f9/f9_file.c" - "libtomcrypt/src/mac/f9/f9_init.c" - "libtomcrypt/src/mac/f9/f9_memory.c" - "libtomcrypt/src/mac/f9/f9_memory_multi.c" - "libtomcrypt/src/mac/f9/f9_process.c" - "libtomcrypt/src/mac/f9/f9_test.c" - "libtomcrypt/src/mac/hmac/hmac_done.c" - "libtomcrypt/src/mac/hmac/hmac_file.c" - "libtomcrypt/src/mac/hmac/hmac_init.c" - "libtomcrypt/src/mac/hmac/hmac_memory.c" - "libtomcrypt/src/mac/hmac/hmac_memory_multi.c" - "libtomcrypt/src/mac/hmac/hmac_process.c" - "libtomcrypt/src/mac/hmac/hmac_test.c" - "libtomcrypt/src/mac/omac/omac_done.c" - "libtomcrypt/src/mac/omac/omac_file.c" - "libtomcrypt/src/mac/omac/omac_init.c" - "libtomcrypt/src/mac/omac/omac_memory.c" - "libtomcrypt/src/mac/omac/omac_memory_multi.c" - "libtomcrypt/src/mac/omac/omac_process.c" - "libtomcrypt/src/mac/omac/omac_test.c" - "libtomcrypt/src/mac/pelican/pelican.c" - "libtomcrypt/src/mac/pelican/pelican_memory.c" - "libtomcrypt/src/mac/pelican/pelican_test.c" - "libtomcrypt/src/mac/pmac/pmac_done.c" - "libtomcrypt/src/mac/pmac/pmac_file.c" - "libtomcrypt/src/mac/pmac/pmac_init.c" - "libtomcrypt/src/mac/pmac/pmac_memory.c" - "libtomcrypt/src/mac/pmac/pmac_memory_multi.c" - "libtomcrypt/src/mac/pmac/pmac_ntz.c" - "libtomcrypt/src/mac/pmac/pmac_process.c" - "libtomcrypt/src/mac/pmac/pmac_shift_xor.c" - "libtomcrypt/src/mac/pmac/pmac_test.c" - "libtomcrypt/src/mac/poly1305/poly1305.c" - "libtomcrypt/src/mac/poly1305/poly1305_file.c" - "libtomcrypt/src/mac/poly1305/poly1305_memory.c" - "libtomcrypt/src/mac/poly1305/poly1305_memory_multi.c" - "libtomcrypt/src/mac/poly1305/poly1305_test.c" - "libtomcrypt/src/mac/xcbc/xcbc_done.c" - "libtomcrypt/src/mac/xcbc/xcbc_file.c" - "libtomcrypt/src/mac/xcbc/xcbc_init.c" - "libtomcrypt/src/mac/xcbc/xcbc_memory.c" - "libtomcrypt/src/mac/xcbc/xcbc_memory_multi.c" - "libtomcrypt/src/mac/xcbc/xcbc_process.c" - "libtomcrypt/src/mac/xcbc/xcbc_test.c" - "libtomcrypt/src/math/gmp_desc.c" - "libtomcrypt/src/math/ltm_desc.c" - "libtomcrypt/src/math/multi.c" - "libtomcrypt/src/math/radix_to_bin.c" - "libtomcrypt/src/math/rand_bn.c" - "libtomcrypt/src/math/rand_prime.c" - "libtomcrypt/src/math/tfm_desc.c" - "libtomcrypt/src/math/fp/ltc_ecc_fp_mulmod.c" - "libtomcrypt/src/misc/adler32.c" - "libtomcrypt/src/misc/burn_stack.c" - "libtomcrypt/src/misc/compare_testvector.c" - "libtomcrypt/src/misc/crc32.c" - "libtomcrypt/src/misc/error_to_string.c" - "libtomcrypt/src/misc/mem_neq.c" - "libtomcrypt/src/misc/pk_get_oid.c" - "libtomcrypt/src/misc/zeromem.c" - "libtomcrypt/src/misc/base64/base64_decode.c" - "libtomcrypt/src/misc/base64/base64_encode.c" - "libtomcrypt/src/misc/crypt/crypt.c" - "libtomcrypt/src/misc/crypt/crypt_argchk.c" - "libtomcrypt/src/misc/crypt/crypt_cipher_descriptor.c" - "libtomcrypt/src/misc/crypt/crypt_cipher_is_valid.c" - "libtomcrypt/src/misc/crypt/crypt_constants.c" - "libtomcrypt/src/misc/crypt/crypt_find_cipher.c" - "libtomcrypt/src/misc/crypt/crypt_find_cipher_any.c" - "libtomcrypt/src/misc/crypt/crypt_find_cipher_id.c" - "libtomcrypt/src/misc/crypt/crypt_find_hash.c" - "libtomcrypt/src/misc/crypt/crypt_find_hash_any.c" - "libtomcrypt/src/misc/crypt/crypt_find_hash_id.c" - "libtomcrypt/src/misc/crypt/crypt_find_hash_oid.c" - "libtomcrypt/src/misc/crypt/crypt_find_prng.c" - "libtomcrypt/src/misc/crypt/crypt_fsa.c" - "libtomcrypt/src/misc/crypt/crypt_hash_descriptor.c" - "libtomcrypt/src/misc/crypt/crypt_hash_is_valid.c" - "libtomcrypt/src/misc/crypt/crypt_inits.c" - "libtomcrypt/src/misc/crypt/crypt_ltc_mp_descriptor.c" - "libtomcrypt/src/misc/crypt/crypt_prng_descriptor.c" - "libtomcrypt/src/misc/crypt/crypt_prng_is_valid.c" - "libtomcrypt/src/misc/crypt/crypt_prng_rng_descriptor.c" - "libtomcrypt/src/misc/crypt/crypt_register_all_ciphers.c" - "libtomcrypt/src/misc/crypt/crypt_register_all_hashes.c" - "libtomcrypt/src/misc/crypt/crypt_register_all_prngs.c" - "libtomcrypt/src/misc/crypt/crypt_register_cipher.c" - "libtomcrypt/src/misc/crypt/crypt_register_hash.c" - "libtomcrypt/src/misc/crypt/crypt_register_prng.c" - "libtomcrypt/src/misc/crypt/crypt_sizes.c" - "libtomcrypt/src/misc/crypt/crypt_unregister_cipher.c" - "libtomcrypt/src/misc/crypt/crypt_unregister_hash.c" - "libtomcrypt/src/misc/crypt/crypt_unregister_prng.c" - "libtomcrypt/src/misc/hkdf/hkdf.c" - "libtomcrypt/src/misc/hkdf/hkdf_test.c" - "libtomcrypt/src/misc/pkcs5/pkcs_5_1.c" - "libtomcrypt/src/misc/pkcs5/pkcs_5_2.c" - "libtomcrypt/src/misc/pkcs5/pkcs_5_test.c" - "libtomcrypt/src/modes/cbc/cbc_decrypt.c" - "libtomcrypt/src/modes/cbc/cbc_done.c" - "libtomcrypt/src/modes/cbc/cbc_encrypt.c" - "libtomcrypt/src/modes/cbc/cbc_getiv.c" - "libtomcrypt/src/modes/cbc/cbc_setiv.c" - "libtomcrypt/src/modes/cbc/cbc_start.c" - "libtomcrypt/src/modes/cfb/cfb_decrypt.c" - "libtomcrypt/src/modes/cfb/cfb_done.c" - "libtomcrypt/src/modes/cfb/cfb_encrypt.c" - "libtomcrypt/src/modes/cfb/cfb_getiv.c" - "libtomcrypt/src/modes/cfb/cfb_setiv.c" - "libtomcrypt/src/modes/cfb/cfb_start.c" - "libtomcrypt/src/modes/ctr/ctr_decrypt.c" - "libtomcrypt/src/modes/ctr/ctr_done.c" - "libtomcrypt/src/modes/ctr/ctr_encrypt.c" - "libtomcrypt/src/modes/ctr/ctr_getiv.c" - "libtomcrypt/src/modes/ctr/ctr_setiv.c" - "libtomcrypt/src/modes/ctr/ctr_start.c" - "libtomcrypt/src/modes/ctr/ctr_test.c" - "libtomcrypt/src/modes/ecb/ecb_decrypt.c" - "libtomcrypt/src/modes/ecb/ecb_done.c" - "libtomcrypt/src/modes/ecb/ecb_encrypt.c" - "libtomcrypt/src/modes/ecb/ecb_start.c" - "libtomcrypt/src/modes/f8/f8_decrypt.c" - "libtomcrypt/src/modes/f8/f8_done.c" - "libtomcrypt/src/modes/f8/f8_encrypt.c" - "libtomcrypt/src/modes/f8/f8_getiv.c" - "libtomcrypt/src/modes/f8/f8_setiv.c" - "libtomcrypt/src/modes/f8/f8_start.c" - "libtomcrypt/src/modes/f8/f8_test_mode.c" - "libtomcrypt/src/modes/lrw/lrw_decrypt.c" - "libtomcrypt/src/modes/lrw/lrw_done.c" - "libtomcrypt/src/modes/lrw/lrw_encrypt.c" - "libtomcrypt/src/modes/lrw/lrw_getiv.c" - "libtomcrypt/src/modes/lrw/lrw_process.c" - "libtomcrypt/src/modes/lrw/lrw_setiv.c" - "libtomcrypt/src/modes/lrw/lrw_start.c" - "libtomcrypt/src/modes/lrw/lrw_test.c" - "libtomcrypt/src/modes/ofb/ofb_decrypt.c" - "libtomcrypt/src/modes/ofb/ofb_done.c" - "libtomcrypt/src/modes/ofb/ofb_encrypt.c" - "libtomcrypt/src/modes/ofb/ofb_getiv.c" - "libtomcrypt/src/modes/ofb/ofb_setiv.c" - "libtomcrypt/src/modes/ofb/ofb_start.c" - "libtomcrypt/src/modes/xts/xts_decrypt.c" - "libtomcrypt/src/modes/xts/xts_done.c" - "libtomcrypt/src/modes/xts/xts_encrypt.c" - "libtomcrypt/src/modes/xts/xts_init.c" - "libtomcrypt/src/modes/xts/xts_mult_x.c" - "libtomcrypt/src/modes/xts/xts_test.c" - "libtomcrypt/src/pk/asn1/der/bit/der_decode_bit_string.c" - "libtomcrypt/src/pk/asn1/der/bit/der_decode_raw_bit_string.c" - "libtomcrypt/src/pk/asn1/der/bit/der_encode_bit_string.c" - "libtomcrypt/src/pk/asn1/der/bit/der_encode_raw_bit_string.c" - "libtomcrypt/src/pk/asn1/der/bit/der_length_bit_string.c" - "libtomcrypt/src/pk/asn1/der/boolean/der_decode_boolean.c" - "libtomcrypt/src/pk/asn1/der/boolean/der_encode_boolean.c" - "libtomcrypt/src/pk/asn1/der/boolean/der_length_boolean.c" - "libtomcrypt/src/pk/asn1/der/choice/der_decode_choice.c" - "libtomcrypt/src/pk/asn1/der/generalizedtime/der_decode_generalizedtime.c" - "libtomcrypt/src/pk/asn1/der/generalizedtime/der_encode_generalizedtime.c" - "libtomcrypt/src/pk/asn1/der/generalizedtime/der_length_generalizedtime.c" - "libtomcrypt/src/pk/asn1/der/ia5/der_decode_ia5_string.c" - "libtomcrypt/src/pk/asn1/der/ia5/der_encode_ia5_string.c" - "libtomcrypt/src/pk/asn1/der/ia5/der_length_ia5_string.c" - "libtomcrypt/src/pk/asn1/der/integer/der_decode_integer.c" - "libtomcrypt/src/pk/asn1/der/integer/der_encode_integer.c" - "libtomcrypt/src/pk/asn1/der/integer/der_length_integer.c" - "libtomcrypt/src/pk/asn1/der/object_identifier/der_decode_object_identifier.c" - "libtomcrypt/src/pk/asn1/der/object_identifier/der_encode_object_identifier.c" - "libtomcrypt/src/pk/asn1/der/object_identifier/der_length_object_identifier.c" - "libtomcrypt/src/pk/asn1/der/octet/der_decode_octet_string.c" - "libtomcrypt/src/pk/asn1/der/octet/der_encode_octet_string.c" - "libtomcrypt/src/pk/asn1/der/octet/der_length_octet_string.c" - "libtomcrypt/src/pk/asn1/der/printable_string/der_decode_printable_string.c" - "libtomcrypt/src/pk/asn1/der/printable_string/der_encode_printable_string.c" - "libtomcrypt/src/pk/asn1/der/printable_string/der_length_printable_string.c" - "libtomcrypt/src/pk/asn1/der/sequence/der_decode_sequence_ex.c" - "libtomcrypt/src/pk/asn1/der/sequence/der_decode_sequence_flexi.c" - "libtomcrypt/src/pk/asn1/der/sequence/der_decode_sequence_multi.c" - "libtomcrypt/src/pk/asn1/der/sequence/der_decode_subject_public_key_info.c" - "libtomcrypt/src/pk/asn1/der/sequence/der_encode_sequence_ex.c" - "libtomcrypt/src/pk/asn1/der/sequence/der_encode_sequence_multi.c" - "libtomcrypt/src/pk/asn1/der/sequence/der_encode_subject_public_key_info.c" - "libtomcrypt/src/pk/asn1/der/sequence/der_length_sequence.c" - "libtomcrypt/src/pk/asn1/der/sequence/der_sequence_free.c" - "libtomcrypt/src/pk/asn1/der/sequence/der_sequence_shrink.c" - "libtomcrypt/src/pk/asn1/der/set/der_encode_set.c" - "libtomcrypt/src/pk/asn1/der/set/der_encode_setof.c" - "libtomcrypt/src/pk/asn1/der/short_integer/der_decode_short_integer.c" - "libtomcrypt/src/pk/asn1/der/short_integer/der_encode_short_integer.c" - "libtomcrypt/src/pk/asn1/der/short_integer/der_length_short_integer.c" - "libtomcrypt/src/pk/asn1/der/teletex_string/der_decode_teletex_string.c" - "libtomcrypt/src/pk/asn1/der/teletex_string/der_length_teletex_string.c" - "libtomcrypt/src/pk/asn1/der/utctime/der_decode_utctime.c" - "libtomcrypt/src/pk/asn1/der/utctime/der_encode_utctime.c" - "libtomcrypt/src/pk/asn1/der/utctime/der_length_utctime.c" - "libtomcrypt/src/pk/asn1/der/utf8/der_decode_utf8_string.c" - "libtomcrypt/src/pk/asn1/der/utf8/der_encode_utf8_string.c" - "libtomcrypt/src/pk/asn1/der/utf8/der_length_utf8_string.c" - "libtomcrypt/src/pk/dh/dh.c" - "libtomcrypt/src/pk/dh/dh_check_pubkey.c" - "libtomcrypt/src/pk/dh/dh_export.c" - "libtomcrypt/src/pk/dh/dh_export_key.c" - "libtomcrypt/src/pk/dh/dh_free.c" - "libtomcrypt/src/pk/dh/dh_generate_key.c" - "libtomcrypt/src/pk/dh/dh_import.c" - "libtomcrypt/src/pk/dh/dh_set.c" - "libtomcrypt/src/pk/dh/dh_set_pg_dhparam.c" - "libtomcrypt/src/pk/dh/dh_shared_secret.c" - "libtomcrypt/src/pk/dsa/dsa_decrypt_key.c" - "libtomcrypt/src/pk/dsa/dsa_encrypt_key.c" - "libtomcrypt/src/pk/dsa/dsa_export.c" - "libtomcrypt/src/pk/dsa/dsa_free.c" - "libtomcrypt/src/pk/dsa/dsa_generate_key.c" - "libtomcrypt/src/pk/dsa/dsa_generate_pqg.c" - "libtomcrypt/src/pk/dsa/dsa_import.c" - "libtomcrypt/src/pk/dsa/dsa_make_key.c" - "libtomcrypt/src/pk/dsa/dsa_set.c" - "libtomcrypt/src/pk/dsa/dsa_set_pqg_dsaparam.c" - "libtomcrypt/src/pk/dsa/dsa_shared_secret.c" - "libtomcrypt/src/pk/dsa/dsa_sign_hash.c" - "libtomcrypt/src/pk/dsa/dsa_verify_hash.c" - "libtomcrypt/src/pk/dsa/dsa_verify_key.c" - "libtomcrypt/src/pk/ecc/ecc.c" - "libtomcrypt/src/pk/ecc/ecc_ansi_x963_export.c" - "libtomcrypt/src/pk/ecc/ecc_ansi_x963_import.c" - "libtomcrypt/src/pk/ecc/ecc_decrypt_key.c" - "libtomcrypt/src/pk/ecc/ecc_encrypt_key.c" - "libtomcrypt/src/pk/ecc/ecc_export.c" - "libtomcrypt/src/pk/ecc/ecc_free.c" - "libtomcrypt/src/pk/ecc/ecc_get_size.c" - "libtomcrypt/src/pk/ecc/ecc_import.c" - "libtomcrypt/src/pk/ecc/ecc_make_key.c" - "libtomcrypt/src/pk/ecc/ecc_shared_secret.c" - "libtomcrypt/src/pk/ecc/ecc_sign_hash.c" - "libtomcrypt/src/pk/ecc/ecc_sizes.c" - "libtomcrypt/src/pk/ecc/ecc_test.c" - "libtomcrypt/src/pk/ecc/ecc_verify_hash.c" - "libtomcrypt/src/pk/ecc/ltc_ecc_is_valid_idx.c" - "libtomcrypt/src/pk/ecc/ltc_ecc_map.c" - "libtomcrypt/src/pk/ecc/ltc_ecc_mul2add.c" - "libtomcrypt/src/pk/ecc/ltc_ecc_mulmod.c" - "libtomcrypt/src/pk/ecc/ltc_ecc_mulmod_timing.c" - "libtomcrypt/src/pk/ecc/ltc_ecc_points.c" - "libtomcrypt/src/pk/ecc/ltc_ecc_projective_add_point.c" - "libtomcrypt/src/pk/ecc/ltc_ecc_projective_dbl_point.c" - "libtomcrypt/src/pk/katja/katja_decrypt_key.c" - "libtomcrypt/src/pk/katja/katja_encrypt_key.c" - "libtomcrypt/src/pk/katja/katja_export.c" - "libtomcrypt/src/pk/katja/katja_exptmod.c" - "libtomcrypt/src/pk/katja/katja_free.c" - "libtomcrypt/src/pk/katja/katja_import.c" - "libtomcrypt/src/pk/katja/katja_make_key.c" - "libtomcrypt/src/pk/pkcs1/pkcs_1_i2osp.c" - "libtomcrypt/src/pk/pkcs1/pkcs_1_mgf1.c" - "libtomcrypt/src/pk/pkcs1/pkcs_1_oaep_decode.c" - "libtomcrypt/src/pk/pkcs1/pkcs_1_oaep_encode.c" - "libtomcrypt/src/pk/pkcs1/pkcs_1_os2ip.c" - "libtomcrypt/src/pk/pkcs1/pkcs_1_pss_decode.c" - "libtomcrypt/src/pk/pkcs1/pkcs_1_pss_encode.c" - "libtomcrypt/src/pk/pkcs1/pkcs_1_v1_5_decode.c" - "libtomcrypt/src/pk/pkcs1/pkcs_1_v1_5_encode.c" - "libtomcrypt/src/pk/rsa/rsa_decrypt_key.c" - "libtomcrypt/src/pk/rsa/rsa_encrypt_key.c" - "libtomcrypt/src/pk/rsa/rsa_export.c" - "libtomcrypt/src/pk/rsa/rsa_exptmod.c" - "libtomcrypt/src/pk/rsa/rsa_free.c" - "libtomcrypt/src/pk/rsa/rsa_get_size.c" - "libtomcrypt/src/pk/rsa/rsa_import.c" - "libtomcrypt/src/pk/rsa/rsa_import_pkcs8.c" - "libtomcrypt/src/pk/rsa/rsa_import_x509.c" - "libtomcrypt/src/pk/rsa/rsa_make_key.c" - "libtomcrypt/src/pk/rsa/rsa_set.c" - "libtomcrypt/src/pk/rsa/rsa_sign_hash.c" - "libtomcrypt/src/pk/rsa/rsa_sign_saltlen_get.c" - "libtomcrypt/src/pk/rsa/rsa_verify_hash.c" - "libtomcrypt/src/prngs/chacha20.c" - "libtomcrypt/src/prngs/fortuna.c" - "libtomcrypt/src/prngs/rc4.c" - "libtomcrypt/src/prngs/rng_get_bytes.c" - "libtomcrypt/src/prngs/rng_make_prng.c" - "libtomcrypt/src/prngs/sober128.c" - "libtomcrypt/src/prngs/sprng.c" - "libtomcrypt/src/prngs/yarrow.c" - "libtomcrypt/src/stream/chacha/chacha_crypt.c" - "libtomcrypt/src/stream/chacha/chacha_done.c" - "libtomcrypt/src/stream/chacha/chacha_ivctr32.c" - "libtomcrypt/src/stream/chacha/chacha_ivctr64.c" - "libtomcrypt/src/stream/chacha/chacha_keystream.c" - "libtomcrypt/src/stream/chacha/chacha_setup.c" - "libtomcrypt/src/stream/chacha/chacha_test.c" - "libtomcrypt/src/stream/rc4/rc4_stream.c" - "libtomcrypt/src/stream/rc4/rc4_test.c" - "libtomcrypt/src/stream/sober128/sober128_stream.c" - "libtomcrypt/src/stream/sober128/sober128_test.c" - ) +set(TOMCRYPT_SRC "libtomcrypt/src/ciphers/anubis.c" + "libtomcrypt/src/ciphers/blowfish.c" + "libtomcrypt/src/ciphers/camellia.c" + "libtomcrypt/src/ciphers/cast5.c" + "libtomcrypt/src/ciphers/des.c" + "libtomcrypt/src/ciphers/kasumi.c" + "libtomcrypt/src/ciphers/khazad.c" + "libtomcrypt/src/ciphers/kseed.c" + "libtomcrypt/src/ciphers/multi2.c" + "libtomcrypt/src/ciphers/noekeon.c" + "libtomcrypt/src/ciphers/rc2.c" + "libtomcrypt/src/ciphers/rc5.c" + "libtomcrypt/src/ciphers/rc6.c" + "libtomcrypt/src/ciphers/skipjack.c" + "libtomcrypt/src/ciphers/xtea.c" + "libtomcrypt/src/ciphers/aes/aes.c" + "libtomcrypt/src/ciphers/safer/safer.c" + "libtomcrypt/src/ciphers/safer/saferp.c" + "libtomcrypt/src/ciphers/twofish/twofish.c" + "libtomcrypt/src/encauth/ccm/ccm_add_aad.c" + "libtomcrypt/src/encauth/ccm/ccm_add_nonce.c" + "libtomcrypt/src/encauth/ccm/ccm_done.c" + "libtomcrypt/src/encauth/ccm/ccm_init.c" + "libtomcrypt/src/encauth/ccm/ccm_memory.c" + "libtomcrypt/src/encauth/ccm/ccm_process.c" + "libtomcrypt/src/encauth/ccm/ccm_reset.c" + "libtomcrypt/src/encauth/ccm/ccm_test.c" + "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_add_aad.c" + "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_decrypt.c" + "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_done.c" + "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_encrypt.c" + "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_init.c" + "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_memory.c" + "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_setiv.c" + "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_setiv_rfc7905.c" + "libtomcrypt/src/encauth/chachapoly/chacha20poly1305_test.c" + "libtomcrypt/src/encauth/eax/eax_addheader.c" + "libtomcrypt/src/encauth/eax/eax_decrypt.c" + "libtomcrypt/src/encauth/eax/eax_decrypt_verify_memory.c" + "libtomcrypt/src/encauth/eax/eax_done.c" + "libtomcrypt/src/encauth/eax/eax_encrypt.c" + "libtomcrypt/src/encauth/eax/eax_encrypt_authenticate_memory.c" + "libtomcrypt/src/encauth/eax/eax_init.c" + "libtomcrypt/src/encauth/eax/eax_test.c" + "libtomcrypt/src/encauth/gcm/gcm_add_aad.c" + "libtomcrypt/src/encauth/gcm/gcm_add_iv.c" + "libtomcrypt/src/encauth/gcm/gcm_done.c" + "libtomcrypt/src/encauth/gcm/gcm_gf_mult.c" + "libtomcrypt/src/encauth/gcm/gcm_init.c" + "libtomcrypt/src/encauth/gcm/gcm_memory.c" + "libtomcrypt/src/encauth/gcm/gcm_mult_h.c" + "libtomcrypt/src/encauth/gcm/gcm_process.c" + "libtomcrypt/src/encauth/gcm/gcm_reset.c" + "libtomcrypt/src/encauth/gcm/gcm_test.c" + "libtomcrypt/src/encauth/ocb/ocb_decrypt.c" + "libtomcrypt/src/encauth/ocb/ocb_decrypt_verify_memory.c" + "libtomcrypt/src/encauth/ocb/ocb_done_decrypt.c" + "libtomcrypt/src/encauth/ocb/ocb_done_encrypt.c" + "libtomcrypt/src/encauth/ocb/ocb_encrypt.c" + "libtomcrypt/src/encauth/ocb/ocb_encrypt_authenticate_memory.c" + "libtomcrypt/src/encauth/ocb/ocb_init.c" + "libtomcrypt/src/encauth/ocb/ocb_ntz.c" + "libtomcrypt/src/encauth/ocb/ocb_shift_xor.c" + "libtomcrypt/src/encauth/ocb/ocb_test.c" + "libtomcrypt/src/encauth/ocb/s_ocb_done.c" + "libtomcrypt/src/encauth/ocb3/ocb3_add_aad.c" + "libtomcrypt/src/encauth/ocb3/ocb3_decrypt.c" + "libtomcrypt/src/encauth/ocb3/ocb3_decrypt_last.c" + "libtomcrypt/src/encauth/ocb3/ocb3_decrypt_verify_memory.c" + "libtomcrypt/src/encauth/ocb3/ocb3_done.c" + "libtomcrypt/src/encauth/ocb3/ocb3_encrypt.c" + "libtomcrypt/src/encauth/ocb3/ocb3_encrypt_authenticate_memory.c" + "libtomcrypt/src/encauth/ocb3/ocb3_encrypt_last.c" + "libtomcrypt/src/encauth/ocb3/ocb3_init.c" + "libtomcrypt/src/encauth/ocb3/ocb3_int_ntz.c" + "libtomcrypt/src/encauth/ocb3/ocb3_int_xor_blocks.c" + "libtomcrypt/src/encauth/ocb3/ocb3_test.c" + "libtomcrypt/src/hashes/blake2b.c" + "libtomcrypt/src/hashes/blake2s.c" + "libtomcrypt/src/hashes/md2.c" + "libtomcrypt/src/hashes/md4.c" + "libtomcrypt/src/hashes/md5.c" + "libtomcrypt/src/hashes/rmd128.c" + "libtomcrypt/src/hashes/rmd160.c" + "libtomcrypt/src/hashes/rmd256.c" + "libtomcrypt/src/hashes/rmd320.c" + "libtomcrypt/src/hashes/sha1.c" + "libtomcrypt/src/hashes/sha3.c" + "libtomcrypt/src/hashes/sha3_test.c" + "libtomcrypt/src/hashes/tiger.c" + "libtomcrypt/src/hashes/chc/chc.c" + "libtomcrypt/src/hashes/helper/hash_file.c" + "libtomcrypt/src/hashes/helper/hash_filehandle.c" + "libtomcrypt/src/hashes/helper/hash_memory.c" + "libtomcrypt/src/hashes/helper/hash_memory_multi.c" + "libtomcrypt/src/hashes/sha2/sha224.c" + "libtomcrypt/src/hashes/sha2/sha256.c" + "libtomcrypt/src/hashes/sha2/sha384.c" + "libtomcrypt/src/hashes/sha2/sha512.c" + "libtomcrypt/src/hashes/sha2/sha512_224.c" + "libtomcrypt/src/hashes/sha2/sha512_256.c" + "libtomcrypt/src/hashes/whirl/whirl.c" + "libtomcrypt/src/mac/blake2/blake2bmac.c" + "libtomcrypt/src/mac/blake2/blake2bmac_file.c" + "libtomcrypt/src/mac/blake2/blake2bmac_memory.c" + "libtomcrypt/src/mac/blake2/blake2bmac_memory_multi.c" + "libtomcrypt/src/mac/blake2/blake2bmac_test.c" + "libtomcrypt/src/mac/blake2/blake2smac.c" + "libtomcrypt/src/mac/blake2/blake2smac_file.c" + "libtomcrypt/src/mac/blake2/blake2smac_memory.c" + "libtomcrypt/src/mac/blake2/blake2smac_memory_multi.c" + "libtomcrypt/src/mac/blake2/blake2smac_test.c" + "libtomcrypt/src/mac/f9/f9_done.c" + "libtomcrypt/src/mac/f9/f9_file.c" + "libtomcrypt/src/mac/f9/f9_init.c" + "libtomcrypt/src/mac/f9/f9_memory.c" + "libtomcrypt/src/mac/f9/f9_memory_multi.c" + "libtomcrypt/src/mac/f9/f9_process.c" + "libtomcrypt/src/mac/f9/f9_test.c" + "libtomcrypt/src/mac/hmac/hmac_done.c" + "libtomcrypt/src/mac/hmac/hmac_file.c" + "libtomcrypt/src/mac/hmac/hmac_init.c" + "libtomcrypt/src/mac/hmac/hmac_memory.c" + "libtomcrypt/src/mac/hmac/hmac_memory_multi.c" + "libtomcrypt/src/mac/hmac/hmac_process.c" + "libtomcrypt/src/mac/hmac/hmac_test.c" + "libtomcrypt/src/mac/omac/omac_done.c" + "libtomcrypt/src/mac/omac/omac_file.c" + "libtomcrypt/src/mac/omac/omac_init.c" + "libtomcrypt/src/mac/omac/omac_memory.c" + "libtomcrypt/src/mac/omac/omac_memory_multi.c" + "libtomcrypt/src/mac/omac/omac_process.c" + "libtomcrypt/src/mac/omac/omac_test.c" + "libtomcrypt/src/mac/pelican/pelican.c" + "libtomcrypt/src/mac/pelican/pelican_memory.c" + "libtomcrypt/src/mac/pelican/pelican_test.c" + "libtomcrypt/src/mac/pmac/pmac_done.c" + "libtomcrypt/src/mac/pmac/pmac_file.c" + "libtomcrypt/src/mac/pmac/pmac_init.c" + "libtomcrypt/src/mac/pmac/pmac_memory.c" + "libtomcrypt/src/mac/pmac/pmac_memory_multi.c" + "libtomcrypt/src/mac/pmac/pmac_ntz.c" + "libtomcrypt/src/mac/pmac/pmac_process.c" + "libtomcrypt/src/mac/pmac/pmac_shift_xor.c" + "libtomcrypt/src/mac/pmac/pmac_test.c" + "libtomcrypt/src/mac/poly1305/poly1305.c" + "libtomcrypt/src/mac/poly1305/poly1305_file.c" + "libtomcrypt/src/mac/poly1305/poly1305_memory.c" + "libtomcrypt/src/mac/poly1305/poly1305_memory_multi.c" + "libtomcrypt/src/mac/poly1305/poly1305_test.c" + "libtomcrypt/src/mac/xcbc/xcbc_done.c" + "libtomcrypt/src/mac/xcbc/xcbc_file.c" + "libtomcrypt/src/mac/xcbc/xcbc_init.c" + "libtomcrypt/src/mac/xcbc/xcbc_memory.c" + "libtomcrypt/src/mac/xcbc/xcbc_memory_multi.c" + "libtomcrypt/src/mac/xcbc/xcbc_process.c" + "libtomcrypt/src/mac/xcbc/xcbc_test.c" + "libtomcrypt/src/math/gmp_desc.c" + "libtomcrypt/src/math/ltm_desc.c" + "libtomcrypt/src/math/multi.c" + "libtomcrypt/src/math/radix_to_bin.c" + "libtomcrypt/src/math/rand_bn.c" + "libtomcrypt/src/math/rand_prime.c" + "libtomcrypt/src/math/tfm_desc.c" + "libtomcrypt/src/math/fp/ltc_ecc_fp_mulmod.c" + "libtomcrypt/src/misc/adler32.c" + "libtomcrypt/src/misc/burn_stack.c" + "libtomcrypt/src/misc/compare_testvector.c" + "libtomcrypt/src/misc/crc32.c" + "libtomcrypt/src/misc/error_to_string.c" + "libtomcrypt/src/misc/mem_neq.c" + "libtomcrypt/src/misc/pk_get_oid.c" + "libtomcrypt/src/misc/zeromem.c" + "libtomcrypt/src/misc/base64/base64_decode.c" + "libtomcrypt/src/misc/base64/base64_encode.c" + "libtomcrypt/src/misc/crypt/crypt.c" + "libtomcrypt/src/misc/crypt/crypt_argchk.c" + "libtomcrypt/src/misc/crypt/crypt_cipher_descriptor.c" + "libtomcrypt/src/misc/crypt/crypt_cipher_is_valid.c" + "libtomcrypt/src/misc/crypt/crypt_constants.c" + "libtomcrypt/src/misc/crypt/crypt_find_cipher.c" + "libtomcrypt/src/misc/crypt/crypt_find_cipher_any.c" + "libtomcrypt/src/misc/crypt/crypt_find_cipher_id.c" + "libtomcrypt/src/misc/crypt/crypt_find_hash.c" + "libtomcrypt/src/misc/crypt/crypt_find_hash_any.c" + "libtomcrypt/src/misc/crypt/crypt_find_hash_id.c" + "libtomcrypt/src/misc/crypt/crypt_find_hash_oid.c" + "libtomcrypt/src/misc/crypt/crypt_find_prng.c" + "libtomcrypt/src/misc/crypt/crypt_fsa.c" + "libtomcrypt/src/misc/crypt/crypt_hash_descriptor.c" + "libtomcrypt/src/misc/crypt/crypt_hash_is_valid.c" + "libtomcrypt/src/misc/crypt/crypt_inits.c" + "libtomcrypt/src/misc/crypt/crypt_ltc_mp_descriptor.c" + "libtomcrypt/src/misc/crypt/crypt_prng_descriptor.c" + "libtomcrypt/src/misc/crypt/crypt_prng_is_valid.c" + "libtomcrypt/src/misc/crypt/crypt_prng_rng_descriptor.c" + "libtomcrypt/src/misc/crypt/crypt_register_all_ciphers.c" + "libtomcrypt/src/misc/crypt/crypt_register_all_hashes.c" + "libtomcrypt/src/misc/crypt/crypt_register_all_prngs.c" + "libtomcrypt/src/misc/crypt/crypt_register_cipher.c" + "libtomcrypt/src/misc/crypt/crypt_register_hash.c" + "libtomcrypt/src/misc/crypt/crypt_register_prng.c" + "libtomcrypt/src/misc/crypt/crypt_sizes.c" + "libtomcrypt/src/misc/crypt/crypt_unregister_cipher.c" + "libtomcrypt/src/misc/crypt/crypt_unregister_hash.c" + "libtomcrypt/src/misc/crypt/crypt_unregister_prng.c" + "libtomcrypt/src/misc/hkdf/hkdf.c" + "libtomcrypt/src/misc/hkdf/hkdf_test.c" + "libtomcrypt/src/misc/pkcs5/pkcs_5_1.c" + "libtomcrypt/src/misc/pkcs5/pkcs_5_2.c" + "libtomcrypt/src/misc/pkcs5/pkcs_5_test.c" + "libtomcrypt/src/modes/cbc/cbc_decrypt.c" + "libtomcrypt/src/modes/cbc/cbc_done.c" + "libtomcrypt/src/modes/cbc/cbc_encrypt.c" + "libtomcrypt/src/modes/cbc/cbc_getiv.c" + "libtomcrypt/src/modes/cbc/cbc_setiv.c" + "libtomcrypt/src/modes/cbc/cbc_start.c" + "libtomcrypt/src/modes/cfb/cfb_decrypt.c" + "libtomcrypt/src/modes/cfb/cfb_done.c" + "libtomcrypt/src/modes/cfb/cfb_encrypt.c" + "libtomcrypt/src/modes/cfb/cfb_getiv.c" + "libtomcrypt/src/modes/cfb/cfb_setiv.c" + "libtomcrypt/src/modes/cfb/cfb_start.c" + "libtomcrypt/src/modes/ctr/ctr_decrypt.c" + "libtomcrypt/src/modes/ctr/ctr_done.c" + "libtomcrypt/src/modes/ctr/ctr_encrypt.c" + "libtomcrypt/src/modes/ctr/ctr_getiv.c" + "libtomcrypt/src/modes/ctr/ctr_setiv.c" + "libtomcrypt/src/modes/ctr/ctr_start.c" + "libtomcrypt/src/modes/ctr/ctr_test.c" + "libtomcrypt/src/modes/ecb/ecb_decrypt.c" + "libtomcrypt/src/modes/ecb/ecb_done.c" + "libtomcrypt/src/modes/ecb/ecb_encrypt.c" + "libtomcrypt/src/modes/ecb/ecb_start.c" + "libtomcrypt/src/modes/f8/f8_decrypt.c" + "libtomcrypt/src/modes/f8/f8_done.c" + "libtomcrypt/src/modes/f8/f8_encrypt.c" + "libtomcrypt/src/modes/f8/f8_getiv.c" + "libtomcrypt/src/modes/f8/f8_setiv.c" + "libtomcrypt/src/modes/f8/f8_start.c" + "libtomcrypt/src/modes/f8/f8_test_mode.c" + "libtomcrypt/src/modes/lrw/lrw_decrypt.c" + "libtomcrypt/src/modes/lrw/lrw_done.c" + "libtomcrypt/src/modes/lrw/lrw_encrypt.c" + "libtomcrypt/src/modes/lrw/lrw_getiv.c" + "libtomcrypt/src/modes/lrw/lrw_process.c" + "libtomcrypt/src/modes/lrw/lrw_setiv.c" + "libtomcrypt/src/modes/lrw/lrw_start.c" + "libtomcrypt/src/modes/lrw/lrw_test.c" + "libtomcrypt/src/modes/ofb/ofb_decrypt.c" + "libtomcrypt/src/modes/ofb/ofb_done.c" + "libtomcrypt/src/modes/ofb/ofb_encrypt.c" + "libtomcrypt/src/modes/ofb/ofb_getiv.c" + "libtomcrypt/src/modes/ofb/ofb_setiv.c" + "libtomcrypt/src/modes/ofb/ofb_start.c" + "libtomcrypt/src/modes/xts/xts_decrypt.c" + "libtomcrypt/src/modes/xts/xts_done.c" + "libtomcrypt/src/modes/xts/xts_encrypt.c" + "libtomcrypt/src/modes/xts/xts_init.c" + "libtomcrypt/src/modes/xts/xts_mult_x.c" + "libtomcrypt/src/modes/xts/xts_test.c" + "libtomcrypt/src/pk/asn1/der/bit/der_decode_bit_string.c" + "libtomcrypt/src/pk/asn1/der/bit/der_decode_raw_bit_string.c" + "libtomcrypt/src/pk/asn1/der/bit/der_encode_bit_string.c" + "libtomcrypt/src/pk/asn1/der/bit/der_encode_raw_bit_string.c" + "libtomcrypt/src/pk/asn1/der/bit/der_length_bit_string.c" + "libtomcrypt/src/pk/asn1/der/boolean/der_decode_boolean.c" + "libtomcrypt/src/pk/asn1/der/boolean/der_encode_boolean.c" + "libtomcrypt/src/pk/asn1/der/boolean/der_length_boolean.c" + "libtomcrypt/src/pk/asn1/der/choice/der_decode_choice.c" + "libtomcrypt/src/pk/asn1/der/generalizedtime/der_decode_generalizedtime.c" + "libtomcrypt/src/pk/asn1/der/generalizedtime/der_encode_generalizedtime.c" + "libtomcrypt/src/pk/asn1/der/generalizedtime/der_length_generalizedtime.c" + "libtomcrypt/src/pk/asn1/der/ia5/der_decode_ia5_string.c" + "libtomcrypt/src/pk/asn1/der/ia5/der_encode_ia5_string.c" + "libtomcrypt/src/pk/asn1/der/ia5/der_length_ia5_string.c" + "libtomcrypt/src/pk/asn1/der/integer/der_decode_integer.c" + "libtomcrypt/src/pk/asn1/der/integer/der_encode_integer.c" + "libtomcrypt/src/pk/asn1/der/integer/der_length_integer.c" + "libtomcrypt/src/pk/asn1/der/object_identifier/der_decode_object_identifier.c" + "libtomcrypt/src/pk/asn1/der/object_identifier/der_encode_object_identifier.c" + "libtomcrypt/src/pk/asn1/der/object_identifier/der_length_object_identifier.c" + "libtomcrypt/src/pk/asn1/der/octet/der_decode_octet_string.c" + "libtomcrypt/src/pk/asn1/der/octet/der_encode_octet_string.c" + "libtomcrypt/src/pk/asn1/der/octet/der_length_octet_string.c" + "libtomcrypt/src/pk/asn1/der/printable_string/der_decode_printable_string.c" + "libtomcrypt/src/pk/asn1/der/printable_string/der_encode_printable_string.c" + "libtomcrypt/src/pk/asn1/der/printable_string/der_length_printable_string.c" + "libtomcrypt/src/pk/asn1/der/sequence/der_decode_sequence_ex.c" + "libtomcrypt/src/pk/asn1/der/sequence/der_decode_sequence_flexi.c" + "libtomcrypt/src/pk/asn1/der/sequence/der_decode_sequence_multi.c" + "libtomcrypt/src/pk/asn1/der/sequence/der_decode_subject_public_key_info.c" + "libtomcrypt/src/pk/asn1/der/sequence/der_encode_sequence_ex.c" + "libtomcrypt/src/pk/asn1/der/sequence/der_encode_sequence_multi.c" + "libtomcrypt/src/pk/asn1/der/sequence/der_encode_subject_public_key_info.c" + "libtomcrypt/src/pk/asn1/der/sequence/der_length_sequence.c" + "libtomcrypt/src/pk/asn1/der/sequence/der_sequence_free.c" + "libtomcrypt/src/pk/asn1/der/sequence/der_sequence_shrink.c" + "libtomcrypt/src/pk/asn1/der/set/der_encode_set.c" + "libtomcrypt/src/pk/asn1/der/set/der_encode_setof.c" + "libtomcrypt/src/pk/asn1/der/short_integer/der_decode_short_integer.c" + "libtomcrypt/src/pk/asn1/der/short_integer/der_encode_short_integer.c" + "libtomcrypt/src/pk/asn1/der/short_integer/der_length_short_integer.c" + "libtomcrypt/src/pk/asn1/der/teletex_string/der_decode_teletex_string.c" + "libtomcrypt/src/pk/asn1/der/teletex_string/der_length_teletex_string.c" + "libtomcrypt/src/pk/asn1/der/utctime/der_decode_utctime.c" + "libtomcrypt/src/pk/asn1/der/utctime/der_encode_utctime.c" + "libtomcrypt/src/pk/asn1/der/utctime/der_length_utctime.c" + "libtomcrypt/src/pk/asn1/der/utf8/der_decode_utf8_string.c" + "libtomcrypt/src/pk/asn1/der/utf8/der_encode_utf8_string.c" + "libtomcrypt/src/pk/asn1/der/utf8/der_length_utf8_string.c" + "libtomcrypt/src/pk/dh/dh.c" + "libtomcrypt/src/pk/dh/dh_check_pubkey.c" + "libtomcrypt/src/pk/dh/dh_export.c" + "libtomcrypt/src/pk/dh/dh_export_key.c" + "libtomcrypt/src/pk/dh/dh_free.c" + "libtomcrypt/src/pk/dh/dh_generate_key.c" + "libtomcrypt/src/pk/dh/dh_import.c" + "libtomcrypt/src/pk/dh/dh_set.c" + "libtomcrypt/src/pk/dh/dh_set_pg_dhparam.c" + "libtomcrypt/src/pk/dh/dh_shared_secret.c" + "libtomcrypt/src/pk/dsa/dsa_decrypt_key.c" + "libtomcrypt/src/pk/dsa/dsa_encrypt_key.c" + "libtomcrypt/src/pk/dsa/dsa_export.c" + "libtomcrypt/src/pk/dsa/dsa_free.c" + "libtomcrypt/src/pk/dsa/dsa_generate_key.c" + "libtomcrypt/src/pk/dsa/dsa_generate_pqg.c" + "libtomcrypt/src/pk/dsa/dsa_import.c" + "libtomcrypt/src/pk/dsa/dsa_make_key.c" + "libtomcrypt/src/pk/dsa/dsa_set.c" + "libtomcrypt/src/pk/dsa/dsa_set_pqg_dsaparam.c" + "libtomcrypt/src/pk/dsa/dsa_shared_secret.c" + "libtomcrypt/src/pk/dsa/dsa_sign_hash.c" + "libtomcrypt/src/pk/dsa/dsa_verify_hash.c" + "libtomcrypt/src/pk/dsa/dsa_verify_key.c" + "libtomcrypt/src/pk/ecc/ecc.c" + "libtomcrypt/src/pk/ecc/ecc_ansi_x963_export.c" + "libtomcrypt/src/pk/ecc/ecc_ansi_x963_import.c" + "libtomcrypt/src/pk/ecc/ecc_decrypt_key.c" + "libtomcrypt/src/pk/ecc/ecc_encrypt_key.c" + "libtomcrypt/src/pk/ecc/ecc_export.c" + "libtomcrypt/src/pk/ecc/ecc_free.c" + "libtomcrypt/src/pk/ecc/ecc_get_size.c" + "libtomcrypt/src/pk/ecc/ecc_import.c" + "libtomcrypt/src/pk/ecc/ecc_make_key.c" + "libtomcrypt/src/pk/ecc/ecc_shared_secret.c" + "libtomcrypt/src/pk/ecc/ecc_sign_hash.c" + "libtomcrypt/src/pk/ecc/ecc_sizes.c" + "libtomcrypt/src/pk/ecc/ecc_test.c" + "libtomcrypt/src/pk/ecc/ecc_verify_hash.c" + "libtomcrypt/src/pk/ecc/ltc_ecc_is_valid_idx.c" + "libtomcrypt/src/pk/ecc/ltc_ecc_map.c" + "libtomcrypt/src/pk/ecc/ltc_ecc_mul2add.c" + "libtomcrypt/src/pk/ecc/ltc_ecc_mulmod.c" + "libtomcrypt/src/pk/ecc/ltc_ecc_mulmod_timing.c" + "libtomcrypt/src/pk/ecc/ltc_ecc_points.c" + "libtomcrypt/src/pk/ecc/ltc_ecc_projective_add_point.c" + "libtomcrypt/src/pk/ecc/ltc_ecc_projective_dbl_point.c" + "libtomcrypt/src/pk/katja/katja_decrypt_key.c" + "libtomcrypt/src/pk/katja/katja_encrypt_key.c" + "libtomcrypt/src/pk/katja/katja_export.c" + "libtomcrypt/src/pk/katja/katja_exptmod.c" + "libtomcrypt/src/pk/katja/katja_free.c" + "libtomcrypt/src/pk/katja/katja_import.c" + "libtomcrypt/src/pk/katja/katja_make_key.c" + "libtomcrypt/src/pk/pkcs1/pkcs_1_i2osp.c" + "libtomcrypt/src/pk/pkcs1/pkcs_1_mgf1.c" + "libtomcrypt/src/pk/pkcs1/pkcs_1_oaep_decode.c" + "libtomcrypt/src/pk/pkcs1/pkcs_1_oaep_encode.c" + "libtomcrypt/src/pk/pkcs1/pkcs_1_os2ip.c" + "libtomcrypt/src/pk/pkcs1/pkcs_1_pss_decode.c" + "libtomcrypt/src/pk/pkcs1/pkcs_1_pss_encode.c" + "libtomcrypt/src/pk/pkcs1/pkcs_1_v1_5_decode.c" + "libtomcrypt/src/pk/pkcs1/pkcs_1_v1_5_encode.c" + "libtomcrypt/src/pk/rsa/rsa_decrypt_key.c" + "libtomcrypt/src/pk/rsa/rsa_encrypt_key.c" + "libtomcrypt/src/pk/rsa/rsa_export.c" + "libtomcrypt/src/pk/rsa/rsa_exptmod.c" + "libtomcrypt/src/pk/rsa/rsa_free.c" + "libtomcrypt/src/pk/rsa/rsa_get_size.c" + "libtomcrypt/src/pk/rsa/rsa_import.c" + "libtomcrypt/src/pk/rsa/rsa_import_pkcs8.c" + "libtomcrypt/src/pk/rsa/rsa_import_x509.c" + "libtomcrypt/src/pk/rsa/rsa_make_key.c" + "libtomcrypt/src/pk/rsa/rsa_set.c" + "libtomcrypt/src/pk/rsa/rsa_sign_hash.c" + "libtomcrypt/src/pk/rsa/rsa_sign_saltlen_get.c" + "libtomcrypt/src/pk/rsa/rsa_verify_hash.c" + "libtomcrypt/src/prngs/chacha20.c" + "libtomcrypt/src/prngs/fortuna.c" + "libtomcrypt/src/prngs/rc4.c" + "libtomcrypt/src/prngs/rng_get_bytes.c" + "libtomcrypt/src/prngs/rng_make_prng.c" + "libtomcrypt/src/prngs/sober128.c" + "libtomcrypt/src/prngs/sprng.c" + "libtomcrypt/src/prngs/yarrow.c" + "libtomcrypt/src/stream/chacha/chacha_crypt.c" + "libtomcrypt/src/stream/chacha/chacha_done.c" + "libtomcrypt/src/stream/chacha/chacha_ivctr32.c" + "libtomcrypt/src/stream/chacha/chacha_ivctr64.c" + "libtomcrypt/src/stream/chacha/chacha_keystream.c" + "libtomcrypt/src/stream/chacha/chacha_setup.c" + "libtomcrypt/src/stream/chacha/chacha_test.c" + "libtomcrypt/src/stream/rc4/rc4_stream.c" + "libtomcrypt/src/stream/rc4/rc4_test.c" + "libtomcrypt/src/stream/sober128/sober128_stream.c" + "libtomcrypt/src/stream/sober128/sober128_test.c") - set(TOMCRYPT_HPP "libtomcrypt/src/headers/tomcrypt.h" - "libtomcrypt/src/headers/tomcrypt_argchk.h" - "libtomcrypt/src/headers/tomcrypt_cfg.h" - "libtomcrypt/src/headers/tomcrypt_cipher.h" - "libtomcrypt/src/headers/tomcrypt_custom.h" - "libtomcrypt/src/headers/tomcrypt_hash.h" - "libtomcrypt/src/headers/tomcrypt_mac.h" - "libtomcrypt/src/headers/tomcrypt_macros.h" - "libtomcrypt/src/headers/tomcrypt_math.h" - "libtomcrypt/src/headers/tomcrypt_misc.h" - "libtomcrypt/src/headers/tomcrypt_pk.h" - "libtomcrypt/src/headers/tomcrypt_pkcs.h" - "libtomcrypt/src/headers/tomcrypt_prng.h") +set(TOMCRYPT_HPP "libtomcrypt/src/headers/tomcrypt.h" + "libtomcrypt/src/headers/tomcrypt_argchk.h" + "libtomcrypt/src/headers/tomcrypt_cfg.h" + "libtomcrypt/src/headers/tomcrypt_cipher.h" + "libtomcrypt/src/headers/tomcrypt_custom.h" + "libtomcrypt/src/headers/tomcrypt_hash.h" + "libtomcrypt/src/headers/tomcrypt_mac.h" + "libtomcrypt/src/headers/tomcrypt_macros.h" + "libtomcrypt/src/headers/tomcrypt_math.h" + "libtomcrypt/src/headers/tomcrypt_misc.h" + "libtomcrypt/src/headers/tomcrypt_pk.h" + "libtomcrypt/src/headers/tomcrypt_pkcs.h" + "libtomcrypt/src/headers/tomcrypt_prng.h") - source_group("" FILES ${TOMCRYPT_SRC} ${TOMCRYPT_HPP}) +source_group("" FILES ${TOMCRYPT_SRC} ${TOMCRYPT_HPP}) - add_library("tomcrypt" STATIC ${TOMCRYPT_SRC} ${TOMCRYPT_HPP}) +add_library("tomcrypt" STATIC ${TOMCRYPT_SRC} ${TOMCRYPT_HPP}) - set_property(TARGET "tomcrypt" PROPERTY FOLDER "External Libraries") +set_property(TARGET "tomcrypt" PROPERTY FOLDER "External Libraries") - # Required since building from the source. - target_compile_definitions("tomcrypt" PRIVATE LTC_SOURCE) +# Required since building from the source. +target_compile_definitions("tomcrypt" PRIVATE LTC_SOURCE) - # Required since tommath is a dependency. - target_compile_definitions("tomcrypt" PUBLIC LTM_DESC) +# Required since tommath is a dependency. +target_compile_definitions("tomcrypt" PUBLIC LTM_DESC) - # This was defined behind an always active block. - target_compile_definitions("tomcrypt" PRIVATE LTC_DEVRANDOM) +# This was defined behind an always active block. +target_compile_definitions("tomcrypt" PRIVATE LTC_DEVRANDOM) - # Common formulas used by our app. - target_compile_definitions("tomcrypt" PRIVATE LTC_SHA256) - target_compile_definitions("tomcrypt" PRIVATE LTC_SHA1) - target_compile_definitions("tomcrypt" PRIVATE LTC_MD5) +# Common formulas used by our app. +target_compile_definitions("tomcrypt" PRIVATE LTC_SHA256) +target_compile_definitions("tomcrypt" PRIVATE LTC_SHA1) +target_compile_definitions("tomcrypt" PRIVATE LTC_MD5) - # Use the full AES encryption items. - target_compile_definitions("tomcrypt" PRIVATE LTC_YARROW) - target_compile_definitions("tomcrypt" PRIVATE LTC_YARROW_AES=3) +# Use the full AES encryption items. +target_compile_definitions("tomcrypt" PRIVATE LTC_YARROW) +target_compile_definitions("tomcrypt" PRIVATE LTC_YARROW_AES=3) - # Other definitions we used in the past, but whose meanings are not clear. - target_compile_definitions("tomcrypt" PRIVATE LTC_NO_PKCS) - target_compile_definitions("tomcrypt" PRIVATE LTC_PKCS_1) - target_compile_definitions("tomcrypt" PRIVATE LTC_DER) - target_compile_definitions("tomcrypt" PRIVATE LTC_NO_MODES) - target_compile_definitions("tomcrypt" PRIVATE LTC_ECB_MODE) - target_compile_definitions("tomcrypt" PRIVATE LTC_CBC_MODE) - target_compile_definitions("tomcrypt" PRIVATE LTC_CTR_MODE) - target_compile_definitions("tomcrypt" PRIVATE LTC_NO_HASHES) - target_compile_definitions("tomcrypt" PRIVATE LTC_NO_MACS) # no MAC (message authentication code) support - target_compile_definitions("tomcrypt" PRIVATE LTC_NO_PRNGS) - target_compile_definitions("tomcrypt" PRIVATE LTC_RNG_GET_BYTES) - target_compile_definitions("tomcrypt" PRIVATE LTC_RNG_MAKE_PRNG) - target_compile_definitions("tomcrypt" PRIVATE LTC_TRY_URANDOM_FIRST) - target_compile_definitions("tomcrypt" PRIVATE LTC_NO_PK) - target_compile_definitions("tomcrypt" PRIVATE LTC_MRSA) - target_compile_definitions("tomcrypt" PRIVATE LTC_NO_PROTOTYPES) +# Other definitions we used in the past, but whose meanings are not clear. +target_compile_definitions("tomcrypt" PRIVATE LTC_NO_PKCS) +target_compile_definitions("tomcrypt" PRIVATE LTC_PKCS_1) +target_compile_definitions("tomcrypt" PRIVATE LTC_DER) +target_compile_definitions("tomcrypt" PRIVATE LTC_NO_MODES) +target_compile_definitions("tomcrypt" PRIVATE LTC_ECB_MODE) +target_compile_definitions("tomcrypt" PRIVATE LTC_CBC_MODE) +target_compile_definitions("tomcrypt" PRIVATE LTC_CTR_MODE) +target_compile_definitions("tomcrypt" PRIVATE LTC_NO_HASHES) +target_compile_definitions("tomcrypt" PRIVATE LTC_NO_MACS) # no MAC (message authentication code) support +target_compile_definitions("tomcrypt" PRIVATE LTC_NO_PRNGS) +target_compile_definitions("tomcrypt" PRIVATE LTC_RNG_GET_BYTES) +target_compile_definitions("tomcrypt" PRIVATE LTC_RNG_MAKE_PRNG) +target_compile_definitions("tomcrypt" PRIVATE LTC_TRY_URANDOM_FIRST) +target_compile_definitions("tomcrypt" PRIVATE LTC_NO_PK) +target_compile_definitions("tomcrypt" PRIVATE LTC_MRSA) +target_compile_definitions("tomcrypt" PRIVATE LTC_NO_PROTOTYPES) - if(WITH_PORTABLE_TOMCRYPT) - target_compile_definitions("tomcrypt" PRIVATE LTC_NO_ASM) - endif() - if(WITH_NO_ROLC_TOMCRYPT) - target_compile_definitions("tomcrypt" PRIVATE LTC_NO_ROLC) - endif() - - if(APPLE) - set_property(TARGET "tomcrypt" PROPERTY XCODE_ATTRIBUTE_GCC_NO_COMMON_BLOCKS "YES") - endif() - if(MSVC) - target_compile_definitions("tomcrypt" PRIVATE _CRT_SECURE_NO_WARNINGS) - endif() - - disable_project_warnings("tomcrypt") - - target_link_libraries("tomcrypt" "tommath") - - target_include_directories("tomcrypt" PUBLIC "libtomcrypt/src/headers") +if(WITH_PORTABLE_TOMCRYPT) + target_compile_definitions("tomcrypt" PRIVATE LTC_NO_ASM) endif() +if(WITH_NO_ROLC_TOMCRYPT) + target_compile_definitions("tomcrypt" PRIVATE LTC_NO_ROLC) +endif() + +if(APPLE) + set_property(TARGET "tomcrypt" PROPERTY XCODE_ATTRIBUTE_GCC_NO_COMMON_BLOCKS "YES") +endif() +if(MSVC) + target_compile_definitions("tomcrypt" PRIVATE _CRT_SECURE_NO_WARNINGS) +endif() + +disable_project_warnings("tomcrypt") + +target_link_libraries("tomcrypt" "tommath") + +target_include_directories("tomcrypt" PUBLIC "libtomcrypt/src/headers") diff --git a/extern/CMakeProject-tommath.cmake b/extern/CMakeProject-tommath.cmake index e9ebcf5608..7db6f43f80 100644 --- a/extern/CMakeProject-tommath.cmake +++ b/extern/CMakeProject-tommath.cmake @@ -1,187 +1,180 @@ -if(WITH_SYSTEM_TOMMATH) - find_library(TOMMATH_LIBRARY tommath) - if(TOMMATH_LIBRARY MATCHES "TOMMATH_LIBRARY-NOTFOUND") - message(FATAL_ERROR "Need tommath.") - endif() -else() - set(TOMMATH_SRC "libtommath/bn_cutoffs.c" - "libtommath/bn_deprecated.c" - "libtommath/bn_mp_2expt.c" - "libtommath/bn_mp_abs.c" - "libtommath/bn_mp_add.c" - "libtommath/bn_mp_add_d.c" - "libtommath/bn_mp_addmod.c" - "libtommath/bn_mp_and.c" - "libtommath/bn_mp_clamp.c" - "libtommath/bn_mp_clear.c" - "libtommath/bn_mp_clear_multi.c" - "libtommath/bn_mp_cmp.c" - "libtommath/bn_mp_cmp_d.c" - "libtommath/bn_mp_cmp_mag.c" - "libtommath/bn_mp_cnt_lsb.c" - "libtommath/bn_mp_complement.c" - "libtommath/bn_mp_copy.c" - "libtommath/bn_mp_count_bits.c" - "libtommath/bn_mp_decr.c" - "libtommath/bn_mp_div_2.c" - "libtommath/bn_mp_div_2d.c" - "libtommath/bn_mp_div_3.c" - "libtommath/bn_mp_div.c" - "libtommath/bn_mp_div_d.c" - "libtommath/bn_mp_dr_is_modulus.c" - "libtommath/bn_mp_dr_reduce.c" - "libtommath/bn_mp_dr_setup.c" - "libtommath/bn_mp_error_to_string.c" - "libtommath/bn_mp_exch.c" - "libtommath/bn_mp_exptmod.c" - "libtommath/bn_mp_expt_u32.c" - "libtommath/bn_mp_exteuclid.c" - "libtommath/bn_mp_fread.c" - "libtommath/bn_mp_from_sbin.c" - "libtommath/bn_mp_from_ubin.c" - "libtommath/bn_mp_fwrite.c" - "libtommath/bn_mp_gcd.c" - "libtommath/bn_mp_get_double.c" - "libtommath/bn_mp_get_i32.c" - "libtommath/bn_mp_get_i64.c" - "libtommath/bn_mp_get_l.c" - "libtommath/bn_mp_get_ll.c" - "libtommath/bn_mp_get_mag_u32.c" - "libtommath/bn_mp_get_mag_u64.c" - "libtommath/bn_mp_get_mag_ul.c" - "libtommath/bn_mp_get_mag_ull.c" - "libtommath/bn_mp_grow.c" - "libtommath/bn_mp_incr.c" - "libtommath/bn_mp_init.c" - "libtommath/bn_mp_init_copy.c" - "libtommath/bn_mp_init_i32.c" - "libtommath/bn_mp_init_i64.c" - "libtommath/bn_mp_init_l.c" - "libtommath/bn_mp_init_ll.c" - "libtommath/bn_mp_init_multi.c" - "libtommath/bn_mp_init_set.c" - "libtommath/bn_mp_init_size.c" - "libtommath/bn_mp_init_u32.c" - "libtommath/bn_mp_init_u64.c" - "libtommath/bn_mp_init_ul.c" - "libtommath/bn_mp_init_ull.c" - "libtommath/bn_mp_invmod.c" - "libtommath/bn_mp_iseven.c" - "libtommath/bn_mp_isodd.c" - "libtommath/bn_mp_is_square.c" - "libtommath/bn_mp_kronecker.c" - "libtommath/bn_mp_lcm.c" - "libtommath/bn_mp_log_u32.c" - "libtommath/bn_mp_lshd.c" - "libtommath/bn_mp_mod_2d.c" - "libtommath/bn_mp_mod.c" - "libtommath/bn_mp_mod_d.c" - "libtommath/bn_mp_montgomery_calc_normalization.c" - "libtommath/bn_mp_montgomery_reduce.c" - "libtommath/bn_mp_montgomery_setup.c" - "libtommath/bn_mp_mul_2.c" - "libtommath/bn_mp_mul_2d.c" - "libtommath/bn_mp_mul.c" - "libtommath/bn_mp_mul_d.c" - "libtommath/bn_mp_mulmod.c" - "libtommath/bn_mp_neg.c" - "libtommath/bn_mp_or.c" - "libtommath/bn_mp_pack.c" - "libtommath/bn_mp_pack_count.c" - "libtommath/bn_mp_prime_fermat.c" - "libtommath/bn_mp_prime_frobenius_underwood.c" - "libtommath/bn_mp_prime_is_prime.c" - "libtommath/bn_mp_prime_miller_rabin.c" - "libtommath/bn_mp_prime_next_prime.c" - "libtommath/bn_mp_prime_rabin_miller_trials.c" - "libtommath/bn_mp_prime_rand.c" - "libtommath/bn_mp_prime_strong_lucas_selfridge.c" - "libtommath/bn_mp_radix_size.c" - "libtommath/bn_mp_radix_smap.c" - "libtommath/bn_mp_rand.c" - "libtommath/bn_mp_read_radix.c" - "libtommath/bn_mp_reduce_2k.c" - "libtommath/bn_mp_reduce_2k_l.c" - "libtommath/bn_mp_reduce_2k_setup.c" - "libtommath/bn_mp_reduce_2k_setup_l.c" - "libtommath/bn_mp_reduce.c" - "libtommath/bn_mp_reduce_is_2k.c" - "libtommath/bn_mp_reduce_is_2k_l.c" - "libtommath/bn_mp_reduce_setup.c" - "libtommath/bn_mp_root_u32.c" - "libtommath/bn_mp_rshd.c" - "libtommath/bn_mp_sbin_size.c" - "libtommath/bn_mp_set.c" - "libtommath/bn_mp_set_double.c" - "libtommath/bn_mp_set_i32.c" - "libtommath/bn_mp_set_i64.c" - "libtommath/bn_mp_set_l.c" - "libtommath/bn_mp_set_ll.c" - "libtommath/bn_mp_set_u32.c" - "libtommath/bn_mp_set_u64.c" - "libtommath/bn_mp_set_ul.c" - "libtommath/bn_mp_set_ull.c" - "libtommath/bn_mp_shrink.c" - "libtommath/bn_mp_signed_rsh.c" - "libtommath/bn_mp_sqr.c" - "libtommath/bn_mp_sqrmod.c" - "libtommath/bn_mp_sqrt.c" - "libtommath/bn_mp_sqrtmod_prime.c" - "libtommath/bn_mp_sub.c" - "libtommath/bn_mp_sub_d.c" - "libtommath/bn_mp_submod.c" - "libtommath/bn_mp_to_radix.c" - "libtommath/bn_mp_to_sbin.c" - "libtommath/bn_mp_to_ubin.c" - "libtommath/bn_mp_ubin_size.c" - "libtommath/bn_mp_unpack.c" - "libtommath/bn_mp_xor.c" - "libtommath/bn_mp_zero.c" - "libtommath/bn_prime_tab.c" - "libtommath/bn_s_mp_add.c" - "libtommath/bn_s_mp_balance_mul.c" - "libtommath/bn_s_mp_exptmod.c" - "libtommath/bn_s_mp_exptmod_fast.c" - "libtommath/bn_s_mp_get_bit.c" - "libtommath/bn_s_mp_invmod_fast.c" - "libtommath/bn_s_mp_invmod_slow.c" - "libtommath/bn_s_mp_karatsuba_mul.c" - "libtommath/bn_s_mp_karatsuba_sqr.c" - "libtommath/bn_s_mp_montgomery_reduce_fast.c" - "libtommath/bn_s_mp_mul_digs.c" - "libtommath/bn_s_mp_mul_digs_fast.c" - "libtommath/bn_s_mp_mul_high_digs.c" - "libtommath/bn_s_mp_mul_high_digs_fast.c" - "libtommath/bn_s_mp_prime_is_divisible.c" - "libtommath/bn_s_mp_rand_jenkins.c" - "libtommath/bn_s_mp_rand_platform.c" - "libtommath/bn_s_mp_reverse.c" - "libtommath/bn_s_mp_sqr.c" - "libtommath/bn_s_mp_sqr_fast.c" - "libtommath/bn_s_mp_sub.c" - "libtommath/bn_s_mp_toom_mul.c" - "libtommath/bn_s_mp_toom_sqr.c") +set(TOMMATH_SRC "libtommath/bn_cutoffs.c" + "libtommath/bn_deprecated.c" + "libtommath/bn_mp_2expt.c" + "libtommath/bn_mp_abs.c" + "libtommath/bn_mp_add.c" + "libtommath/bn_mp_add_d.c" + "libtommath/bn_mp_addmod.c" + "libtommath/bn_mp_and.c" + "libtommath/bn_mp_clamp.c" + "libtommath/bn_mp_clear.c" + "libtommath/bn_mp_clear_multi.c" + "libtommath/bn_mp_cmp.c" + "libtommath/bn_mp_cmp_d.c" + "libtommath/bn_mp_cmp_mag.c" + "libtommath/bn_mp_cnt_lsb.c" + "libtommath/bn_mp_complement.c" + "libtommath/bn_mp_copy.c" + "libtommath/bn_mp_count_bits.c" + "libtommath/bn_mp_decr.c" + "libtommath/bn_mp_div_2.c" + "libtommath/bn_mp_div_2d.c" + "libtommath/bn_mp_div_3.c" + "libtommath/bn_mp_div.c" + "libtommath/bn_mp_div_d.c" + "libtommath/bn_mp_dr_is_modulus.c" + "libtommath/bn_mp_dr_reduce.c" + "libtommath/bn_mp_dr_setup.c" + "libtommath/bn_mp_error_to_string.c" + "libtommath/bn_mp_exch.c" + "libtommath/bn_mp_exptmod.c" + "libtommath/bn_mp_expt_u32.c" + "libtommath/bn_mp_exteuclid.c" + "libtommath/bn_mp_fread.c" + "libtommath/bn_mp_from_sbin.c" + "libtommath/bn_mp_from_ubin.c" + "libtommath/bn_mp_fwrite.c" + "libtommath/bn_mp_gcd.c" + "libtommath/bn_mp_get_double.c" + "libtommath/bn_mp_get_i32.c" + "libtommath/bn_mp_get_i64.c" + "libtommath/bn_mp_get_l.c" + "libtommath/bn_mp_get_ll.c" + "libtommath/bn_mp_get_mag_u32.c" + "libtommath/bn_mp_get_mag_u64.c" + "libtommath/bn_mp_get_mag_ul.c" + "libtommath/bn_mp_get_mag_ull.c" + "libtommath/bn_mp_grow.c" + "libtommath/bn_mp_incr.c" + "libtommath/bn_mp_init.c" + "libtommath/bn_mp_init_copy.c" + "libtommath/bn_mp_init_i32.c" + "libtommath/bn_mp_init_i64.c" + "libtommath/bn_mp_init_l.c" + "libtommath/bn_mp_init_ll.c" + "libtommath/bn_mp_init_multi.c" + "libtommath/bn_mp_init_set.c" + "libtommath/bn_mp_init_size.c" + "libtommath/bn_mp_init_u32.c" + "libtommath/bn_mp_init_u64.c" + "libtommath/bn_mp_init_ul.c" + "libtommath/bn_mp_init_ull.c" + "libtommath/bn_mp_invmod.c" + "libtommath/bn_mp_iseven.c" + "libtommath/bn_mp_isodd.c" + "libtommath/bn_mp_is_square.c" + "libtommath/bn_mp_kronecker.c" + "libtommath/bn_mp_lcm.c" + "libtommath/bn_mp_log_u32.c" + "libtommath/bn_mp_lshd.c" + "libtommath/bn_mp_mod_2d.c" + "libtommath/bn_mp_mod.c" + "libtommath/bn_mp_mod_d.c" + "libtommath/bn_mp_montgomery_calc_normalization.c" + "libtommath/bn_mp_montgomery_reduce.c" + "libtommath/bn_mp_montgomery_setup.c" + "libtommath/bn_mp_mul_2.c" + "libtommath/bn_mp_mul_2d.c" + "libtommath/bn_mp_mul.c" + "libtommath/bn_mp_mul_d.c" + "libtommath/bn_mp_mulmod.c" + "libtommath/bn_mp_neg.c" + "libtommath/bn_mp_or.c" + "libtommath/bn_mp_pack.c" + "libtommath/bn_mp_pack_count.c" + "libtommath/bn_mp_prime_fermat.c" + "libtommath/bn_mp_prime_frobenius_underwood.c" + "libtommath/bn_mp_prime_is_prime.c" + "libtommath/bn_mp_prime_miller_rabin.c" + "libtommath/bn_mp_prime_next_prime.c" + "libtommath/bn_mp_prime_rabin_miller_trials.c" + "libtommath/bn_mp_prime_rand.c" + "libtommath/bn_mp_prime_strong_lucas_selfridge.c" + "libtommath/bn_mp_radix_size.c" + "libtommath/bn_mp_radix_smap.c" + "libtommath/bn_mp_rand.c" + "libtommath/bn_mp_read_radix.c" + "libtommath/bn_mp_reduce_2k.c" + "libtommath/bn_mp_reduce_2k_l.c" + "libtommath/bn_mp_reduce_2k_setup.c" + "libtommath/bn_mp_reduce_2k_setup_l.c" + "libtommath/bn_mp_reduce.c" + "libtommath/bn_mp_reduce_is_2k.c" + "libtommath/bn_mp_reduce_is_2k_l.c" + "libtommath/bn_mp_reduce_setup.c" + "libtommath/bn_mp_root_u32.c" + "libtommath/bn_mp_rshd.c" + "libtommath/bn_mp_sbin_size.c" + "libtommath/bn_mp_set.c" + "libtommath/bn_mp_set_double.c" + "libtommath/bn_mp_set_i32.c" + "libtommath/bn_mp_set_i64.c" + "libtommath/bn_mp_set_l.c" + "libtommath/bn_mp_set_ll.c" + "libtommath/bn_mp_set_u32.c" + "libtommath/bn_mp_set_u64.c" + "libtommath/bn_mp_set_ul.c" + "libtommath/bn_mp_set_ull.c" + "libtommath/bn_mp_shrink.c" + "libtommath/bn_mp_signed_rsh.c" + "libtommath/bn_mp_sqr.c" + "libtommath/bn_mp_sqrmod.c" + "libtommath/bn_mp_sqrt.c" + "libtommath/bn_mp_sqrtmod_prime.c" + "libtommath/bn_mp_sub.c" + "libtommath/bn_mp_sub_d.c" + "libtommath/bn_mp_submod.c" + "libtommath/bn_mp_to_radix.c" + "libtommath/bn_mp_to_sbin.c" + "libtommath/bn_mp_to_ubin.c" + "libtommath/bn_mp_ubin_size.c" + "libtommath/bn_mp_unpack.c" + "libtommath/bn_mp_xor.c" + "libtommath/bn_mp_zero.c" + "libtommath/bn_prime_tab.c" + "libtommath/bn_s_mp_add.c" + "libtommath/bn_s_mp_balance_mul.c" + "libtommath/bn_s_mp_exptmod.c" + "libtommath/bn_s_mp_exptmod_fast.c" + "libtommath/bn_s_mp_get_bit.c" + "libtommath/bn_s_mp_invmod_fast.c" + "libtommath/bn_s_mp_invmod_slow.c" + "libtommath/bn_s_mp_karatsuba_mul.c" + "libtommath/bn_s_mp_karatsuba_sqr.c" + "libtommath/bn_s_mp_montgomery_reduce_fast.c" + "libtommath/bn_s_mp_mul_digs.c" + "libtommath/bn_s_mp_mul_digs_fast.c" + "libtommath/bn_s_mp_mul_high_digs.c" + "libtommath/bn_s_mp_mul_high_digs_fast.c" + "libtommath/bn_s_mp_prime_is_divisible.c" + "libtommath/bn_s_mp_rand_jenkins.c" + "libtommath/bn_s_mp_rand_platform.c" + "libtommath/bn_s_mp_reverse.c" + "libtommath/bn_s_mp_sqr.c" + "libtommath/bn_s_mp_sqr_fast.c" + "libtommath/bn_s_mp_sub.c" + "libtommath/bn_s_mp_toom_mul.c" + "libtommath/bn_s_mp_toom_sqr.c") - set(TOMMATH_HPP "libtommath/tommath_class.h" - "libtommath/tommath_cutoffs.h" - "libtommath/tommath.h" - "libtommath/tommath_private.h" - "libtommath/tommath_superclass.h") +set(TOMMATH_HPP "libtommath/tommath_class.h" + "libtommath/tommath_cutoffs.h" + "libtommath/tommath.h" + "libtommath/tommath_private.h" + "libtommath/tommath_superclass.h") - source_group("" FILES ${TOMMATH_SRC} ${TOMMATH_HPP}) +source_group("" FILES ${TOMMATH_SRC} ${TOMMATH_HPP}) - add_library("tommath" STATIC ${TOMMATH_SRC} ${TOMMATH_HPP}) +add_library("tommath" STATIC ${TOMMATH_SRC} ${TOMMATH_HPP}) - set_property(TARGET "tommath" PROPERTY FOLDER "External Libraries") +set_property(TARGET "tommath" PROPERTY FOLDER "External Libraries") - if(MSVC) - # XXX: tommath depends on dead code elimination, so optimizations *have* to be on - string(REGEX REPLACE "/RTC1" "" CMAKE_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG}) - set_property(TARGET "tommath" PROPERTY COMPILE_FLAGS "/Ox") - endif() - - disable_project_warnings("tommath") - - target_include_directories("tommath" PUBLIC "libtommath") +if(MSVC) + # XXX: tommath depends on dead code elimination, so optimizations *have* to be on + string(REGEX REPLACE "/RTC1" "" CMAKE_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG}) + set_property(TARGET "tommath" PROPERTY COMPILE_FLAGS "/Ox") endif() + +disable_project_warnings("tommath") + +target_include_directories("tommath" PUBLIC "libtommath") diff --git a/extern/CMakeProject-zlib.cmake b/extern/CMakeProject-zlib.cmake index fcbc3a1b9d..62e8b13df9 100644 --- a/extern/CMakeProject-zlib.cmake +++ b/extern/CMakeProject-zlib.cmake @@ -1,45 +1,41 @@ -if(WITH_SYSTEM_ZLIB) - find_package(ZLIB REQUIRED) -else() - set(ZLIB_SRC "zlib/adler32.c" - "zlib/compress.c" - "zlib/crc32.c" - "zlib/deflate.c" - "zlib/gzclose.c" - "zlib/gzlib.c" - "zlib/gzread.c" - "zlib/gzwrite.c" - "zlib/infback.c" - "zlib/inffast.c" - "zlib/inflate.c" - "zlib/inftrees.c" - "zlib/trees.c" - "zlib/uncompr.c" - "zlib/zutil.c") +set(ZLIB_SRC "zlib/adler32.c" + "zlib/compress.c" + "zlib/crc32.c" + "zlib/deflate.c" + "zlib/gzclose.c" + "zlib/gzlib.c" + "zlib/gzread.c" + "zlib/gzwrite.c" + "zlib/infback.c" + "zlib/inffast.c" + "zlib/inflate.c" + "zlib/inftrees.c" + "zlib/trees.c" + "zlib/uncompr.c" + "zlib/zutil.c") - set(ZLIB_HPP "zlib/crc32.h" - "zlib/deflate.h" - "zlib/gzguts.h" - "zlib/inffast.h" - "zlib/inffixed.h" - "zlib/inflate.h" - "zlib/inftrees.h" - "zlib/trees.h" - "zlib/zconf.h" - "zlib/zlib.h" - "zlib/zutil.h") +set(ZLIB_HPP "zlib/crc32.h" + "zlib/deflate.h" + "zlib/gzguts.h" + "zlib/inffast.h" + "zlib/inffixed.h" + "zlib/inflate.h" + "zlib/inftrees.h" + "zlib/trees.h" + "zlib/zconf.h" + "zlib/zlib.h" + "zlib/zutil.h") - source_group("" FILES ${ZLIB_SRC} ${ZLIB_HPP}) +source_group("" FILES ${ZLIB_SRC} ${ZLIB_HPP}) - add_library("zlib" STATIC ${ZLIB_SRC} ${ZLIB_HPP}) +add_library("zlib" STATIC ${ZLIB_SRC} ${ZLIB_HPP}) - set_property(TARGET "zlib" PROPERTY FOLDER "External Libraries") +set_property(TARGET "zlib" PROPERTY FOLDER "External Libraries") - disable_project_warnings("zlib") +disable_project_warnings("zlib") - if(MSVC) - target_compile_definitions("zlib" PRIVATE _MBCS) - endif(MSVC) +if(MSVC) + target_compile_definitions("zlib" PRIVATE _MBCS) +endif(MSVC) - target_include_directories("zlib" PUBLIC "zlib") -endif() +target_include_directories("zlib" PUBLIC "zlib") diff --git a/src/CMakeData-arch.cmake b/src/CMakeData-arch.cmake index c0e31a7f0a..a4b4823be9 100644 --- a/src/CMakeData-arch.cmake +++ b/src/CMakeData-arch.cmake @@ -80,34 +80,16 @@ source_group("Arch Specific\\\\Sound" list(APPEND SMDATA_ARCH_MOVIE_TEXTURE_SRC "arch/MovieTexture/MovieTexture.cpp" + "arch/MovieTexture/MovieTexture_FFMpeg.cpp" "arch/MovieTexture/MovieTexture_Generic.cpp" "arch/MovieTexture/MovieTexture_Null.cpp") + list(APPEND SMDATA_ARCH_MOVIE_TEXTURE_HPP "arch/MovieTexture/MovieTexture.h" + "arch/MovieTexture/MovieTexture_FFMpeg.h" "arch/MovieTexture/MovieTexture_Generic.h" "arch/MovieTexture/MovieTexture_Null.h") -if(APPLE) - if(${HAS_FFMPEG}) - list(APPEND SMDATA_ARCH_MOVIE_TEXTURE_SRC - "arch/MovieTexture/MovieTexture_FFMpeg.cpp") - list(APPEND SMDATA_ARCH_MOVIE_TEXTURE_HPP - "arch/MovieTexture/MovieTexture_FFMpeg.h") - endif() -elseif(MSVC) - list(APPEND SMDATA_ARCH_MOVIE_TEXTURE_SRC - "arch/MovieTexture/MovieTexture_FFMpeg.cpp") - list(APPEND SMDATA_ARCH_MOVIE_TEXTURE_HPP - "arch/MovieTexture/MovieTexture_FFMpeg.h") -else() # Unix - if(${HAS_FFMPEG}) - list(APPEND SMDATA_ARCH_MOVIE_TEXTURE_SRC - "arch/MovieTexture/MovieTexture_FFMpeg.cpp") - list(APPEND SMDATA_ARCH_MOVIE_TEXTURE_HPP - "arch/MovieTexture/MovieTexture_FFMpeg.h") - endif() -endif() - source_group("Arch Specific\\\\Movie Texture" FILES ${SMDATA_ARCH_MOVIE_TEXTURE_SRC} diff --git a/src/CMakeData-rage.cmake b/src/CMakeData-rage.cmake index a7149aa0bb..ff5b113f75 100644 --- a/src/CMakeData-rage.cmake +++ b/src/CMakeData-rage.cmake @@ -75,6 +75,7 @@ list(APPEND SMDATA_RAGE_GRAPHICS_SRC "RageTextureManager.cpp" "RageTexturePreloader.cpp" "RageTextureRenderTarget.cpp") + list(APPEND SMDATA_RAGE_GRAPHICS_HPP "RageBitmapTexture.h" "RageDisplay.h" @@ -162,6 +163,7 @@ list(APPEND SMDATA_RAGE_SOUND_SRC "RageSoundReader_ChannelSplit.cpp" "RageSoundReader_Extend.cpp" "RageSoundReader_FileReader.cpp" + "RageSoundReader_MP3.cpp" "RageSoundReader_Merge.cpp" "RageSoundReader_Pan.cpp" "RageSoundReader_PitchChange.cpp" @@ -170,8 +172,10 @@ list(APPEND SMDATA_RAGE_SOUND_SRC "RageSoundReader_Resample_Good.cpp" "RageSoundReader_SpeedChange.cpp" "RageSoundReader_ThreadedBuffer.cpp" + "RageSoundReader_Vorbisfile.cpp" "RageSoundReader_WAV.cpp" "RageSoundUtil.cpp") + list(APPEND SMDATA_RAGE_SOUND_HPP "RageSound.h" "RageSoundManager.h" @@ -183,6 +187,7 @@ list(APPEND SMDATA_RAGE_SOUND_HPP "RageSoundReader_Extend.h" "RageSoundReader_FileReader.h" "RageSoundReader_Filter.h" + "RageSoundReader_MP3.h" "RageSoundReader_Merge.h" "RageSoundReader_Pan.h" "RageSoundReader_PitchChange.h" @@ -191,19 +196,10 @@ list(APPEND SMDATA_RAGE_SOUND_HPP "RageSoundReader_Resample_Good.h" "RageSoundReader_SpeedChange.h" "RageSoundReader_ThreadedBuffer.h" + "RageSoundReader_Vorbisfile.h" "RageSoundReader_WAV.h" "RageSoundUtil.h") -if(HAS_OGG) - list(APPEND SMDATA_RAGE_SOUND_SRC "RageSoundReader_Vorbisfile.cpp") - list(APPEND SMDATA_RAGE_SOUND_HPP "RageSoundReader_Vorbisfile.h") -endif() - -if(HAS_MP3) - list(APPEND SMDATA_RAGE_SOUND_SRC "RageSoundReader_MP3.cpp") - list(APPEND SMDATA_RAGE_SOUND_HPP "RageSoundReader_MP3.h") -endif() - source_group("Rage\\\\Sound" FILES ${SMDATA_RAGE_SOUND_SRC} diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c223c52c46..0d17c74da6 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -214,10 +214,6 @@ elseif(APPLE) target_compile_definitions("${SM_EXE_NAME}" PRIVATE _XOPEN_SOURCE) - if(${HAS_FFMPEG}) - target_compile_definitions("${SM_EXE_NAME}" PRIVATE HAVE_FFMPEG) - endif() - if(CMAKE_BUILD_TYPE STREQUAL "Debug") set(SM_APP_RELEASE_NAME "${SM_NAME_DEBUG}") elseif(CMAKE_BUILD_TYPE STREQUAL "MinSizeRel") @@ -292,9 +288,6 @@ else() # Linux message("Unrecognized host processor type") endif() endif() - if(${HAS_FFMPEG}) - target_compile_definitions("${SM_EXE_NAME}" PRIVATE HAVE_FFMPEG) - endif() if(${HAS_XRANDR}) target_compile_definitions("${SM_EXE_NAME}" PRIVATE HAVE_XRANDR) endif() @@ -324,79 +317,19 @@ set_property(TARGET "${SM_EXE_NAME}" PROPERTY FOLDER "Internal Libraries") list(APPEND SMDATA_LINK_LIB "lua-5.1" "miniz") include(../extern/CMakeProject-mmmagic.cmake) -if(HAS_MP3) - if(WITH_SYSTEM_MAD) - list(APPEND SMDATA_LINK_LIB ${LIBMAD_LIBRARY}) - else() - list(APPEND SMDATA_LINK_LIB "mad") - endif() -endif() - -if(WITH_SYSTEM_PCRE) - list(APPEND SMDATA_LINK_LIB ${PCRE_LIBRARY}) -else() - list(APPEND SMDATA_LINK_LIB "pcre") -endif() - -if(WITH_SYSTEM_GLEW) - list(APPEND SMDATA_LINK_LIB ${GLEW_LIBRARIES} ${GLEW_LIBRARY_RELEASE}) - list(APPEND SM_INCLUDE_DIRS ${GLEW_INCLUDE_DIRS}) -else() - list(APPEND SMDATA_LINK_LIB "glew") -endif() - -if(WITH_SYSTEM_TOMCRYPT) - target_compile_definitions("${SM_EXE_NAME}" PRIVATE LTM_DESC) - list(APPEND SMDATA_LINK_LIB ${TOMCRYPT_LIBRARY}) -else() - list(APPEND SMDATA_LINK_LIB "tomcrypt") -endif() - -if(WITH_SYSTEM_TOMMATH) - list(APPEND SMDATA_LINK_LIB ${TOMMATH_LIBRARY}) -else() - list(APPEND SMDATA_LINK_LIB "tommath") -endif() - -if(WITH_SYSTEM_JPEG) - list(APPEND SMDATA_LINK_LIB ${JPEG_LIBRARIES}) -else() - list(APPEND SMDATA_LINK_LIB "jpeg") -endif() - -if(WITH_SYSTEM_ZLIB) - list(APPEND SMDATA_LINK_LIB ${ZLIB_LIBRARIES} ${ZLIB_LIBRARY_RELEASE}) -else() - list(APPEND SMDATA_LINK_LIB "zlib") -endif() - -if(WITH_SYSTEM_PNG) - list(APPEND SMDATA_LINK_LIB ${PNG_LIBRARIES}) -else() - list(APPEND SMDATA_LINK_LIB "png") -endif() - -if(WITH_SYSTEM_JSONCPP) - list(APPEND SMDATA_LINK_LIB ${JSONCPP_LIBRARIES}) -else() - list(APPEND SMDATA_LINK_LIB "jsoncpp") -endif() - -if(WITH_OGG) - if(WITH_SYSTEM_OGG) - list(APPEND SMDATA_LINK_LIB - "${VORBISFILE_LIBRARY}" - "${VORBIS_LIBRARY}" - "${OGG_LIBRARY}") - else() - list(APPEND SMDATA_LINK_LIB - "vorbisfile" - "vorbis" - "ogg") - endif() -endif() - -list(APPEND SMDATA_LINK_LIB "ixwebsocket") +list(APPEND SMDATA_LINK_LIB "mad" + "pcre" + "glew" + "tomcrypt" + "tommath" + "jpeg" + "zlib" + "png" + "jsoncpp" + "vorbisfile" + "vorbis" + "ogg" + "ixwebsocket") if(WIN32) list(APPEND SMDATA_LINK_LIB @@ -430,9 +363,6 @@ if(WIN32) PROPERTIES LINK_FLAGS_MINSIZEREL "/SUBSYSTEM:WINDOWS") elseif(APPLE) - # The following were removed from SMDATA_LINK_LIB to "match" StepMania's - # pbxproj. ${MAC_FRAME_APPKIT} ${MAC_FRAME_FOUNDATION} "ffmpeg" - list(INSERT SMDATA_LINK_LIB 0 ${MAC_FRAME_ACCELERATE} @@ -445,51 +375,29 @@ elseif(APPLE) ${MAC_FRAME_AUDIOUNIT} ${MAC_FRAME_COREAUDIO} ${MAC_FRAME_CORESERVICES} - ${MAC_FRAME_SYSTEM}) - list(APPEND SMDATA_LINK_LIB + ${MAC_FRAME_SYSTEM} "${BZIP2_LIBRARY_RELEASE}" - "${ICONV_LIBRARIES}") - - if(HAS_FFMPEG) - list(APPEND SMDATA_LINK_LIB - "${SM_FFMPEG_LIB_ARM64}/libavformat.a" - "${SM_FFMPEG_LIB_ARM64}/libavcodec.a" - "${SM_FFMPEG_LIB_ARM64}/libswscale.a" - "${SM_FFMPEG_LIB_ARM64}/libavutil.a" - "${SM_FFMPEG_LIB_X86_64}/libavformat.a" - "${SM_FFMPEG_LIB_X86_64}/libavcodec.a" - "${SM_FFMPEG_LIB_X86_64}/libswscale.a" - "${SM_FFMPEG_LIB_X86_64}/libavutil.a" - "${MAC_FRAME_COREMEDIA}" - "${MAC_FRAME_COREVIDEO}" - "${MAC_FRAME_VIDEOTOOLBOX}") - endif() + "${ICONV_LIBRARIES}" + "${SM_FFMPEG_LIB_ARM64}/libavformat.a" + "${SM_FFMPEG_LIB_ARM64}/libavcodec.a" + "${SM_FFMPEG_LIB_ARM64}/libswscale.a" + "${SM_FFMPEG_LIB_ARM64}/libavutil.a" + "${SM_FFMPEG_LIB_X86_64}/libavformat.a" + "${SM_FFMPEG_LIB_X86_64}/libavcodec.a" + "${SM_FFMPEG_LIB_X86_64}/libswscale.a" + "${SM_FFMPEG_LIB_X86_64}/libavutil.a" + "${MAC_FRAME_COREMEDIA}" + "${MAC_FRAME_COREVIDEO}" + "${MAC_FRAME_VIDEOTOOLBOX}") else() # Unix / Linux TODO: Remember to find and locate the zip archive files. - if(HAS_FFMPEG) - if(WITH_SYSTEM_FFMPEG) - list(APPEND SMDATA_LINK_LIB - "${FFMPEG_avformat_LIBRARY}" - "${FFMPEG_avcodec_LIBRARY}" - "${FFMPEG_swscale_LIBRARY}" - "${FFMPEG_avutil_LIBRARY}") - else() - list(APPEND SMDATA_LINK_LIB - "${SM_FFMPEG_LIB}/libavformat.a" - "${SM_FFMPEG_LIB}/libavcodec.a" - "${SM_FFMPEG_LIB}/libswscale.a" - "${SM_FFMPEG_LIB}/libavutil.a") - endif() + list(APPEND SMDATA_LINK_LIB + "${SM_FFMPEG_LIB}/libavformat.a" + "${SM_FFMPEG_LIB}/libavcodec.a" + "${SM_FFMPEG_LIB}/libswscale.a" + "${SM_FFMPEG_LIB}/libavutil.a") - if(NOT WITH_SYSTEM_ZLIB) - list(REMOVE_ITEM SMDATA_LINK_LIB "zlib") - list(APPEND SMDATA_LINK_LIB "zlib") - endif() - - if(NOT WITH_SYSTEM_FFMPEG) - list(APPEND SMDATA_LINK_LIB ${VA_LIBRARY}) - list(APPEND SMDATA_LINK_LIB ${VA_DRM_LIBRARY}) - endif() - endif() + list(REMOVE_ITEM SMDATA_LINK_LIB "zlib") + list(APPEND SMDATA_LINK_LIB "zlib" ${VA_LIBRARY} ${VA_DRM_LIBRARY}) if(${DL_FOUND}) list(APPEND SMDATA_LINK_LIB ${DL_LIBRARIES}) @@ -523,10 +431,6 @@ else() # Unix / Linux TODO: Remember to find and locate the zip archive files. if(X11_FOUND) list(APPEND SMDATA_LINK_LIB ${X11_LIBRARIES}) endif() - - if(PCRE_FOUND) - list(APPEND SMDATA_LINK_LIB ${PCRE_LIBRARY}) - endif() if(LIBXTST_FOUND) list(APPEND SMDATA_LINK_LIB ${LIBXTST_LIBRARY}) @@ -542,43 +446,28 @@ target_link_libraries("${SM_EXE_NAME}" ${SMDATA_LINK_LIB}) list(APPEND SM_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR} "${SM_SRC_DIR}/generated") -list(APPEND SM_INCLUDE_DIRS "${JPEG_INCLUDE_DIR}") - -if(NOT APPLE) - if(WITH_SYSTEM_JSONCPP) - list(APPEND SM_INCLUDE_DIRS ${JSONCPP_INCLUDE_DIRS}) - endif() +if(APPLE) + list(APPEND SM_INCLUDE_DIRS "archutils/Unix") + add_dependencies("${SM_EXE_NAME}" "ffmpeg_arm64" "ffmpeg_x86_64") + list(APPEND SM_INCLUDE_DIRS "${SM_FFMPEG_INCLUDE}") +else() if(MSVC) list(APPEND SM_INCLUDE_DIRS "${SM_EXTERN_DIR}/ffmpeg-w32/include") else() - if(HAS_FFMPEG) - if(WITH_SYSTEM_FFMPEG) - list(APPEND SM_INCLUDE_DIRS "${FFMPEG_INCLUDE_DIR}") - else() - add_dependencies("${SM_EXE_NAME}" "ffmpeg") - list(APPEND SM_INCLUDE_DIRS "${SM_FFMPEG_INCLUDE}") - endif() - endif() + add_dependencies("${SM_EXE_NAME}" "ffmpeg") + list(APPEND SM_INCLUDE_DIRS "${SM_FFMPEG_INCLUDE}") + if(HAS_GTK3) list(APPEND SM_INCLUDE_DIRS "${GTK3_INCLUDE_DIRS}") endif() if(X11_FOUND) list(APPEND SM_INCLUDE_DIRS "${X11_INCLUDE_DIR}") endif() - if(PCRE_FOUND) - list(APPEND SM_INCLUDE_DIRS "${PCRE_INCLUDE_DIR}") - endif() if(DL_FOUND) list(APPEND SM_INCLUDE_DIRS "${DL_INCLUDE_DIR}") endif() endif() -else() - list(APPEND SM_INCLUDE_DIRS "archutils/Unix") - if(HAS_FFMPEG) - add_dependencies("${SM_EXE_NAME}" "ffmpeg_arm64" "ffmpeg_x86_64") - list(APPEND SM_INCLUDE_DIRS "${SM_FFMPEG_INCLUDE}") - endif() endif() target_include_directories("${SM_EXE_NAME}" PUBLIC ${SM_INCLUDE_DIRS}) diff --git a/src/RageSoundReader_FileReader.cpp b/src/RageSoundReader_FileReader.cpp index 37cffeb487..3dee62fe85 100644 --- a/src/RageSoundReader_FileReader.cpp +++ b/src/RageSoundReader_FileReader.cpp @@ -6,36 +6,23 @@ #include "ActorUtil.h" #include -#if defined(HAS_WAV) + #include "RageSoundReader_WAV.h" -#endif - -#if defined(HAS_MP3) #include "RageSoundReader_MP3.h" -#endif - -#if defined(HAS_OGG) #include "RageSoundReader_Vorbisfile.h" -#endif RageSoundReader_FileReader *RageSoundReader_FileReader::TryOpenFile( RageFileBasic *pFile, RString &error, RString format, bool &bKeepTrying ) { RageSoundReader_FileReader *Sample = nullptr; -#if defined(HAS_WAV) if( !format.CompareNoCase("wav") ) Sample = new RageSoundReader_WAV; -#endif -#if defined(HAS_MP3) if( !format.CompareNoCase("mp3") ) Sample = new RageSoundReader_MP3; -#endif -#if defined(HAS_OGG) if( !format.CompareNoCase("oga") || !format.CompareNoCase("ogg") ) Sample = new RageSoundReader_Vorbisfile; -#endif if( !Sample ) return nullptr; diff --git a/src/arch/ArchHooks/ArchHooks_Unix.cpp b/src/arch/ArchHooks/ArchHooks_Unix.cpp index 92b21f0b97..82b69e2750 100644 --- a/src/arch/ArchHooks/ArchHooks_Unix.cpp +++ b/src/arch/ArchHooks/ArchHooks_Unix.cpp @@ -25,12 +25,10 @@ #endif #endif -#if defined(HAVE_FFMPEG) extern "C" { #include } -#endif #if defined(HAVE_X11) #include "archutils/Unix/X11Helper.h" @@ -284,9 +282,7 @@ void ArchHooks_Unix::DumpDebugInfo() LOG->Info( "Runtime library: %s", LibcVersion().c_str() ); LOG->Info( "Threads library: %s", ThreadsVersion().c_str() ); -#if defined(HAVE_FFMPEG) LOG->Info( "libavcodec: %#x (%u)", avcodec_version(), avcodec_version() ); -#endif } void ArchHooks_Unix::SetTime( tm newtime ) diff --git a/src/archutils/Win32/arch_setup.h b/src/archutils/Win32/arch_setup.h index 3815210f13..1921326e01 100644 --- a/src/archutils/Win32/arch_setup.h +++ b/src/archutils/Win32/arch_setup.h @@ -1,10 +1,6 @@ #ifndef ARCH_SETUP_WINDOWS_H #define ARCH_SETUP_WINDOWS_H -#if defined(_MSC_VER) -#define HAVE_FFMPEG -#endif - #define SUPPORT_OPENGL #if defined(_MSC_VER) #define SUPPORT_D3D diff --git a/src/config.in.hpp b/src/config.in.hpp index ccbfc81dd7..bf4d390146 100644 --- a/src/config.in.hpp +++ b/src/config.in.hpp @@ -130,15 +130,6 @@ typedef std::make_signed::type ssize_t; /* Defined to 1 if the underlying system uses big endian. */ #cmakedefine ENDIAN_BIG 1 -/* Defined to 1 if compiling with WAV support. */ -#cmakedefine HAS_WAV 1 - -/* Defined to 1 if compiling with MP3 support. */ -#cmakedefine HAS_MP3 1 - -/* Defined to 1 if compiling with OGG support. */ -#cmakedefine HAS_OGG 1 - /* Defined to 1 if building on a windows system, and thus uses the windows loading window. */ #cmakedefine NEED_WINDOWS_LOADING_WINDOW 1