mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-26 09:31:08 +08:00
[juce] Fix cross builds, cleanup (#42615)
This commit is contained in:
parent
8476a6d43a
commit
4fcf123fe5
@ -1,37 +0,0 @@
|
|||||||
diff --git a/extras/Build/CMake/JUCEModuleSupport.cmake b/extras/Build/CMake/JUCEModuleSupport.cmake
|
|
||||||
index e18dd5e08..45cc9245f 100644
|
|
||||||
--- a/extras/Build/CMake/JUCEModuleSupport.cmake
|
|
||||||
+++ b/extras/Build/CMake/JUCEModuleSupport.cmake
|
|
||||||
@@ -389,6 +389,30 @@
|
|
||||||
if(TARGET juce::pkgconfig_${name})
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
+
|
|
||||||
+ # The package that can be found via find_package instead of pkg-config
|
|
||||||
+ if("${name}" STREQUAL "freetype2")
|
|
||||||
+ find_package(Freetype REQUIRED)
|
|
||||||
+ add_library(juce::pkgconfig_${name} INTERFACE)
|
|
||||||
+ target_link_libraries(juce::pkgconfig_${name} INTERFACE Freetype::Freetype)
|
|
||||||
+ return()
|
|
||||||
+ elseif("${name}" STREQUAL "libcurl")
|
|
||||||
+ find_package(CURL REQUIRED)
|
|
||||||
+ add_library(juce::pkgconfig_${name} INTERFACE)
|
|
||||||
+ target_link_libraries(juce::pkgconfig_${name} INTERFACE CURL::libcurl)
|
|
||||||
+ return()
|
|
||||||
+ elseif("${name}" STREQUAL "alsa")
|
|
||||||
+ find_package(ALSA REQUIRED)
|
|
||||||
+ add_library(juce::pkgconfig_${name} INTERFACE)
|
|
||||||
+ target_link_libraries(juce::pkgconfig_${name} INTERFACE ALSA::ALSA)
|
|
||||||
+ return()
|
|
||||||
+ elseif("${name}" STREQUAL "gl")
|
|
||||||
+ find_package(OpenGL REQUIRED)
|
|
||||||
+ add_library(juce::pkgconfig_${name} INTERFACE)
|
|
||||||
+ target_link_libraries(juce::pkgconfig_${name} INTERFACE OpenGL::GL)
|
|
||||||
+ return()
|
|
||||||
+ endif()
|
|
||||||
+
|
|
||||||
|
|
||||||
find_package(PkgConfig REQUIRED)
|
|
||||||
pkg_check_modules(${name} ${JUCE_ARG_UNPARSED_ARGUMENTS})
|
|
||||||
--
|
|
||||||
2.34.1
|
|
@ -1,32 +0,0 @@
|
|||||||
diff --git a/extras/Build/juceaide/CMakeLists.txt b/extras/Build/juceaide/CMakeLists.txt
|
|
||||||
index 163f203cc..f4cdba7f7 100644
|
|
||||||
--- a/extras/Build/juceaide/CMakeLists.txt
|
|
||||||
+++ b/extras/Build/juceaide/CMakeLists.txt
|
|
||||||
@@ -120,6 +120,25 @@
|
|
||||||
"-DCMAKE_BUILD_TYPE=Debug"
|
|
||||||
"-DJUCE_BUILD_HELPER_TOOLS=ON"
|
|
||||||
"-DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}"
|
|
||||||
+ # forward vcpkg flags
|
|
||||||
+ "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}"
|
|
||||||
+ "-DCMAKE_SYSTEM_NAME=${CMAKE_SYSTEM_NAME}"
|
|
||||||
+ "-DCMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION=${CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION}"
|
|
||||||
+ "-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=${CMAKE_EXPORT_NO_PACKAGE_REGISTRY}"
|
|
||||||
+ "-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=${CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY}"
|
|
||||||
+ "-DCMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY=${CMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY}"
|
|
||||||
+ "-DCMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP=${CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP}"
|
|
||||||
+ "-DCMAKE_VERBOSE_MAKEFILE=${CMAKE_VERBOSE_MAKEFILE}"
|
|
||||||
+ "-DVCPKG_APPLOCAL_DEPS=${VCPKG_APPLOCAL_DEPS}"
|
|
||||||
+ "-DVCPKG_CHAINLOAD_TOOLCHAIN_FILE=${VCPKG_CHAINLOAD_TOOLCHAIN_FILE}"
|
|
||||||
+ "-DVCPKG_CRT_LINKAGE=${VCPKG_CRT_LINKAGE}"
|
|
||||||
+ "-DVCPKG_MANIFEST_INSTALL=${VCPKG_MANIFEST_INSTALL}"
|
|
||||||
+ "-DVCPKG_PLATFORM_TOOLSET=${VCPKG_PLATFORM_TOOLSET}"
|
|
||||||
+ "-DVCPKG_SET_CHARSET_FLAG=${VCPKG_SET_CHARSET_FLAG}"
|
|
||||||
+ "-DVCPKG_TARGET_ARCHITECTURE=${VCPKG_TARGET_ARCHITECTURE}"
|
|
||||||
+ "-DVCPKG_TARGET_TRIPLET=${VCPKG_TARGET_TRIPLET}"
|
|
||||||
+ "-D_VCPKG_INSTALLED_DIR=${_VCPKG_INSTALLED_DIR}"
|
|
||||||
+ "-D_VCPKG_ROOT_DIR=${_VCPKG_ROOT_DIR}"
|
|
||||||
WORKING_DIRECTORY "${JUCE_SOURCE_DIR}"
|
|
||||||
OUTPUT_VARIABLE command_output
|
|
||||||
ERROR_VARIABLE command_output
|
|
||||||
--
|
|
||||||
2.34.1
|
|
@ -19,31 +19,5 @@ index 4262a9852..a46b51f1a 100644
|
|||||||
install(EXPORT VST3_HELPER NAMESPACE juce:: DESTINATION "${JUCE_INSTALL_DESTINATION}")
|
install(EXPORT VST3_HELPER NAMESPACE juce:: DESTINATION "${JUCE_INSTALL_DESTINATION}")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
diff --git a/extras/Build/juceaide/CMakeLists.txt b/extras/Build/juceaide/CMakeLists.txt
|
|
||||||
index f4cdba7f7..fab57fdb4 100644
|
|
||||||
--- a/extras/Build/juceaide/CMakeLists.txt
|
|
||||||
+++ b/extras/Build/juceaide/CMakeLists.txt
|
|
||||||
@@ -164,7 +164,7 @@ else()
|
|
||||||
|
|
||||||
add_executable(juce::juceaide ALIAS juceaide)
|
|
||||||
|
|
||||||
- set(JUCE_TOOL_INSTALL_DIR "bin/JUCE-${JUCE_VERSION}" CACHE STRING
|
|
||||||
+ set(JUCE_TOOL_INSTALL_DIR "tools/juce" CACHE STRING
|
|
||||||
"The location, relative to the install prefix, where juceaide will be installed")
|
|
||||||
|
|
||||||
install(PROGRAMS "${imported_location}" DESTINATION "${JUCE_TOOL_INSTALL_DIR}")
|
|
||||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
||||||
index a46b51f1a..38f863a3e 100644
|
|
||||||
--- a/CMakeLists.txt
|
|
||||||
+++ b/CMakeLists.txt
|
|
||||||
@@ -137,7 +137,7 @@
|
|
||||||
VERSION ${JUCE_VERSION}
|
|
||||||
COMPATIBILITY ExactVersion)
|
|
||||||
|
|
||||||
-set(JUCE_INSTALL_DESTINATION "lib/cmake/JUCE-${JUCE_VERSION}" CACHE STRING
|
|
||||||
+set(JUCE_INSTALL_DESTINATION "share/juce" CACHE STRING
|
|
||||||
"The location, relative to the install prefix, where the JUCE config file will be installed")
|
|
||||||
|
|
||||||
set(JUCE_MODULE_PATH "include/JUCE-${JUCE_VERSION}/modules")
|
|
||||||
--
|
--
|
||||||
2.34.1
|
2.34.1
|
||||||
|
17
ports/juce/devendor-oboe.diff
Normal file
17
ports/juce/devendor-oboe.diff
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
diff --git a/extras/Build/CMake/JUCEModuleSupport.cmake b/extras/Build/CMake/JUCEModuleSupport.cmake
|
||||||
|
index afefe2d..2dd2ecf 100644
|
||||||
|
--- a/extras/Build/CMake/JUCEModuleSupport.cmake
|
||||||
|
+++ b/extras/Build/CMake/JUCEModuleSupport.cmake
|
||||||
|
@@ -603,8 +603,10 @@ function(juce_add_module module_path)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if((${module_name} STREQUAL "juce_audio_devices") AND (CMAKE_SYSTEM_NAME STREQUAL "Android"))
|
||||||
|
- add_subdirectory("${module_path}/native/oboe")
|
||||||
|
- target_link_libraries(${module_name} INTERFACE oboe)
|
||||||
|
+ find_path(JUCE_OBOE_INCLUDE_DIR NAMES oboe/Oboe.h REQUIRED)
|
||||||
|
+ target_include_directories(${module_name} INTERFACE "${JUCE_OBOE_INCLUDE_DIR}")
|
||||||
|
+ find_library(JUCE_OBOE_LIBRARY NAMES oboe REQUIRED)
|
||||||
|
+ target_link_libraries(${module_name} INTERFACE "${JUCE_OBOE_LIBRARY}" log OpenSLES)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if((${module_name} STREQUAL "juce_opengl") AND (CMAKE_SYSTEM_NAME STREQUAL "Android"))
|
12
ports/juce/gcc-has-builtin.diff
Normal file
12
ports/juce/gcc-has-builtin.diff
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
diff --git a/modules/juce_graphics/juce_graphics_Harfbuzz.cpp b/modules/juce_graphics/juce_graphics_Harfbuzz.cpp
|
||||||
|
index a491af9..44e934a 100644
|
||||||
|
--- a/modules/juce_graphics/juce_graphics_Harfbuzz.cpp
|
||||||
|
+++ b/modules/juce_graphics/juce_graphics_Harfbuzz.cpp
|
||||||
|
@@ -84,7 +84,6 @@ JUCE_BEGIN_IGNORE_WARNINGS_GCC_LIKE ("-Wdeprecated-declarations",
|
||||||
|
// -Wexpansion-to-defined on gcc 7. There's no way to turn that warning off
|
||||||
|
// locally, so we sidestep it.
|
||||||
|
#if ! defined(__has_builtin) && defined(__GNUC__) && __GNUC__ >= 5
|
||||||
|
- #define __has_builtin(x) 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <utility>
|
19
ports/juce/install-extras.diff
Normal file
19
ports/juce/install-extras.diff
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
diff --git a/extras/CMakeLists.txt b/extras/CMakeLists.txt
|
||||||
|
index 7f5555e..539f1cb 100644
|
||||||
|
--- a/extras/CMakeLists.txt
|
||||||
|
+++ b/extras/CMakeLists.txt
|
||||||
|
@@ -35,5 +35,14 @@ add_subdirectory(AudioPerformanceTest)
|
||||||
|
add_subdirectory(AudioPluginHost)
|
||||||
|
add_subdirectory(BinaryBuilder)
|
||||||
|
add_subdirectory(NetworkGraphicsDemo)
|
||||||
|
+if(NOT ANDROID AND NOT IOS)
|
||||||
|
add_subdirectory(Projucer)
|
||||||
|
+endif()
|
||||||
|
add_subdirectory(UnitTestRunner)
|
||||||
|
+
|
||||||
|
+file(GLOB tools RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/*")
|
||||||
|
+foreach(tool IN LISTS tools)
|
||||||
|
+ if(TARGET "${tool}")
|
||||||
|
+ install(TARGETS "${tool}" DESTINATION "${JUCE_TOOL_INSTALL_DIR}")
|
||||||
|
+ endif()
|
||||||
|
+endforeach()
|
83
ports/juce/juceaide.diff
Normal file
83
ports/juce/juceaide.diff
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index 49d85c6..76209f5 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -1,3 +1,5 @@
|
||||||
|
+# Save cmake input for nested juceaide build
|
||||||
|
+get_cmake_property(vcpkg_input_vars CACHE_VARIABLES)
|
||||||
|
# ==============================================================================
|
||||||
|
#
|
||||||
|
# This file is part of the JUCE framework.
|
||||||
|
@@ -142,7 +144,10 @@ set(JUCE_INSTALL_DESTINATION "lib/cmake/JUCE-${JUCE_VERSION}" CACHE STRING
|
||||||
|
|
||||||
|
set(JUCE_MODULE_PATH "include/JUCE-${JUCE_VERSION}/modules")
|
||||||
|
set(UTILS_INSTALL_DIR "${JUCE_INSTALL_DESTINATION}")
|
||||||
|
-set(JUCEAIDE_PATH "${JUCE_TOOL_INSTALL_DIR}/${JUCE_JUCEAIDE_NAME}")
|
||||||
|
+set(JUCEAIDE_PATH "${VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/tools/juce/${JUCE_JUCEAIDE_NAME}")
|
||||||
|
+if(WITH_JUCEAIDE)
|
||||||
|
+ set(JUCEAIDE_PATH "${WITH_JUCEAIDE}")
|
||||||
|
+endif()
|
||||||
|
configure_package_config_file("${JUCE_CMAKE_UTILS_DIR}/JUCEConfig.cmake.in"
|
||||||
|
"${JUCE_BINARY_DIR}/JUCEConfig.cmake"
|
||||||
|
PATH_VARS UTILS_INSTALL_DIR JUCEAIDE_PATH JUCE_MODULE_PATH
|
||||||
|
diff --git a/extras/Build/juceaide/CMakeLists.txt b/extras/Build/juceaide/CMakeLists.txt
|
||||||
|
index 651aa53..9ff0fba 100644
|
||||||
|
--- a/extras/Build/juceaide/CMakeLists.txt
|
||||||
|
+++ b/extras/Build/juceaide/CMakeLists.txt
|
||||||
|
@@ -55,12 +55,16 @@ if(JUCE_BUILD_HELPER_TOOLS)
|
||||||
|
juce::juce_recommended_lto_flags
|
||||||
|
juce::juce_recommended_warning_flags)
|
||||||
|
|
||||||
|
- set_target_properties(juceaide PROPERTIES
|
||||||
|
- MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
|
||||||
|
|
||||||
|
export(TARGETS juceaide
|
||||||
|
NAMESPACE juce_tools::
|
||||||
|
FILE "${JUCE_BINARY_DIR}/JUCEToolsExport.cmake")
|
||||||
|
+
|
||||||
|
+elseif(WITH_JUCEAIDE)
|
||||||
|
+ add_executable(juceaide IMPORTED GLOBAL)
|
||||||
|
+ set_target_properties(juceaide PROPERTIES IMPORTED_LOCATION "${WITH_JUCEAIDE}")
|
||||||
|
+ add_executable(juce::juceaide ALIAS juceaide)
|
||||||
|
+
|
||||||
|
else()
|
||||||
|
message(STATUS "Configuring juceaide")
|
||||||
|
|
||||||
|
@@ -111,13 +115,18 @@ else()
|
||||||
|
set(ENV{CMAKE_GENERATOR_PLATFORM} "${CMAKE_HOST_SYSTEM_PROCESSOR}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
+ set(options "")
|
||||||
|
+ list(REMOVE_ITEM vcpkg_input_vars "JUCE_BUILD_EXTRAS")
|
||||||
|
+ foreach(var IN LISTS vcpkg_input_vars)
|
||||||
|
+ list(APPEND options "-D${var}=$CACHE{${var}}")
|
||||||
|
+ endforeach()
|
||||||
|
# Looks like we're bootstrapping, reinvoke CMake
|
||||||
|
execute_process(COMMAND "${CMAKE_COMMAND}"
|
||||||
|
"."
|
||||||
|
"-B${JUCE_BINARY_DIR}/tools"
|
||||||
|
"-G${CMAKE_GENERATOR}"
|
||||||
|
"-DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}"
|
||||||
|
- "-DCMAKE_BUILD_TYPE=Debug"
|
||||||
|
+ ${options}
|
||||||
|
"-DJUCE_BUILD_HELPER_TOOLS=ON"
|
||||||
|
"-DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}"
|
||||||
|
WORKING_DIRECTORY "${JUCE_SOURCE_DIR}"
|
||||||
|
@@ -133,7 +142,7 @@ else()
|
||||||
|
|
||||||
|
execute_process(COMMAND "${CMAKE_COMMAND}"
|
||||||
|
--build "${JUCE_BINARY_DIR}/tools"
|
||||||
|
- --config Debug
|
||||||
|
+ --target juceaide
|
||||||
|
OUTPUT_VARIABLE command_output
|
||||||
|
ERROR_VARIABLE command_output
|
||||||
|
RESULT_VARIABLE result_variable)
|
||||||
|
@@ -148,7 +157,7 @@ else()
|
||||||
|
include("${JUCE_BINARY_DIR}/tools/JUCEToolsExport.cmake")
|
||||||
|
|
||||||
|
add_executable(juceaide IMPORTED GLOBAL)
|
||||||
|
- get_target_property(imported_location juce_tools::juceaide IMPORTED_LOCATION_DEBUG)
|
||||||
|
+ get_target_property(imported_location juce_tools::juceaide IMPORTED_LOCATION_RELEASE)
|
||||||
|
set_target_properties(juceaide PROPERTIES IMPORTED_LOCATION "${imported_location}")
|
||||||
|
|
||||||
|
add_executable(juce::juceaide ALIAS juceaide)
|
20
ports/juce/missing-modules.diff
Normal file
20
ports/juce/missing-modules.diff
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
diff --git a/extras/Build/CMake/JUCEConfig.cmake.in b/extras/Build/CMake/JUCEConfig.cmake.in
|
||||||
|
index c0c1eef..03a09ef 100644
|
||||||
|
--- a/extras/Build/CMake/JUCEConfig.cmake.in
|
||||||
|
+++ b/extras/Build/CMake/JUCEConfig.cmake.in
|
||||||
|
@@ -39,6 +39,7 @@ include("@PACKAGE_UTILS_INSTALL_DIR@/JUCEUtils.cmake")
|
||||||
|
|
||||||
|
set(_juce_modules
|
||||||
|
juce_analytics
|
||||||
|
+ juce_animation
|
||||||
|
juce_audio_basics
|
||||||
|
juce_audio_devices
|
||||||
|
juce_audio_formats
|
||||||
|
@@ -55,6 +56,7 @@ set(_juce_modules
|
||||||
|
juce_gui_basics
|
||||||
|
juce_gui_extra
|
||||||
|
juce_javascript
|
||||||
|
+ juce_midi_ci
|
||||||
|
juce_opengl
|
||||||
|
juce_osc
|
||||||
|
juce_product_unlocking
|
@ -1,3 +1,5 @@
|
|||||||
|
set(VCPKG_BUILD_TYPE release) # no libraries
|
||||||
|
|
||||||
vcpkg_from_github(
|
vcpkg_from_github(
|
||||||
OUT_SOURCE_PATH SOURCE_PATH
|
OUT_SOURCE_PATH SOURCE_PATH
|
||||||
REPO juce-framework/JUCE
|
REPO juce-framework/JUCE
|
||||||
@ -5,28 +7,54 @@ vcpkg_from_github(
|
|||||||
SHA512 c1cb2f315c2b3b9c534d21b16d31e641661fbb9ad55b29a0949c038cb69cce65d35c8c669a400e33fdcedd7fc5ef578a1eba787826d525402330551c4d240fe6
|
SHA512 c1cb2f315c2b3b9c534d21b16d31e641661fbb9ad55b29a0949c038cb69cce65d35c8c669a400e33fdcedd7fc5ef578a1eba787826d525402330551c4d240fe6
|
||||||
HEAD_REF master
|
HEAD_REF master
|
||||||
PATCHES
|
PATCHES
|
||||||
"0001-build-allow-setting-JUCE_PLUGINHOST_LADSPA.patch"
|
0001-build-allow-setting-JUCE_PLUGINHOST_LADSPA.patch
|
||||||
"0002-build-linux-find_packages.patch"
|
0004-install-paths.patch
|
||||||
"0003-build-forward-vcpkg-toolchain.patch"
|
gcc-has-builtin.diff
|
||||||
"0004-install-paths.patch"
|
devendor-oboe.diff
|
||||||
|
install-extras.diff
|
||||||
|
juceaide.diff
|
||||||
|
missing-modules.diff
|
||||||
|
prefer-cmake.diff
|
||||||
|
vcpkg-compile-definitions.diff
|
||||||
)
|
)
|
||||||
|
file(REMOVE_RECURSE "${SOURCE_PATH}/modules/juce_audio_devices/native/oboe")
|
||||||
|
|
||||||
|
set(feature_compile_definitions
|
||||||
|
"curl" JUCE_USE_CURL
|
||||||
|
"fontconfig" JUCE_USE_FONTCONFIG
|
||||||
|
"freetype" JUCE_USE_FREETYPE
|
||||||
|
"jack" JUCE_JACK
|
||||||
|
"ladspa" JUCE_PLUGINHOST_LADSPA
|
||||||
|
"web-browser" JUCE_WEB_BROWSER
|
||||||
|
"xcursor" JUCE_USE_XCURSOR
|
||||||
|
"xinerama" JUCE_USE_XINERAMA
|
||||||
|
"xrandr" JUCE_USE_XRANDR
|
||||||
|
"xrender" JUCE_USE_XRENDER
|
||||||
|
)
|
||||||
|
set(enforced_definitions "")
|
||||||
|
while(feature_compile_definitions)
|
||||||
|
list(POP_FRONT feature_compile_definitions feature compile_definition)
|
||||||
|
if(NOT feature IN_LIST FEATURES)
|
||||||
|
# Enforce controlled absence of dependency
|
||||||
|
list(APPEND enforced_definitions "${compile_definition}=0")
|
||||||
|
endif()
|
||||||
|
endwhile()
|
||||||
|
list(JOIN enforced_definitions "\n " enforced_definitions)
|
||||||
|
file(WRITE "${SOURCE_PATH}/extras/Build/CMake/vcpkg-compile-definitions.cmake" "
|
||||||
|
function(vcpkg_juce_add_compile_definitions target)
|
||||||
|
target_compile_definitions(\${target} INTERFACE
|
||||||
|
${enforced_definitions}
|
||||||
|
)
|
||||||
|
endfunction()
|
||||||
|
")
|
||||||
|
|
||||||
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
||||||
FEATURES
|
FEATURES
|
||||||
"extras" JUCE_BUILD_EXTRAS
|
"extras" JUCE_BUILD_EXTRAS
|
||||||
"ladspa" JUCE_PLUGINHOST_LADSPA
|
"ladspa" JUCE_PLUGINHOST_LADSPA
|
||||||
"jack" JUCE_JACK
|
|
||||||
"curl" JUCE_USE_CURL
|
|
||||||
"freetype" JUCE_USE_FREETYPE
|
|
||||||
"xcursor" JUCE_USE_XCURSOR
|
|
||||||
"xinerama" JUCE_USE_XINERAMA
|
|
||||||
"xrandr" JUCE_USE_XRANDR
|
|
||||||
"xrender" JUCE_USE_XRENDER
|
|
||||||
"web-browser" JUCE_WEB_BROWSER
|
|
||||||
"opengl" JUCE_OPENGL
|
|
||||||
)
|
)
|
||||||
# Based on https://github.com/juce-framework/JUCE/blob/master/docs/Linux%20Dependencies.md
|
# Based on https://github.com/juce-framework/JUCE/blob/master/docs/Linux%20Dependencies.md
|
||||||
if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux")
|
if(VCPKG_TARGET_IS_LINUX)
|
||||||
message("juce currently requires the following programs from the system package manager:
|
message("juce currently requires the following programs from the system package manager:
|
||||||
libx11-dev libxcomposite-dev libxext-dev
|
libx11-dev libxcomposite-dev libxext-dev
|
||||||
On Ubuntu derivatives:
|
On Ubuntu derivatives:
|
||||||
@ -89,22 +117,21 @@ On Ubuntu derivatives:
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(VCPKG_CROSSCOMPILING)
|
||||||
|
# Constructed with CURRENT_INSTALLED_DIR, for vcpkg_cmake_config_fixup.
|
||||||
|
list(APPEND FEATURE_OPTIONS "-DWITH_JUCEAIDE=${CURRENT_INSTALLED_DIR}/../${HOST_TRIPLET}/tools/${PORT}/juceaide${VCPKG_HOST_EXECUTABLE_SUFFIX}")
|
||||||
|
endif()
|
||||||
|
|
||||||
vcpkg_cmake_configure(
|
vcpkg_cmake_configure(
|
||||||
SOURCE_PATH "${SOURCE_PATH}"
|
SOURCE_PATH "${SOURCE_PATH}"
|
||||||
OPTIONS
|
OPTIONS
|
||||||
-DJUCE_ENABLE_MODULE_SOURCE_GROUPS=ON
|
-DJUCE_ENABLE_MODULE_SOURCE_GROUPS=ON
|
||||||
${FEATURE_OPTIONS}
|
-DJUCE_INSTALL_DESTINATION=share/juce
|
||||||
|
-DJUCE_TOOL_INSTALL_DIR=bin
|
||||||
|
${FEATURE_OPTIONS}
|
||||||
MAYBE_UNUSED_VARIABLES
|
MAYBE_UNUSED_VARIABLES
|
||||||
|
JUCE_TOOL_INSTALL_DIR
|
||||||
JUCE_PLUGINHOST_LADSPA
|
JUCE_PLUGINHOST_LADSPA
|
||||||
JUCE_JACK
|
|
||||||
JUCE_OPENGL
|
|
||||||
JUCE_USE_CURL
|
|
||||||
JUCE_USE_FREETYPE
|
|
||||||
JUCE_USE_XCURSOR
|
|
||||||
JUCE_USE_XINERAMA
|
|
||||||
JUCE_USE_XRANDR
|
|
||||||
JUCE_USE_XRENDER
|
|
||||||
JUCE_WEB_BROWSER
|
|
||||||
)
|
)
|
||||||
|
|
||||||
vcpkg_cmake_install()
|
vcpkg_cmake_install()
|
||||||
@ -112,44 +139,36 @@ vcpkg_cmake_config_fixup()
|
|||||||
vcpkg_fixup_pkgconfig()
|
vcpkg_fixup_pkgconfig()
|
||||||
vcpkg_copy_pdbs()
|
vcpkg_copy_pdbs()
|
||||||
|
|
||||||
# Copy tools
|
file(GLOB icons "${CURRENT_PACKAGES_DIR}/bin/*.ico")
|
||||||
file(GLOB JUCE_TOOLS "${CURRENT_PACKAGES_DIR}/bin/JUCE-${VERSION}/*")
|
if(icons)
|
||||||
foreach(JUCE_TOOL_PATH IN LISTS JUCE_TOOLS)
|
file(REMOVE_RECURSE ${icons})
|
||||||
get_filename_component(JUCE_TOOL "${JUCE_TOOL_PATH}" NAME_WLE)
|
|
||||||
get_filename_component(JUCE_TOOL_DIR "${JUCE_TOOL_PATH}" DIRECTORY)
|
|
||||||
vcpkg_copy_tools(TOOL_NAMES ${JUCE_TOOL} SEARCH_DIR "${JUCE_TOOL_DIR}")
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# Copy extras tools
|
|
||||||
if(JUCE_BUILD_EXTRAS)
|
|
||||||
file(GLOB JUCE_EXTRA_TOOLS "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/extras/*/*_artefacts/Release/*")
|
|
||||||
foreach(JUCE_EXTRA_TOOL_PATH IN LISTS JUCE_EXTRA_TOOLS)
|
|
||||||
get_filename_component(JUCE_EXTRA_TOOL "${JUCE_EXTRA_TOOL_PATH}" NAME_WLE)
|
|
||||||
get_filename_component(JUCE_EXTRA_TOOL_DIR "${JUCE_EXTRA_TOOL_PATH}" DIRECTORY)
|
|
||||||
vcpkg_copy_tools(TOOL_NAMES ${JUCE_EXTRA_TOOL} SEARCH_DIR "${JUCE_EXTRA_TOOL_DIR}")
|
|
||||||
endforeach()
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Copy JUCE modules including the cpp/cmake files
|
set(tool_names "")
|
||||||
file(GLOB JUCE_MODULES_FOLDERS "${CURRENT_PACKAGES_DIR}/include/JUCE-${VERSION}/modules/*")
|
file(GLOB tools "${CURRENT_PACKAGES_DIR}/bin/*")
|
||||||
foreach(JUCE_MODULE_FOLDER IN LISTS JUCE_MODULES_FOLDERS)
|
set(name_component NAME_WE)
|
||||||
file(COPY "${JUCE_MODULE_FOLDER}" DESTINATION "${CURRENT_PACKAGES_DIR}/include")
|
if(VCPKG_TARGET_EXECUTABLE_SUFFIX STREQUAL "")
|
||||||
|
set(name_component NAME)
|
||||||
|
endif()
|
||||||
|
foreach(tool IN LISTS tools)
|
||||||
|
get_filename_component(name "${tool}" ${name_component})
|
||||||
|
list(APPEND tool_names "${name}")
|
||||||
endforeach()
|
endforeach()
|
||||||
|
if(tool_names)
|
||||||
|
vcpkg_copy_tools(TOOL_NAMES ${tool_names} AUTO_CLEAN)
|
||||||
|
endif()
|
||||||
|
|
||||||
# Remove duplicate tools directories
|
# Files not generated for Android or iOS
|
||||||
file(REMOVE_RECURSE
|
file(TOUCH "${CURRENT_PACKAGES_DIR}/share/juce/LV2_HELPER.cmake")
|
||||||
"${CURRENT_PACKAGES_DIR}/bin"
|
file(TOUCH "${CURRENT_PACKAGES_DIR}/share/juce/VST3_HELPER.cmake")
|
||||||
"${CURRENT_PACKAGES_DIR}/debug/bin"
|
|
||||||
)
|
|
||||||
|
|
||||||
# Remove duplicate debug files
|
# Catch libs which must be de-vendored, e.g. oboe.
|
||||||
file(REMOVE_RECURSE
|
# This is to avoid ownership conflicts.
|
||||||
"${CURRENT_PACKAGES_DIR}/debug/"
|
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib" "${CURRENT_PACKAGES_DIR}/include/oboe")
|
||||||
)
|
if(EXISTS "${CURRENT_PACKAGES_DIR}/lib")
|
||||||
|
message(${Z_VCPKG_BACKCOMPAT_MESSAGE_LEVEL} "juce must not install files to ${CURRENT_PACKAGES_DIR}/lib.")
|
||||||
|
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib")
|
||||||
|
endif()
|
||||||
|
|
||||||
# Copy license
|
file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
|
||||||
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.md")
|
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.md")
|
||||||
|
|
||||||
# Copy usage examples
|
|
||||||
file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage"
|
|
||||||
DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
|
|
||||||
|
45
ports/juce/prefer-cmake.diff
Normal file
45
ports/juce/prefer-cmake.diff
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
diff --git a/extras/Build/CMake/JUCEModuleSupport.cmake b/extras/Build/CMake/JUCEModuleSupport.cmake
|
||||||
|
index e89cc5d..afefe2d 100644
|
||||||
|
--- a/extras/Build/CMake/JUCEModuleSupport.cmake
|
||||||
|
+++ b/extras/Build/CMake/JUCEModuleSupport.cmake
|
||||||
|
@@ -390,10 +390,40 @@ function(_juce_create_pkgconfig_target name)
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
+ # Prefer CMake over pkg-config
|
||||||
|
+ set(link_libs "")
|
||||||
|
+ if("alsa" IN_LIST JUCE_ARG_UNPARSED_ARGUMENTS)
|
||||||
|
+ list(REMOVE_ITEM JUCE_ARG_UNPARSED_ARGUMENTS "alsa")
|
||||||
|
+ find_package(ALSA REQUIRED)
|
||||||
|
+ list(APPEND link_libs ALSA::ALSA)
|
||||||
|
+ endif()
|
||||||
|
+ if("fontconfig" IN_LIST JUCE_ARG_UNPARSED_ARGUMENTS)
|
||||||
|
+ list(REMOVE_ITEM JUCE_ARG_UNPARSED_ARGUMENTS "fontconfig")
|
||||||
|
+ find_package(Fontconfig REQUIRED)
|
||||||
|
+ list(APPEND link_libs Fontconfig::Fontconfig)
|
||||||
|
+ endif()
|
||||||
|
+ if("freetype2" IN_LIST JUCE_ARG_UNPARSED_ARGUMENTS)
|
||||||
|
+ list(REMOVE_ITEM JUCE_ARG_UNPARSED_ARGUMENTS "freetype2")
|
||||||
|
+ find_package(Freetype REQUIRED)
|
||||||
|
+ list(APPEND link_libs Freetype::Freetype)
|
||||||
|
+ endif()
|
||||||
|
+ if("gl" IN_LIST JUCE_ARG_UNPARSED_ARGUMENTS)
|
||||||
|
+ list(REMOVE_ITEM JUCE_ARG_UNPARSED_ARGUMENTS "gl")
|
||||||
|
+ find_package(OpenGL REQUIRED)
|
||||||
|
+ list(APPEND link_libs OpenGL::GL)
|
||||||
|
+ endif()
|
||||||
|
+ if("libcurl" IN_LIST JUCE_ARG_UNPARSED_ARGUMENTS)
|
||||||
|
+ list(REMOVE_ITEM JUCE_ARG_UNPARSED_ARGUMENTS "libcurl")
|
||||||
|
+ find_package(CURL REQUIRED)
|
||||||
|
+ list(APPEND link_libs CURL::libcurl)
|
||||||
|
+ endif()
|
||||||
|
+ if(JUCE_ARG_UNPARSED_ARGUMENTS)
|
||||||
|
find_package(PkgConfig REQUIRED)
|
||||||
|
pkg_check_modules(${name} ${JUCE_ARG_UNPARSED_ARGUMENTS})
|
||||||
|
+ endif()
|
||||||
|
|
||||||
|
add_library(pkgconfig_${name} INTERFACE)
|
||||||
|
+ set_target_properties(pkgconfig_${name} PROPERTIES INTERFACE_LINK_LIBRARIES "${link_libs}")
|
||||||
|
add_library(juce::pkgconfig_${name} ALIAS pkgconfig_${name})
|
||||||
|
install(TARGETS pkgconfig_${name} EXPORT JUCE)
|
||||||
|
|
27
ports/juce/vcpkg-compile-definitions.diff
Normal file
27
ports/juce/vcpkg-compile-definitions.diff
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index 76209f5..69dc639 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -167,6 +167,7 @@ install(FILES "${JUCE_BINARY_DIR}/JUCEConfigVersion.cmake"
|
||||||
|
"${JUCE_CMAKE_UTILS_DIR}/JUCECheckAtomic.cmake"
|
||||||
|
"${JUCE_CMAKE_UTILS_DIR}/JUCEHelperTargets.cmake"
|
||||||
|
"${JUCE_CMAKE_UTILS_DIR}/JUCEModuleSupport.cmake"
|
||||||
|
+ "${JUCE_CMAKE_UTILS_DIR}/vcpkg-compile-definitions.cmake"
|
||||||
|
"${JUCE_CMAKE_UTILS_DIR}/JUCEUtils.cmake"
|
||||||
|
"${JUCE_CMAKE_UTILS_DIR}/JuceLV2Defines.h.in"
|
||||||
|
"${JUCE_CMAKE_UTILS_DIR}/LaunchScreen.storyboard"
|
||||||
|
diff --git a/extras/Build/CMake/JUCEModuleSupport.cmake b/extras/Build/CMake/JUCEModuleSupport.cmake
|
||||||
|
index 2dd2ecf..635c50e 100644
|
||||||
|
--- a/extras/Build/CMake/JUCEModuleSupport.cmake
|
||||||
|
+++ b/extras/Build/CMake/JUCEModuleSupport.cmake
|
||||||
|
@@ -96,8 +96,10 @@ endif()
|
||||||
|
|
||||||
|
# ==================================================================================================
|
||||||
|
|
||||||
|
+include("${CMAKE_CURRENT_LIST_DIR}/vcpkg-compile-definitions.cmake")
|
||||||
|
function(_juce_add_interface_library target)
|
||||||
|
add_library(${target} INTERFACE)
|
||||||
|
+ vcpkg_juce_add_compile_definitions(${target})
|
||||||
|
target_sources(${target} INTERFACE ${ARGN})
|
||||||
|
endfunction()
|
||||||
|
|
@ -2,19 +2,25 @@
|
|||||||
"$schema": "https://raw.githubusercontent.com/microsoft/vcpkg-tool/main/docs/vcpkg.schema.json",
|
"$schema": "https://raw.githubusercontent.com/microsoft/vcpkg-tool/main/docs/vcpkg.schema.json",
|
||||||
"name": "juce",
|
"name": "juce",
|
||||||
"version": "8.0.4",
|
"version": "8.0.4",
|
||||||
|
"port-version": 1,
|
||||||
"description": "Open-source cross-platform C++ application framework for desktop and mobile applications, including VST, VST3, AU, AUv3, AAX and LV2 audio plug-ins and plug-in hosts",
|
"description": "Open-source cross-platform C++ application framework for desktop and mobile applications, including VST, VST3, AU, AUv3, AAX and LV2 audio plug-ins and plug-in hosts",
|
||||||
"homepage": "https://juce.com",
|
"homepage": "https://juce.com",
|
||||||
"license": null,
|
"license": null,
|
||||||
"supports": "!android & !uwp & !(windows & arm)",
|
"supports": "!uwp",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
{
|
{
|
||||||
"name": "alsa",
|
"name": "juce",
|
||||||
"platform": "linux"
|
"host": true,
|
||||||
|
"default-features": false,
|
||||||
|
"features": [
|
||||||
|
"juceaide"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "juce",
|
"name": "oboe",
|
||||||
"host": true
|
"platform": "android"
|
||||||
},
|
},
|
||||||
|
"opengl",
|
||||||
{
|
{
|
||||||
"name": "vcpkg-cmake",
|
"name": "vcpkg-cmake",
|
||||||
"host": true
|
"host": true
|
||||||
@ -25,55 +31,129 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"default-features": [
|
"default-features": [
|
||||||
"curl",
|
{
|
||||||
"freetype",
|
"name": "alsa",
|
||||||
"jack",
|
"platform": "linux"
|
||||||
"opengl",
|
},
|
||||||
"xcursor",
|
{
|
||||||
"xinerama",
|
"name": "curl",
|
||||||
"xrandr",
|
"platform": "freebsd | linux | openbsd"
|
||||||
"xrender"
|
},
|
||||||
|
{
|
||||||
|
"name": "fontconfig",
|
||||||
|
"platform": "freebsd | linux | openbsd"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "xcursor",
|
||||||
|
"platform": "linux"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "xinerama",
|
||||||
|
"platform": "linux"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "xrandr",
|
||||||
|
"platform": "linux"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "xrender",
|
||||||
|
"platform": "linux"
|
||||||
|
}
|
||||||
],
|
],
|
||||||
"features": {
|
"features": {
|
||||||
"curl": {
|
"alsa": {
|
||||||
"description": "Enable CURL support",
|
"description": "Enable ALSA support",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
"curl"
|
"alsa"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"curl": {
|
||||||
|
"description": "Use CURL for network support",
|
||||||
|
"supports": "freebsd | linux | openbsd",
|
||||||
|
"dependencies": [
|
||||||
|
{
|
||||||
|
"name": "curl",
|
||||||
|
"default-features": false
|
||||||
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"extras": {
|
"extras": {
|
||||||
"description": "Enable JUCE Extras such as Projucer, AudioPluginHost, BinaryBuilder."
|
"description": "Enable JUCE extras such as Projucer, AudioPluginHost, BinaryBuilder.",
|
||||||
|
"dependencies": [
|
||||||
|
{
|
||||||
|
"name": "juce",
|
||||||
|
"default-features": false,
|
||||||
|
"features": [
|
||||||
|
"freetype"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "juce",
|
||||||
|
"default-features": false,
|
||||||
|
"features": [
|
||||||
|
"alsa"
|
||||||
|
],
|
||||||
|
"platform": "linux"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "juce",
|
||||||
|
"default-features": false,
|
||||||
|
"features": [
|
||||||
|
"curl"
|
||||||
|
],
|
||||||
|
"platform": "freebsd | linux | openbsd"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"fontconfig": {
|
||||||
|
"description": "Enable Fontconfig support",
|
||||||
|
"dependencies": [
|
||||||
|
"fontconfig",
|
||||||
|
{
|
||||||
|
"name": "juce",
|
||||||
|
"default-features": false,
|
||||||
|
"features": [
|
||||||
|
"freetype"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"freetype": {
|
"freetype": {
|
||||||
"description": "Enable FreeType support",
|
"description": "Enable FreeType support",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
{
|
|
||||||
"name": "fontconfig",
|
|
||||||
"platform": "linux"
|
|
||||||
},
|
|
||||||
"freetype"
|
"freetype"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"jack": {
|
"jack": {
|
||||||
"description": "Enable JACK audio support",
|
"description": "Enable JACK audio support",
|
||||||
|
"dependencies": [
|
||||||
|
"jack2"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"juceaide": {
|
||||||
|
"description": "Build the juceaide tool",
|
||||||
|
"supports": "native",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
{
|
{
|
||||||
"name": "jack2",
|
"name": "juce",
|
||||||
"platform": "linux"
|
"default-features": false,
|
||||||
|
"features": [
|
||||||
|
"freetype"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"ladspa": {
|
"ladspa": {
|
||||||
"description": "Enable LADSPA plugin host support."
|
"description": "Enable LADSPA plugin host support."
|
||||||
},
|
},
|
||||||
"opengl": {
|
|
||||||
"description": "Enable OpenGL support",
|
|
||||||
"dependencies": [
|
|
||||||
"opengl"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"web-browser": {
|
"web-browser": {
|
||||||
"description": "Enable WebBrowser support"
|
"description": "Enable WebBrowser support",
|
||||||
|
"dependencies": [
|
||||||
|
{
|
||||||
|
"name": "webview2",
|
||||||
|
"platform": "windows"
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"xcursor": {
|
"xcursor": {
|
||||||
"description": "Enable XCursor support"
|
"description": "Enable XCursor support"
|
||||||
@ -81,28 +161,19 @@
|
|||||||
"xinerama": {
|
"xinerama": {
|
||||||
"description": "Enable Xinerama support",
|
"description": "Enable Xinerama support",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
{
|
"libxinerama"
|
||||||
"name": "libxinerama",
|
|
||||||
"platform": "linux"
|
|
||||||
}
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"xrandr": {
|
"xrandr": {
|
||||||
"description": "Enable XRandR support",
|
"description": "Enable XRandR support",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
{
|
"libxrandr"
|
||||||
"name": "libxrandr",
|
|
||||||
"platform": "linux"
|
|
||||||
}
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"xrender": {
|
"xrender": {
|
||||||
"description": "Enable XRender support",
|
"description": "Enable XRender support",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
{
|
"libxrender"
|
||||||
"name": "libxrender",
|
|
||||||
"platform": "linux"
|
|
||||||
}
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -496,6 +496,10 @@ jemalloc:x64-uwp=fail
|
|||||||
jinja2cpplight:arm-neon-android=fail
|
jinja2cpplight:arm-neon-android=fail
|
||||||
jinja2cpplight:arm64-android=fail
|
jinja2cpplight:arm64-android=fail
|
||||||
jinja2cpplight:x64-android=fail
|
jinja2cpplight:x64-android=fail
|
||||||
|
# needs android-29
|
||||||
|
juce:arm-neon-android=fail
|
||||||
|
juce:arm64-android=fail
|
||||||
|
juce:x64-android=fail
|
||||||
kfr:x64-android=fail
|
kfr:x64-android=fail
|
||||||
kfr:x64-uwp=fail
|
kfr:x64-uwp=fail
|
||||||
# needs android-24
|
# needs android-24
|
||||||
|
8
scripts/test_ports/vcpkg-ci-juce/portfile.cmake
Normal file
8
scripts/test_ports/vcpkg-ci-juce/portfile.cmake
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
|
||||||
|
|
||||||
|
vcpkg_cmake_configure(
|
||||||
|
SOURCE_PATH "${CURRENT_PORT_DIR}/project"
|
||||||
|
OPTIONS
|
||||||
|
"-DWITH_CURL=${VCPKG_TARGET_IS_LINUX}"
|
||||||
|
)
|
||||||
|
vcpkg_cmake_build()
|
25
scripts/test_ports/vcpkg-ci-juce/project/CMakeLists.txt
Normal file
25
scripts/test_ports/vcpkg-ci-juce/project/CMakeLists.txt
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
cmake_minimum_required(VERSION 3.29)
|
||||||
|
project(juce-test VERSION 1 LANGUAGES C CXX)
|
||||||
|
|
||||||
|
set(CMAKE_CXX_STANDARD 11)
|
||||||
|
|
||||||
|
option(WITH_CURL "Link curl")
|
||||||
|
|
||||||
|
find_package(JUCE CONFIG REQUIRED)
|
||||||
|
|
||||||
|
juce_add_console_app(core
|
||||||
|
PRODUCT_NAME "vcpkg-ci-juce"
|
||||||
|
NEEDS_CURL "${WITH_CURL}"
|
||||||
|
)
|
||||||
|
target_sources(core PRIVATE main.cpp)
|
||||||
|
target_link_libraries(core PRIVATE juce::juce_core)
|
||||||
|
|
||||||
|
juce_add_console_app(everything
|
||||||
|
PRODUCT_NAME "vcpkg-ci-juce"
|
||||||
|
NEEDS_CURL "${WITH_CURL}"
|
||||||
|
)
|
||||||
|
target_sources(everything PRIVATE main.cpp)
|
||||||
|
file(GLOB all_modules RELATIVE "${JUCE_MODULES_DIR}" "${JUCE_MODULES_DIR}/*")
|
||||||
|
list(TRANSFORM all_modules PREPEND juce::)
|
||||||
|
target_link_libraries(everything PRIVATE ${all_modules})
|
||||||
|
target_compile_definitions(everything PRIVATE JUCE_WEB_BROWSER=0)
|
7
scripts/test_ports/vcpkg-ci-juce/project/main.cpp
Normal file
7
scripts/test_ports/vcpkg-ci-juce/project/main.cpp
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
#include <juce_core/juce_core.h>
|
||||||
|
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
juce::Logger::writeToLog("vcpkg");
|
||||||
|
return 0;
|
||||||
|
}
|
28
scripts/test_ports/vcpkg-ci-juce/vcpkg.json
Normal file
28
scripts/test_ports/vcpkg-ci-juce/vcpkg.json
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
{
|
||||||
|
"name": "vcpkg-ci-juce",
|
||||||
|
"version-string": "ci",
|
||||||
|
"description": "Validates juce",
|
||||||
|
"dependencies": [
|
||||||
|
"juce",
|
||||||
|
{
|
||||||
|
"name": "vcpkg-cmake",
|
||||||
|
"host": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default-features": [
|
||||||
|
"extras"
|
||||||
|
],
|
||||||
|
"features": {
|
||||||
|
"extras": {
|
||||||
|
"description": "Install juce[extras]",
|
||||||
|
"dependencies": [
|
||||||
|
{
|
||||||
|
"name": "juce",
|
||||||
|
"features": [
|
||||||
|
"extras"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -3910,7 +3910,7 @@
|
|||||||
},
|
},
|
||||||
"juce": {
|
"juce": {
|
||||||
"baseline": "8.0.4",
|
"baseline": "8.0.4",
|
||||||
"port-version": 0
|
"port-version": 1
|
||||||
},
|
},
|
||||||
"jwt-cpp": {
|
"jwt-cpp": {
|
||||||
"baseline": "0.7.0",
|
"baseline": "0.7.0",
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
{
|
{
|
||||||
"versions": [
|
"versions": [
|
||||||
|
{
|
||||||
|
"git-tree": "e35480f559031fb4b98bfa887ebf88291183a6ea",
|
||||||
|
"version": "8.0.4",
|
||||||
|
"port-version": 1
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"git-tree": "4b39be2dc5a74f2fc8c2b5943eb0d8afd63f062e",
|
"git-tree": "4b39be2dc5a74f2fc8c2b5943eb0d8afd63f062e",
|
||||||
"version": "8.0.4",
|
"version": "8.0.4",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user