Browse Source

Add distrho-juce6 package

Signed-off-by: falkTX <falktx@falktx.com>
master
falkTX 2 years ago
parent
commit
3ab1d3f887
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
12 changed files with 215 additions and 0 deletions
  1. +6
    -0
      sources/.gitignore
  2. +5
    -0
      sources/libs/distrho-juce6/debian/changelog
  3. +36
    -0
      sources/libs/distrho-juce6/debian/control
  4. +3
    -0
      sources/libs/distrho-juce6/debian/distrho-juce6-dev.install
  5. +1
    -0
      sources/libs/distrho-juce6/debian/distrho-juce6-dev.links
  6. +13
    -0
      sources/libs/distrho-juce6/debian/patches/01_kxstudio-build.patch
  7. +12
    -0
      sources/libs/distrho-juce6/debian/patches/02_skip-alsa-dependency.patch
  8. +98
    -0
      sources/libs/distrho-juce6/debian/patches/03_versioned-juceaide.patch
  9. +17
    -0
      sources/libs/distrho-juce6/debian/patches/04_copy-to-destdir.patch
  10. +4
    -0
      sources/libs/distrho-juce6/debian/patches/series
  11. +19
    -0
      sources/libs/distrho-juce6/debian/rules
  12. +1
    -0
      sources/libs/distrho-juce6/debian/source/format

+ 6
- 0
sources/.gitignore View File

@@ -22,7 +22,9 @@ include-binaries
!/libs/*/debian/clean
!/libs/*/debian/control
!/libs/*/debian/install
!/libs/*/debian/links
!/libs/*/debian/*.install
!/libs/*/debian/*.links
!/libs/*/debian/rules

!/libs/kxstudio-build-scripts/*.mk
@@ -43,7 +45,9 @@ include-binaries
!/apps/*/debian/clean
!/apps/*/debian/control
!/apps/*/debian/install
!/apps/*/debian/links
!/apps/*/debian/*.install
!/apps/*/debian/*.links
!/apps/*/debian/rules

/plugins/*/*
@@ -58,7 +62,9 @@ include-binaries
!/plugins/*/debian/clean
!/plugins/*/debian/control
!/plugins/*/debian/install
!/plugins/*/debian/links
!/plugins/*/debian/*.install
!/plugins/*/debian/*.links
!/plugins/*/debian/rules

/kxstudio/kxstudio-repos/keyrings/

+ 5
- 0
sources/libs/distrho-juce6/debian/changelog View File

@@ -0,0 +1,5 @@
distrho-juce6 (6:6.0.7+git2022-06-22-2c1a1692-1kxstudio1) focal; urgency=medium

* Initial package

-- falkTX <falktx@falktx.com> Sun, 17 Apr 2022 15:05:47 +0100

+ 36
- 0
sources/libs/distrho-juce6/debian/control View File

@@ -0,0 +1,36 @@
Source: distrho-juce6
Section: devel
Priority: optional
Maintainer: falkTX <falktx@falktx.com>
Build-Depends: debhelper-compat (= 13),
kxstudio-build-scripts,
cmake,
libfreetype6-dev,
libgl1-mesa-dev | libglvnd-dev,
libx11-dev,
libxcomposite-dev,
libxcursor-dev,
libxrender-dev
Standards-Version: 4.5.0
Homepage: https://github.com/DISTRHO/JUCE/
Rules-Requires-Root: no

Package: distrho-juce6-bin
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: cross-platform C++ framework with DISTRHO/KXStudio changes
JUCE is an open-source cross-platform C++ application framework used for
rapidly developing high quality desktop and mobile applications,
including LV2, VST, AU (and AUv3), RTAS and AAX audio plug-ins.
.
This package provides the DISTRHO/KXStudio fork of JUCE, version 6.

Package: distrho-juce6-dev
Architecture: all
Depends: ${misc:Depends}
Description: cross-platform C++ framework with DISTRHO/KXStudio changes
JUCE is an open-source cross-platform C++ application framework used for
rapidly developing high quality desktop and mobile applications,
including LV2, VST, AU (and AUv3), RTAS and AAX audio plug-ins.
.
This package provides the DISTRHO/KXStudio fork of JUCE, version 6.

+ 3
- 0
sources/libs/distrho-juce6/debian/distrho-juce6-dev.install View File

@@ -0,0 +1,3 @@
/opt/kxstudio/include
/opt/kxstudio/lib
extras/Build/CMake/lv2_ttl_generator.c /opt/kxstudio/lib/cmake/JUCE6/

+ 1
- 0
sources/libs/distrho-juce6/debian/distrho-juce6-dev.links View File

@@ -0,0 +1 @@
/opt/kxstudio/lib/cmake/JUCE6/JUCEConfig.cmake /opt/kxstudio/lib/cmake/JUCE6/JUCE6Config.cmake

+ 13
- 0
sources/libs/distrho-juce6/debian/patches/01_kxstudio-build.patch View File

