From 4efd59ceb3be5a9df3310eb1dc4373f02dd87a83 Mon Sep 17 00:00:00 2001 From: Robert MacGregor Date: Tue, 31 May 2022 09:05:02 -0400 Subject: [PATCH] * BugFix: Add missing oggvorbis/theora support. --- Engine/lib/CMakeLists.txt | 14 +++++--------- Engine/lib/libogg/CMakeLists.txt | 3 +++ Engine/lib/libtheora/CMakeLists.txt | 17 +++++++++++++++++ Engine/lib/libvorbis/CMakeLists.txt | 8 ++++++++ 4 files changed, 33 insertions(+), 9 deletions(-) create mode 100644 Engine/lib/libogg/CMakeLists.txt create mode 100644 Engine/lib/libtheora/CMakeLists.txt create mode 100644 Engine/lib/libvorbis/CMakeLists.txt diff --git a/Engine/lib/CMakeLists.txt b/Engine/lib/CMakeLists.txt index 1d4c9f955..4862a94b5 100644 --- a/Engine/lib/CMakeLists.txt +++ b/Engine/lib/CMakeLists.txt @@ -6,8 +6,10 @@ add_subdirectory(sdl ${CMAKE_BINARY_DIR}/temp/sdl2 EXCLUDE_FROM_ALL) # Png depends on zlib add_subdirectory(zlib ${CMAKE_BINARY_DIR}/temp/zlib EXCLUDE_FROM_ALL) -# FIXME: For now we force-on Neon -set(PNG_ARM_NEON on CACHE BOOL "" FORCE) +if (TORQUE_CPU_ARM32 OR TORQUE_CPU_ARM64) + set(PNG_ARM_NEON on CACHE BOOL "" FORCE) +endif (TORQUE_CPU_ARM32 OR TORQUE_CPU_ARM64) + set(PNG_STATIC on CACHE BOOL "" FORCE) set(PNG_BUILD_ZLIB on CACHE BOOL "" FORCE) get_filename_component(ZLIB_ROOT "zlib" REALPATH BASE_DIR "${CMAKE_CURRENT_SOURCE_DIR}") @@ -19,18 +21,12 @@ set(ASSIMP_BUILD_ZLIB on CACHE STRING "") set(ASSIMP_HUNTER_ENABLED off CACHE STRING "") add_subdirectory(assimp ${CMAKE_BINARY_DIR}/temp/assimp EXCLUDE_FROM_ALL) - - add_subdirectory(lpng ${CMAKE_BINARY_DIR}/temp/lpng EXCLUDE_FROM_ALL) - add_subdirectory(ljpeg ${CMAKE_BINARY_DIR}/temp/ljpeg EXCLUDE_FROM_ALL) add_subdirectory(tinyxml ${CMAKE_BINARY_DIR}/temp/tinyxml EXCLUDE_FROM_ALL) - add_subdirectory(opcode ${CMAKE_BINARY_DIR}/temp/opcode EXCLUDE_FROM_ALL) - - add_subdirectory(pcre ${CMAKE_BINARY_DIR}/temp/pcre EXCLUDE_FROM_ALL) add_subdirectory(convexDecomp ${CMAKE_BINARY_DIR}/temp/convexDecomp EXCLUDE_FROM_ALL) add_subdirectory(squish ${CMAKE_BINARY_DIR}/temp/squish EXCLUDE_FROM_ALL) add_subdirectory(collada ${CMAKE_BINARY_DIR}/temp/collada EXCLUDE_FROM_ALL) -add_subdirectory(glad ${CMAKE_BINARY_DIR}/temp/glad EXCLUDE_FROM_ALL) +add_subdirectory(glad ${CMAKE_BINARY_DIR}/temp/glad EXCLUDE_FROM_ALL) \ No newline at end of file diff --git a/Engine/lib/libogg/CMakeLists.txt b/Engine/lib/libogg/CMakeLists.txt new file mode 100644 index 000000000..bf7bd7cf7 --- /dev/null +++ b/Engine/lib/libogg/CMakeLists.txt @@ -0,0 +1,3 @@ +file(GLOB LIBOGG_SOURCE_FILES "src/*.c") +add_library(libogg ${LIBOGG_SOURCE_FILES}) +target_include_directories(libogg PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include") diff --git a/Engine/lib/libtheora/CMakeLists.txt b/Engine/lib/libtheora/CMakeLists.txt new file mode 100644 index 000000000..61f1d44be --- /dev/null +++ b/Engine/lib/libtheora/CMakeLists.txt @@ -0,0 +1,17 @@ +file(GLOB LIBTHEORA_SOURCE_FILES "lib/*.c") + +set(LIBTHEORA_COMPILE_DEFINES "") +if (WIN32 AND TORQUE_CPU_X32) + file(GLOB LIBTHEORA_SOURCE_FILES_X86_VC "lib/x86_vc/*.c") + set(LIBTHEORA_SOURCE_FILES ${LIBTHEORA_SOURCE_FILES} ${LIBTHEORA_SOURCE_FILES_X86_VC}) + set(LIBTHEORA_COMPILE_DEFINES ${LIBTHEORA_COMPILE_DEFINES} OC_X86_ASM) +elseif (TORQUE_CPU_X32) + file(GLOB LIBTHEORA_SOURCE_FILES_X86_VC "lib/x86/*.c") + set(LIBTHEORA_SOURCE_FILES ${LIBTHEORA_SOURCE_FILES} ${LIBTHEORA_SOURCE_FILES_X86_VC}) + set(LIBTHEORA_COMPILE_DEFINES ${LIBTHEORA_COMPILE_DEFINES} OC_X86_ASM) +endif (WIN32 AND TORQUE_CPU_X32) + +add_library(libtheora ${LIBTHEORA_SOURCE_FILES}) +target_include_directories(libtheora PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include") +target_link_libraries(libtheora PUBLIC libogg) +target_compile_definitions(libtheora PUBLIC ${LIBTHEORA_COMPILE_DEFINES}) \ No newline at end of file diff --git a/Engine/lib/libvorbis/CMakeLists.txt b/Engine/lib/libvorbis/CMakeLists.txt new file mode 100644 index 000000000..dae40fc26 --- /dev/null +++ b/Engine/lib/libvorbis/CMakeLists.txt @@ -0,0 +1,8 @@ +file(GLOB LIBVORBIS_SOURCE_FILES "lib/*.c") +add_library(libvorbis ${LIBVORBIS_SOURCE_FILES}) +target_include_directories(libvorbis PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include") +target_link_libraries(libvorbis PUBLIC libogg) + +if (UNIX) + target_include_directories(libvorbis PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/lib") +endif (UNIX) \ No newline at end of file