From 029b40539380119bcd80a28e53607b2530d1b548 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20L?= Date: Thu, 17 Jan 2019 09:25:40 +0100 Subject: fdk-aac encoder --- CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index a7318c77b6..56bc4e102e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -469,6 +469,8 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL src/effects/effectsmanager.cpp src/encoder/encoder.cpp src/encoder/encoderbroadcastsettings.cpp + src/encoder/encoderfdkaac.cpp + src/encoder/encoderfdkaacsettings.cpp src/encoder/encoderflacsettings.cpp src/encoder/encodermp3.cpp src/encoder/encodermp3settings.cpp -- cgit v1.2.3 From c844c8514308707d605602499b391ba14072433b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Fri, 8 Jan 2021 16:23:14 +0100 Subject: Renamed libshout folder to libshout-idjc --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 56bc4e102e..35b5f16df3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2353,8 +2353,8 @@ if(BROADCAST) if(NOT Shout_FOUND OR Shout_VERSION VERSION_LESS 2.4.4) # Fall back to internal libraray in the lib tree message(STATUS "Using internal libshout") - add_subdirectory("${CMAKE_CURRENT_SOURCE_DIR}/lib/libshout") - target_include_directories(mixxx-lib SYSTEM PUBLIC lib/libshout/include) + add_subdirectory("${CMAKE_CURRENT_SOURCE_DIR}/lib/libshout-idjc") + target_include_directories(mixxx-lib SYSTEM PUBLIC lib/libshout/include-idjc) target_link_libraries(mixxx-lib PUBLIC shout_mixxx) else() target_link_libraries(mixxx-lib PUBLIC Shout::Shout) -- cgit v1.2.3 From 4ec8ceb2c977f70a3c7263fc0aa0f7d071fc3245 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Fri, 8 Jan 2021 17:21:25 +0100 Subject: update to libshout-idjc-2.4.1 --- CMakeLists.txt | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 35b5f16df3..1d28d4b2ae 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2343,16 +2343,16 @@ endif() # Live Broadcasting (Shoutcast) option(BROADCAST "Live Broadcasting (Shoutcast) support" ON) if(BROADCAST) - find_package(Shout) + find_package(Shoutidjc) if(UNIX AND NOT APPLE) # Check if system lib is at least 2.4.4 and not suffering bug # https://bugs.launchpad.net/mixxx/+bug/1833225 - if(Shout_FOUND AND Shout_VERSION VERSION_LESS 2.4.4) - message(STATUS "Installed libshout version: ${Shout_VERSION} is suffering from bug lp1833225") + if(Shoutidjc_FOUND AND Shoutidjc_VERSION VERSION_LESS 2.4.4) + message(STATUS "Installed libshout-idjc version: ${Shoutidjc_VERSION} is suffering from bug lp1833225") endif() - if(NOT Shout_FOUND OR Shout_VERSION VERSION_LESS 2.4.4) + if(NOT Shoutidjc_FOUND OR Shoutidjc_VERSION VERSION_LESS 2.4.4) # Fall back to internal libraray in the lib tree - message(STATUS "Using internal libshout") + message(STATUS "Using internal libshout-idjc") add_subdirectory("${CMAKE_CURRENT_SOURCE_DIR}/lib/libshout-idjc") target_include_directories(mixxx-lib SYSTEM PUBLIC lib/libshout/include-idjc) target_link_libraries(mixxx-lib PUBLIC shout_mixxx) @@ -2361,9 +2361,9 @@ if(BROADCAST) endif() else() if(NOT Shout_FOUND) - message(FATAL_ERROR "Live Broadcasting support requires the libshout and its development headers.") + message(FATAL_ERROR "Live Broadcasting support requires the libshout-idjc and its development headers.") endif() - target_link_libraries(mixxx-lib PUBLIC Shout::Shout) + target_link_libraries(mixxx-lib PUBLIC Shoutidjc::Shoutidjc) endif() target_sources(mixxx-lib PRIVATE src/preferences/dialog/dlgprefbroadcastdlg.ui -- cgit v1.2.3 From ee26074fa02d97360c516dbb74297edebbe47077 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Sat, 9 Jan 2021 02:19:46 +0100 Subject: fix include files --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 1d28d4b2ae..a40d4818d6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2354,7 +2354,7 @@ if(BROADCAST) # Fall back to internal libraray in the lib tree message(STATUS "Using internal libshout-idjc") add_subdirectory("${CMAKE_CURRENT_SOURCE_DIR}/lib/libshout-idjc") - target_include_directories(mixxx-lib SYSTEM PUBLIC lib/libshout/include-idjc) + target_include_directories(mixxx-lib SYSTEM PUBLIC lib/libshout-idjc/include) target_link_libraries(mixxx-lib PUBLIC shout_mixxx) else() target_link_libraries(mixxx-lib PUBLIC Shout::Shout) -- cgit v1.2.3 From dcf9895423b3cc28956ed6a5f05dfaa917a23261 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Sat, 9 Jan 2021 14:47:07 +0100 Subject: Enable internal libshout-idjc for all targets --- CMakeLists.txt | 31 ++++++++++++------------------- 1 file changed, 12 insertions(+), 19 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index a40d4818d6..018fcc5935 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2344,26 +2344,19 @@ endif() option(BROADCAST "Live Broadcasting (Shoutcast) support" ON) if(BROADCAST) find_package(Shoutidjc) - if(UNIX AND NOT APPLE) - # Check if system lib is at least 2.4.4 and not suffering bug - # https://bugs.launchpad.net/mixxx/+bug/1833225 - if(Shoutidjc_FOUND AND Shoutidjc_VERSION VERSION_LESS 2.4.4) - message(STATUS "Installed libshout-idjc version: ${Shoutidjc_VERSION} is suffering from bug lp1833225") - endif() - if(NOT Shoutidjc_FOUND OR Shoutidjc_VERSION VERSION_LESS 2.4.4) - # Fall back to internal libraray in the lib tree - message(STATUS "Using internal libshout-idjc") - add_subdirectory("${CMAKE_CURRENT_SOURCE_DIR}/lib/libshout-idjc") - target_include_directories(mixxx-lib SYSTEM PUBLIC lib/libshout-idjc/include) - target_link_libraries(mixxx-lib PUBLIC shout_mixxx) - else() - target_link_libraries(mixxx-lib PUBLIC Shout::Shout) - endif() + # Check if system lib is at least 2.4.4 and not suffering bug + # https://bugs.launchpad.net/mixxx/+bug/1833225 + if(Shoutidjc_FOUND AND Shoutidjc_VERSION VERSION_LESS 2.4.4) + message(STATUS "Installed libshout-idjc version: ${Shoutidjc_VERSION} is suffering from bug lp1833225") + endif() + if(NOT Shoutidjc_FOUND OR Shoutidjc_VERSION VERSION_LESS 2.4.4) + # Fall back to internal libraray in the lib tree + message(STATUS "Using internal libshout-idjc") + add_subdirectory("${CMAKE_CURRENT_SOURCE_DIR}/lib/libshout-idjc") + target_include_directories(mixxx-lib SYSTEM PUBLIC lib/libshout-idjc/include) + target_link_libraries(mixxx-lib PUBLIC shout_mixxx) else() - if(NOT Shout_FOUND) - message(FATAL_ERROR "Live Broadcasting support requires the libshout-idjc and its development headers.") - endif() - target_link_libraries(mixxx-lib PUBLIC Shoutidjc::Shoutidjc) + target_link_libraries(mixxx-lib PUBLIC Shout::Shout) endif() target_sources(mixxx-lib PRIVATE src/preferences/dialog/dlgprefbroadcastdlg.ui -- cgit v1.2.3 From 1d761208b25c8a9508b99a1b9dc4f1e5866f4ebe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Tue, 12 Jan 2021 09:16:21 +0100 Subject: Ignore the whole build folder during packaging --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 6cde3a0097..0897f02bf8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2613,6 +2613,7 @@ set(CPACK_SOURCE_IGNORE_FILES "\\\\.#;/#;.*~;\\\\.o$") list(APPEND CPACK_SOURCE_IGNORE_FILES "/\\\\.git/") list(APPEND CPACK_SOURCE_IGNORE_FILES "/\\\\.github/") list(APPEND CPACK_SOURCE_IGNORE_FILES "/cache/") +list(APPEND CPACK_SOURCE_IGNORE_FILES "/build/") list(APPEND CPACK_SOURCE_IGNORE_FILES "/.*_build/") list(APPEND CPACK_SOURCE_IGNORE_FILES "/\\\\.sconf_temp/") list(APPEND CPACK_SOURCE_IGNORE_FILES "${CMAKE_CURRENT_BINARY_DIR}/") -- cgit v1.2.3 From 22461c786698bf81ed34bb9879dcaea6fd4d6dc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Thu, 21 Jan 2021 10:02:42 +0100 Subject: Remove install path dependency from Linux builds --- CMakeLists.txt | 44 ++++++-------------------------------------- 1 file changed, 6 insertions(+), 38 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index ca655dfa0a..d0800f2b0d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1075,6 +1075,12 @@ elseif (UNIX) set(MIXXX_INSTALL_LICENSEDIR "${CMAKE_INSTALL_DOCDIR}") endif() +# Required to find the resource files when running from the build dir +target_compile_definitions( + mixxx-lib PUBLIC CMAKE_CURRENT_BINARY_DIR="${CMAKE_CURRENT_BINARY_DIR}") +target_compile_definitions( + mixxx-lib PUBLIC CMAKE_CURRENT_SOURCE_DIR="${CMAKE_CURRENT_SOURCE_DIR}") + if(WIN32) target_compile_definitions(mixxx-lib PRIVATE __WINDOWS__) @@ -1110,10 +1116,6 @@ elseif(UNIX) target_compile_definitions(mixxx-lib PUBLIC __APPLE__) else() target_compile_definitions(mixxx-lib PRIVATE __UNIX__) - # UNIX_SHARE_PATH must be set to the absolute path - # including the install prefix! - target_compile_definitions( - mixxx-lib PUBLIC UNIX_SHARE_PATH="${CMAKE_INSTALL_PREFIX}/${MIXXX_INSTALL_DATADIR}") if(CMAKE_SYSTEM_NAME STREQUAL Linux) target_compile_definitions(mixxx-lib PUBLIC __LINUX__) elseif(CMAKE_SYSTEM_NAME MATCHES "^.*BSD$") @@ -1539,40 +1541,6 @@ set_target_properties(mixxx-qrc PROPERTIES AUTORCC ON) target_sources(mixxx PRIVATE $) target_sources(mixxx-test PRIVATE $) -if(UNIX AND USE_SYMLINKS) - add_custom_target(mixxx-res - COMMAND ${CMAKE_COMMAND} -E create_symlink "${CMAKE_CURRENT_SOURCE_DIR}/res" "${CMAKE_CURRENT_BINARY_DIR}/res" - COMMENT "Symlinking resources to build directory..." - ) - add_custom_target(mixxx-script - COMMAND ${CMAKE_COMMAND} -E create_symlink "${CMAKE_CURRENT_SOURCE_DIR}/script" "${CMAKE_CURRENT_BINARY_DIR}/script" - COMMENT "Symlinking to build directory..." - ) -elseif(WIN32) - file(TO_NATIVE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/res" CMAKE_CURRENT_SOURCE_RES_DIR_NATIVE) - file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/res/" CMAKE_CURRENT_BINARY_RES_DIR_NATIVE) - add_custom_target(mixxx-res - COMMAND xcopy ${CMAKE_CURRENT_SOURCE_RES_DIR_NATIVE} ${CMAKE_CURRENT_BINARY_RES_DIR_NATIVE} /s /d /q /y - COMMENT "Copying missing or modified resources files to build directory..." - ) - file(TO_NATIVE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/script" CMAKE_CURRENT_SOURCE_SCRIPT_DIR_NATIVE) - file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/script/" CMAKE_CURRENT_BINARY_SCRIPT_DIR_NATIVE) - add_custom_target(mixxx-script - COMMAND xcopy ${CMAKE_CURRENT_SOURCE_SCRIPT_DIR_NATIVE} ${CMAKE_CURRENT_BINARY_SCRIPT_DIR_NATIVE} /s /d /q /y - COMMENT "Copying missing or modified QScriptEngine extension files to build directory..." - ) -else() - add_custom_target(mixxx-res - COMMAND ${CMAKE_COMMAND} -E copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/res" "${CMAKE_CURRENT_BINARY_DIR}/res" - COMMENT "Copying all resources files to build directory..." - ) - add_custom_target(mixxx-script - COMMAND ${CMAKE_COMMAND} -E copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/script" "${CMAKE_CURRENT_BINARY_DIR}/script" - COMMENT "Copying all QScriptEngine extension files to build directory..." - ) -endif() -add_dependencies(mixxx-lib mixxx-res mixxx-script) - file(READ src/_version.h MIXXX_VERSION_FILECONTENT) string(REGEX REPLACE "^.*#define MIXXX_VERSION \"(.*)\".*$" "\\1" MIXXX_VERSION "${MIXXX_VERSION_FILECONTENT}") # a dummy configure to force a reconfigure when the version changes -- cgit v1.2.3 From 7745b538eedc6447f7766e81f455ab7f3e56d484 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Thu, 21 Jan 2021 09:40:26 +0100 Subject: Added PDB file option to windows installer --- CMakeLists.txt | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index ca655dfa0a..d6a55fefea 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1347,6 +1347,17 @@ if(UNIX AND NOT APPLE) endif() endif() +if(MSVC) + # install debug symbols if any where generated + install( + FILES $ + CONFIGURATIONS Debug RelWithDebInfo + DESTINATION "${MIXXX_INSTALL_BINDIR}" + COMPONENT PDB + ) +endif() + + # # Tests # -- cgit v1.2.3 From ba84fb0fdfcc0c7b98a9e018aa0af61b4128bf9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Thu, 21 Jan 2021 14:46:45 +0100 Subject: Read Resource path from CMakeCache if started from the build directory --- CMakeLists.txt | 6 ------ 1 file changed, 6 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index d0800f2b0d..7ed5db2035 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1075,12 +1075,6 @@ elseif (UNIX) set(MIXXX_INSTALL_LICENSEDIR "${CMAKE_INSTALL_DOCDIR}") endif() -# Required to find the resource files when running from the build dir -target_compile_definitions( - mixxx-lib PUBLIC CMAKE_CURRENT_BINARY_DIR="${CMAKE_CURRENT_BINARY_DIR}") -target_compile_definitions( - mixxx-lib PUBLIC CMAKE_CURRENT_SOURCE_DIR="${CMAKE_CURRENT_SOURCE_DIR}") - if(WIN32) target_compile_definitions(mixxx-lib PRIVATE __WINDOWS__) -- cgit v1.2.3 From a9b115c26618a24b5f038784b4998310ea409d3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Sun, 24 Jan 2021 00:23:57 +0100 Subject: Don't use InstallRequiredSystemLibraries on Linux --- CMakeLists.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index a43f49622b..992db32a81 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1141,7 +1141,9 @@ if (APPLE) MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_SOURCE_DIR}/packaging/macos/bundle.plist.in" ) endif() -else() +endif() + +if(WIN32) set(CMAKE_INSTALL_SYSTEM_RUNTIME_DESTINATION "${MIXXX_INSTALL_BINDIR}") if(MSVC AND CMAKE_BUILD_TYPE STREQUAL "Debug") set(CMAKE_INSTALL_DEBUG_LIBRARIES true) -- cgit v1.2.3 From 0b48a034e0b0e9efa41299154b327a55cb95c1c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Sun, 24 Jan 2021 13:52:26 +0100 Subject: Rename install component to "Debug Information (PDB) --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index d6a55fefea..7c94d22447 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1353,7 +1353,7 @@ if(MSVC) FILES $ CONFIGURATIONS Debug RelWithDebInfo DESTINATION "${MIXXX_INSTALL_BINDIR}" - COMPONENT PDB + COMPONENT "Debug Information (PDB)" ) endif() -- cgit v1.2.3 From 96f82f79ef48c683398f79e1c7841fc37271ccc1 Mon Sep 17 00:00:00 2001 From: Be Date: Sat, 23 Jan 2021 23:08:49 -0600 Subject: CMake: rename HIDAPI to hidapi to match upstream target name --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index e9151ccc0a..10571d0fed 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2440,7 +2440,7 @@ endif() find_package(LibUSB) # USB HID controller support -find_package(HIDAPI) +find_package(hidapi) option(HID "USB HID controller support" ON) cmake_dependent_option(HIDAPI_STATIC "Link HIDAPI library statically" OFF "HIDAPI_FOUND" ON) if(HID) @@ -2478,7 +2478,7 @@ if(HID) if(NOT HIDAPI_FOUND) message(FATAL_ERROR "USB HID controller support requires libhidapi-libusb and its development headers.") endif() - target_link_libraries(mixxx-lib PUBLIC HIDAPI::LibUSB) + target_link_libraries(mixxx-lib PUBLIC hidapi::hidapi) endif() endif() -- cgit v1.2.3 From b40a1b48db1919fd2f07f3df052153b823543d64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Sun, 24 Jan 2021 17:05:50 +0100 Subject: fix typo --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 7c94d22447..a2d85183e2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1348,7 +1348,7 @@ if(UNIX AND NOT APPLE) endif() if(MSVC) - # install debug symbols if any where generated + # install debug symbols if any were generated install( FILES $ CONFIGURATIONS Debug RelWithDebInfo -- cgit v1.2.3 From baeebc972ace3fcee52373455d6b2dd0b4e8b83f Mon Sep 17 00:00:00 2001 From: Be Date: Sun, 24 Jan 2021 11:39:58 -0600 Subject: CMake: only check for HSS1394 library on OSes it supports Users may be confused why this library is not found on Linux when they see the message from CMake. --- CMakeLists.txt | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index e361571728..49b8645db3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2260,19 +2260,21 @@ if(GPERFTOOLS OR GPERFTOOLSPROFILER) endif() # HSS1394 MIDI device -find_package(HSS1394) -cmake_dependent_option(HSS1394 "HSS1394 MIDI device support" ON "HSS1394_FOUND;WIN32 OR APPLE" OFF) -if(HSS1394) - target_sources(mixxx-lib PRIVATE - src/controllers/midi/hss1394controller.cpp - src/controllers/midi/hss1394enumerator.cpp - ) - target_compile_definitions(mixxx-lib PUBLIC __HSS1394__) - if(WIN32 OR APPLE) - if(NOT HSS1394_FOUND) - message(FATAL_ERROR "HSS1394 MIDI device support requires the libhss1394 and its development headers.") +if(WIN32 OR APPLE) + find_package(HSS1394) + cmake_dependent_option(HSS1394 "HSS1394 MIDI device support" ON "HSS1394_FOUND;WIN32 OR APPLE" OFF) + if(HSS1394) + target_sources(mixxx-lib PRIVATE + src/controllers/midi/hss1394controller.cpp + src/controllers/midi/hss1394enumerator.cpp + ) + target_compile_definitions(mixxx-lib PUBLIC __HSS1394__) + if(WIN32 OR APPLE) + if(NOT HSS1394_FOUND) + message(FATAL_ERROR "HSS1394 MIDI device support requires the libhss1394 and its development headers.") + endif() + target_link_libraries(mixxx-lib PUBLIC HSS1394::HSS1394) endif() - target_link_libraries(mixxx-lib PUBLIC HSS1394::HSS1394) endif() endif() -- cgit v1.2.3 From 00df78b7a0352a27ea85e9616718448967c25d63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Mon, 25 Jan 2021 00:38:40 +0100 Subject: Remove parentheses and spaces from install component. --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index b163fb4a03..fac9631218 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1346,7 +1346,7 @@ if(MSVC) FILES $ CONFIGURATIONS Debug RelWithDebInfo DESTINATION "${MIXXX_INSTALL_BINDIR}" - COMPONENT "Debug Information (PDB)" + COMPONENT PBD_Debug_Information ) endif() -- cgit v1.2.3 From 6c6330cb56a4d38fcb76483229d0c1e9b480ae16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Mon, 25 Jan 2021 07:34:09 +0100 Subject: Change PDB target to PDB --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index fac9631218..a795e60809 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1346,7 +1346,7 @@ if(MSVC) FILES $ CONFIGURATIONS Debug RelWithDebInfo DESTINATION "${MIXXX_INSTALL_BINDIR}" - COMPONENT PBD_Debug_Information + COMPONENT PDB # No spaces allowed ) endif() -- cgit v1.2.3 From 40ba47d9e2b0489c4f90983d5157f61d3a783591 Mon Sep 17 00:00:00 2001 From: Be Date: Mon, 25 Jan 2021 22:36:50 -0600 Subject: CMake: update libkeyfinder to 2.2.4 and actually build libkeyfinder statically --- CMakeLists.txt | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 226bc3739a..aa40752481 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1663,20 +1663,21 @@ if(KEYFINDER) # If KeyFinder is built statically, we need FFTW find_package(FFTW REQUIRED) set(KeyFinder_INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/lib/keyfinder-install") - set(KeyFinder_LIBRARY "lib/${CMAKE_STATIC_LIBRARY_PREFIX}keyfinder${CMAKE_STATIC_LIBRARY_SUFFIX}") + set(KeyFinder_LIBRARY "${CMAKE_INSTALL_LIBDIR}/${CMAKE_STATIC_LIBRARY_PREFIX}keyfinder${CMAKE_STATIC_LIBRARY_SUFFIX}") file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/download") ExternalProject_Add(libkeyfinder - URL "https://github.com/mixxxdj/libkeyfinder/archive/v2.2.3.zip" - URL_HASH SHA256=ad43ca006e3bbed0810ff62e170d04522a64f8606c2166bfa5a9b9158b7ebc11 + URL "https://github.com/mixxxdj/libkeyfinder/archive/v2.2.4.zip" + URL_HASH SHA256=cb3fea8c7213257281b6c7006b2430809f466ad8a1d485663324378d6fc0782c DOWNLOAD_DIR "${CMAKE_CURRENT_BINARY_DIR}/download/libkeyfinder" INSTALL_DIR "${KeyFinder_INSTALL_DIR}" CMAKE_ARGS - -DBUILD_STATIC_LIBS=ON + -DBUILD_SHARED_LIBS=OFF -DCMAKE_SKIP_INSTALL_ALL_DEPENDENCY=ON -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DCMAKE_INSTALL_PREFIX:PATH= -DCMAKE_PREFIX_PATH:PATH="${CMAKE_PREFIX_PATH}" - BUILD_COMMAND ${CMAKE_COMMAND} --build . --target keyfinder + -DBUILD_TESTING=OFF + BUILD_COMMAND ${CMAKE_COMMAND} --build . BUILD_BYPRODUCTS /${KeyFinder_LIBRARY} EXCLUDE_FROM_ALL TRUE ) -- cgit v1.2.3 From 2aac413bb222c228d6b41cbc6b26656693eb9026 Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Tue, 26 Jan 2021 10:34:21 +0100 Subject: Replace legacy extension .appdata.xml with .metainfo.xml https://docs.fedoraproject.org/en-US/packaging-guidelines/AppData/ --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index aa40752481..20f9f6f442 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1307,10 +1307,10 @@ if(UNIX AND NOT APPLE) "${CMAKE_INSTALL_DATADIR}/pixmaps" ) - # .appdata.xml file for KDE/GNOME AppStream initiative + # .metainfo.xml file for KDE/GNOME AppStream initiative install( FILES - "${CMAKE_CURRENT_SOURCE_DIR}/res/linux/mixxx.appdata.xml" + "${CMAKE_CURRENT_SOURCE_DIR}/res/linux/mixxx.metainfo.xml" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/metainfo" ) -- cgit v1.2.3 From daddee0bb479137a3e95a1a16f1c93906a1511ec Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Tue, 26 Jan 2021 19:10:03 +0100 Subject: Fix typo in ARM build options --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 20f9f6f442..e72f46adea 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -203,7 +203,7 @@ elseif(GNU_GCC OR LLVM_CLANG) # https://stackoverflow.com/questions/45917280/mac-osx-minumum-support-sse-version elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm") add_compile_options( - -mflat-abi=hard + -mfloat-abi=hard -mfpu=neon ) endif() -- cgit v1.2.3 From ed512347d85ff09e7563a442154b42f4691c257a Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Tue, 26 Jan 2021 19:11:16 +0100 Subject: Improve detection of ARM architectures --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index e72f46adea..4efbef6afe 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -201,7 +201,7 @@ elseif(GNU_GCC OR LLVM_CLANG) # TODO(rryan): macOS can use SSE3, and possibly SSE 4.1 once # we require macOS 10.12. # https://stackoverflow.com/questions/45917280/mac-osx-minumum-support-sse-version - elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm") + elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64|AARCH64|arm|ARM).*") add_compile_options( -mfloat-abi=hard -mfpu=neon @@ -224,7 +224,7 @@ elseif(GNU_GCC OR LLVM_CLANG) # Note: requires gcc >= 4.2.0 # macros like __SSE2_MATH__ __SSE_MATH__ __SSE2__ __SSE__ # are set automatically - if(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm") + if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64|AARCH64|arm|ARM).*") add_compile_options( -mfloat-abi=hard -mfpu=neon -- cgit v1.2.3 From fd73c110980b21f9a3a3d972729a4f5885dfa34f Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Tue, 26 Jan 2021 19:55:11 +0100 Subject: Remove capital ARM architecture names --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 4efbef6afe..462c5a0beb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -201,7 +201,7 @@ elseif(GNU_GCC OR LLVM_CLANG) # TODO(rryan): macOS can use SSE3, and possibly SSE 4.1 once # we require macOS 10.12. # https://stackoverflow.com/questions/45917280/mac-osx-minumum-support-sse-version - elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64|AARCH64|arm|ARM).*") + elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64|arm).*") add_compile_options( -mfloat-abi=hard -mfpu=neon @@ -224,7 +224,7 @@ elseif(GNU_GCC OR LLVM_CLANG) # Note: requires gcc >= 4.2.0 # macros like __SSE2_MATH__ __SSE_MATH__ __SSE2__ __SSE__ # are set automatically - if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64|AARCH64|arm|ARM).*") + if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64|arm).*") add_compile_options( -mfloat-abi=hard -mfpu=neon -- cgit v1.2.3 From 1a68935e0f59a91281b9fb524037ecb09585c274 Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Tue, 26 Jan 2021 21:40:17 +0100 Subject: Don't use ARMv7 build options for AArch64 --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 462c5a0beb..4395139570 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -201,7 +201,7 @@ elseif(GNU_GCC OR LLVM_CLANG) # TODO(rryan): macOS can use SSE3, and possibly SSE 4.1 once # we require macOS 10.12. # https://stackoverflow.com/questions/45917280/mac-osx-minumum-support-sse-version - elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64|arm).*") + elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^arm.*") add_compile_options( -mfloat-abi=hard -mfpu=neon @@ -224,7 +224,7 @@ elseif(GNU_GCC OR LLVM_CLANG) # Note: requires gcc >= 4.2.0 # macros like __SSE2_MATH__ __SSE_MATH__ __SSE2__ __SSE__ # are set automatically - if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64|arm).*") + if(CMAKE_SYSTEM_PROCESSOR MATCHES "^arm.*") add_compile_options( -mfloat-abi=hard -mfpu=neon -- cgit v1.2.3 From 71a2531c0dfdd3b23a43c776c882b696ef93b95a Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Tue, 26 Jan 2021 22:54:53 +0100 Subject: Restrict compile options to ARMv7 --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 4395139570..98e2e12a3a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -201,7 +201,7 @@ elseif(GNU_GCC OR LLVM_CLANG) # TODO(rryan): macOS can use SSE3, and possibly SSE 4.1 once # we require macOS 10.12. # https://stackoverflow.com/questions/45917280/mac-osx-minumum-support-sse-version - elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^arm.*") + elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm|armv7.*)") # but not armv8 add_compile_options( -mfloat-abi=hard -mfpu=neon @@ -224,7 +224,7 @@ elseif(GNU_GCC OR LLVM_CLANG) # Note: requires gcc >= 4.2.0 # macros like __SSE2_MATH__ __SSE_MATH__ __SSE2__ __SSE__ # are set automatically - if(CMAKE_SYSTEM_PROCESSOR MATCHES "^arm.*") + if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm|armv7.*)") # but not armv8 add_compile_options( -mfloat-abi=hard -mfpu=neon -- cgit v1.2.3 From e846a7a496e7de49ef0d7fb3ffc8737f770699de Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Tue, 26 Jan 2021 23:01:16 +0100 Subject: Add end-of-line matcher ...just in case and for consistency --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 98e2e12a3a..5497717caf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -201,7 +201,7 @@ elseif(GNU_GCC OR LLVM_CLANG) # TODO(rryan): macOS can use SSE3, and possibly SSE 4.1 once # we require macOS 10.12. # https://stackoverflow.com/questions/45917280/mac-osx-minumum-support-sse-version - elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm|armv7.*)") # but not armv8 + elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm|armv7.*)$") # but not armv8 add_compile_options( -mfloat-abi=hard -mfpu=neon @@ -224,7 +224,7 @@ elseif(GNU_GCC OR LLVM_CLANG) # Note: requires gcc >= 4.2.0 # macros like __SSE2_MATH__ __SSE_MATH__ __SSE2__ __SSE__ # are set automatically - if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm|armv7.*)") # but not armv8 + if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm|armv7.*)$") # but not armv8 add_compile_options( -mfloat-abi=hard -mfpu=neon -- cgit v1.2.3 From be0b0d20f971d25c38d61c20f4d58c3214d9e310 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Thu, 28 Jan 2021 07:41:46 +0100 Subject: Fix linking to system installed libshout-idjc --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 3e1b1ac65f..92daa03281 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2325,7 +2325,7 @@ if(BROADCAST) target_include_directories(mixxx-lib SYSTEM PUBLIC lib/libshout-idjc/include) target_link_libraries(mixxx-lib PUBLIC shout_mixxx) else() - target_link_libraries(mixxx-lib PUBLIC Shout::Shout) + target_link_libraries(mixxx-lib PUBLIC Shoutidjc::Shoutidjc) endif() target_sources(mixxx-lib PRIVATE src/preferences/dialog/dlgprefbroadcastdlg.ui -- cgit v1.2.3 From b1982397ac3ffb4c240bfec987f77f228aa0df36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Thu, 28 Jan 2021 13:54:00 +0100 Subject: Exclude libshout 2.4.4 and 2.4.5 as well because of bug lp1913579 --- CMakeLists.txt | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 5497717caf..94509b6623 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2312,12 +2312,15 @@ option(BROADCAST "Live Broadcasting (Shoutcast) support" ON) if(BROADCAST) find_package(Shout) if(UNIX AND NOT APPLE) - # Check if system lib is at least 2.4.4 and not suffering bug + # Check if system lib is at least 2.4.6 and not suffering bugs # https://bugs.launchpad.net/mixxx/+bug/1833225 + # https://bugs.launchpad.net/mixxx/+bug/1913579 if(Shout_FOUND AND Shout_VERSION VERSION_LESS 2.4.4) - message(STATUS "Installed libshout version: ${Shout_VERSION} is suffering from bug lp1833225") + message(STATUS "Installed libshout version: ${Shout_VERSION} is suffering from bugs lp1833225 and lp1913579") + elseif(Shout_FOUND AND Shout_VERSION VERSION_LESS 2.4.6) + message(STATUS "Installed libshout version: ${Shout_VERSION} is suffering from bug lp1913579") endif() - if(NOT Shout_FOUND OR Shout_VERSION VERSION_LESS 2.4.4) + if(NOT Shout_FOUND OR Shout_VERSION VERSION_LESS 2.4.6) # Fall back to internal libraray in the lib tree message(STATUS "Using internal libshout") add_subdirectory("${CMAKE_CURRENT_SOURCE_DIR}/lib/libshout") -- cgit v1.2.3 From 8bf2abf896ab4ebaad2dc48362564db385ca3779 Mon Sep 17 00:00:00 2001 From: Jan Holthuis Date: Sat, 16 Jan 2021 16:07:22 +0100 Subject: CMake: Allow building if FFMPEG version is missing --- CMakeLists.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 334abc8e36..989d4fc380 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2228,22 +2228,22 @@ option(FFMPEG "FFmpeg 4.x support" OFF) if(FFMPEG) if(NOT FFMPEG_libavcodec_FOUND) message(FATAL_ERROR "FFmpeg support requires libavcodec and its development headers.") - elseif(FFMPEG_libavcodec_VERSION VERSION_LESS 58) + elseif(FFMPEG_libavcodec_VERSION AND FFMPEG_libavcodec_VERSION VERSION_LESS 58) message(FATAL_ERROR "FFmpeg support requires at least version 58 of libavcodec (found: ${AVCODEC_VERSION}).") endif() if(NOT FFMPEG_libavformat_FOUND) message(FATAL_ERROR "FFmpeg support requires libavformat and its development headers.") - elseif(FFMPEG_libavformat_VERSION VERSION_LESS 58) + elseif(FFMPEG_libavformat_VERSION AND FFMPEG_libavformat_VERSION VERSION_LESS 58) message(FATAL_ERROR "FFmpeg support requires at least version 58 of libavformat (found: ${AVFORMAT_VERSION}).") endif() if(NOT FFMPEG_libavutil_FOUND) message(FATAL_ERROR "FFmpeg support requires libavutil and its development headers.") - elseif(FFMPEG_libavutil_VERSION VERSION_LESS 56) + elseif(FFMPEG_libavutil_VERSION AND FFMPEG_libavutil_VERSION VERSION_LESS 56) message(FATAL_ERROR "FFmpeg support requires at least version 56 of libavutil (found: ${AVUTIL_VERSION}).") endif() if(NOT FFMPEG_libswresample_FOUND) message(FATAL_ERROR "FFmpeg support requires libswresample and its development headers.") - elseif(FFMPEG_libswresample_VERSION VERSION_LESS 3.1) + elseif(FFMPEG_libswresample_VERSION AND FFMPEG_libswresample_VERSION VERSION_LESS 3.1) message(FATAL_ERROR "FFmpeg support requires at least version 3.1 of libswresample (found: ${SWRESAMPLE_VERSION}).") endif() -- cgit v1.2.3 From d4db6a9e7d94b2f17c927465047302a6c0c46e82 Mon Sep 17 00:00:00 2001 From: Jan Holthuis Date: Sat, 16 Jan 2021 01:00:10 +0100 Subject: CMake: Rewrite Ogg/Vorbis find module --- CMakeLists.txt | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 989d4fc380..db50d5294f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1757,10 +1757,13 @@ set(OpenGL_GL_PREFERENCE "GLVND") find_package(OpenGL REQUIRED) target_link_libraries(mixxx-lib PUBLIC OpenGL::GL) -# Ogg Vorbis -find_package(OggVorbis REQUIRED) -target_include_directories(mixxx-lib SYSTEM PUBLIC ${OggVorbis_INCLUDE_DIRS}) -target_link_libraries(mixxx-lib PUBLIC ${OggVorbis_LIBRARIES}) +# Ogg +find_package(Ogg REQUIRED) +target_link_libraries(mixxx-lib PUBLIC Ogg::ogg) + +# Vorbis +find_package(Vorbis REQUIRED) +target_link_libraries(mixxx-lib PUBLIC Vorbis::vorbis Vorbis::vorbisenc Vorbis::vorbisfile) # PortAudio find_package(PortAudio REQUIRED) -- cgit v1.2.3 From a5888b0a83ad7ea8a1dcd4d6cd26519e1b5bc3d1 Mon Sep 17 00:00:00 2001 From: ronso0 Date: Mon, 11 Jan 2021 06:42:05 +0100 Subject: DlgPreferences: remove noVinyl page --- CMakeLists.txt | 2 -- 1 file changed, 2 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 94509b6623..3007ce3572 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -693,8 +693,6 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL src/preferences/dialog/dlgpreflibrary.cpp src/preferences/dialog/dlgpreflibrarydlg.ui src/preferences/dialog/dlgpreflv2dlg.ui - src/preferences/dialog/dlgprefnovinyl.cpp - src/preferences/dialog/dlgprefnovinyldlg.ui src/preferences/dialog/dlgprefrecord.cpp src/preferences/dialog/dlgprefrecorddlg.ui src/preferences/dialog/dlgprefreplaygain.cpp -- cgit v1.2.3 From 0c15373dc743e6c700659e062aac3056a1cf2f22 Mon Sep 17 00:00:00 2001 From: Be Date: Wed, 3 Feb 2021 11:58:27 -0600 Subject: CMake: copy libfdk-aac into Windows and macOS packages --- CMakeLists.txt | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index db50d5294f..61b31dc1f4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.13.0) +cmake_minimum_required(VERSION 3.15.0) project(mixxx VERSION 2.3.0) set(CMAKE_PROJECT_HOMEPAGE_URL "https://www.mixxx.org") set(CMAKE_PROJECT_DESCRIPTION "Mixxx is Free DJ software that gives you everything you need to perform live mixes.") @@ -2224,6 +2224,26 @@ if(FAAD) endif() endif() +# FDK-AAC is loaded dynamically at runtime by EncoderFdkAac using QLibrary, +# so copy it into the Windows and macOS packages, but do not link to it. +find_library(FDK_AAC_LIBRARY fdk-aac) +# On Windows find_library finds the .lib file, but the installer needs the .dll file. +find_file(FDK_AAC_DLL fdk-aac.dll PATH_SUFFIXES ${CMAKE_INSTALL_BINDIR}) +if(APPLE AND MACOS_BUNDLE AND FDK_AAC_LIBRARY) + message(STATUS "Found fdk-aac: ${FDK_AAC_LIBRARY}") + file(COPY ${FDK_AAC_LIBRARY} + DESTINATION ${MIXXX_INSTALL_PREFIX}/Contents/Frameworks + FOLLOW_SYMLINK_CHAIN + ) +elseif(WIN32 AND FDK_AAC_DLL) + message(STATUS "Found fdk-aac DLL: ${FDK_AAC_DLL}") + install(FILES ${FDK_AAC_DLL} DESTINATION ${MIXXX_INSTALL_BINDIR}) +elseif(FDK_AAC_LIBRARY) + message(STATUS "Found fdk-aac: ${FDK_AAC_LIBRARY}") +else() + message(STATUS "Could NOT find fdk-aac") +endif() + # FFmpeg 4.x support # FFmpeg is multimedia library that can be found http://ffmpeg.org/ find_package(FFMPEG COMPONENTS libavcodec libavformat libavutil libswresample) -- cgit v1.2.3 From 7eceda88c79d7f01f9192b1c8879e4043f4b923b Mon Sep 17 00:00:00 2001 From: Be Date: Thu, 4 Feb 2021 10:28:22 -0600 Subject: CMake: cleanup hacks for legacy Windows build environment --- CMakeLists.txt | 45 +++++++++++++++++++-------------------------- 1 file changed, 19 insertions(+), 26 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 61b31dc1f4..e224dff8a5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1352,6 +1352,25 @@ if(MSVC) ) endif() +if(WIN32) + find_file(QT_TRANSLATION_FILE qt_de.qm PATH_SUFFIXES share/qt5/translations) + get_filename_component(QT_TRANSLATIONS ${QT_TRANSLATION_FILE} DIRECTORY) + install( + DIRECTORY "${QT_TRANSLATIONS}" + DESTINATION "${MIXXX_INSTALL_DATADIR}" + # QT 5 translations have been separated into several files, and most of the qt_xx.qm files + # contain just shortcuts to load the qtbase, qtmultimedia etc files. + FILES_MATCHING REGEX + "qt_.+\.qm|qtbase_.*\.qm|qtmultimedia_.*\.qm|qtscript_.*\.qm|qtxmlpatterns_.*\.qm" + ) + + # Qt 5 loads these ANGLE DLLs at runtime if the graphics driver is blocklisted. + # Qt does not link these and vcpkg does not build them as a dependency of Qt, + # so copy them manually. + find_file(EGL_DLL libEGL.dll PATH_SUFFIXES ${CMAKE_INSTALL_BINDIR}) + find_file(GLESv2_DLL libGLESv2.dll PATH_SUFFIXES ${CMAKE_INSTALL_BINDIR}) + install(FILES ${EGL_DLL} ${GLESv2_DLL} DESTINATION "${MIXXX_INSTALL_BINDIR}") +endif() # # Tests @@ -1925,32 +1944,6 @@ elseif(WIN32) endif() endif() -# Qt5_DIR is not set until now, so this cannot be moved above with the rest of the install commands -if(WIN32) - install( - # I haven't seen a way to determine where the translations dir is, so I am making - # some assumptions here, and assuming that Qt5_DIR points to Qt-5.14.2/lib/cmake/Qt5 - # which is what my configuration tells me. - DIRECTORY - "${Qt5_DIR}/../../../translations" - DESTINATION - "${MIXXX_INSTALL_DATADIR}" - # QT 5 translations have been separated into several files, and most of the qt_xx.qm files - # contain just shortcuts to load the qtbase, qtmultimedia etc files. - FILES_MATCHING REGEX - "qt_.+\.qm|qtbase_.*\.qm|qtmultimedia_.*\.qm|qtscript_.*\.qm|qtxmlpatterns_.*\.qm" - ) - - # ANGLE DLLs are dynamically linked even when the rest of Qt is built statically - install( - FILES - "${Qt5_DIR}/../../../bin/libEGL.dll" - "${Qt5_DIR}/../../../bin/libGLESv2.dll" - DESTINATION - "${MIXXX_INSTALL_DATADIR}" - ) -endif() - # QtScriptByteArray add_library(QtScriptByteArray STATIC EXCLUDE_FROM_ALL lib/qtscript-bytearray/bytearrayclass.cpp -- cgit v1.2.3 From b0225017a98d24621de9e65c650646aeccebae8c Mon Sep 17 00:00:00 2001 From: Be Date: Thu, 4 Feb 2021 14:13:23 -0600 Subject: CMake: enable FFMPEG if it is found --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index e224dff8a5..7a0d4ad0fb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2240,7 +2240,7 @@ endif() # FFmpeg 4.x support # FFmpeg is multimedia library that can be found http://ffmpeg.org/ find_package(FFMPEG COMPONENTS libavcodec libavformat libavutil libswresample) -option(FFMPEG "FFmpeg 4.x support" OFF) +cmake_dependent_option(FFMPEG "FFmpeg 4.x support" ON "FFMPEG_FOUND" OFF) if(FFMPEG) if(NOT FFMPEG_libavcodec_FOUND) message(FATAL_ERROR "FFmpeg support requires libavcodec and its development headers.") -- cgit v1.2.3 From daa876c4a1f5fd195bc5e2e2970ceaf40226d5df Mon Sep 17 00:00:00 2001 From: Be Date: Tue, 9 Feb 2021 01:15:59 -0600 Subject: factor out SemanticVersion into a utility class --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 7a0d4ad0fb..9f310304e1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -815,6 +815,7 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL src/util/sample.cpp src/util/samplebuffer.cpp src/util/sandbox.cpp + src/util/semanticversion.cpp src/util/screensaver.cpp src/util/sleepableqthread.cpp src/util/stat.cpp -- cgit v1.2.3 From 1eab1d0a4cf89f22d3bb7f24e77cb92a18a62e0c Mon Sep 17 00:00:00 2001 From: Be Date: Tue, 9 Feb 2021 14:28:51 -0600 Subject: Encoder: fix build with OPUS=OFF --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 9f310304e1..84edfaf36b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -473,7 +473,6 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL src/encoder/encoderflacsettings.cpp src/encoder/encodermp3.cpp src/encoder/encodermp3settings.cpp - src/encoder/encoderopussettings.cpp src/encoder/encodersndfileflac.cpp src/encoder/encodervorbis.cpp src/encoder/encodervorbissettings.cpp @@ -2385,6 +2384,7 @@ if(OPUS) target_sources(mixxx-lib PRIVATE src/sources/soundsourceopus.cpp src/encoder/encoderopus.cpp + src/encoder/encoderopussettings.cpp ) target_compile_definitions(mixxx-lib PUBLIC __OPUS__) target_include_directories(mixxx-lib SYSTEM PUBLIC ${Opus_INCLUDE_DIRS}) -- cgit v1.2.3 From 18bc1e8042a63ccbbef102b9639ec4cc81152fac Mon Sep 17 00:00:00 2001 From: Be Date: Tue, 16 Feb 2021 15:02:41 -0600 Subject: CMake: disable FFMPEG automatically if it is too old --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 84edfaf36b..3b606c19d7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2240,7 +2240,7 @@ endif() # FFmpeg 4.x support # FFmpeg is multimedia library that can be found http://ffmpeg.org/ find_package(FFMPEG COMPONENTS libavcodec libavformat libavutil libswresample) -cmake_dependent_option(FFMPEG "FFmpeg 4.x support" ON "FFMPEG_FOUND" OFF) +cmake_dependent_option(FFMPEG "FFmpeg 4.x support" ON "FFMPEG_FOUND;FFMPEG_libavcodec_VERSION VERSION_GREATER_EQUAL 58" OFF) if(FFMPEG) if(NOT FFMPEG_libavcodec_FOUND) message(FATAL_ERROR "FFmpeg support requires libavcodec and its development headers.") -- cgit v1.2.3 From 02a069bd325bea010519c1b4fa6abea6d5286fbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Sch=C3=BCrmann?= Date: Wed, 17 Feb 2021 07:29:49 +0100 Subject: Added hirsute to our beta PPA build targets --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 94509b6623..45703c650d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2612,7 +2612,7 @@ set(CPACK_DEBIAN_DEBIAN_VERSION 0ubuntu1) set(CPACK_DEBIAN_DEBIAN_VERSION_EXTRA "${GIT_BRANCH}~git${GIT_COMMIT_COUNT}") string(REPLACE "_" "" CPACK_DEBIAN_DEBIAN_VERSION_EXTRA "${CPACK_DEBIAN_DEBIAN_VERSION_EXTRA}") set(CPACK_DEBIAN_PACKAGE_VERSION "${CPACK_DEBIAN_UPSTREAM_VERSION}-ppa1~${GIT_BRANCH}~git${GIT_COMMIT_COUNT}~bionic") -set(CPACK_DEBIAN_DISTRIBUTION_RELEASES bionic focal groovy) +set(CPACK_DEBIAN_DISTRIBUTION_RELEASES bionic focal groovy hirsute) set(CPACK_DEBIAN_SOURCE_DIR ${CMAKE_SOURCE_DIR}) set(CPACK_DEBIAN_UPLOAD_PPA_SCRIPT "${CMAKE_CURRENT_SOURCE_DIR}/packaging/CPackDebUploadPPA.cmake") -- cgit v1.2.3 From 3133372e05a9f0f0293aaea59dadfc01e5eb0601 Mon Sep 17 00:00:00 2001 From: Be Date: Wed, 17 Feb 2021 17:20:50 -0600 Subject: CMake: add comment why qt_de.dm is searched for --- CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 3b606c19d7..f1d12b9256 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1353,6 +1353,8 @@ if(MSVC) endif() if(WIN32) + # qt_de.qm is just one arbitrary file in the directory that needs to be located; + # there is no particular reason to look for this file versus any other one in the directory. find_file(QT_TRANSLATION_FILE qt_de.qm PATH_SUFFIXES share/qt5/translations) get_filename_component(QT_TRANSLATIONS ${QT_TRANSLATION_FILE} DIRECTORY) install( -- cgit v1.2.3