@@ -0,0 +1,13 @@
diff --git a/extras/Build/CMake/JUCEUtils.cmake b/extras/Build/CMake/JUCEUtils.cmake
index 3b4bf51..9a13948 100644
--- a/extras/Build/CMake/JUCEUtils.cmake
+++ b/extras/Build/CMake/JUCEUtils.cmake
@@ -141,7 +141,7 @@ function(_juce_find_linux_target_architecture result)
set("${result}" "${match_result}" PARENT_SCOPE)
endfunction()
-if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
+if(CMAKE_SYSTEM_NAME STREQUAL "LinuxIgnoredForKXStudio")
_juce_create_pkgconfig_target(JUCE_CURL_LINUX_DEPS libcurl)
_juce_create_pkgconfig_target(JUCE_BROWSER_LINUX_DEPS webkit2gtk-4.0 gtk+-x11-3.0)

+ 12
- 0
sources/libs/distrho-juce6/debian/patches/02_skip-alsa-dependency.patch View File

@@ -0,0 +1,12 @@
diff --git a/modules/juce_audio_devices/juce_audio_devices.h b/modules/juce_audio_devices/juce_audio_devices.h
index 0cc0a4496..f8297d4e7 100644
--- a/modules/juce_audio_devices/juce_audio_devices.h
+++ b/modules/juce_audio_devices/juce_audio_devices.h
@@ -41,7 +41,6 @@
dependencies: juce_audio_basics, juce_events
OSXFrameworks: CoreAudio CoreMIDI AudioToolbox
iOSFrameworks: CoreAudio CoreMIDI AudioToolbox AVFoundation
- linuxPackages: alsa
mingwLibs: winmm
END_JUCE_MODULE_DECLARATION

+ 98
- 0
sources/libs/distrho-juce6/debian/patches/03_versioned-juceaide.patch View File

@@ -0,0 +1,98 @@
diff --git a/extras/Build/CMake/JUCEConfig.cmake.in b/extras/Build/CMake/JUCEConfig.cmake.in
index 3e5c97de5..5609fa7bd 100644
--- a/extras/Build/CMake/JUCEConfig.cmake.in
+++ b/extras/Build/CMake/JUCEConfig.cmake.in
@@ -20,10 +20,12 @@
@PACKAGE_INIT@
-if(NOT TARGET juce::juceaide)
- add_executable(juce::juceaide IMPORTED)
- set_target_properties(juce::juceaide PROPERTIES
- IMPORTED_LOCATION "@PACKAGE_JUCEAIDE_PATH@")
+set(PACKAGE_PREFIX_DIR "@CMAKE_INSTALL_PREFIX@")
+
+if(NOT TARGET juceaide6)
+ add_executable(juceaide6 IMPORTED)
+ set_target_properties(juceaide6 PROPERTIES
+ IMPORTED_LOCATION "${PACKAGE_PREFIX_DIR}/bin/juceaide6")
endif()
check_required_components("@PROJECT_NAME@")
diff --git a/extras/Build/CMake/JUCEUtils.cmake b/extras/Build/CMake/JUCEUtils.cmake
index 1d8408ebc..8c6a253fe 100644
--- a/extras/Build/CMake/JUCEUtils.cmake
+++ b/extras/Build/CMake/JUCEUtils.cmake
@@ -419,7 +419,7 @@ function(_juce_add_au_resource_fork shared_code_target au_target)
# In the end, it's simplest to generate a special single-purpose appconfig just for the
# resource compiler.
add_custom_command(OUTPUT "${secret_au_plugindefines}"
- COMMAND juce::juceaide auplugindefines "${defs_file}" "${secret_au_plugindefines}"
+ COMMAND juceaide6 auplugindefines "${defs_file}" "${secret_au_plugindefines}"
DEPENDS "${defs_file}"
VERBATIM)
@@ -861,7 +861,7 @@ function(juce_add_binary_data target)
list(APPEND binary_file_names "${juce_binary_data_folder}/${JUCE_ARG_HEADER_NAME}")
add_custom_command(OUTPUT ${binary_file_names}
- COMMAND juce::juceaide binarydata "${JUCE_ARG_NAMESPACE}" "${JUCE_ARG_HEADER_NAME}"
+ COMMAND juceaide6 binarydata "${JUCE_ARG_NAMESPACE}" "${JUCE_ARG_HEADER_NAME}"
${juce_binary_data_folder} ${JUCE_ARG_SOURCES}
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
DEPENDS ${JUCE_ARG_SOURCES}
@@ -958,7 +958,7 @@ function(juce_generate_juce_header target)
set(extra_args)
add_custom_command(OUTPUT "${juce_header}"
- COMMAND juce::juceaide header "${defs_file}" "${juce_header}" ${extra_args}
+ COMMAND juceaide6 header "${defs_file}" "${juce_header}" ${extra_args}
DEPENDS "${defs_file}"
VERBATIM)
endfunction()
@@ -966,20 +966,20 @@ endfunction()
# ==================================================================================================
function(_juce_execute_juceaide)
- if(NOT TARGET juce::juceaide)
- message(FATAL_ERROR "The juceaide target does not exist")
+ if(NOT TARGET juceaide6)
+ message(FATAL_ERROR "The juceaide6 target does not exist")
endif()
- get_target_property(juceaide_location juce::juceaide IMPORTED_LOCATION)
+ get_target_property(juceaide6_location juceaide6 IMPORTED_LOCATION)
- if(NOT EXISTS "${juceaide_location}")
- message(FATAL_ERROR "juceaide was imported, but it doesn't exist!")
+ if(NOT EXISTS "${juceaide6_location}")
+ message(FATAL_ERROR "juceaide6 was imported, but it doesn't exist!")
endif()
- execute_process(COMMAND "${juceaide_location}" ${ARGN} RESULT_VARIABLE result_variable)
+ execute_process(COMMAND "${juceaide6_location}" ${ARGN} RESULT_VARIABLE result_variable)
if(result_variable)
- message(FATAL_ERROR "Running juceaide failed")
+ message(FATAL_ERROR "Running juceaide6 failed")
endif()
endfunction()
@@ -1100,7 +1100,7 @@ function(_juce_configure_bundle source_target dest_target)
MACOSX_BUNDLE_INFO_PLIST "${this_output_plist}")
add_custom_command(OUTPUT "${this_output_pkginfo}"
- COMMAND juce::juceaide pkginfo "${juce_kind_string}" "${this_output_pkginfo}"
+ COMMAND juceaide6 pkginfo "${juce_kind_string}" "${this_output_pkginfo}"
VERBATIM)
set(output_folder "$<TARGET_BUNDLE_CONTENT_DIR:${dest_target}>")
@@ -1192,7 +1192,7 @@ function(_juce_add_resources_rc source_target dest_target)
set(resource_rc_file "${juce_library_code}/resources.rc")
add_custom_command(OUTPUT "${resource_rc_file}"
- COMMAND juce::juceaide rcfile "${input_info_file}" "${resource_rc_file}"
+ COMMAND juceaide6 rcfile "${input_info_file}" "${resource_rc_file}"
${dependency}
VERBATIM)

