[Build] Convert build system to raw cmake and remove premake layer
This commit is contained in:
654
third_party/CMakeLists.txt
vendored
Normal file
654
third_party/CMakeLists.txt
vendored
Normal file
@@ -0,0 +1,654 @@
|
||||
# third_party/CMakeLists.txt - All third-party library targets.
|
||||
|
||||
# Suppress warnings for all third-party code.
|
||||
if(MSVC)
|
||||
add_compile_options(/W0)
|
||||
else()
|
||||
add_compile_options(-w)
|
||||
endif()
|
||||
|
||||
# ==============================================================================
|
||||
# aes_128
|
||||
# ==============================================================================
|
||||
add_library(aes_128 STATIC
|
||||
aes_128/unroll/aes.c
|
||||
)
|
||||
target_include_directories(aes_128 PUBLIC aes_128)
|
||||
|
||||
# ==============================================================================
|
||||
# capstone
|
||||
# ==============================================================================
|
||||
add_library(capstone STATIC
|
||||
capstone/cs.c
|
||||
capstone/MCInst.c
|
||||
capstone/MCInstrDesc.c
|
||||
capstone/MCRegisterInfo.c
|
||||
capstone/SStream.c
|
||||
capstone/utils.c
|
||||
capstone/Mapping.c
|
||||
)
|
||||
# Glob X86 arch files
|
||||
file(GLOB _capstone_x86_c "capstone/arch/X86/*.c")
|
||||
file(GLOB _capstone_x86_h "capstone/arch/X86/*.h")
|
||||
file(GLOB _capstone_x86_inc "capstone/arch/X86/*.inc")
|
||||
# Remove excluded files
|
||||
list(FILTER _capstone_x86_c EXCLUDE REGEX "X86ATTInstPrinter\\.c$")
|
||||
list(FILTER _capstone_x86_inc EXCLUDE REGEX "reduce\\.inc$")
|
||||
target_sources(capstone PRIVATE ${_capstone_x86_c} ${_capstone_x86_h} ${_capstone_x86_inc})
|
||||
target_compile_definitions(capstone PRIVATE
|
||||
CAPSTONE_X86_ATT_DISABLE
|
||||
CAPSTONE_HAS_X86
|
||||
CAPSTONE_USE_SYS_DYN_MEM
|
||||
)
|
||||
target_include_directories(capstone PUBLIC capstone/include PRIVATE capstone)
|
||||
# Force all capstone sources to compile as C
|
||||
file(GLOB_RECURSE _capstone_all_c "capstone/*.c")
|
||||
set_source_files_properties(${_capstone_all_c} PROPERTIES LANGUAGE C)
|
||||
|
||||
# ==============================================================================
|
||||
# cxxopts (header-only)
|
||||
# ==============================================================================
|
||||
add_library(cxxopts INTERFACE)
|
||||
target_include_directories(cxxopts INTERFACE cxxopts/include)
|
||||
|
||||
# ==============================================================================
|
||||
# tomlplusplus (header-only)
|
||||
# ==============================================================================
|
||||
add_library(tomlplusplus INTERFACE)
|
||||
target_include_directories(tomlplusplus INTERFACE tomlplusplus/include)
|
||||
|
||||
# ==============================================================================
|
||||
# dxbc
|
||||
# ==============================================================================
|
||||
add_library(dxbc STATIC
|
||||
dxbc/DXBCChecksum.cpp
|
||||
)
|
||||
target_include_directories(dxbc PUBLIC dxbc)
|
||||
|
||||
# ==============================================================================
|
||||
# discord-rpc
|
||||
# ==============================================================================
|
||||
add_library(discord-rpc STATIC
|
||||
discord-rpc/src/connection.h
|
||||
discord-rpc/src/discord_rpc.cpp
|
||||
discord-rpc/src/msg_queue.h
|
||||
discord-rpc/src/rpc_connection.cpp
|
||||
discord-rpc/src/rpc_connection.h
|
||||
discord-rpc/src/serialization.cpp
|
||||
discord-rpc/src/serialization.h
|
||||
)
|
||||
target_compile_definitions(discord-rpc PRIVATE RAPIDJSON_SSE42)
|
||||
target_include_directories(discord-rpc PUBLIC discord-rpc/include PRIVATE rapidjson/include)
|
||||
if(WIN32)
|
||||
target_sources(discord-rpc PRIVATE
|
||||
discord-rpc/src/connection_win.cpp
|
||||
discord-rpc/src/discord_register_win.cpp
|
||||
)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
target_sources(discord-rpc PRIVATE
|
||||
discord-rpc/src/connection_unix.cpp
|
||||
discord-rpc/src/discord_register_linux.cpp
|
||||
)
|
||||
endif()
|
||||
|
||||
# ==============================================================================
|
||||
# fmt
|
||||
# ==============================================================================
|
||||
add_library(fmt STATIC
|
||||
fmt/src/format.cc
|
||||
fmt/src/os.cc
|
||||
)
|
||||
target_include_directories(fmt PUBLIC fmt/include)
|
||||
|
||||
# ==============================================================================
|
||||
# glslang-spirv
|
||||
# ==============================================================================
|
||||
file(GLOB _glslang_spirv_cpp "glslang/SPIRV/*.cpp")
|
||||
file(GLOB _glslang_spirv_h "glslang/SPIRV/*.h")
|
||||
file(GLOB _glslang_spirv_hpp "glslang/SPIRV/*.hpp11")
|
||||
list(FILTER _glslang_spirv_cpp EXCLUDE REGEX "GlslangToSpv\\.cpp$")
|
||||
add_library(glslang-spirv STATIC
|
||||
${_glslang_spirv_cpp}
|
||||
${_glslang_spirv_h}
|
||||
${_glslang_spirv_hpp}
|
||||
glslang/glslang/Include/visibility.h
|
||||
)
|
||||
target_include_directories(glslang-spirv PUBLIC glslang)
|
||||
|
||||
# ==============================================================================
|
||||
# imgui
|
||||
# ==============================================================================
|
||||
add_library(imgui STATIC
|
||||
imgui/imgui.cpp
|
||||
imgui/imgui_demo.cpp
|
||||
imgui/imgui_draw.cpp
|
||||
imgui/imgui_tables.cpp
|
||||
imgui/imgui_widgets.cpp
|
||||
)
|
||||
target_include_directories(imgui PUBLIC imgui PRIVATE stb)
|
||||
|
||||
# ==============================================================================
|
||||
# mspack
|
||||
# ==============================================================================
|
||||
add_library(mspack STATIC
|
||||
mspack/logging.cc
|
||||
mspack/lzxd.c
|
||||
mspack/system.c
|
||||
)
|
||||
target_compile_definitions(mspack PRIVATE HAVE_CONFIG_H)
|
||||
target_include_directories(mspack PUBLIC mspack)
|
||||
target_link_libraries(mspack PUBLIC xenia-base)
|
||||
|
||||
# ==============================================================================
|
||||
# pugixml
|
||||
# ==============================================================================
|
||||
add_library(pugixml STATIC
|
||||
pugixml/src/pugixml.cpp
|
||||
)
|
||||
target_include_directories(pugixml PUBLIC pugixml/src)
|
||||
|
||||
# ==============================================================================
|
||||
# snappy
|
||||
# ==============================================================================
|
||||
# Generate snappy-stubs-public.h if missing
|
||||
if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/snappy/snappy-stubs-public.h")
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-DSNAPPY_BUILD_TESTS=OFF
|
||||
-DSNAPPY_BUILD_BENCHMARKS=OFF
|
||||
-DSNAPPY_REQUIRE_AVX=ON
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/snappy
|
||||
-B${CMAKE_CURRENT_SOURCE_DIR}/snappy
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
endif()
|
||||
add_library(snappy STATIC
|
||||
snappy/snappy-internal.h
|
||||
snappy/snappy-sinksource.cc
|
||||
snappy/snappy-sinksource.h
|
||||
snappy/snappy-stubs-internal.cc
|
||||
snappy/snappy-stubs-internal.h
|
||||
snappy/snappy-stubs-public.h
|
||||
snappy/snappy.cc
|
||||
snappy/snappy.h
|
||||
)
|
||||
target_include_directories(snappy PUBLIC snappy)
|
||||
|
||||
# ==============================================================================
|
||||
# xxhash
|
||||
# ==============================================================================
|
||||
add_library(xxhash STATIC
|
||||
xxhash/xxhash.c
|
||||
)
|
||||
target_include_directories(xxhash PUBLIC xxhash)
|
||||
|
||||
# ==============================================================================
|
||||
# zstd
|
||||
# ==============================================================================
|
||||
file(GLOB_RECURSE _zstd_common "zstd/lib/common/*.c" "zstd/lib/common/*.h")
|
||||
file(GLOB_RECURSE _zstd_compress "zstd/lib/compress/*.c" "zstd/lib/compress/*.h")
|
||||
file(GLOB_RECURSE _zstd_decompress "zstd/lib/decompress/*.c" "zstd/lib/decompress/*.h")
|
||||
add_library(zstd STATIC
|
||||
zstd/lib/zstd.h
|
||||
${_zstd_common}
|
||||
${_zstd_compress}
|
||||
${_zstd_decompress}
|
||||
)
|
||||
target_include_directories(zstd PUBLIC zstd/lib PRIVATE zstd/lib/common)
|
||||
target_compile_definitions(zstd PRIVATE
|
||||
XXH_NAMESPACE=ZSTD_
|
||||
ZSTD_LEGACY_SUPPORT=0
|
||||
)
|
||||
if(NOT MSVC)
|
||||
target_compile_definitions(zstd PRIVATE ZSTD_DISABLE_ASM)
|
||||
endif()
|
||||
|
||||
# ==============================================================================
|
||||
# zarchive
|
||||
# ==============================================================================
|
||||
add_library(zarchive STATIC
|
||||
zarchive/include/zarchive/zarchivecommon.h
|
||||
zarchive/include/zarchive/zarchivereader.h
|
||||
zarchive/include/zarchive/zarchivewriter.h
|
||||
zarchive/src/zarchivereader.cpp
|
||||
zarchive/src/zarchivewriter.cpp
|
||||
zarchive/src/sha_256.c
|
||||
zarchive/src/sha_256.h
|
||||
)
|
||||
target_include_directories(zarchive PUBLIC zarchive/include PRIVATE zstd/lib)
|
||||
target_link_libraries(zarchive PUBLIC zstd)
|
||||
|
||||
# ==============================================================================
|
||||
# zlib-ng
|
||||
# ==============================================================================
|
||||
# Generate headers if missing
|
||||
set(_zlibng_needs_configure FALSE)
|
||||
foreach(_hdr zlib-ng.h zconf-ng.h zlib_name_mangling-ng.h gzread.c)
|
||||
if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/zlib-ng/${_hdr}")
|
||||
set(_zlibng_needs_configure TRUE)
|
||||
break()
|
||||
endif()
|
||||
endforeach()
|
||||
if(_zlibng_needs_configure)
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_COMMAND}
|
||||
-DZLIB_ENABLE_TESTS=OFF
|
||||
-DWITH_GTEST=OFF
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/zlib-ng
|
||||
-B${CMAKE_CURRENT_SOURCE_DIR}/zlib-ng
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
endif()
|
||||
file(GLOB _zlibng_c "zlib-ng/*.c")
|
||||
file(GLOB _zlibng_x86 "zlib-ng/arch/x86/*.c")
|
||||
file(GLOB _zlibng_generic "zlib-ng/arch/generic/*.c")
|
||||
add_library(zlib-ng STATIC
|
||||
${_zlibng_c}
|
||||
${_zlibng_x86}
|
||||
${_zlibng_generic}
|
||||
)
|
||||
target_compile_definitions(zlib-ng PRIVATE
|
||||
X86_FEATURES
|
||||
X86_HAVE_XSAVE_INTRIN
|
||||
X86_SSSE3
|
||||
X86_SSE42
|
||||
WITH_GZFILEOP
|
||||
)
|
||||
if(WIN32)
|
||||
target_compile_definitions(zlib-ng PRIVATE
|
||||
X86_SSE2
|
||||
X86_AVX2
|
||||
X86_AVX512
|
||||
X86_AVX512VNNI
|
||||
X86_PCLMULQDQ_CRC
|
||||
X86_VPCLMULQDQ_CRC
|
||||
)
|
||||
else()
|
||||
# Remove AVX2/AVX512 files on non-Windows
|
||||
set(_zlibng_exclude_patterns
|
||||
"adler32_avx2" "adler32_avx512" "adler32_avx512_vnni"
|
||||
"chunkset_avx2" "compare256_avx2"
|
||||
"crc32_pclmulqdq" "crc32_vpclmulqdq"
|
||||
"slide_hash_avx2"
|
||||
)
|
||||
foreach(_pat ${_zlibng_exclude_patterns})
|
||||
list(FILTER _zlibng_x86 EXCLUDE REGEX "${_pat}")
|
||||
endforeach()
|
||||
# Re-set sources without excluded files
|
||||
get_target_property(_zlibng_srcs zlib-ng SOURCES)
|
||||
set_target_properties(zlib-ng PROPERTIES SOURCES "")
|
||||
target_sources(zlib-ng PRIVATE ${_zlibng_c} ${_zlibng_x86} ${_zlibng_generic})
|
||||
endif()
|
||||
target_include_directories(zlib-ng PUBLIC zlib-ng)
|
||||
|
||||
# ==============================================================================
|
||||
# libusb (Windows only)
|
||||
# ==============================================================================
|
||||
if(WIN32)
|
||||
add_library(libusb STATIC
|
||||
libusb/libusb/core.c
|
||||
libusb/libusb/descriptor.c
|
||||
libusb/libusb/hotplug.c
|
||||
libusb/libusb/io.c
|
||||
libusb/libusb/strerror.c
|
||||
libusb/libusb/sync.c
|
||||
libusb/libusb/os/events_windows.c
|
||||
libusb/libusb/os/events_windows.h
|
||||
libusb/libusb/os/threads_windows.c
|
||||
libusb/libusb/os/threads_windows.h
|
||||
libusb/libusb/os/windows_common.c
|
||||
libusb/libusb/os/windows_common.h
|
||||
libusb/libusb/os/windows_usbdk.c
|
||||
libusb/libusb/os/windows_usbdk.h
|
||||
libusb/libusb/os/windows_winusb.c
|
||||
libusb/libusb/os/windows_winusb.h
|
||||
)
|
||||
target_include_directories(libusb PUBLIC libusb/libusb PRIVATE libusb/msvc)
|
||||
endif()
|
||||
|
||||
# ==============================================================================
|
||||
# SDL2
|
||||
# ==============================================================================
|
||||
if(WIN32)
|
||||
# Build SDL2 from source on Windows
|
||||
file(GLOB _sdl2_sources
|
||||
"SDL2/src/*.c"
|
||||
"SDL2/src/atomic/*.c"
|
||||
"SDL2/src/audio/*.c"
|
||||
"SDL2/src/audio/directsound/*.c"
|
||||
"SDL2/src/audio/disk/*.c"
|
||||
"SDL2/src/audio/dummy/*.c"
|
||||
"SDL2/src/audio/wasapi/*.c"
|
||||
"SDL2/src/audio/winmm/*.c"
|
||||
"SDL2/src/core/windows/*.c"
|
||||
"SDL2/src/cpuinfo/*.c"
|
||||
"SDL2/src/dynapi/*.c"
|
||||
"SDL2/src/events/*.c"
|
||||
"SDL2/src/file/*.c"
|
||||
"SDL2/src/filesystem/windows/*.c"
|
||||
"SDL2/src/haptic/*.c"
|
||||
"SDL2/src/haptic/dummy/*.c"
|
||||
"SDL2/src/haptic/windows/*.c"
|
||||
"SDL2/src/hidapi/*.c"
|
||||
"SDL2/src/joystick/*.c"
|
||||
"SDL2/src/joystick/dummy/*.c"
|
||||
"SDL2/src/joystick/hidapi/*.c"
|
||||
"SDL2/src/joystick/virtual/*.c"
|
||||
"SDL2/src/joystick/windows/*.c"
|
||||
"SDL2/src/libm/*.c"
|
||||
"SDL2/src/loadso/windows/*.c"
|
||||
"SDL2/src/locale/*.c"
|
||||
"SDL2/src/locale/windows/*.c"
|
||||
"SDL2/src/misc/*.c"
|
||||
"SDL2/src/misc/windows/*.c"
|
||||
"SDL2/src/power/*.c"
|
||||
"SDL2/src/power/windows/*.c"
|
||||
"SDL2/src/render/*.c"
|
||||
"SDL2/src/render/direct3d/*.c"
|
||||
"SDL2/src/render/direct3d11/*.c"
|
||||
"SDL2/src/render/direct3d12/*.c"
|
||||
"SDL2/src/render/opengl/*.c"
|
||||
"SDL2/src/render/opengles2/*.c"
|
||||
"SDL2/src/render/software/*.c"
|
||||
"SDL2/src/sensor/*.c"
|
||||
"SDL2/src/sensor/dummy/*.c"
|
||||
"SDL2/src/sensor/windows/*.c"
|
||||
"SDL2/src/stdlib/*.c"
|
||||
"SDL2/src/thread/*.c"
|
||||
"SDL2/src/thread/generic/SDL_syscond.c"
|
||||
"SDL2/src/thread/windows/*.c"
|
||||
"SDL2/src/timer/*.c"
|
||||
"SDL2/src/timer/windows/*.c"
|
||||
"SDL2/src/video/*.c"
|
||||
"SDL2/src/video/dummy/*.c"
|
||||
"SDL2/src/video/windows/*.c"
|
||||
"SDL2/src/video/yuv2rgb/*.c"
|
||||
)
|
||||
add_library(SDL2 STATIC ${_sdl2_sources})
|
||||
target_compile_definitions(SDL2 PRIVATE
|
||||
HAVE_LIBC
|
||||
SDL_LEAN_AND_MEAN
|
||||
SDL_RENDER_DISABLED
|
||||
)
|
||||
target_include_directories(SDL2 PUBLIC SDL2/include)
|
||||
target_link_libraries(SDL2 PRIVATE setupapi winmm imm32 version)
|
||||
else()
|
||||
# Use system SDL2 on Linux
|
||||
add_library(SDL2 INTERFACE)
|
||||
find_package(PkgConfig REQUIRED)
|
||||
pkg_check_modules(SDL2_PKG REQUIRED sdl2)
|
||||
target_include_directories(SDL2 INTERFACE ${SDL2_PKG_INCLUDE_DIRS})
|
||||
target_link_libraries(SDL2 INTERFACE ${SDL2_PKG_LDFLAGS})
|
||||
target_compile_options(SDL2 INTERFACE ${SDL2_PKG_CFLAGS_OTHER})
|
||||
endif()
|
||||
|
||||
# ==============================================================================
|
||||
# FFmpeg (source in FFmpeg submodule, config overlay in ffmpeg-xenia)
|
||||
# ==============================================================================
|
||||
|
||||
# Common function to apply shared FFmpeg settings to a target.
|
||||
function(ffmpeg_common target)
|
||||
target_compile_definitions(${target} PRIVATE
|
||||
HAVE_AV_CONFIG_H
|
||||
_USE_MATH_DEFINES
|
||||
)
|
||||
target_include_directories(${target} PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/ffmpeg-xenia
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/FFmpeg
|
||||
)
|
||||
|
||||
if(WIN32)
|
||||
target_include_directories(${target} PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/FFmpeg/compat/atomics/win32
|
||||
)
|
||||
target_link_libraries(${target} PRIVATE bcrypt)
|
||||
# Size optimization on Debug/Checked (dead code elimination is mandatory)
|
||||
target_compile_options(${target} PRIVATE
|
||||
$<$<CONFIG:Debug>:/Os>
|
||||
$<$<CONFIG:Checked>:/Os>
|
||||
)
|
||||
else()
|
||||
target_include_directories(${target} PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/FFmpeg/compat/atomics/gcc
|
||||
)
|
||||
endif()
|
||||
|
||||
# Suppress all warnings for FFmpeg code
|
||||
if(MSVC)
|
||||
target_compile_options(${target} PRIVATE /w)
|
||||
else()
|
||||
target_compile_options(${target} PRIVATE -w)
|
||||
endif()
|
||||
|
||||
# All FFmpeg source is C
|
||||
set_target_properties(${target} PROPERTIES LINKER_LANGUAGE C)
|
||||
endfunction()
|
||||
|
||||
# --- libavutil ---
|
||||
add_library(libavutil STATIC
|
||||
FFmpeg/libavutil/adler32.c
|
||||
FFmpeg/libavutil/aes.c
|
||||
FFmpeg/libavutil/aes_ctr.c
|
||||
FFmpeg/libavutil/audio_fifo.c
|
||||
FFmpeg/libavutil/avstring.c
|
||||
FFmpeg/libavutil/avsscanf.c
|
||||
FFmpeg/libavutil/base64.c
|
||||
FFmpeg/libavutil/blowfish.c
|
||||
FFmpeg/libavutil/bprint.c
|
||||
FFmpeg/libavutil/buffer.c
|
||||
FFmpeg/libavutil/cast5.c
|
||||
FFmpeg/libavutil/camellia.c
|
||||
FFmpeg/libavutil/channel_layout.c
|
||||
FFmpeg/libavutil/csp.c
|
||||
FFmpeg/libavutil/cpu.c
|
||||
FFmpeg/libavutil/crc.c
|
||||
FFmpeg/libavutil/des.c
|
||||
FFmpeg/libavutil/dict.c
|
||||
FFmpeg/libavutil/display.c
|
||||
FFmpeg/libavutil/dovi_meta.c
|
||||
FFmpeg/libavutil/downmix_info.c
|
||||
FFmpeg/libavutil/encryption_info.c
|
||||
FFmpeg/libavutil/error.c
|
||||
FFmpeg/libavutil/eval.c
|
||||
FFmpeg/libavutil/fifo.c
|
||||
FFmpeg/libavutil/file.c
|
||||
FFmpeg/libavutil/file_open.c
|
||||
FFmpeg/libavutil/float_dsp.c
|
||||
FFmpeg/libavutil/fixed_dsp.c
|
||||
FFmpeg/libavutil/frame.c
|
||||
FFmpeg/libavutil/hash.c
|
||||
FFmpeg/libavutil/hdr_dynamic_metadata.c
|
||||
FFmpeg/libavutil/hmac.c
|
||||
FFmpeg/libavutil/hwcontext.c
|
||||
FFmpeg/libavutil/imgutils.c
|
||||
FFmpeg/libavutil/integer.c
|
||||
FFmpeg/libavutil/intmath.c
|
||||
FFmpeg/libavutil/lfg.c
|
||||
FFmpeg/libavutil/lls.c
|
||||
FFmpeg/libavutil/log.c
|
||||
FFmpeg/libavutil/log2_tab.c
|
||||
FFmpeg/libavutil/mathematics.c
|
||||
FFmpeg/libavutil/mastering_display_metadata.c
|
||||
FFmpeg/libavutil/md5.c
|
||||
FFmpeg/libavutil/mem.c
|
||||
FFmpeg/libavutil/murmur3.c
|
||||
FFmpeg/libavutil/opt.c
|
||||
FFmpeg/libavutil/parseutils.c
|
||||
FFmpeg/libavutil/pixdesc.c
|
||||
FFmpeg/libavutil/pixelutils.c
|
||||
FFmpeg/libavutil/random_seed.c
|
||||
FFmpeg/libavutil/rational.c
|
||||
FFmpeg/libavutil/reverse.c
|
||||
FFmpeg/libavutil/rc4.c
|
||||
FFmpeg/libavutil/ripemd.c
|
||||
FFmpeg/libavutil/samplefmt.c
|
||||
FFmpeg/libavutil/sha.c
|
||||
FFmpeg/libavutil/sha512.c
|
||||
FFmpeg/libavutil/slicethread.c
|
||||
FFmpeg/libavutil/spherical.c
|
||||
FFmpeg/libavutil/stereo3d.c
|
||||
FFmpeg/libavutil/threadmessage.c
|
||||
FFmpeg/libavutil/time.c
|
||||
FFmpeg/libavutil/timecode.c
|
||||
FFmpeg/libavutil/tree.c
|
||||
FFmpeg/libavutil/twofish.c
|
||||
FFmpeg/libavutil/utils.c
|
||||
FFmpeg/libavutil/xga_font_data.c
|
||||
FFmpeg/libavutil/xtea.c
|
||||
FFmpeg/libavutil/tea.c
|
||||
FFmpeg/libavutil/tx.c
|
||||
FFmpeg/libavutil/tx_float.c
|
||||
FFmpeg/libavutil/tx_double.c
|
||||
FFmpeg/libavutil/tx_int32.c
|
||||
FFmpeg/libavutil/video_enc_params.c
|
||||
FFmpeg/libavutil/film_grain_params.c
|
||||
FFmpeg/libavutil/side_data.c
|
||||
FFmpeg/libavutil/refstruct.c
|
||||
FFmpeg/libavutil/container_fifo.c
|
||||
FFmpeg/libavutil/float_scalarproduct.c
|
||||
FFmpeg/libavutil/timecode_internal.c
|
||||
FFmpeg/libavutil/iamf.c
|
||||
FFmpeg/libavutil/timestamp.c
|
||||
)
|
||||
# x86 platform files
|
||||
if(NOT CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|arm64|ARM64")
|
||||
target_sources(libavutil PRIVATE
|
||||
FFmpeg/libavutil/x86/cpu.c
|
||||
FFmpeg/libavutil/x86/fixed_dsp_init.c
|
||||
FFmpeg/libavutil/x86/float_dsp_init.c
|
||||
FFmpeg/libavutil/x86/imgutils_init.c
|
||||
FFmpeg/libavutil/x86/lls_init.c
|
||||
FFmpeg/libavutil/x86/tx_float_init.c
|
||||
)
|
||||
endif()
|
||||
ffmpeg_common(libavutil)
|
||||
|
||||
# --- libavcodec ---
|
||||
add_library(libavcodec STATIC
|
||||
FFmpeg/libavcodec/ac3_parser.c
|
||||
FFmpeg/libavcodec/adts_parser.c
|
||||
FFmpeg/libavcodec/allcodecs.c
|
||||
FFmpeg/libavcodec/avcodec.c
|
||||
FFmpeg/libavcodec/avdct.c
|
||||
FFmpeg/libavcodec/packet.c
|
||||
FFmpeg/libavcodec/bitstream.c
|
||||
FFmpeg/libavcodec/bitstream_filters.c
|
||||
FFmpeg/libavcodec/bsf.c
|
||||
FFmpeg/libavcodec/codec_desc.c
|
||||
FFmpeg/libavcodec/codec_par.c
|
||||
FFmpeg/libavcodec/d3d11va.c
|
||||
FFmpeg/libavcodec/decode.c
|
||||
FFmpeg/libavcodec/dirac.c
|
||||
FFmpeg/libavcodec/dv_profile.c
|
||||
FFmpeg/libavcodec/encode.c
|
||||
FFmpeg/libavcodec/imgconvert.c
|
||||
FFmpeg/libavcodec/jni.c
|
||||
FFmpeg/libavcodec/mathtables.c
|
||||
FFmpeg/libavcodec/mediacodec.c
|
||||
FFmpeg/libavcodec/mpeg12framerate.c
|
||||
FFmpeg/libavcodec/options.c
|
||||
FFmpeg/libavcodec/parser.c
|
||||
FFmpeg/libavcodec/parsers.c
|
||||
FFmpeg/libavcodec/profiles.c
|
||||
FFmpeg/libavcodec/qsv_api.c
|
||||
FFmpeg/libavcodec/raw.c
|
||||
FFmpeg/libavcodec/utils.c
|
||||
FFmpeg/libavcodec/vorbis_parser.c
|
||||
FFmpeg/libavcodec/xiph.c
|
||||
FFmpeg/libavcodec/dct32_fixed.c
|
||||
FFmpeg/libavcodec/dct32_float.c
|
||||
FFmpeg/libavcodec/faandct.c
|
||||
FFmpeg/libavcodec/faanidct.c
|
||||
FFmpeg/libavcodec/fdctdsp.c
|
||||
FFmpeg/libavcodec/jfdctfst.c
|
||||
FFmpeg/libavcodec/jfdctint.c
|
||||
FFmpeg/libavcodec/idctdsp.c
|
||||
FFmpeg/libavcodec/simple_idct.c
|
||||
FFmpeg/libavcodec/jrevdct.c
|
||||
FFmpeg/libavcodec/mpegaudio.c
|
||||
FFmpeg/libavcodec/mpegaudiodec_common.c
|
||||
FFmpeg/libavcodec/mpegaudiodsp.c
|
||||
FFmpeg/libavcodec/mpegaudiodsp_data.c
|
||||
FFmpeg/libavcodec/mpegaudiodsp_fixed.c
|
||||
FFmpeg/libavcodec/mpegaudiodsp_float.c
|
||||
FFmpeg/libavcodec/mpegaudiodecheader.c
|
||||
FFmpeg/libavcodec/mpegaudiodata.c
|
||||
FFmpeg/libavcodec/sinewin.c
|
||||
FFmpeg/libavcodec/wma_freqs.c
|
||||
FFmpeg/libavcodec/mpegaudiodec_fixed.c
|
||||
FFmpeg/libavcodec/mpegaudiodec_float.c
|
||||
FFmpeg/libavcodec/wmaprodec.c
|
||||
FFmpeg/libavcodec/wma.c
|
||||
FFmpeg/libavcodec/wma_common.c
|
||||
FFmpeg/libavcodec/wmadec.c
|
||||
FFmpeg/libavcodec/aactab.c
|
||||
FFmpeg/libavcodec/mpegaudio_parser.c
|
||||
FFmpeg/libavcodec/pthread.c
|
||||
FFmpeg/libavcodec/pthread_slice.c
|
||||
FFmpeg/libavcodec/pthread_frame.c
|
||||
FFmpeg/libavcodec/get_buffer.c
|
||||
FFmpeg/libavcodec/vlc.c
|
||||
FFmpeg/libavcodec/threadprogress.c
|
||||
FFmpeg/libavcodec/bsf/null.c
|
||||
FFmpeg/libavcodec/exif.c
|
||||
FFmpeg/libavcodec/mpegaudiotabs.c
|
||||
FFmpeg/libavcodec/tiff_common.c
|
||||
)
|
||||
if(WIN32)
|
||||
target_sources(libavcodec PRIVATE FFmpeg/libavcodec/file_open.c)
|
||||
endif()
|
||||
# x86 platform files
|
||||
if(NOT CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|arm64|ARM64")
|
||||
target_sources(libavcodec PRIVATE
|
||||
FFmpeg/libavcodec/x86/constants.c
|
||||
FFmpeg/libavcodec/x86/fdctdsp_init.c
|
||||
FFmpeg/libavcodec/x86/idctdsp_init.c
|
||||
FFmpeg/libavcodec/x86/mpegaudiodsp.c
|
||||
FFmpeg/libavcodec/x86/fdct.c
|
||||
)
|
||||
endif()
|
||||
target_include_directories(libavcodec PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/FFmpeg/libavcodec
|
||||
)
|
||||
target_link_libraries(libavcodec PRIVATE libavutil)
|
||||
ffmpeg_common(libavcodec)
|
||||
|
||||
# --- libavformat ---
|
||||
add_library(libavformat STATIC
|
||||
FFmpeg/libavformat/allformats.c
|
||||
FFmpeg/libavformat/avio.c
|
||||
FFmpeg/libavformat/aviobuf.c
|
||||
FFmpeg/libavformat/dump.c
|
||||
FFmpeg/libavformat/format.c
|
||||
FFmpeg/libavformat/id3v1.c
|
||||
FFmpeg/libavformat/id3v2.c
|
||||
FFmpeg/libavformat/metadata.c
|
||||
FFmpeg/libavformat/mux.c
|
||||
FFmpeg/libavformat/options.c
|
||||
FFmpeg/libavformat/os_support.c
|
||||
FFmpeg/libavformat/protocols.c
|
||||
FFmpeg/libavformat/riff.c
|
||||
FFmpeg/libavformat/sdp.c
|
||||
FFmpeg/libavformat/url.c
|
||||
FFmpeg/libavformat/utils.c
|
||||
FFmpeg/libavformat/riffdec.c
|
||||
FFmpeg/libavformat/asfdec_f.c
|
||||
FFmpeg/libavformat/asf.c
|
||||
FFmpeg/libavformat/asfcrypt.c
|
||||
FFmpeg/libavformat/avlanguage.c
|
||||
FFmpeg/libavformat/mp3dec.c
|
||||
FFmpeg/libavformat/replaygain.c
|
||||
FFmpeg/libavformat/file.c
|
||||
FFmpeg/libavformat/demux.c
|
||||
FFmpeg/libavformat/avformat.c
|
||||
FFmpeg/libavformat/seek.c
|
||||
FFmpeg/libavformat/demux_utils.c
|
||||
FFmpeg/libavformat/urldecode.c
|
||||
FFmpeg/libavformat/asf_tags.c
|
||||
FFmpeg/libavformat/to_upper4.c
|
||||
)
|
||||
if(WIN32)
|
||||
target_sources(libavformat PRIVATE FFmpeg/libavformat/file_open.c)
|
||||
endif()
|
||||
target_link_libraries(libavformat PRIVATE libavutil libavcodec)
|
||||
ffmpeg_common(libavformat)
|
||||
360
third_party/SDL2-static.lua
vendored
360
third_party/SDL2-static.lua
vendored
@@ -1,360 +0,0 @@
|
||||
-- This project resembles the build configuration on Windows only.
|
||||
group("third_party")
|
||||
project("SDL2")
|
||||
uuid("65878768-95A1-4E7B-8DFB-B23A09E0DE7C")
|
||||
kind("StaticLib")
|
||||
language("C")
|
||||
|
||||
defines({
|
||||
"HAVE_LIBC",
|
||||
"SDL_LEAN_AND_MEAN",
|
||||
"SDL_RENDER_DISABLED",
|
||||
})
|
||||
links({
|
||||
"setupapi.lib",
|
||||
"winmm.lib",
|
||||
"imm32.lib",
|
||||
"version.lib",
|
||||
})
|
||||
includedirs({
|
||||
"SDL2/include",
|
||||
})
|
||||
files({
|
||||
-- 1:1 from SDL2/VisualC/SDL/SDL.vcxproj file
|
||||
"SDL2/src/audio/directsound/SDL_directsound.h",
|
||||
"SDL2/src/audio/disk/SDL_diskaudio.h",
|
||||
"SDL2/src/audio/dummy/SDL_dummyaudio.h",
|
||||
"SDL2/src/audio/SDL_audio_c.h",
|
||||
"SDL2/src/audio/SDL_audiodev_c.h",
|
||||
"SDL2/src/audio/SDL_sysaudio.h",
|
||||
"SDL2/src/audio/SDL_wave.h",
|
||||
"SDL2/src/audio/wasapi/SDL_wasapi.h",
|
||||
"SDL2/src/audio/winmm/SDL_winmm.h",
|
||||
"SDL2/src/core/windows/SDL_directx.h",
|
||||
"SDL2/src/core/windows/SDL_hid.h",
|
||||
"SDL2/src/core/windows/SDL_immdevice.h",
|
||||
"SDL2/src/core/windows/SDL_windows.h",
|
||||
"SDL2/src/core/windows/SDL_xinput.h",
|
||||
"SDL2/src/dynapi/SDL_dynapi.h",
|
||||
"SDL2/src/dynapi/SDL_dynapi_overrides.h",
|
||||
"SDL2/src/dynapi/SDL_dynapi_procs.h",
|
||||
"SDL2/src/events/blank_cursor.h",
|
||||
"SDL2/src/events/default_cursor.h",
|
||||
"SDL2/src/events/scancodes_windows.h",
|
||||
"SDL2/src/events/SDL_clipboardevents_c.h",
|
||||
"SDL2/src/events/SDL_displayevents_c.h",
|
||||
"SDL2/src/events/SDL_dropevents_c.h",
|
||||
"SDL2/src/events/SDL_events_c.h",
|
||||
"SDL2/src/events/SDL_gesture_c.h",
|
||||
"SDL2/src/events/SDL_keyboard_c.h",
|
||||
"SDL2/src/events/SDL_mouse_c.h",
|
||||
"SDL2/src/events/SDL_touch_c.h",
|
||||
"SDL2/src/events/SDL_windowevents_c.h",
|
||||
"SDL2/src/haptic/SDL_haptic_c.h",
|
||||
"SDL2/src/haptic/SDL_syshaptic.h",
|
||||
"SDL2/src/haptic/windows/SDL_dinputhaptic_c.h",
|
||||
"SDL2/src/haptic/windows/SDL_windowshaptic_c.h",
|
||||
"SDL2/src/haptic/windows/SDL_xinputhaptic_c.h",
|
||||
"SDL2/src/hidapi/hidapi/hidapi.h",
|
||||
"SDL2/src/hidapi/SDL_hidapi_c.h",
|
||||
"SDL2/src/joystick/controller_type.h",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapijoystick_c.h",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_rumble.h",
|
||||
"SDL2/src/joystick/SDL_gamecontrollerdb.h",
|
||||
"SDL2/src/joystick/SDL_joystick_c.h",
|
||||
"SDL2/src/joystick/SDL_steam_virtual_gamepad.h",
|
||||
"SDL2/src/joystick/SDL_sysjoystick.h",
|
||||
"SDL2/src/joystick/usb_ids.h",
|
||||
"SDL2/src/joystick/virtual/SDL_virtualjoystick_c.h",
|
||||
"SDL2/src/joystick/windows/SDL_dinputjoystick_c.h",
|
||||
"SDL2/src/joystick/windows/SDL_rawinputjoystick_c.h",
|
||||
"SDL2/src/joystick/windows/SDL_windowsjoystick_c.h",
|
||||
"SDL2/src/joystick/windows/SDL_xinputjoystick_c.h",
|
||||
"SDL2/src/libm/math_libm.h",
|
||||
"SDL2/src/libm/math_private.h",
|
||||
"SDL2/src/locale/SDL_syslocale.h",
|
||||
"SDL2/src/misc/SDL_sysurl.h",
|
||||
"SDL2/src/power/SDL_syspower.h",
|
||||
"SDL2/src/render/direct3d11/SDL_shaders_d3d11.h",
|
||||
"SDL2/src/render/direct3d12/SDL_shaders_d3d12.h",
|
||||
"SDL2/src/render/direct3d/SDL_shaders_d3d.h",
|
||||
"SDL2/src/render/opengles2/SDL_gles2funcs.h",
|
||||
"SDL2/src/render/opengles2/SDL_shaders_gles2.h",
|
||||
"SDL2/src/render/opengl/SDL_glfuncs.h",
|
||||
"SDL2/src/render/opengl/SDL_shaders_gl.h",
|
||||
"SDL2/src/render/SDL_d3dmath.h",
|
||||
"SDL2/src/render/SDL_sysrender.h",
|
||||
"SDL2/src/render/SDL_yuv_sw_c.h",
|
||||
"SDL2/src/render/software/SDL_blendfillrect.h",
|
||||
"SDL2/src/render/software/SDL_blendline.h",
|
||||
"SDL2/src/render/software/SDL_blendpoint.h",
|
||||
"SDL2/src/render/software/SDL_draw.h",
|
||||
"SDL2/src/render/software/SDL_drawline.h",
|
||||
"SDL2/src/render/software/SDL_drawpoint.h",
|
||||
"SDL2/src/render/software/SDL_render_sw_c.h",
|
||||
"SDL2/src/render/software/SDL_rotate.h",
|
||||
"SDL2/src/render/software/SDL_triangle.h",
|
||||
"SDL2/src/SDL_assert_c.h",
|
||||
"SDL2/src/SDL_dataqueue.h",
|
||||
"SDL2/src/SDL_error_c.h",
|
||||
"SDL2/src/SDL_guid.c",
|
||||
"SDL2/src/SDL_hints_c.h",
|
||||
"SDL2/src/SDL_internal.h",
|
||||
"SDL2/src/SDL_list.h",
|
||||
"SDL2/src/SDL_log_c.h",
|
||||
"SDL2/src/sensor/dummy/SDL_dummysensor.h",
|
||||
"SDL2/src/sensor/SDL_sensor_c.h",
|
||||
"SDL2/src/sensor/SDL_syssensor.h",
|
||||
"SDL2/src/sensor/windows/SDL_windowssensor.h",
|
||||
"SDL2/src/thread/SDL_systhread.h",
|
||||
"SDL2/src/thread/SDL_thread_c.h",
|
||||
"SDL2/src/thread/generic/SDL_syscond_c.h",
|
||||
"SDL2/src/thread/windows/SDL_sysmutex_c.h",
|
||||
"SDL2/src/thread/windows/SDL_systhread_c.h",
|
||||
"SDL2/src/timer/SDL_timer_c.h",
|
||||
"SDL2/src/video/dummy/SDL_nullevents_c.h",
|
||||
"SDL2/src/video/dummy/SDL_nullframebuffer_c.h",
|
||||
"SDL2/src/video/dummy/SDL_nullvideo.h",
|
||||
"SDL2/src/video/khronos/vulkan/vk_icd.h",
|
||||
"SDL2/src/video/khronos/vulkan/vk_layer.h",
|
||||
"SDL2/src/video/khronos/vulkan/vk_platform.h",
|
||||
"SDL2/src/video/khronos/vulkan/vk_sdk_platform.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_android.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_beta.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_core.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_directfb.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_fuchsia.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_ggp.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_ios.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_macos.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_metal.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_vi.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_wayland.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_win32.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_xcb.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_xlib.h",
|
||||
"SDL2/src/video/khronos/vulkan/vulkan_xlib_xrandr.h",
|
||||
"SDL2/src/video/SDL_blit.h",
|
||||
"SDL2/src/video/SDL_blit_auto.h",
|
||||
"SDL2/src/video/SDL_blit_copy.h",
|
||||
"SDL2/src/video/SDL_blit_slow.h",
|
||||
"SDL2/src/video/SDL_egl_c.h",
|
||||
"SDL2/src/video/SDL_pixels_c.h",
|
||||
"SDL2/src/video/SDL_rect_c.h",
|
||||
"SDL2/src/video/SDL_RLEaccel_c.h",
|
||||
"SDL2/src/video/SDL_shape_internals.h",
|
||||
"SDL2/src/video/SDL_sysvideo.h",
|
||||
"SDL2/src/video/SDL_vulkan_internal.h",
|
||||
"SDL2/src/video/SDL_yuv_c.h",
|
||||
"SDL2/src/video/windows/SDL_msctf.h",
|
||||
"SDL2/src/video/windows/SDL_vkeys.h",
|
||||
"SDL2/src/video/windows/SDL_windowsclipboard.h",
|
||||
"SDL2/src/video/windows/SDL_windowsevents.h",
|
||||
"SDL2/src/video/windows/SDL_windowsframebuffer.h",
|
||||
"SDL2/src/video/windows/SDL_windowskeyboard.h",
|
||||
"SDL2/src/video/windows/SDL_windowsmessagebox.h",
|
||||
"SDL2/src/video/windows/SDL_windowsmodes.h",
|
||||
"SDL2/src/video/windows/SDL_windowsmouse.h",
|
||||
"SDL2/src/video/windows/SDL_windowsopengl.h",
|
||||
"SDL2/src/video/windows/SDL_windowsopengles.h",
|
||||
"SDL2/src/video/windows/SDL_windowsshape.h",
|
||||
"SDL2/src/video/windows/SDL_windowsvideo.h",
|
||||
"SDL2/src/video/windows/SDL_windowsvulkan.h",
|
||||
"SDL2/src/video/windows/SDL_windowswindow.h",
|
||||
"SDL2/src/video/windows/wmmsg.h",
|
||||
"SDL2/src/video/yuv2rgb/yuv_rgb.h",
|
||||
"SDL2/src/video/yuv2rgb/yuv_rgb_common.h",
|
||||
"SDL2/src/video/yuv2rgb/yuv_rgb_internal.h",
|
||||
"SDL2/src/video/yuv2rgb/yuv_rgb_lsx.h",
|
||||
"SDL2/src/video/yuv2rgb/yuv_rgb_lsx_func.h",
|
||||
"SDL2/src/video/yuv2rgb/yuv_rgb_sse.h",
|
||||
"SDL2/src/video/yuv2rgb/yuv_rgb_sse_func.h",
|
||||
"SDL2/src/video/yuv2rgb/yuv_rgb_std.h",
|
||||
"SDL2/src/video/yuv2rgb/yuv_rgb_std_func.h",
|
||||
|
||||
"SDL2/src/atomic/SDL_atomic.c",
|
||||
"SDL2/src/atomic/SDL_spinlock.c",
|
||||
"SDL2/src/audio/directsound/SDL_directsound.c",
|
||||
"SDL2/src/audio/disk/SDL_diskaudio.c",
|
||||
"SDL2/src/audio/dummy/SDL_dummyaudio.c",
|
||||
"SDL2/src/audio/SDL_audio.c",
|
||||
"SDL2/src/audio/SDL_audiocvt.c",
|
||||
"SDL2/src/audio/SDL_audiodev.c",
|
||||
"SDL2/src/audio/SDL_audiotypecvt.c",
|
||||
"SDL2/src/audio/SDL_mixer.c",
|
||||
"SDL2/src/audio/SDL_wave.c",
|
||||
"SDL2/src/audio/winmm/SDL_winmm.c",
|
||||
"SDL2/src/audio/wasapi/SDL_wasapi.c",
|
||||
"SDL2/src/audio/wasapi/SDL_wasapi_win32.c",
|
||||
"SDL2/src/core/windows/SDL_hid.c",
|
||||
"SDL2/src/core/windows/SDL_immdevice.c",
|
||||
"SDL2/src/core/windows/SDL_windows.c",
|
||||
"SDL2/src/core/windows/SDL_xinput.c",
|
||||
"SDL2/src/cpuinfo/SDL_cpuinfo.c",
|
||||
"SDL2/src/dynapi/SDL_dynapi.c",
|
||||
"SDL2/src/events/SDL_clipboardevents.c",
|
||||
"SDL2/src/events/SDL_displayevents.c",
|
||||
"SDL2/src/events/SDL_dropevents.c",
|
||||
"SDL2/src/events/SDL_events.c",
|
||||
"SDL2/src/events/SDL_gesture.c",
|
||||
"SDL2/src/events/SDL_keyboard.c",
|
||||
"SDL2/src/events/SDL_mouse.c",
|
||||
"SDL2/src/events/SDL_quit.c",
|
||||
"SDL2/src/events/SDL_touch.c",
|
||||
"SDL2/src/events/SDL_windowevents.c",
|
||||
"SDL2/src/file/SDL_rwops.c",
|
||||
"SDL2/src/filesystem/windows/SDL_sysfilesystem.c",
|
||||
"SDL2/src/haptic/dummy/SDL_syshaptic.c",
|
||||
"SDL2/src/haptic/SDL_haptic.c",
|
||||
"SDL2/src/haptic/windows/SDL_dinputhaptic.c",
|
||||
"SDL2/src/haptic/windows/SDL_windowshaptic.c",
|
||||
"SDL2/src/haptic/windows/SDL_xinputhaptic.c",
|
||||
"SDL2/src/hidapi/SDL_hidapi.c",
|
||||
"SDL2/src/joystick/controller_type.c",
|
||||
"SDL2/src/joystick/dummy/SDL_sysjoystick.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapijoystick.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_combined.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_gamecube.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_luna.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_ps3.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_ps4.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_ps5.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_rumble.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_shield.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_stadia.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_steam.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_steamdeck.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_switch.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_wii.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_xbox360.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_xbox360w.c",
|
||||
"SDL2/src/joystick/hidapi/SDL_hidapi_xboxone.c",
|
||||
"SDL2/src/joystick/SDL_gamecontroller.c",
|
||||
"SDL2/src/joystick/SDL_joystick.c",
|
||||
"SDL2/src/joystick/SDL_steam_virtual_gamepad.c",
|
||||
"SDL2/src/joystick/virtual/SDL_virtualjoystick.c",
|
||||
"SDL2/src/joystick/windows/SDL_dinputjoystick.c",
|
||||
"SDL2/src/joystick/windows/SDL_rawinputjoystick.c",
|
||||
"SDL2/src/joystick/windows/SDL_windowsjoystick.c",
|
||||
"SDL2/src/joystick/windows/SDL_windows_gaming_input.c",
|
||||
"SDL2/src/joystick/windows/SDL_xinputjoystick.c",
|
||||
"SDL2/src/libm/e_atan2.c",
|
||||
"SDL2/src/libm/e_exp.c",
|
||||
"SDL2/src/libm/e_fmod.c",
|
||||
"SDL2/src/libm/e_log.c",
|
||||
"SDL2/src/libm/e_log10.c",
|
||||
"SDL2/src/libm/e_pow.c",
|
||||
"SDL2/src/libm/e_rem_pio2.c",
|
||||
"SDL2/src/libm/e_sqrt.c",
|
||||
"SDL2/src/libm/k_cos.c",
|
||||
"SDL2/src/libm/k_rem_pio2.c",
|
||||
"SDL2/src/libm/k_sin.c",
|
||||
"SDL2/src/libm/k_tan.c",
|
||||
"SDL2/src/libm/s_atan.c",
|
||||
"SDL2/src/libm/s_copysign.c",
|
||||
"SDL2/src/libm/s_cos.c",
|
||||
"SDL2/src/libm/s_fabs.c",
|
||||
"SDL2/src/libm/s_floor.c",
|
||||
"SDL2/src/libm/s_scalbn.c",
|
||||
"SDL2/src/libm/s_sin.c",
|
||||
"SDL2/src/libm/s_tan.c",
|
||||
"SDL2/src/loadso/windows/SDL_sysloadso.c",
|
||||
"SDL2/src/locale/SDL_locale.c",
|
||||
"SDL2/src/locale/windows/SDL_syslocale.c",
|
||||
"SDL2/src/misc/SDL_url.c",
|
||||
"SDL2/src/misc/windows/SDL_sysurl.c",
|
||||
"SDL2/src/power/SDL_power.c",
|
||||
"SDL2/src/power/windows/SDL_syspower.c",
|
||||
"SDL2/src/render/direct3d11/SDL_shaders_d3d11.c",
|
||||
"SDL2/src/render/direct3d12/SDL_render_d3d12.c",
|
||||
"SDL2/src/render/direct3d12/SDL_shaders_d3d12.c",
|
||||
"SDL2/src/render/direct3d/SDL_render_d3d.c",
|
||||
"SDL2/src/render/direct3d11/SDL_render_d3d11.c",
|
||||
"SDL2/src/render/direct3d/SDL_shaders_d3d.c",
|
||||
"SDL2/src/render/opengl/SDL_render_gl.c",
|
||||
"SDL2/src/render/opengl/SDL_shaders_gl.c",
|
||||
"SDL2/src/render/opengles2/SDL_render_gles2.c",
|
||||
"SDL2/src/render/opengles2/SDL_shaders_gles2.c",
|
||||
"SDL2/src/render/SDL_d3dmath.c",
|
||||
"SDL2/src/render/SDL_render.c",
|
||||
"SDL2/src/render/SDL_yuv_sw.c",
|
||||
"SDL2/src/render/software/SDL_blendfillrect.c",
|
||||
"SDL2/src/render/software/SDL_blendline.c",
|
||||
"SDL2/src/render/software/SDL_blendpoint.c",
|
||||
"SDL2/src/render/software/SDL_drawline.c",
|
||||
"SDL2/src/render/software/SDL_drawpoint.c",
|
||||
"SDL2/src/render/software/SDL_render_sw.c",
|
||||
"SDL2/src/render/software/SDL_rotate.c",
|
||||
"SDL2/src/render/software/SDL_triangle.c",
|
||||
"SDL2/src/SDL.c",
|
||||
"SDL2/src/SDL_assert.c",
|
||||
"SDL2/src/SDL_dataqueue.c",
|
||||
"SDL2/src/SDL_list.c",
|
||||
"SDL2/src/SDL_error.c",
|
||||
"SDL2/src/SDL_hints.c",
|
||||
"SDL2/src/SDL_log.c",
|
||||
"SDL2/src/SDL_utils.c",
|
||||
"SDL2/src/sensor/dummy/SDL_dummysensor.c",
|
||||
"SDL2/src/sensor/SDL_sensor.c",
|
||||
"SDL2/src/sensor/windows/SDL_windowssensor.c",
|
||||
"SDL2/src/stdlib/SDL_crc16.c",
|
||||
"SDL2/src/stdlib/SDL_crc32.c",
|
||||
"SDL2/src/stdlib/SDL_getenv.c",
|
||||
"SDL2/src/stdlib/SDL_iconv.c",
|
||||
"SDL2/src/stdlib/SDL_malloc.c",
|
||||
"SDL2/src/stdlib/SDL_mslibc.c",
|
||||
"SDL2/src/stdlib/SDL_qsort.c",
|
||||
"SDL2/src/stdlib/SDL_stdlib.c",
|
||||
"SDL2/src/stdlib/SDL_string.c",
|
||||
"SDL2/src/stdlib/SDL_strtokr.c",
|
||||
"SDL2/src/thread/generic/SDL_syscond.c",
|
||||
"SDL2/src/thread/SDL_thread.c",
|
||||
"SDL2/src/thread/windows/SDL_syscond_cv.c",
|
||||
"SDL2/src/thread/windows/SDL_sysmutex.c",
|
||||
"SDL2/src/thread/windows/SDL_syssem.c",
|
||||
"SDL2/src/thread/windows/SDL_systhread.c",
|
||||
"SDL2/src/thread/windows/SDL_systls.c",
|
||||
"SDL2/src/timer/SDL_timer.c",
|
||||
"SDL2/src/timer/windows/SDL_systimer.c",
|
||||
"SDL2/src/video/dummy/SDL_nullevents.c",
|
||||
"SDL2/src/video/dummy/SDL_nullframebuffer.c",
|
||||
"SDL2/src/video/dummy/SDL_nullvideo.c",
|
||||
"SDL2/src/video/SDL_blit.c",
|
||||
"SDL2/src/video/SDL_blit_0.c",
|
||||
"SDL2/src/video/SDL_blit_1.c",
|
||||
"SDL2/src/video/SDL_blit_A.c",
|
||||
"SDL2/src/video/SDL_blit_auto.c",
|
||||
"SDL2/src/video/SDL_blit_copy.c",
|
||||
"SDL2/src/video/SDL_blit_N.c",
|
||||
"SDL2/src/video/SDL_blit_slow.c",
|
||||
"SDL2/src/video/SDL_bmp.c",
|
||||
"SDL2/src/video/SDL_clipboard.c",
|
||||
"SDL2/src/video/SDL_egl.c",
|
||||
"SDL2/src/video/SDL_fillrect.c",
|
||||
"SDL2/src/video/SDL_pixels.c",
|
||||
"SDL2/src/video/SDL_rect.c",
|
||||
"SDL2/src/video/SDL_RLEaccel.c",
|
||||
"SDL2/src/video/SDL_shape.c",
|
||||
"SDL2/src/video/SDL_stretch.c",
|
||||
"SDL2/src/video/SDL_surface.c",
|
||||
"SDL2/src/video/SDL_video.c",
|
||||
"SDL2/src/video/SDL_vulkan_utils.c",
|
||||
"SDL2/src/video/SDL_yuv.c",
|
||||
"SDL2/src/video/windows/SDL_windowsclipboard.c",
|
||||
"SDL2/src/video/windows/SDL_windowsevents.c",
|
||||
"SDL2/src/video/windows/SDL_windowsframebuffer.c",
|
||||
"SDL2/src/video/windows/SDL_windowskeyboard.c",
|
||||
"SDL2/src/video/windows/SDL_windowsmessagebox.c",
|
||||
"SDL2/src/video/windows/SDL_windowsmodes.c",
|
||||
"SDL2/src/video/windows/SDL_windowsmouse.c",
|
||||
"SDL2/src/video/windows/SDL_windowsopengl.c",
|
||||
"SDL2/src/video/windows/SDL_windowsopengles.c",
|
||||
"SDL2/src/video/windows/SDL_windowsshape.c",
|
||||
"SDL2/src/video/windows/SDL_windowsvideo.c",
|
||||
"SDL2/src/video/windows/SDL_windowsvulkan.c",
|
||||
"SDL2/src/video/windows/SDL_windowswindow.c",
|
||||
"SDL2/src/video/yuv2rgb/yuv_rgb_lsx.c",
|
||||
"SDL2/src/video/yuv2rgb/yuv_rgb_sse.c",
|
||||
"SDL2/src/video/yuv2rgb/yuv_rgb_std.c",
|
||||
})
|
||||
36
third_party/SDL2.lua
vendored
36
third_party/SDL2.lua
vendored
@@ -1,36 +0,0 @@
|
||||
--
|
||||
-- On Linux we build against the system version (libsdl2-dev for building),
|
||||
-- since SDL2 is our robust API there like DirectX is on Windows.
|
||||
--
|
||||
|
||||
local sdl2_sys_includedirs = {}
|
||||
local third_party_path = os.getcwd()
|
||||
|
||||
if os.istarget("windows") then
|
||||
-- build ourselves
|
||||
include("SDL2-static.lua")
|
||||
else
|
||||
-- use system libraries
|
||||
local result, code, what = os.outputof("sdl2-config --cflags")
|
||||
if result then
|
||||
for inc in string.gmatch(result, "-I([%S]+)") do
|
||||
table.insert(sdl2_sys_includedirs, inc)
|
||||
end
|
||||
else
|
||||
error("Failed to run 'sdl2-config'. Are libsdl2 development files installed?")
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
--
|
||||
-- Call this function in project scope to include the SDL2 headers.
|
||||
--
|
||||
function sdl2_include()
|
||||
filter("platforms:Windows")
|
||||
includedirs({
|
||||
path.getrelative(".", third_party_path) .. "/SDL2/include",
|
||||
})
|
||||
filter("platforms:Linux or platforms:Mac")
|
||||
includedirs(sdl2_sys_includedirs)
|
||||
filter({})
|
||||
end
|
||||
11
third_party/aes_128.lua
vendored
11
third_party/aes_128.lua
vendored
@@ -1,11 +0,0 @@
|
||||
group("third_party")
|
||||
project("aes_128")
|
||||
uuid("b50458bf-dd83-4c1a-8cad-61f5fbbfd720")
|
||||
kind("StaticLib")
|
||||
language("C")
|
||||
includedirs({
|
||||
"aes_128",
|
||||
})
|
||||
files({
|
||||
"aes_128/unroll/aes.c",
|
||||
})
|
||||
36
third_party/capstone.lua
vendored
36
third_party/capstone.lua
vendored
@@ -1,36 +0,0 @@
|
||||
group("third_party")
|
||||
project("capstone")
|
||||
uuid("b3a89f7e-bb02-4945-ae75-219caed6afa2")
|
||||
kind("StaticLib")
|
||||
language("C")
|
||||
defines({
|
||||
"CAPSTONE_X86_ATT_DISABLE",
|
||||
"CAPSTONE_HAS_X86",
|
||||
"CAPSTONE_USE_SYS_DYN_MEM",
|
||||
})
|
||||
|
||||
includedirs({
|
||||
"capstone",
|
||||
"capstone/include",
|
||||
})
|
||||
files({
|
||||
"capstone/cs.c",
|
||||
"capstone/MCInst.c",
|
||||
"capstone/MCInstrDesc.c",
|
||||
"capstone/MCRegisterInfo.c",
|
||||
"capstone/SStream.c",
|
||||
"capstone/utils.c",
|
||||
"capstone/Mapping.c",
|
||||
|
||||
"capstone/arch/X86/*.c",
|
||||
"capstone/arch/X86/*.h",
|
||||
"capstone/arch/X86/*.inc",
|
||||
})
|
||||
force_compile_as_c({
|
||||
"capstone/**.c",
|
||||
"capstone/arch/X86/**.c",
|
||||
})
|
||||
removefiles({
|
||||
"capstone/arch/X86/X86ATTInstPrinter.c",
|
||||
"capstone/arch/X86/*reduce.inc",
|
||||
})
|
||||
14
third_party/cxxopts.lua
vendored
14
third_party/cxxopts.lua
vendored
@@ -1,14 +0,0 @@
|
||||
group("third_party")
|
||||
project("cxxopts")
|
||||
uuid("8b68cbe8-2da4-4f28-be14-9352eafa3168")
|
||||
if os.istarget("android") then
|
||||
-- ndk-build only supports StaticLib and SharedLib.
|
||||
kind("StaticLib")
|
||||
else
|
||||
kind("Utility")
|
||||
end
|
||||
language("C++")
|
||||
files({
|
||||
"cxxopts/include/cxxopts.hpp",
|
||||
})
|
||||
warnings("Off")
|
||||
36
third_party/discord-rpc.lua
vendored
36
third_party/discord-rpc.lua
vendored
@@ -1,36 +0,0 @@
|
||||
group("third_party")
|
||||
project("discord-rpc")
|
||||
uuid("012f6131-efc0-4abd-852d-a33640732d4c")
|
||||
kind("StaticLib")
|
||||
language("C++")
|
||||
defines({
|
||||
"RAPIDJSON_SSE42",
|
||||
-- "RAPIDJSON_NEON",
|
||||
})
|
||||
includedirs({
|
||||
"discord-rpc/include",
|
||||
"rapidjson/include"
|
||||
})
|
||||
files({
|
||||
"discord-rpc/src/connection.h",
|
||||
"discord-rpc/src/discord_rpc.cpp",
|
||||
"discord-rpc/src/msg_queue.h",
|
||||
"discord-rpc/src/rpc_connection.cpp",
|
||||
"discord-rpc/src/rpc_connection.h",
|
||||
"discord-rpc/src/serialization.cpp",
|
||||
"discord-rpc/src/serialization.h"
|
||||
})
|
||||
filter("platforms:Linux")
|
||||
files({
|
||||
"discord-rpc/src/connection_unix.cpp",
|
||||
"discord-rpc/src/discord_register_linux.cpp"
|
||||
})
|
||||
filter("platforms:Mac")
|
||||
files({
|
||||
"discord-rpc/src/discord_register_osx.m"
|
||||
})
|
||||
filter("platforms:Windows")
|
||||
files({
|
||||
"discord-rpc/src/connection_win.cpp",
|
||||
"discord-rpc/src/discord_register_win.cpp"
|
||||
})
|
||||
11
third_party/dxbc.lua
vendored
11
third_party/dxbc.lua
vendored
@@ -1,11 +0,0 @@
|
||||
group("third_party")
|
||||
project("dxbc")
|
||||
uuid("c96688ca-51ca-406e-aeef-068734a67abe")
|
||||
kind("StaticLib")
|
||||
language("C++")
|
||||
includedirs({
|
||||
"dxbc",
|
||||
})
|
||||
files({
|
||||
"dxbc/DXBCChecksum.cpp",
|
||||
})
|
||||
42
third_party/ffmpeg-xenia/premake5.lua
vendored
42
third_party/ffmpeg-xenia/premake5.lua
vendored
@@ -1,42 +0,0 @@
|
||||
group("third_party")
|
||||
|
||||
--
|
||||
-- Call this function in subproject scope to set the needed include
|
||||
-- dirs and defines.
|
||||
--
|
||||
function ffmpeg_common()
|
||||
defines({
|
||||
"HAVE_AV_CONFIG_H",
|
||||
"_USE_MATH_DEFINES", -- For M_PI/etc
|
||||
})
|
||||
|
||||
-- Paths are relative to the calling script (sub-library premake files),
|
||||
-- which are one level deeper (e.g. libavcodec/premake5.lua).
|
||||
includedirs({
|
||||
"..", -- ffmpeg-xenia/ (config.h, avconfig.h, ffversion.h)
|
||||
"../../FFmpeg", -- FFmpeg source headers
|
||||
})
|
||||
filter({"platforms:Windows", "configurations:Debug or configurations:Checked"})
|
||||
optimize("Size") -- dead code elimination is mandatory
|
||||
removebuildoptions({
|
||||
"/RTCsu", -- '/O1' and '/RTCs' command-line options are incompatible
|
||||
})
|
||||
filter({"platforms:Windows", "configurations:Release"})
|
||||
linktimeoptimization("Off")
|
||||
filter("platforms:Windows")
|
||||
includedirs({
|
||||
"../../FFmpeg/compat/atomics/win32",
|
||||
})
|
||||
links({
|
||||
"bcrypt",
|
||||
})
|
||||
filter("platforms:Linux")
|
||||
includedirs({
|
||||
"../../FFmpeg/compat/atomics/gcc",
|
||||
})
|
||||
filter({})
|
||||
end
|
||||
|
||||
include("libavcodec/premake5.lua")
|
||||
include("libavformat/premake5.lua")
|
||||
include("libavutil/premake5.lua")
|
||||
13
third_party/fmt.lua
vendored
13
third_party/fmt.lua
vendored
@@ -1,13 +0,0 @@
|
||||
group("third_party")
|
||||
project("fmt")
|
||||
uuid("b9ff4b2c-b438-42a9-971e-e0c19a711a13")
|
||||
kind("StaticLib")
|
||||
language("C++")
|
||||
|
||||
includedirs({
|
||||
"fmt/include",
|
||||
})
|
||||
files({
|
||||
"fmt/src/format.cc",
|
||||
"fmt/src/os.cc"
|
||||
})
|
||||
20
third_party/glslang-spirv.lua
vendored
20
third_party/glslang-spirv.lua
vendored
@@ -1,20 +0,0 @@
|
||||
group("third_party")
|
||||
project("glslang-spirv")
|
||||
uuid("1cc8f45e-91e2-4daf-a55e-666bf8b5e6b2")
|
||||
kind("StaticLib")
|
||||
language("C++")
|
||||
|
||||
includedirs({
|
||||
"glslang",
|
||||
})
|
||||
|
||||
files({
|
||||
"glslang/SPIRV/*.cpp",
|
||||
"glslang/SPIRV/*.h",
|
||||
"glslang/SPIRV/*.hpp11",
|
||||
"glslang/glslang/Include/visibility.h",
|
||||
})
|
||||
|
||||
removefiles({
|
||||
"glslang/SPIRV/GlslangToSpv.cpp",
|
||||
})
|
||||
19
third_party/imgui.lua
vendored
19
third_party/imgui.lua
vendored
@@ -1,19 +0,0 @@
|
||||
group("third_party")
|
||||
project("imgui")
|
||||
uuid("ed9271c4-b0a1-42ef-8403-067b11bf49d0")
|
||||
kind("StaticLib")
|
||||
language("C++")
|
||||
includedirs({
|
||||
"imgui",
|
||||
--"imgui/misc/freetype",
|
||||
--"freetype/include",
|
||||
"stb",
|
||||
})
|
||||
files({
|
||||
"imgui/imgui.cpp",
|
||||
"imgui/imgui_demo.cpp",
|
||||
"imgui/imgui_draw.cpp",
|
||||
"imgui/imgui_tables.cpp",
|
||||
"imgui/imgui_widgets.cpp",
|
||||
--"imgui/misc/freetype/imgui_freetype.cpp",
|
||||
})
|
||||
47
third_party/libusb.lua
vendored
47
third_party/libusb.lua
vendored
@@ -1,47 +0,0 @@
|
||||
group("third_party")
|
||||
project("libusb")
|
||||
uuid("5f8b5485-fde5-4a42-8a13-8545fcf6d25b")
|
||||
kind("StaticLib")
|
||||
language("C")
|
||||
includedirs({
|
||||
"libusb/libusb",
|
||||
})
|
||||
|
||||
files({
|
||||
"libusb/libusb/core.c",
|
||||
"libusb/libusb/descriptor.c",
|
||||
"libusb/libusb/hotplug.c",
|
||||
"libusb/libusb/io.c",
|
||||
"libusb/libusb/strerror.c",
|
||||
"libusb/libusb/sync.c",
|
||||
})
|
||||
|
||||
filter({"platforms:Windows"})
|
||||
includedirs({
|
||||
"libusb/msvc",
|
||||
})
|
||||
files({
|
||||
"libusb/libusb/os/events_windows.c",
|
||||
"libusb/libusb/os/events_windows.h",
|
||||
"libusb/libusb/os/threads_windows.c",
|
||||
"libusb/libusb/os/threads_windows.h",
|
||||
"libusb/libusb/os/windows_common.c",
|
||||
"libusb/libusb/os/windows_common.h",
|
||||
"libusb/libusb/os/windows_usbdk.c",
|
||||
"libusb/libusb/os/windows_usbdk.h",
|
||||
"libusb/libusb/os/windows_winusb.c",
|
||||
"libusb/libusb/os/windows_winusb.h"
|
||||
})
|
||||
|
||||
filter({"platforms:Linux"})
|
||||
files({
|
||||
"libusb/libusb/config.h",
|
||||
"libusb/libusb/os/events_posix.c",
|
||||
"libusb/libusb/os/events_posix.h",
|
||||
"libusb/libusb/os/threads_posix.c",
|
||||
"libusb/libusb/os/threads_posix.h",
|
||||
"libusb/libusb/os/linux_netlink.c",
|
||||
"libusb/libusb/os/linux_udev.c",
|
||||
"libusb/libusb/os/linux_usbfs.c",
|
||||
"libusb/libusb/os/linux_usbfs.h"
|
||||
})
|
||||
19
third_party/mspack.lua
vendored
19
third_party/mspack.lua
vendored
@@ -1,19 +0,0 @@
|
||||
group("third_party")
|
||||
project("mspack")
|
||||
uuid("0881692A-75A1-4E7B-87D8-BB9108CEDEA4")
|
||||
kind("StaticLib")
|
||||
language("C++")
|
||||
links({
|
||||
"xenia-base",
|
||||
})
|
||||
defines({
|
||||
"HAVE_CONFIG_H",
|
||||
})
|
||||
includedirs({
|
||||
"mspack",
|
||||
})
|
||||
files({
|
||||
"mspack/logging.cc",
|
||||
"mspack/lzxd.c",
|
||||
"mspack/system.c",
|
||||
})
|
||||
8
third_party/pugixml.lua
vendored
8
third_party/pugixml.lua
vendored
@@ -1,8 +0,0 @@
|
||||
group("third_party")
|
||||
project("pugixml")
|
||||
uuid("d1089e5e-46ae-48c9-bee6-d38c674c8f61")
|
||||
kind("StaticLib")
|
||||
language("C++")
|
||||
files({
|
||||
"pugixml/src/pugixml.cpp",
|
||||
})
|
||||
23
third_party/snappy.lua
vendored
23
third_party/snappy.lua
vendored
@@ -1,23 +0,0 @@
|
||||
group("third_party")
|
||||
project("snappy")
|
||||
uuid("bb143d61-3fd4-44c2-8b7e-04cc538ba2c7")
|
||||
kind("StaticLib")
|
||||
language("C++")
|
||||
|
||||
files({
|
||||
"snappy/snappy-internal.h",
|
||||
"snappy/snappy-sinksource.cc",
|
||||
"snappy/snappy-sinksource.h",
|
||||
"snappy/snappy-stubs-internal.cc",
|
||||
"snappy/snappy-stubs-internal.h",
|
||||
"snappy/snappy-stubs-public.h",
|
||||
"snappy/snappy.cc",
|
||||
"snappy/snappy.h",
|
||||
})
|
||||
|
||||
local snappy_dir = path.getabsolute("snappy")
|
||||
if not os.isfile(path.join(snappy_dir, "snappy-stubs-public.h")) then
|
||||
prebuildcommands({
|
||||
"cmake -DSNAPPY_BUILD_TESTS=OFF -DSNAPPY_BUILD_BENCHMARKS=OFF -DSNAPPY_REQUIRE_AVX=ON "..snappy_dir.." -B"..snappy_dir
|
||||
})
|
||||
end
|
||||
13
third_party/tomlplusplus.lua
vendored
13
third_party/tomlplusplus.lua
vendored
@@ -1,13 +0,0 @@
|
||||
group("third_party")
|
||||
project("tomlplusplus")
|
||||
uuid("1e86cc51-3f8b-476d-9249-3b200424846b")
|
||||
if os.istarget("android") then
|
||||
-- ndk-build only supports StaticLib and SharedLib.
|
||||
kind("StaticLib")
|
||||
else
|
||||
kind("Utility")
|
||||
end
|
||||
language("C++")
|
||||
files({
|
||||
"tomlplusplus/include/toml++/toml.hpp"
|
||||
})
|
||||
11
third_party/xxhash.lua
vendored
11
third_party/xxhash.lua
vendored
@@ -1,11 +0,0 @@
|
||||
group("third_party")
|
||||
project("xxhash")
|
||||
uuid("40d4ce21-5448-4399-9f98-589b7e1c23b1")
|
||||
kind("StaticLib")
|
||||
language("C")
|
||||
includedirs({
|
||||
"xxhash",
|
||||
})
|
||||
files({
|
||||
"xxhash/xxhash.c",
|
||||
})
|
||||
21
third_party/zarchive.lua
vendored
21
third_party/zarchive.lua
vendored
@@ -1,21 +0,0 @@
|
||||
group("third_party")
|
||||
project("zarchive")
|
||||
uuid("d32f03aa-f0c9-11ed-a05b-0242ac120003")
|
||||
kind("StaticLib")
|
||||
language("C++")
|
||||
links({
|
||||
"zstd",
|
||||
})
|
||||
includedirs({
|
||||
"zarchive/include",
|
||||
"zstd/lib",
|
||||
})
|
||||
files({
|
||||
"zarchive/include/zarchive/zarchivecommon.h",
|
||||
"zarchive/include/zarchive/zarchivereader.h",
|
||||
"zarchive/include/zarchive/zarchivewriter.h",
|
||||
"zarchive/src/zarchivereader.cpp",
|
||||
"zarchive/src/zarchivewriter.cpp",
|
||||
"zarchive/src/sha_256.c",
|
||||
"zarchive/src/sha_256.h",
|
||||
})
|
||||
63
third_party/zlib-ng.lua
vendored
63
third_party/zlib-ng.lua
vendored
@@ -1,63 +0,0 @@
|
||||
group("third_party")
|
||||
project("zlib-ng")
|
||||
uuid("13d4073d-f1c9-47e3-a057-79b133596fc2")
|
||||
kind("StaticLib")
|
||||
language("C")
|
||||
|
||||
defines({
|
||||
"X86_FEATURES",
|
||||
"X86_HAVE_XSAVE_INTRIN",
|
||||
"X86_SSSE3",
|
||||
"X86_SSE42",
|
||||
"WITH_GZFILEOP",
|
||||
})
|
||||
if os.istarget("windows") then
|
||||
defines({
|
||||
"X86_SSE2",
|
||||
"X86_AVX2",
|
||||
"X86_AVX512",
|
||||
"X86_AVX512VNNI",
|
||||
"X86_PCLMULQDQ_CRC",
|
||||
"X86_VPCLMULQDQ_CRC",
|
||||
})
|
||||
end
|
||||
|
||||
files({
|
||||
"zlib-ng/*.c",
|
||||
"zlib-ng/arch/x86/*.c",
|
||||
"zlib-ng/arch/generic/*.c",
|
||||
})
|
||||
if not os.istarget("windows") then
|
||||
removefiles({
|
||||
"zlib-ng/arch/x86/adler32_avx2.c",
|
||||
"zlib-ng/arch/x86/adler32_avx512.c",
|
||||
"zlib-ng/arch/x86/adler32_avx512_vnni.c",
|
||||
"zlib-ng/arch/x86/chunkset_avx2.c",
|
||||
"zlib-ng/arch/x86/compare256_avx2.c",
|
||||
"zlib-ng/arch/x86/crc32_pclmulqdq.c",
|
||||
"zlib-ng/arch/x86/crc32_vpclmulqdq.c",
|
||||
"zlib-ng/arch/x86/slide_hash_avx2.c",
|
||||
})
|
||||
end
|
||||
|
||||
includedirs({
|
||||
"zlib-ng",
|
||||
})
|
||||
|
||||
local zlibng_dir = path.getabsolute("zlib-ng")
|
||||
local zlibng_h_src_files = {
|
||||
path.join(zlibng_build_dir, "zlib-ng.h"),
|
||||
path.join(zlibng_build_dir, "zconf-ng.h"),
|
||||
path.join(zlibng_build_dir, "zlib_name_mangling-ng.h"),
|
||||
path.join(zlibng_build_dir, "gzread.c"),
|
||||
}
|
||||
for i = 1,#zlibng_h_src_files,1
|
||||
do
|
||||
if not os.isfile(path.join(zlibng_dir, zlibng_h_src_files[i])) then
|
||||
zlibng_build = true
|
||||
break
|
||||
end
|
||||
end
|
||||
if zlibng_build then
|
||||
os.execute("cmake -DZLIB_ENABLE_TESTS=OFF -DWITH_GTEST=OFF "..zlibng_dir.." -B"..zlibng_dir)
|
||||
end
|
||||
11
third_party/zstd.lua
vendored
11
third_party/zstd.lua
vendored
@@ -1,11 +0,0 @@
|
||||
include("third_party/zstd/contrib/premake/zstd.lua")
|
||||
|
||||
group("third_party")
|
||||
project("zstd")
|
||||
uuid("df336aac-f0c8-11ed-a05b-0242ac120003")
|
||||
-- https://gitlab.kitware.com/cmake/cmake/-/issues/25744
|
||||
filter({"toolset:not msc"})
|
||||
defines({
|
||||
"ZSTD_DISABLE_ASM",
|
||||
})
|
||||
project_zstd("zstd/lib/")
|
||||
Reference in New Issue
Block a user