+ 17
- 0
sources/libs/distrho-juce6/debian/patches/04_copy-to-destdir.patch View File

@@ -0,0 +1,17 @@
diff --git a/extras/Build/CMake/JUCEUtils.cmake b/extras/Build/CMake/JUCEUtils.cmake
index 1d8408ebc..060ed45e3 100644
--- a/extras/Build/CMake/JUCEUtils.cmake
+++ b/extras/Build/CMake/JUCEUtils.cmake
@@ -182,9 +182,9 @@ function(_juce_set_default_properties)
set_property(GLOBAL PROPERTY JUCE_VST3_COPY_DIR "${prefix}/VST3")
set_property(GLOBAL PROPERTY JUCE_AAX_COPY_DIR "${prefix}/Avid/Audio/Plug-Ins")
elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
- set_property(GLOBAL PROPERTY JUCE_VST_COPY_DIR "$ENV{HOME}/.vst")
- set_property(GLOBAL PROPERTY JUCE_VST3_COPY_DIR "$ENV{HOME}/.vst3")
- set_property(GLOBAL PROPERTY JUCE_LV2_COPY_DIR "$ENV{HOME}/.lv2")
+ set_property(GLOBAL PROPERTY JUCE_VST_COPY_DIR "$ENV{DESTDIR}/usr/lib/vst")
+ set_property(GLOBAL PROPERTY JUCE_VST3_COPY_DIR "$ENV{DESTDIR}/usr/lib/vst3")
+ set_property(GLOBAL PROPERTY JUCE_LV2_COPY_DIR "$ENV{DESTDIR}/usr/lib/lv2")
endif()
endfunction()

+ 4
- 0
sources/libs/distrho-juce6/debian/patches/series View File

@@ -0,0 +1,4 @@
01_kxstudio-build.patch
02_skip-alsa-dependency.patch
03_versioned-juceaide.patch
04_copy-to-destdir.patch

+ 19
- 0
sources/libs/distrho-juce6/debian/rules View File

@@ -0,0 +1,19 @@
#!/usr/bin/make -f

include /usr/share/dpkg/kxstudio.mk

override_dh_auto_configure:
dh_auto_configure -- \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/opt/kxstudio \
-DJUCE_BUILD_HELPER_TOOLS=ON \
-DJUCE_INSTALL_DESTINATION=lib/cmake/JUCE6

override_dh_auto_install:
dh_auto_install
install -d $(CURDIR)/debian/distrho-juce6-bin/opt/kxstudio/bin
install -m 755 $(CURDIR)/obj-*/extras/Build/juceaide/juceaide_artefacts/Release/juceaide \
$(CURDIR)/debian/distrho-juce6-bin/opt/kxstudio/bin/juceaide6

%:
dh $@ -Scmake

+ 1
- 0
sources/libs/distrho-juce6/debian/source/format View File

@@ -0,0 +1 @@
3.0 (quilt)

Loading…
Cancel
Save