mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-10 23:44:24 +00:00
Typeface: Add support for querying system fallbacks
This commit is contained in:
parent
3ae474d12c
commit
a6a336acb8
61 changed files with 467 additions and 60 deletions
|
|
@ -1824,6 +1824,7 @@ add_library( ${BINARY_NAME}
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
||||||
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceFileCache.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
||||||
|
|
@ -4286,6 +4287,7 @@ set_source_files_properties(
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
||||||
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceFileCache.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
apply plugin: 'com.android.application'
|
apply plugin: 'com.android.application'
|
||||||
|
|
||||||
def ndkVersionString = "25.2.9519653"
|
def ndkVersionString = "26.2.11394342"
|
||||||
|
|
||||||
android {
|
android {
|
||||||
compileSdkVersion 33
|
compileSdkVersion 34
|
||||||
ndkVersion ndkVersionString
|
ndkVersion ndkVersionString
|
||||||
namespace "com.rmsl.jucedemorunner"
|
namespace "com.rmsl.jucedemorunner"
|
||||||
externalNativeBuild {
|
externalNativeBuild {
|
||||||
|
|
@ -25,10 +25,10 @@ android {
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "com.rmsl.jucedemorunner"
|
applicationId "com.rmsl.jucedemorunner"
|
||||||
minSdkVersion 23
|
minSdkVersion 23
|
||||||
targetSdkVersion 33
|
targetSdkVersion 34
|
||||||
externalNativeBuild {
|
externalNativeBuild {
|
||||||
cmake {
|
cmake {
|
||||||
arguments "-DANDROID_TOOLCHAIN=clang", "-DANDROID_PLATFORM=android-23", "-DANDROID_STL=c++_static", "-DANDROID_CPP_FEATURES=exceptions rtti", "-DANDROID_ARM_MODE=arm", "-DANDROID_ARM_NEON=TRUE", "-DCMAKE_CXX_STANDARD=17", "-DCMAKE_CXX_EXTENSIONS=OFF"
|
arguments "-DANDROID_TOOLCHAIN=clang", "-DANDROID_PLATFORM=android-23", "-DANDROID_STL=c++_static", "-DANDROID_CPP_FEATURES=exceptions rtti", "-DANDROID_ARM_MODE=arm", "-DANDROID_ARM_NEON=TRUE", "-DANDROID_WEAK_API_DEFS=ON", "-DCMAKE_CXX_STANDARD=17", "-DCMAKE_CXX_EXTENSIONS=OFF"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ buildscript {
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath 'com.android.tools.build:gradle:7.3.0'
|
classpath 'com.android.tools.build:gradle:7.4.2'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-all.zip
|
||||||
|
|
@ -39,13 +39,13 @@ ifeq ($(CONFIG),Debug)
|
||||||
TARGET_ARCH :=
|
TARGET_ARCH :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DDEBUG=1" "-D_DEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_analytics=1" "-DJUCE_MODULE_AVAILABLE_juce_animation=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_box2d=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_dsp=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_MODULE_AVAILABLE_juce_osc=1" "-DJUCE_MODULE_AVAILABLE_juce_product_unlocking=1" "-DJUCE_MODULE_AVAILABLE_juce_video=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_USE_MP3AUDIOFORMAT=1" "-DJUCE_PLUGINHOST_VST3=1" "-DJUCE_PLUGINHOST_LV2=1" "-DJUCE_ALLOW_STATIC_NULL_VARIABLES=0" "-DJUCE_STRICT_REFCOUNTEDPOINTER=1" "-DJUCE_USE_CAMERA=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCE_DEMO_RUNNER=1" "-DJUCE_UNIT_TESTS=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=8.0.0" "-DJUCE_APP_VERSION_HEX=0x80000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 gl libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sratom -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/serd -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lv2 -I../../../../modules/juce_audio_processors/format_types/LV2_SDK -I../../../../modules/juce_audio_processors/format_types/VST3_SDK -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DDEBUG=1" "-D_DEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_analytics=1" "-DJUCE_MODULE_AVAILABLE_juce_animation=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_box2d=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_dsp=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_MODULE_AVAILABLE_juce_osc=1" "-DJUCE_MODULE_AVAILABLE_juce_product_unlocking=1" "-DJUCE_MODULE_AVAILABLE_juce_video=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_USE_MP3AUDIOFORMAT=1" "-DJUCE_PLUGINHOST_VST3=1" "-DJUCE_PLUGINHOST_LV2=1" "-DJUCE_ALLOW_STATIC_NULL_VARIABLES=0" "-DJUCE_STRICT_REFCOUNTEDPOINTER=1" "-DJUCE_USE_CAMERA=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCE_DEMO_RUNNER=1" "-DJUCE_UNIT_TESTS=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=8.0.0" "-DJUCE_APP_VERSION_HEX=0x80000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 fontconfig gl libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sratom -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/serd -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lv2 -I../../../../modules/juce_audio_processors/format_types/LV2_SDK -I../../../../modules/juce_audio_processors/format_types/VST3_SDK -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
||||||
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
||||||
JUCE_TARGET_APP := DemoRunner
|
JUCE_TARGET_APP := DemoRunner
|
||||||
|
|
||||||
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 $(CFLAGS)
|
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 $(CFLAGS)
|
||||||
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
||||||
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 fontconfig gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
||||||
|
|
||||||
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
||||||
endif
|
endif
|
||||||
|
|
@ -60,13 +60,13 @@ ifeq ($(CONFIG),Release)
|
||||||
TARGET_ARCH :=
|
TARGET_ARCH :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DNDEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_analytics=1" "-DJUCE_MODULE_AVAILABLE_juce_animation=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_box2d=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_dsp=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_MODULE_AVAILABLE_juce_osc=1" "-DJUCE_MODULE_AVAILABLE_juce_product_unlocking=1" "-DJUCE_MODULE_AVAILABLE_juce_video=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_USE_MP3AUDIOFORMAT=1" "-DJUCE_PLUGINHOST_VST3=1" "-DJUCE_PLUGINHOST_LV2=1" "-DJUCE_ALLOW_STATIC_NULL_VARIABLES=0" "-DJUCE_STRICT_REFCOUNTEDPOINTER=1" "-DJUCE_USE_CAMERA=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCE_DEMO_RUNNER=1" "-DJUCE_UNIT_TESTS=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=8.0.0" "-DJUCE_APP_VERSION_HEX=0x80000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 gl libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sratom -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/serd -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lv2 -I../../../../modules/juce_audio_processors/format_types/LV2_SDK -I../../../../modules/juce_audio_processors/format_types/VST3_SDK -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DNDEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_analytics=1" "-DJUCE_MODULE_AVAILABLE_juce_animation=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_box2d=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_dsp=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_MODULE_AVAILABLE_juce_osc=1" "-DJUCE_MODULE_AVAILABLE_juce_product_unlocking=1" "-DJUCE_MODULE_AVAILABLE_juce_video=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_USE_MP3AUDIOFORMAT=1" "-DJUCE_PLUGINHOST_VST3=1" "-DJUCE_PLUGINHOST_LV2=1" "-DJUCE_ALLOW_STATIC_NULL_VARIABLES=0" "-DJUCE_STRICT_REFCOUNTEDPOINTER=1" "-DJUCE_USE_CAMERA=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCE_DEMO_RUNNER=1" "-DJUCE_UNIT_TESTS=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=8.0.0" "-DJUCE_APP_VERSION_HEX=0x80000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 fontconfig gl libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sratom -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/serd -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lv2 -I../../../../modules/juce_audio_processors/format_types/LV2_SDK -I../../../../modules/juce_audio_processors/format_types/VST3_SDK -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
||||||
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
||||||
JUCE_TARGET_APP := DemoRunner
|
JUCE_TARGET_APP := DemoRunner
|
||||||
|
|
||||||
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -O3 $(CFLAGS)
|
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -O3 $(CFLAGS)
|
||||||
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
||||||
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 fontconfig gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
||||||
|
|
||||||
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
||||||
endif
|
endif
|
||||||
|
|
@ -108,7 +108,7 @@ all : $(JUCE_OUTDIR)/$(JUCE_TARGET_APP)
|
||||||
|
|
||||||
$(JUCE_OUTDIR)/$(JUCE_TARGET_APP) : $(OBJECTS_APP) $(JUCE_OBJDIR)/execinfo.cmd $(RESOURCES)
|
$(JUCE_OUTDIR)/$(JUCE_TARGET_APP) : $(OBJECTS_APP) $(JUCE_OBJDIR)/execinfo.cmd $(RESOURCES)
|
||||||
@command -v $(PKG_CONFIG) >/dev/null 2>&1 || { echo >&2 "pkg-config not installed. Please, install it."; exit 1; }
|
@command -v $(PKG_CONFIG) >/dev/null 2>&1 || { echo >&2 "pkg-config not installed. Please, install it."; exit 1; }
|
||||||
@$(PKG_CONFIG) --print-errors alsa freetype2 gl libcurl
|
@$(PKG_CONFIG) --print-errors alsa freetype2 fontconfig gl libcurl
|
||||||
@echo Linking "DemoRunner - App"
|
@echo Linking "DemoRunner - App"
|
||||||
-$(V_AT)mkdir -p $(JUCE_BINDIR)
|
-$(V_AT)mkdir -p $(JUCE_BINDIR)
|
||||||
-$(V_AT)mkdir -p $(JUCE_LIBDIR)
|
-$(V_AT)mkdir -p $(JUCE_LIBDIR)
|
||||||
|
|
|
||||||
|
|
@ -4134,6 +4134,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -7140,6 +7140,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -4134,6 +4134,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -7140,6 +7140,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -4134,6 +4134,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -7140,6 +7140,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -1586,6 +1586,7 @@ add_library( ${BINARY_NAME}
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
||||||
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceFileCache.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
||||||
|
|
@ -3730,6 +3731,7 @@ set_source_files_properties(
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
||||||
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceFileCache.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
apply plugin: 'com.android.application'
|
apply plugin: 'com.android.application'
|
||||||
|
|
||||||
def ndkVersionString = "25.2.9519653"
|
def ndkVersionString = "26.2.11394342"
|
||||||
|
|
||||||
android {
|
android {
|
||||||
compileSdkVersion 33
|
compileSdkVersion 34
|
||||||
ndkVersion ndkVersionString
|
ndkVersion ndkVersionString
|
||||||
namespace "com.juce.audioperformancetest"
|
namespace "com.juce.audioperformancetest"
|
||||||
externalNativeBuild {
|
externalNativeBuild {
|
||||||
|
|
@ -25,10 +25,10 @@ android {
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "com.juce.audioperformancetest"
|
applicationId "com.juce.audioperformancetest"
|
||||||
minSdkVersion 23
|
minSdkVersion 23
|
||||||
targetSdkVersion 33
|
targetSdkVersion 34
|
||||||
externalNativeBuild {
|
externalNativeBuild {
|
||||||
cmake {
|
cmake {
|
||||||
arguments "-DANDROID_TOOLCHAIN=clang", "-DANDROID_PLATFORM=android-23", "-DANDROID_STL=c++_static", "-DANDROID_CPP_FEATURES=exceptions rtti", "-DANDROID_ARM_MODE=arm", "-DANDROID_ARM_NEON=TRUE", "-DCMAKE_CXX_STANDARD=17", "-DCMAKE_CXX_EXTENSIONS=OFF"
|
arguments "-DANDROID_TOOLCHAIN=clang", "-DANDROID_PLATFORM=android-23", "-DANDROID_STL=c++_static", "-DANDROID_CPP_FEATURES=exceptions rtti", "-DANDROID_ARM_MODE=arm", "-DANDROID_ARM_NEON=TRUE", "-DANDROID_WEAK_API_DEFS=ON", "-DCMAKE_CXX_STANDARD=17", "-DCMAKE_CXX_EXTENSIONS=OFF"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ buildscript {
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath 'com.android.tools.build:gradle:7.3.0'
|
classpath 'com.android.tools.build:gradle:7.4.2'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-all.zip
|
||||||
|
|
@ -39,13 +39,13 @@ ifeq ($(CONFIG),Debug)
|
||||||
TARGET_ARCH :=
|
TARGET_ARCH :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DDEBUG=1" "-D_DEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DDEBUG=1" "-D_DEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 fontconfig libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
||||||
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
||||||
JUCE_TARGET_APP := AudioPerformanceTest
|
JUCE_TARGET_APP := AudioPerformanceTest
|
||||||
|
|
||||||
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 $(CFLAGS)
|
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 $(CFLAGS)
|
||||||
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
||||||
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 fontconfig libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
||||||
|
|
||||||
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
||||||
endif
|
endif
|
||||||
|
|
@ -60,13 +60,13 @@ ifeq ($(CONFIG),Release)
|
||||||
TARGET_ARCH :=
|
TARGET_ARCH :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DNDEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DNDEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 fontconfig libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
||||||
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
||||||
JUCE_TARGET_APP := AudioPerformanceTest
|
JUCE_TARGET_APP := AudioPerformanceTest
|
||||||
|
|
||||||
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -O3 $(CFLAGS)
|
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -O3 $(CFLAGS)
|
||||||
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
||||||
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 fontconfig libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
||||||
|
|
||||||
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
||||||
endif
|
endif
|
||||||
|
|
@ -94,7 +94,7 @@ all : $(JUCE_OUTDIR)/$(JUCE_TARGET_APP)
|
||||||
|
|
||||||
$(JUCE_OUTDIR)/$(JUCE_TARGET_APP) : $(OBJECTS_APP) $(JUCE_OBJDIR)/execinfo.cmd $(RESOURCES)
|
$(JUCE_OUTDIR)/$(JUCE_TARGET_APP) : $(OBJECTS_APP) $(JUCE_OBJDIR)/execinfo.cmd $(RESOURCES)
|
||||||
@command -v $(PKG_CONFIG) >/dev/null 2>&1 || { echo >&2 "pkg-config not installed. Please, install it."; exit 1; }
|
@command -v $(PKG_CONFIG) >/dev/null 2>&1 || { echo >&2 "pkg-config not installed. Please, install it."; exit 1; }
|
||||||
@$(PKG_CONFIG) --print-errors alsa freetype2 libcurl
|
@$(PKG_CONFIG) --print-errors alsa freetype2 fontconfig libcurl
|
||||||
@echo Linking "AudioPerformanceTest - App"
|
@echo Linking "AudioPerformanceTest - App"
|
||||||
-$(V_AT)mkdir -p $(JUCE_BINDIR)
|
-$(V_AT)mkdir -p $(JUCE_BINDIR)
|
||||||
-$(V_AT)mkdir -p $(JUCE_LIBDIR)
|
-$(V_AT)mkdir -p $(JUCE_LIBDIR)
|
||||||
|
|
|
||||||
|
|
@ -3605,6 +3605,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -6195,6 +6195,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -1716,6 +1716,7 @@ add_library( ${BINARY_NAME}
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
||||||
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceFileCache.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
||||||
|
|
@ -4013,6 +4014,7 @@ set_source_files_properties(
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
||||||
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceFileCache.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
apply plugin: 'com.android.application'
|
apply plugin: 'com.android.application'
|
||||||
|
|
||||||
def ndkVersionString = "25.2.9519653"
|
def ndkVersionString = "26.2.11394342"
|
||||||
|
|
||||||
android {
|
android {
|
||||||
compileSdkVersion 33
|
compileSdkVersion 34
|
||||||
ndkVersion ndkVersionString
|
ndkVersion ndkVersionString
|
||||||
namespace "com.juce.audiopluginhost"
|
namespace "com.juce.audiopluginhost"
|
||||||
externalNativeBuild {
|
externalNativeBuild {
|
||||||
|
|
@ -25,10 +25,10 @@ android {
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "com.juce.audiopluginhost"
|
applicationId "com.juce.audiopluginhost"
|
||||||
minSdkVersion 23
|
minSdkVersion 23
|
||||||
targetSdkVersion 33
|
targetSdkVersion 34
|
||||||
externalNativeBuild {
|
externalNativeBuild {
|
||||||
cmake {
|
cmake {
|
||||||
arguments "-DANDROID_TOOLCHAIN=clang", "-DANDROID_PLATFORM=android-23", "-DANDROID_STL=c++_static", "-DANDROID_CPP_FEATURES=exceptions rtti", "-DANDROID_ARM_MODE=arm", "-DANDROID_ARM_NEON=TRUE", "-DCMAKE_CXX_STANDARD=17", "-DCMAKE_CXX_EXTENSIONS=OFF"
|
arguments "-DANDROID_TOOLCHAIN=clang", "-DANDROID_PLATFORM=android-23", "-DANDROID_STL=c++_static", "-DANDROID_CPP_FEATURES=exceptions rtti", "-DANDROID_ARM_MODE=arm", "-DANDROID_ARM_NEON=TRUE", "-DANDROID_WEAK_API_DEFS=ON", "-DCMAKE_CXX_STANDARD=17", "-DCMAKE_CXX_EXTENSIONS=OFF"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ buildscript {
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath 'com.android.tools.build:gradle:7.3.0'
|
classpath 'com.android.tools.build:gradle:7.4.2'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-all.zip
|
||||||
|
|
@ -39,13 +39,13 @@ ifeq ($(CONFIG),Debug)
|
||||||
TARGET_ARCH :=
|
TARGET_ARCH :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DDEBUG=1" "-D_DEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_dsp=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_WASAPI=1" "-DJUCE_DIRECTSOUND=1" "-DJUCE_ALSA=1" "-DJUCE_USE_FLAC=0" "-DJUCE_USE_OGGVORBIS=1" "-DJUCE_PLUGINHOST_VST3=1" "-DJUCE_PLUGINHOST_AU=1" "-DJUCE_PLUGINHOST_LADSPA=1" "-DJUCE_PLUGINHOST_LV2=1" "-DJUCE_USE_CDREADER=0" "-DJUCE_USE_CDBURNER=0" "-DJUCE_WEB_BROWSER=0" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 gl libcurl) -pthread -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sratom -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/serd -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lv2 -I../../../../modules/juce_audio_processors/format_types/LV2_SDK -I../../../../modules/juce_audio_processors/format_types/VST3_SDK -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DDEBUG=1" "-D_DEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_dsp=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_WASAPI=1" "-DJUCE_DIRECTSOUND=1" "-DJUCE_ALSA=1" "-DJUCE_USE_FLAC=0" "-DJUCE_USE_OGGVORBIS=1" "-DJUCE_PLUGINHOST_VST3=1" "-DJUCE_PLUGINHOST_AU=1" "-DJUCE_PLUGINHOST_LADSPA=1" "-DJUCE_PLUGINHOST_LV2=1" "-DJUCE_USE_CDREADER=0" "-DJUCE_USE_CDBURNER=0" "-DJUCE_WEB_BROWSER=0" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 fontconfig gl libcurl) -pthread -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sratom -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/serd -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lv2 -I../../../../modules/juce_audio_processors/format_types/LV2_SDK -I../../../../modules/juce_audio_processors/format_types/VST3_SDK -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
||||||
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
||||||
JUCE_TARGET_APP := AudioPluginHost
|
JUCE_TARGET_APP := AudioPluginHost
|
||||||
|
|
||||||
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 $(CFLAGS)
|
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 $(CFLAGS)
|
||||||
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
||||||
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 fontconfig gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
||||||
|
|
||||||
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
||||||
endif
|
endif
|
||||||
|
|
@ -60,13 +60,13 @@ ifeq ($(CONFIG),Release)
|
||||||
TARGET_ARCH :=
|
TARGET_ARCH :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DNDEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_dsp=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_WASAPI=1" "-DJUCE_DIRECTSOUND=1" "-DJUCE_ALSA=1" "-DJUCE_USE_FLAC=0" "-DJUCE_USE_OGGVORBIS=1" "-DJUCE_PLUGINHOST_VST3=1" "-DJUCE_PLUGINHOST_AU=1" "-DJUCE_PLUGINHOST_LADSPA=1" "-DJUCE_PLUGINHOST_LV2=1" "-DJUCE_USE_CDREADER=0" "-DJUCE_USE_CDBURNER=0" "-DJUCE_WEB_BROWSER=0" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 gl libcurl) -pthread -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sratom -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/serd -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lv2 -I../../../../modules/juce_audio_processors/format_types/LV2_SDK -I../../../../modules/juce_audio_processors/format_types/VST3_SDK -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DNDEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_dsp=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_WASAPI=1" "-DJUCE_DIRECTSOUND=1" "-DJUCE_ALSA=1" "-DJUCE_USE_FLAC=0" "-DJUCE_USE_OGGVORBIS=1" "-DJUCE_PLUGINHOST_VST3=1" "-DJUCE_PLUGINHOST_AU=1" "-DJUCE_PLUGINHOST_LADSPA=1" "-DJUCE_PLUGINHOST_LV2=1" "-DJUCE_USE_CDREADER=0" "-DJUCE_USE_CDBURNER=0" "-DJUCE_WEB_BROWSER=0" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 fontconfig gl libcurl) -pthread -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sratom -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/serd -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lv2 -I../../../../modules/juce_audio_processors/format_types/LV2_SDK -I../../../../modules/juce_audio_processors/format_types/VST3_SDK -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
||||||
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
||||||
JUCE_TARGET_APP := AudioPluginHost
|
JUCE_TARGET_APP := AudioPluginHost
|
||||||
|
|
||||||
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -Os $(CFLAGS)
|
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -Os $(CFLAGS)
|
||||||
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
||||||
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 fontconfig gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
||||||
|
|
||||||
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
||||||
endif
|
endif
|
||||||
|
|
@ -104,7 +104,7 @@ all : $(JUCE_OUTDIR)/$(JUCE_TARGET_APP)
|
||||||
|
|
||||||
$(JUCE_OUTDIR)/$(JUCE_TARGET_APP) : $(OBJECTS_APP) $(JUCE_OBJDIR)/execinfo.cmd $(RESOURCES)
|
$(JUCE_OUTDIR)/$(JUCE_TARGET_APP) : $(OBJECTS_APP) $(JUCE_OBJDIR)/execinfo.cmd $(RESOURCES)
|
||||||
@command -v $(PKG_CONFIG) >/dev/null 2>&1 || { echo >&2 "pkg-config not installed. Please, install it."; exit 1; }
|
@command -v $(PKG_CONFIG) >/dev/null 2>&1 || { echo >&2 "pkg-config not installed. Please, install it."; exit 1; }
|
||||||
@$(PKG_CONFIG) --print-errors alsa freetype2 gl libcurl
|
@$(PKG_CONFIG) --print-errors alsa freetype2 fontconfig gl libcurl
|
||||||
@echo Linking "AudioPluginHost - App"
|
@echo Linking "AudioPluginHost - App"
|
||||||
-$(V_AT)mkdir -p $(JUCE_BINDIR)
|
-$(V_AT)mkdir -p $(JUCE_BINDIR)
|
||||||
-$(V_AT)mkdir -p $(JUCE_LIBDIR)
|
-$(V_AT)mkdir -p $(JUCE_LIBDIR)
|
||||||
|
|
|
||||||
|
|
@ -3838,6 +3838,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -6630,6 +6630,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -3838,6 +3838,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -6630,6 +6630,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -3838,6 +3838,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -6630,6 +6630,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ add_subdirectory (${OBOE_DIR} ./oboe)
|
||||||
add_library("cpufeatures" STATIC "${ANDROID_NDK}/sources/android/cpufeatures/cpu-features.c")
|
add_library("cpufeatures" STATIC "${ANDROID_NDK}/sources/android/cpufeatures/cpu-features.c")
|
||||||
set_source_files_properties("${ANDROID_NDK}/sources/android/cpufeatures/cpu-features.c" PROPERTIES COMPILE_FLAGS "-Wno-sign-conversion -Wno-gnu-statement-expression")
|
set_source_files_properties("${ANDROID_NDK}/sources/android/cpufeatures/cpu-features.c" PROPERTIES COMPILE_FLAGS "-Wno-sign-conversion -Wno-gnu-statement-expression")
|
||||||
|
|
||||||
add_definitions([[-DJUCE_ANDROID=1]] [[-DJUCE_ANDROID_API_VERSION=16]] [[-DJUCE_PUSH_NOTIFICATIONS=1]] [[-DJUCE_PUSH_NOTIFICATIONS_ACTIVITY="com/rmsl/juce/JuceActivity"]] [[-DJUCER_ANDROIDSTUDIO_7F0E4A25=1]] [[-DJUCE_APP_VERSION=1.0.0]] [[-DJUCE_APP_VERSION_HEX=0x10000]])
|
add_definitions([[-DJUCE_ANDROID=1]] [[-DJUCE_ANDROID_API_VERSION=21]] [[-DJUCE_PUSH_NOTIFICATIONS=1]] [[-DJUCE_PUSH_NOTIFICATIONS_ACTIVITY="com/rmsl/juce/JuceActivity"]] [[-DJUCE_ANDROID_GL_ES_VERSION_3_0=1]] [[-DJUCER_ANDROIDSTUDIO_7F0E4A25=1]] [[-DJUCE_APP_VERSION=1.0.0]] [[-DJUCE_APP_VERSION_HEX=0x10000]])
|
||||||
|
|
||||||
include_directories( AFTER
|
include_directories( AFTER
|
||||||
"../../../JuceLibraryCode"
|
"../../../JuceLibraryCode"
|
||||||
|
|
@ -1605,6 +1605,7 @@ add_library( ${BINARY_NAME}
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
||||||
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceFileCache.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
||||||
|
|
@ -3829,6 +3830,7 @@ set_source_files_properties(
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
"../../../../../modules/juce_graphics/fonts/juce_TextLayout.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
"../../../../../modules/juce_graphics/fonts/juce_Typeface.h"
|
||||||
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceFileCache.h"
|
||||||
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
"../../../../../modules/juce_graphics/fonts/juce_TypefaceTestData.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"
|
||||||
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
"../../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"
|
||||||
|
|
@ -4476,14 +4478,14 @@ endif()
|
||||||
|
|
||||||
find_library(log "log")
|
find_library(log "log")
|
||||||
find_library(android "android")
|
find_library(android "android")
|
||||||
find_library(glesv2 "GLESv2")
|
find_library(glesv3 "GLESv3")
|
||||||
find_library(egl "EGL")
|
find_library(egl "EGL")
|
||||||
|
|
||||||
target_link_libraries( ${BINARY_NAME}
|
target_link_libraries( ${BINARY_NAME}
|
||||||
|
|
||||||
${log}
|
${log}
|
||||||
${android}
|
${android}
|
||||||
${glesv2}
|
${glesv3}
|
||||||
${egl}
|
${egl}
|
||||||
"cpufeatures"
|
"cpufeatures"
|
||||||
"oboe"
|
"oboe"
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
apply plugin: 'com.android.application'
|
apply plugin: 'com.android.application'
|
||||||
|
|
||||||
def ndkVersionString = "25.2.9519653"
|
def ndkVersionString = "26.2.11394342"
|
||||||
|
|
||||||
android {
|
android {
|
||||||
compileSdkVersion 33
|
compileSdkVersion 34
|
||||||
ndkVersion ndkVersionString
|
ndkVersion ndkVersionString
|
||||||
namespace "com.juce.networkgraphicsdemo"
|
namespace "com.juce.networkgraphicsdemo"
|
||||||
externalNativeBuild {
|
externalNativeBuild {
|
||||||
|
|
@ -24,11 +24,11 @@ android {
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "com.juce.networkgraphicsdemo"
|
applicationId "com.juce.networkgraphicsdemo"
|
||||||
minSdkVersion 16
|
minSdkVersion 21
|
||||||
targetSdkVersion 33
|
targetSdkVersion 34
|
||||||
externalNativeBuild {
|
externalNativeBuild {
|
||||||
cmake {
|
cmake {
|
||||||
arguments "-DANDROID_TOOLCHAIN=clang", "-DANDROID_PLATFORM=android-16", "-DANDROID_STL=c++_static", "-DANDROID_CPP_FEATURES=exceptions rtti", "-DANDROID_ARM_MODE=arm", "-DANDROID_ARM_NEON=TRUE", "-DCMAKE_CXX_STANDARD=17", "-DCMAKE_CXX_EXTENSIONS=OFF"
|
arguments "-DANDROID_TOOLCHAIN=clang", "-DANDROID_PLATFORM=android-21", "-DANDROID_STL=c++_static", "-DANDROID_CPP_FEATURES=exceptions rtti", "-DANDROID_ARM_MODE=arm", "-DANDROID_ARM_NEON=TRUE", "-DANDROID_WEAK_API_DEFS=ON", "-DCMAKE_CXX_STANDARD=17", "-DCMAKE_CXX_EXTENSIONS=OFF"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO"/>
|
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO"/>
|
||||||
<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"/>
|
<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"/>
|
||||||
<uses-permission android:name="android.permission.INTERNET"/>
|
<uses-permission android:name="android.permission.INTERNET"/>
|
||||||
<uses-feature android:glEsVersion="0x00020000" android:required="true"/>
|
<uses-feature android:glEsVersion="0x00030000" android:required="true"/>
|
||||||
<application android:label="@string/app_name" android:name="com.rmsl.juce.JuceApp" android:icon="@drawable/icon" android:hardwareAccelerated="false">
|
<application android:label="@string/app_name" android:name="com.rmsl.juce.JuceApp" android:icon="@drawable/icon" android:hardwareAccelerated="false">
|
||||||
<receiver android:name="com.rmsl.juce.Receiver" android:exported="false"/>
|
<receiver android:name="com.rmsl.juce.Receiver" android:exported="false"/>
|
||||||
<activity android:name="com.rmsl.juce.JuceActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenSize|navigation"
|
<activity android:name="com.rmsl.juce.JuceActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenSize|navigation"
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ buildscript {
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath 'com.android.tools.build:gradle:7.3.0'
|
classpath 'com.android.tools.build:gradle:7.4.2'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-all.zip
|
||||||
|
|
@ -39,13 +39,13 @@ ifeq ($(CONFIG),Debug)
|
||||||
TARGET_ARCH :=
|
TARGET_ARCH :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DDEBUG=1" "-D_DEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_MODULE_AVAILABLE_juce_osc=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 gl libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DDEBUG=1" "-D_DEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_MODULE_AVAILABLE_juce_osc=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 fontconfig gl libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
||||||
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
||||||
JUCE_TARGET_APP := JUCE\ Network\ Graphics\ Demo
|
JUCE_TARGET_APP := JUCE\ Network\ Graphics\ Demo
|
||||||
|
|
||||||
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 $(CFLAGS)
|
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 $(CFLAGS)
|
||||||
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
||||||
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 fontconfig gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
||||||
|
|
||||||
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
||||||
endif
|
endif
|
||||||
|
|
@ -60,13 +60,13 @@ ifeq ($(CONFIG),Release)
|
||||||
TARGET_ARCH :=
|
TARGET_ARCH :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DNDEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_MODULE_AVAILABLE_juce_osc=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 gl libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DNDEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_MODULE_AVAILABLE_juce_osc=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 fontconfig gl libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
||||||
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
||||||
JUCE_TARGET_APP := JUCE\ Network\ Graphics\ Demo
|
JUCE_TARGET_APP := JUCE\ Network\ Graphics\ Demo
|
||||||
|
|
||||||
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -O3 $(CFLAGS)
|
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -O3 $(CFLAGS)
|
||||||
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
||||||
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 fontconfig gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
||||||
|
|
||||||
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
||||||
endif
|
endif
|
||||||
|
|
@ -98,7 +98,7 @@ all : $(JUCE_OUTDIR)/$(JUCE_TARGET_APP)
|
||||||
|
|
||||||
$(JUCE_OUTDIR)/$(JUCE_TARGET_APP) : $(OBJECTS_APP) $(JUCE_OBJDIR)/execinfo.cmd $(RESOURCES)
|
$(JUCE_OUTDIR)/$(JUCE_TARGET_APP) : $(OBJECTS_APP) $(JUCE_OBJDIR)/execinfo.cmd $(RESOURCES)
|
||||||
@command -v $(PKG_CONFIG) >/dev/null 2>&1 || { echo >&2 "pkg-config not installed. Please, install it."; exit 1; }
|
@command -v $(PKG_CONFIG) >/dev/null 2>&1 || { echo >&2 "pkg-config not installed. Please, install it."; exit 1; }
|
||||||
@$(PKG_CONFIG) --print-errors alsa freetype2 gl libcurl
|
@$(PKG_CONFIG) --print-errors alsa freetype2 fontconfig gl libcurl
|
||||||
@echo Linking "NetworkGraphicsDemo - App"
|
@echo Linking "NetworkGraphicsDemo - App"
|
||||||
-$(V_AT)mkdir -p $(JUCE_BINDIR)
|
-$(V_AT)mkdir -p $(JUCE_BINDIR)
|
||||||
-$(V_AT)mkdir -p $(JUCE_LIBDIR)
|
-$(V_AT)mkdir -p $(JUCE_LIBDIR)
|
||||||
|
|
|
||||||
|
|
@ -3703,6 +3703,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -6357,6 +6357,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -39,13 +39,13 @@ ifeq ($(CONFIG),Debug)
|
||||||
TARGET_ARCH :=
|
TARGET_ARCH :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DDEBUG=1" "-D_DEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_build_tools=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_LOG_ASSERTIONS=1" "-DJUCE_USE_CURL=1" "-DJUCE_LOAD_CURL_SYMBOLS_LAZILY=1" "-DJUCE_ALLOW_STATIC_NULL_VARIABLES=0" "-DJUCE_STRICT_REFCOUNTEDPOINTER=1" "-DJUCE_WEB_BROWSER=0" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=8.0.0" "-DJUCE_APP_VERSION_HEX=0x80000" $(shell $(PKG_CONFIG) --cflags freetype2) -pthread -I../../JuceLibraryCode -I../../../Build -I../../../../modules $(CPPFLAGS)
|
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DDEBUG=1" "-D_DEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_build_tools=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_LOG_ASSERTIONS=1" "-DJUCE_USE_CURL=1" "-DJUCE_LOAD_CURL_SYMBOLS_LAZILY=1" "-DJUCE_ALLOW_STATIC_NULL_VARIABLES=0" "-DJUCE_STRICT_REFCOUNTEDPOINTER=1" "-DJUCE_WEB_BROWSER=0" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=8.0.0" "-DJUCE_APP_VERSION_HEX=0x80000" $(shell $(PKG_CONFIG) --cflags freetype2 fontconfig) -pthread -I../../JuceLibraryCode -I../../../Build -I../../../../modules $(CPPFLAGS)
|
||||||
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
||||||
JUCE_TARGET_APP := Projucer
|
JUCE_TARGET_APP := Projucer
|
||||||
|
|
||||||
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 $(CFLAGS)
|
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 $(CFLAGS)
|
||||||
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
||||||
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs freetype2) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs freetype2 fontconfig) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
||||||
|
|
||||||
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
||||||
endif
|
endif
|
||||||
|
|
@ -60,13 +60,13 @@ ifeq ($(CONFIG),Release)
|
||||||
TARGET_ARCH :=
|
TARGET_ARCH :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DNDEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_build_tools=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_LOG_ASSERTIONS=1" "-DJUCE_USE_CURL=1" "-DJUCE_LOAD_CURL_SYMBOLS_LAZILY=1" "-DJUCE_ALLOW_STATIC_NULL_VARIABLES=0" "-DJUCE_STRICT_REFCOUNTEDPOINTER=1" "-DJUCE_WEB_BROWSER=0" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=8.0.0" "-DJUCE_APP_VERSION_HEX=0x80000" $(shell $(PKG_CONFIG) --cflags freetype2) -pthread -I../../JuceLibraryCode -I../../../Build -I../../../../modules $(CPPFLAGS)
|
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DNDEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_build_tools=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_LOG_ASSERTIONS=1" "-DJUCE_USE_CURL=1" "-DJUCE_LOAD_CURL_SYMBOLS_LAZILY=1" "-DJUCE_ALLOW_STATIC_NULL_VARIABLES=0" "-DJUCE_STRICT_REFCOUNTEDPOINTER=1" "-DJUCE_WEB_BROWSER=0" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=8.0.0" "-DJUCE_APP_VERSION_HEX=0x80000" $(shell $(PKG_CONFIG) --cflags freetype2 fontconfig) -pthread -I../../JuceLibraryCode -I../../../Build -I../../../../modules $(CPPFLAGS)
|
||||||
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
JUCE_CPPFLAGS_APP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
||||||
JUCE_TARGET_APP := Projucer
|
JUCE_TARGET_APP := Projucer
|
||||||
|
|
||||||
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -O3 $(CFLAGS)
|
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -O3 $(CFLAGS)
|
||||||
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
||||||
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs freetype2) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs freetype2 fontconfig) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
||||||
|
|
||||||
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_APP) $(JUCE_OBJDIR)
|
||||||
endif
|
endif
|
||||||
|
|
@ -138,7 +138,7 @@ all : $(JUCE_OUTDIR)/$(JUCE_TARGET_APP)
|
||||||
|
|
||||||
$(JUCE_OUTDIR)/$(JUCE_TARGET_APP) : $(OBJECTS_APP) $(JUCE_OBJDIR)/execinfo.cmd $(RESOURCES)
|
$(JUCE_OUTDIR)/$(JUCE_TARGET_APP) : $(OBJECTS_APP) $(JUCE_OBJDIR)/execinfo.cmd $(RESOURCES)
|
||||||
@command -v $(PKG_CONFIG) >/dev/null 2>&1 || { echo >&2 "pkg-config not installed. Please, install it."; exit 1; }
|
@command -v $(PKG_CONFIG) >/dev/null 2>&1 || { echo >&2 "pkg-config not installed. Please, install it."; exit 1; }
|
||||||
@$(PKG_CONFIG) --print-errors freetype2
|
@$(PKG_CONFIG) --print-errors freetype2 fontconfig
|
||||||
@echo Linking "Projucer - App"
|
@echo Linking "Projucer - App"
|
||||||
-$(V_AT)mkdir -p $(JUCE_BINDIR)
|
-$(V_AT)mkdir -p $(JUCE_BINDIR)
|
||||||
-$(V_AT)mkdir -p $(JUCE_LIBDIR)
|
-$(V_AT)mkdir -p $(JUCE_LIBDIR)
|
||||||
|
|
|
||||||
|
|
@ -2520,6 +2520,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -4335,6 +4335,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -2520,6 +2520,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -4335,6 +4335,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -2520,6 +2520,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -4335,6 +4335,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -39,13 +39,13 @@ ifeq ($(CONFIG),Debug)
|
||||||
TARGET_ARCH :=
|
TARGET_ARCH :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DDEBUG=1" "-D_DEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_analytics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_dsp=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_midi_ci=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_MODULE_AVAILABLE_juce_osc=1" "-DJUCE_MODULE_AVAILABLE_juce_product_unlocking=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_PLUGINHOST_VST3=1" "-DJUCE_PLUGINHOST_LV2=1" "-DJUCE_STRICT_REFCOUNTEDPOINTER=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCE_UNIT_TESTS=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 gl libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sratom -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/serd -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lv2 -I../../../../modules/juce_audio_processors/format_types/LV2_SDK -I../../../../modules/juce_audio_processors/format_types/VST3_SDK -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DDEBUG=1" "-D_DEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_analytics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_dsp=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_midi_ci=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_MODULE_AVAILABLE_juce_osc=1" "-DJUCE_MODULE_AVAILABLE_juce_product_unlocking=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_PLUGINHOST_VST3=1" "-DJUCE_PLUGINHOST_LV2=1" "-DJUCE_STRICT_REFCOUNTEDPOINTER=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCE_UNIT_TESTS=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 fontconfig gl libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sratom -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/serd -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lv2 -I../../../../modules/juce_audio_processors/format_types/LV2_SDK -I../../../../modules/juce_audio_processors/format_types/VST3_SDK -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
||||||
JUCE_CPPFLAGS_CONSOLEAPP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
JUCE_CPPFLAGS_CONSOLEAPP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
||||||
JUCE_TARGET_CONSOLEAPP := UnitTestRunner
|
JUCE_TARGET_CONSOLEAPP := UnitTestRunner
|
||||||
|
|
||||||
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 $(CFLAGS)
|
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 $(CFLAGS)
|
||||||
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
||||||
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 fontconfig gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
||||||
|
|
||||||
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_CONSOLEAPP) $(JUCE_OBJDIR)
|
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_CONSOLEAPP) $(JUCE_OBJDIR)
|
||||||
endif
|
endif
|
||||||
|
|
@ -60,13 +60,13 @@ ifeq ($(CONFIG),Release)
|
||||||
TARGET_ARCH :=
|
TARGET_ARCH :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DNDEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_analytics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_dsp=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_midi_ci=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_MODULE_AVAILABLE_juce_osc=1" "-DJUCE_MODULE_AVAILABLE_juce_product_unlocking=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_PLUGINHOST_VST3=1" "-DJUCE_PLUGINHOST_LV2=1" "-DJUCE_STRICT_REFCOUNTEDPOINTER=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCE_UNIT_TESTS=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 gl libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sratom -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/serd -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lv2 -I../../../../modules/juce_audio_processors/format_types/LV2_SDK -I../../../../modules/juce_audio_processors/format_types/VST3_SDK -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
JUCE_CPPFLAGS := $(DEPFLAGS) "-DLINUX=1" "-DNDEBUG=1" "-DJUCE_PROJUCER_VERSION=0x80000" "-DJUCE_MODULE_AVAILABLE_juce_analytics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_devices=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_formats=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_processors=1" "-DJUCE_MODULE_AVAILABLE_juce_audio_utils=1" "-DJUCE_MODULE_AVAILABLE_juce_core=1" "-DJUCE_MODULE_AVAILABLE_juce_cryptography=1" "-DJUCE_MODULE_AVAILABLE_juce_data_structures=1" "-DJUCE_MODULE_AVAILABLE_juce_dsp=1" "-DJUCE_MODULE_AVAILABLE_juce_events=1" "-DJUCE_MODULE_AVAILABLE_juce_graphics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_basics=1" "-DJUCE_MODULE_AVAILABLE_juce_gui_extra=1" "-DJUCE_MODULE_AVAILABLE_juce_midi_ci=1" "-DJUCE_MODULE_AVAILABLE_juce_opengl=1" "-DJUCE_MODULE_AVAILABLE_juce_osc=1" "-DJUCE_MODULE_AVAILABLE_juce_product_unlocking=1" "-DJUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1" "-DJUCE_PLUGINHOST_VST3=1" "-DJUCE_PLUGINHOST_LV2=1" "-DJUCE_STRICT_REFCOUNTEDPOINTER=1" "-DJUCE_STANDALONE_APPLICATION=1" "-DJUCE_UNIT_TESTS=1" "-DJUCER_LINUX_MAKE_6D53C8B4=1" "-DJUCE_APP_VERSION=1.0.0" "-DJUCE_APP_VERSION_HEX=0x10000" $(shell $(PKG_CONFIG) --cflags alsa freetype2 fontconfig gl libcurl webkit2gtk-4.0 gtk+-x11-3.0) -pthread -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lilv -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sratom -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord/src -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/sord -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/serd -I../../../../modules/juce_audio_processors/format_types/LV2_SDK/lv2 -I../../../../modules/juce_audio_processors/format_types/LV2_SDK -I../../../../modules/juce_audio_processors/format_types/VST3_SDK -I../../JuceLibraryCode -I../../../../modules $(CPPFLAGS)
|
||||||
JUCE_CPPFLAGS_CONSOLEAPP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
JUCE_CPPFLAGS_CONSOLEAPP := "-DJucePlugin_Build_VST=0" "-DJucePlugin_Build_VST3=0" "-DJucePlugin_Build_AU=0" "-DJucePlugin_Build_AUv3=0" "-DJucePlugin_Build_AAX=0" "-DJucePlugin_Build_Standalone=0" "-DJucePlugin_Build_Unity=0" "-DJucePlugin_Build_LV2=0"
|
||||||
JUCE_TARGET_CONSOLEAPP := UnitTestRunner
|
JUCE_TARGET_CONSOLEAPP := UnitTestRunner
|
||||||
|
|
||||||
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -O3 $(CFLAGS)
|
JUCE_CFLAGS += $(JUCE_CPPFLAGS) $(TARGET_ARCH) -O3 $(CFLAGS)
|
||||||
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
JUCE_CXXFLAGS += $(JUCE_CFLAGS) -std=c++17 $(CXXFLAGS)
|
||||||
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell $(PKG_CONFIG) --libs alsa freetype2 fontconfig gl libcurl) -fvisibility=hidden -lrt -ldl -lpthread $(LDFLAGS)
|
||||||
|
|
||||||
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_CONSOLEAPP) $(JUCE_OBJDIR)
|
CLEANCMD = rm -rf $(JUCE_OUTDIR)/$(JUCE_TARGET_CONSOLEAPP) $(JUCE_OBJDIR)
|
||||||
endif
|
endif
|
||||||
|
|
@ -101,7 +101,7 @@ all : $(JUCE_OUTDIR)/$(JUCE_TARGET_CONSOLEAPP)
|
||||||
|
|
||||||
$(JUCE_OUTDIR)/$(JUCE_TARGET_CONSOLEAPP) : $(OBJECTS_CONSOLEAPP) $(JUCE_OBJDIR)/execinfo.cmd $(RESOURCES)
|
$(JUCE_OUTDIR)/$(JUCE_TARGET_CONSOLEAPP) : $(OBJECTS_CONSOLEAPP) $(JUCE_OBJDIR)/execinfo.cmd $(RESOURCES)
|
||||||
@command -v $(PKG_CONFIG) >/dev/null 2>&1 || { echo >&2 "pkg-config not installed. Please, install it."; exit 1; }
|
@command -v $(PKG_CONFIG) >/dev/null 2>&1 || { echo >&2 "pkg-config not installed. Please, install it."; exit 1; }
|
||||||
@$(PKG_CONFIG) --print-errors alsa freetype2 gl libcurl
|
@$(PKG_CONFIG) --print-errors alsa freetype2 fontconfig gl libcurl
|
||||||
@echo Linking "UnitTestRunner - ConsoleApp"
|
@echo Linking "UnitTestRunner - ConsoleApp"
|
||||||
-$(V_AT)mkdir -p $(JUCE_BINDIR)
|
-$(V_AT)mkdir -p $(JUCE_BINDIR)
|
||||||
-$(V_AT)mkdir -p $(JUCE_LIBDIR)
|
-$(V_AT)mkdir -p $(JUCE_LIBDIR)
|
||||||
|
|
|
||||||
|
|
@ -3934,6 +3934,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -6744,6 +6744,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -3934,6 +3934,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -6744,6 +6744,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -3934,6 +3934,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -6744,6 +6744,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -3679,6 +3679,7 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_LruCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TextLayout.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h"/>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_BorderSize.h"/>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_EdgeTable.h"/>
|
||||||
|
|
|
||||||
|
|
@ -6324,6 +6324,9 @@
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_Typeface.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\fonts\juce_TypefaceFileCache.h">
|
||||||
|
<Filter>JUCE Modules\juce_graphics\fonts</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
<ClInclude Include="..\..\..\..\modules\juce_graphics\geometry\juce_AffineTransform.h">
|
||||||
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
<Filter>JUCE Modules\juce_graphics\geometry</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
|
|
||||||
|
|
@ -204,6 +204,34 @@ public:
|
||||||
*/
|
*/
|
||||||
virtual Native getNativeDetails() const = 0;
|
virtual Native getNativeDetails() const = 0;
|
||||||
|
|
||||||
|
/** Attempts to locate a font with a similar style that is capable of displaying the requested
|
||||||
|
string.
|
||||||
|
|
||||||
|
This uses system facilities, so will produce different results depending on the operating
|
||||||
|
system and installed fonts. If it's important that your app uses the same fonts on all
|
||||||
|
platforms, then you probably shouldn't use the results of this function.
|
||||||
|
|
||||||
|
Note that this accepts a _string_ instead of a single codepoint because the OS may take
|
||||||
|
combining marks and variation selectors into account when selecting an appropriate font.
|
||||||
|
As an example, many fonts include a 'text'/'outline' version of the smiley face emoji.
|
||||||
|
macOS may return Helvetica if the smiley emoji codepoint is passed on its own, but will
|
||||||
|
return the emoji font if the emoji codepoint is followed by the variation-selector-16
|
||||||
|
codepoint.
|
||||||
|
|
||||||
|
To specify your own fallback fonts:
|
||||||
|
- ensure your preferred fonts provide coverage of all languages/scripts/codepoints that you may
|
||||||
|
need to display
|
||||||
|
- bundle the fonts in your product, e.g. as binary data and register them when your product starts
|
||||||
|
- use Font::setPreferredFallbackFamilies() to specify that the bundled fonts should be used before
|
||||||
|
requesting a fallback font from the system
|
||||||
|
|
||||||
|
@param text the returned font will normally be capable of displaying the majority
|
||||||
|
of codepoints in this string
|
||||||
|
@param language BCP 47 language code of the text that includes this codepoint
|
||||||
|
@returns nullptr if no fallback could be created
|
||||||
|
*/
|
||||||
|
virtual Typeface::Ptr createSystemFallback (const String& text, const String& language) const = 0;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
String name;
|
String name;
|
||||||
|
|
|
||||||
70
modules/juce_graphics/fonts/juce_TypefaceFileCache.h
Normal file
70
modules/juce_graphics/fonts/juce_TypefaceFileCache.h
Normal file
|
|
@ -0,0 +1,70 @@
|
||||||
|
/*
|
||||||
|
==============================================================================
|
||||||
|
|
||||||
|
This file is part of the JUCE framework.
|
||||||
|
Copyright (c) Raw Material Software Limited
|
||||||
|
|
||||||
|
JUCE is an open source framework subject to commercial or open source
|
||||||
|
licensing.
|
||||||
|
|
||||||
|
By downloading, installing, or using the JUCE framework, or combining the
|
||||||
|
JUCE framework with any other source code, object code, content or any other
|
||||||
|
copyrightable work, you agree to the terms of the JUCE End User Licence
|
||||||
|
Agreement, and all incorporated terms including the JUCE Privacy Policy and
|
||||||
|
the JUCE Website Terms of Service, as applicable, which will bind you. If you
|
||||||
|
do not agree to the terms of these agreements, we will not license the JUCE
|
||||||
|
framework to you, and you must discontinue the installation or download
|
||||||
|
process and cease use of the JUCE framework.
|
||||||
|
|
||||||
|
JUCE End User Licence Agreement: https://juce.com/legal/juce-8-licence/
|
||||||
|
JUCE Privacy Policy: https://juce.com/juce-privacy-policy
|
||||||
|
JUCE Website Terms of Service: https://juce.com/juce-website-terms-of-service/
|
||||||
|
|
||||||
|
Or:
|
||||||
|
|
||||||
|
You may also use this code under the terms of the AGPLv3:
|
||||||
|
https://www.gnu.org/licenses/agpl-3.0.en.html
|
||||||
|
|
||||||
|
THE JUCE FRAMEWORK IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL
|
||||||
|
WARRANTIES, WHETHER EXPRESSED OR IMPLIED, INCLUDING WARRANTY OF
|
||||||
|
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, ARE DISCLAIMED.
|
||||||
|
|
||||||
|
==============================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace juce
|
||||||
|
{
|
||||||
|
|
||||||
|
struct TypefaceFileAndIndex
|
||||||
|
{
|
||||||
|
File file;
|
||||||
|
int index{};
|
||||||
|
|
||||||
|
auto tie() const { return std::tuple (file, index); }
|
||||||
|
|
||||||
|
bool operator< (const TypefaceFileAndIndex& other) const { return tie() < other.tie(); }
|
||||||
|
};
|
||||||
|
|
||||||
|
class TypefaceFileCache : public DeletedAtShutdown
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
~TypefaceFileCache() override
|
||||||
|
{
|
||||||
|
clearSingletonInstance();
|
||||||
|
}
|
||||||
|
|
||||||
|
template <typename Fn>
|
||||||
|
Typeface::Ptr get (const TypefaceFileAndIndex& key, Fn&& getTypeface)
|
||||||
|
{
|
||||||
|
return cachedTypefaces.get (key, std::forward<Fn> (getTypeface));
|
||||||
|
}
|
||||||
|
|
||||||
|
JUCE_DECLARE_SINGLETON_SINGLETHREADED_MINIMAL (TypefaceFileCache)
|
||||||
|
|
||||||
|
private:
|
||||||
|
LruCache<TypefaceFileAndIndex, Typeface::Ptr> cachedTypefaces;
|
||||||
|
};
|
||||||
|
|
||||||
|
JUCE_IMPLEMENT_SINGLETON (TypefaceFileCache)
|
||||||
|
|
||||||
|
} // namespace juce
|
||||||
|
|
@ -76,6 +76,12 @@
|
||||||
#ifndef JUCE_USE_FREETYPE
|
#ifndef JUCE_USE_FREETYPE
|
||||||
#define JUCE_USE_FREETYPE 1
|
#define JUCE_USE_FREETYPE 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef JUCE_USE_FONTCONFIG
|
||||||
|
#define JUCE_USE_FONTCONFIG 1
|
||||||
|
#endif
|
||||||
|
#elif JUCE_ANDROID
|
||||||
|
#include <android/font_matcher.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if JUCE_USE_FREETYPE
|
#if JUCE_USE_FREETYPE
|
||||||
|
|
@ -84,6 +90,10 @@
|
||||||
#include FT_ADVANCES_H
|
#include FT_ADVANCES_H
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if JUCE_USE_FONTCONFIG
|
||||||
|
#include <fontconfig/fontconfig.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#undef SIZEOF
|
#undef SIZEOF
|
||||||
|
|
||||||
#if (JUCE_MAC || JUCE_IOS) && USE_COREGRAPHICS_RENDERING && JUCE_USE_COREIMAGE_LOADER
|
#if (JUCE_MAC || JUCE_IOS) && USE_COREGRAPHICS_RENDERING && JUCE_USE_COREIMAGE_LOADER
|
||||||
|
|
@ -145,6 +155,7 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if JUCE_USE_FREETYPE
|
#if JUCE_USE_FREETYPE
|
||||||
|
#include "fonts/juce_TypefaceFileCache.h"
|
||||||
#include "native/juce_Fonts_freetype.cpp"
|
#include "native/juce_Fonts_freetype.cpp"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
@ -166,6 +177,7 @@
|
||||||
#include "native/juce_IconHelpers_linux.cpp"
|
#include "native/juce_IconHelpers_linux.cpp"
|
||||||
|
|
||||||
#elif JUCE_ANDROID
|
#elif JUCE_ANDROID
|
||||||
|
#include "fonts/juce_TypefaceFileCache.h"
|
||||||
#include "native/juce_GraphicsContext_android.cpp"
|
#include "native/juce_GraphicsContext_android.cpp"
|
||||||
#include "native/juce_Fonts_android.cpp"
|
#include "native/juce_Fonts_android.cpp"
|
||||||
#include "native/juce_IconHelpers_android.cpp"
|
#include "native/juce_IconHelpers_android.cpp"
|
||||||
|
|
|
||||||
|
|
@ -54,7 +54,7 @@
|
||||||
dependencies: juce_events
|
dependencies: juce_events
|
||||||
OSXFrameworks: Cocoa QuartzCore
|
OSXFrameworks: Cocoa QuartzCore
|
||||||
iOSFrameworks: CoreGraphics CoreImage CoreText QuartzCore
|
iOSFrameworks: CoreGraphics CoreImage CoreText QuartzCore
|
||||||
linuxPackages: freetype2
|
linuxPackages: freetype2 fontconfig
|
||||||
|
|
||||||
END_JUCE_MODULE_DECLARATION
|
END_JUCE_MODULE_DECLARATION
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -523,6 +523,47 @@ public:
|
||||||
return Native { hbFont.get() };
|
return Native { hbFont.get() };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Typeface::Ptr createSystemFallback (const String& c, const String& language) const override
|
||||||
|
{
|
||||||
|
auto factory = factories->getDWriteFactory().getInterface<IDWriteFactory2>();
|
||||||
|
|
||||||
|
if (factory == nullptr)
|
||||||
|
{
|
||||||
|
// System font fallback is unavailable before Windows 8.1
|
||||||
|
jassertfalse;
|
||||||
|
return {};
|
||||||
|
}
|
||||||
|
|
||||||
|
ComSmartPtr<IDWriteFontFallback> fallback;
|
||||||
|
if (FAILED (factory->GetSystemFontFallback (fallback.resetAndGetPointerAddress())) || fallback == nullptr)
|
||||||
|
return {};
|
||||||
|
|
||||||
|
auto analysisSource = becomeComSmartPtrOwner (new AnalysisSource (c, language));
|
||||||
|
const auto originalName = getLocalisedFamilyName (*dwFont);
|
||||||
|
|
||||||
|
const auto mapped = factories->getFonts().mapCharacters (fallback,
|
||||||
|
analysisSource,
|
||||||
|
0,
|
||||||
|
numUtf16Words (c.toUTF16()),
|
||||||
|
originalName.toWideCharPointer(),
|
||||||
|
dwFont->GetWeight(),
|
||||||
|
dwFont->GetStyle(),
|
||||||
|
dwFont->GetStretch());
|
||||||
|
|
||||||
|
if (mapped.font == nullptr)
|
||||||
|
return {};
|
||||||
|
|
||||||
|
ComSmartPtr<IDWriteFontFace> mappedFace;
|
||||||
|
if (FAILED (mapped.font->CreateFontFace (mappedFace.resetAndGetPointerAddress())) || mappedFace == nullptr)
|
||||||
|
return {};
|
||||||
|
|
||||||
|
const HbFace hbFace { hb_directwrite_face_create (mappedFace) };
|
||||||
|
|
||||||
|
const auto mappedName = getLocalisedFamilyName (*mapped.font);
|
||||||
|
const auto mappedStyle = getLocalisedStyle (*mapped.font);
|
||||||
|
return new WindowsDirectWriteTypeface (mappedName, mappedStyle, mapped.font, mappedFace, HbFont { hb_font_create (hbFace.get()) }, {});
|
||||||
|
}
|
||||||
|
|
||||||
IDWriteFontFace* getIDWriteFontFace() const { return dwFontFace; }
|
IDWriteFontFace* getIDWriteFontFace() const { return dwFontFace; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
|
||||||
|
|
@ -260,6 +260,16 @@ public:
|
||||||
return Native { hbFont.get() };
|
return Native { hbFont.get() };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Typeface::Ptr createSystemFallback (const String& text, const String& language) const override
|
||||||
|
{
|
||||||
|
if (__builtin_available (android 29, *))
|
||||||
|
return matchWithAFontMatcher (text, language);
|
||||||
|
|
||||||
|
// The font-fallback API is only available on Android API level 29+
|
||||||
|
jassertfalse;
|
||||||
|
return {};
|
||||||
|
}
|
||||||
|
|
||||||
~AndroidTypeface() override
|
~AndroidTypeface() override
|
||||||
{
|
{
|
||||||
if (doCache == DoCache::yes)
|
if (doCache == DoCache::yes)
|
||||||
|
|
@ -268,6 +278,58 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
__INTRODUCED_IN (29) Typeface::Ptr matchWithAFontMatcher (const String& text, const String& language) const
|
||||||
|
{
|
||||||
|
using AFontMatcherPtr = std::unique_ptr<AFontMatcher, FunctionPointerDestructor<AFontMatcher_destroy>>;
|
||||||
|
const AFontMatcherPtr matcher { AFontMatcher_create() };
|
||||||
|
|
||||||
|
const auto weight = hb_style_get_value (hbFont.get(), HB_STYLE_TAG_WEIGHT);
|
||||||
|
const auto italic = hb_style_get_value (hbFont.get(), HB_STYLE_TAG_ITALIC) != 0.0f;
|
||||||
|
AFontMatcher_setStyle (matcher.get(), (uint16_t) weight, italic);
|
||||||
|
|
||||||
|
AFontMatcher_setLocales (matcher.get(), language.toRawUTF8());
|
||||||
|
|
||||||
|
const auto utf16 = text.toUTF16();
|
||||||
|
|
||||||
|
using AFontPtr = std::unique_ptr<AFont, FunctionPointerDestructor<AFont_close>>;
|
||||||
|
const AFontPtr matched { AFontMatcher_match (matcher.get(),
|
||||||
|
readFontName (hb_font_get_face (hbFont.get()),
|
||||||
|
HB_OT_NAME_ID_FONT_FAMILY,
|
||||||
|
nullptr).toRawUTF8(),
|
||||||
|
unalignedPointerCast<const uint16_t*> (utf16.getAddress()),
|
||||||
|
(uint32_t) (utf16.findTerminatingNull().getAddress() - utf16.getAddress()),
|
||||||
|
nullptr) };
|
||||||
|
|
||||||
|
if (matched == nullptr)
|
||||||
|
{
|
||||||
|
// Unable to find any matching fonts. This should never happen - in the worst case,
|
||||||
|
// we should at least get a font with the tofu character.
|
||||||
|
jassertfalse;
|
||||||
|
return {};
|
||||||
|
}
|
||||||
|
|
||||||
|
const File matchedFile { AFont_getFontFilePath (matched.get()) };
|
||||||
|
const auto matchedIndex = AFont_getCollectionIndex (matched.get());
|
||||||
|
|
||||||
|
auto* cache = TypefaceFileCache::getInstance();
|
||||||
|
|
||||||
|
if (cache == nullptr)
|
||||||
|
return {}; // Perhaps we're shutting down
|
||||||
|
|
||||||
|
return cache->get ({ matchedFile, (int) matchedIndex }, [] (const TypefaceFileAndIndex& info) -> Typeface::Ptr
|
||||||
|
{
|
||||||
|
FileInputStream stream { info.file };
|
||||||
|
|
||||||
|
if (! stream.openedOk())
|
||||||
|
return {};
|
||||||
|
|
||||||
|
MemoryBlock mb;
|
||||||
|
stream.readIntoMemoryBlock (mb);
|
||||||
|
|
||||||
|
return fromMemory (DoCache::no, { static_cast<const std::byte*> (mb.getData()), mb.getSize() }, (unsigned int) info.index);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
static Typeface::Ptr fromMemory (DoCache cache, Span<const std::byte> blob, unsigned int index = 0)
|
static Typeface::Ptr fromMemory (DoCache cache, Span<const std::byte> blob, unsigned int index = 0)
|
||||||
{
|
{
|
||||||
auto face = FontStyleHelpers::getFaceForBlob ({ reinterpret_cast<const char*> (blob.data()), blob.size() }, index);
|
auto face = FontStyleHelpers::getFaceForBlob ({ reinterpret_cast<const char*> (blob.data()), blob.size() }, index);
|
||||||
|
|
|
||||||
|
|
@ -39,6 +39,11 @@
|
||||||
namespace juce
|
namespace juce
|
||||||
{
|
{
|
||||||
|
|
||||||
|
using FcConfigPtr = std::unique_ptr<FcConfig, FunctionPointerDestructor<FcConfigDestroy>>;
|
||||||
|
using FcPatternPtr = std::unique_ptr<FcPattern, FunctionPointerDestructor<FcPatternDestroy>>;
|
||||||
|
using FcCharSetPtr = std::unique_ptr<FcCharSet, FunctionPointerDestructor<FcCharSetDestroy>>;
|
||||||
|
using FcLangSetPtr = std::unique_ptr<FcLangSet, FunctionPointerDestructor<FcLangSetDestroy>>;
|
||||||
|
|
||||||
struct FTLibWrapper final : public ReferenceCountedObject
|
struct FTLibWrapper final : public ReferenceCountedObject
|
||||||
{
|
{
|
||||||
FTLibWrapper()
|
FTLibWrapper()
|
||||||
|
|
@ -56,6 +61,7 @@ struct FTLibWrapper final : public ReferenceCountedObject
|
||||||
FT_Done_FreeType (library);
|
FT_Done_FreeType (library);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const FcConfigPtr fcConfig { FcInitLoadConfigAndFonts() };
|
||||||
FT_Library library = {};
|
FT_Library library = {};
|
||||||
|
|
||||||
using Ptr = ReferenceCountedObjectPtr<FTLibWrapper>;
|
using Ptr = ReferenceCountedObjectPtr<FTLibWrapper>;
|
||||||
|
|
@ -424,6 +430,87 @@ public:
|
||||||
return Native { hb.get() };
|
return Native { hb.get() };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Typeface::Ptr createSystemFallback ([[maybe_unused]] const String& text,
|
||||||
|
[[maybe_unused]] const String& language) const override
|
||||||
|
{
|
||||||
|
#if JUCE_USE_FONTCONFIG
|
||||||
|
auto* cache = TypefaceFileCache::getInstance();
|
||||||
|
|
||||||
|
if (cache == nullptr)
|
||||||
|
return {};
|
||||||
|
|
||||||
|
auto* config = ftFace->library->fcConfig.get();
|
||||||
|
FcPatternPtr pattern { FcPatternCreate() };
|
||||||
|
|
||||||
|
{
|
||||||
|
FcValue value{};
|
||||||
|
value.type = FcTypeString;
|
||||||
|
value.u.s = unalignedPointerCast<const FcChar8*> (ftFace->face->family_name);
|
||||||
|
FcPatternAddWeak (pattern.get(), FC_FAMILY, value, FcFalse);
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
FcValue value{};
|
||||||
|
value.type = FcTypeString;
|
||||||
|
value.u.s = unalignedPointerCast<const FcChar8*> (ftFace->face->style_name);
|
||||||
|
FcPatternAddWeak (pattern.get(), FC_STYLE, value, FcFalse);
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
const FcCharSetPtr charset { FcCharSetCreate() };
|
||||||
|
for (const auto& character : text)
|
||||||
|
FcCharSetAddChar (charset.get(), (FcChar32) character);
|
||||||
|
FcPatternAddCharSet (pattern.get(), FC_CHARSET, charset.get());
|
||||||
|
}
|
||||||
|
|
||||||
|
if (language.isNotEmpty())
|
||||||
|
{
|
||||||
|
const FcLangSetPtr langset { FcLangSetCreate() };
|
||||||
|
FcLangSetAdd (langset.get(), unalignedPointerCast<const FcChar8*> (language.toRawUTF8()));
|
||||||
|
FcPatternAddLangSet (pattern.get(), FC_LANG, langset.get());
|
||||||
|
}
|
||||||
|
|
||||||
|
FcConfigSubstitute (config, pattern.get(), FcMatchPattern);
|
||||||
|
FcDefaultSubstitute (pattern.get());
|
||||||
|
|
||||||
|
FcResult result{};
|
||||||
|
const FcPatternPtr matched { FcFontMatch (config, pattern.get(), &result) };
|
||||||
|
|
||||||
|
if (result != FcResultMatch)
|
||||||
|
return {};
|
||||||
|
|
||||||
|
FcChar8* fileString{};
|
||||||
|
if (FcPatternGetString (matched.get(), FC_FILE, 0, &fileString) != FcResultMatch)
|
||||||
|
return {};
|
||||||
|
|
||||||
|
int index{};
|
||||||
|
if (FcPatternGetInteger (matched.get(), FC_INDEX, 0, &index) != FcResultMatch)
|
||||||
|
return {};
|
||||||
|
|
||||||
|
const File file { String { CharPointer_UTF8 { unalignedPointerCast<const char*> (fileString) } } };
|
||||||
|
|
||||||
|
return cache->get ({ file, index }, [] (const TypefaceFileAndIndex& f) -> Typeface::Ptr
|
||||||
|
{
|
||||||
|
auto face = FTTypefaceList::getInstance()->createFace (f.file, f.index);
|
||||||
|
|
||||||
|
if (face == nullptr)
|
||||||
|
return {};
|
||||||
|
|
||||||
|
const HbFace hbFace { hb_ft_face_create_referenced (face->face) };
|
||||||
|
HbFont cachedFont { hb_font_create (hbFace.get()) };
|
||||||
|
|
||||||
|
if (cachedFont == nullptr)
|
||||||
|
return {};
|
||||||
|
|
||||||
|
return new FreeTypeTypeface (DoCache::no, face, std::move (cachedFont), face->face->family_name, face->face->style_name);
|
||||||
|
});
|
||||||
|
#else
|
||||||
|
// Font substitution will not work unless fontconfig is enabled.
|
||||||
|
jassertfalse;
|
||||||
|
return nullptr;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
~FreeTypeTypeface() override
|
~FreeTypeTypeface() override
|
||||||
{
|
{
|
||||||
if (doCache == DoCache::yes)
|
if (doCache == DoCache::yes)
|
||||||
|
|
|
||||||
|
|
@ -461,6 +461,12 @@ namespace CoreTextTypeLayout
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// This symbol is available on all the platforms we support, but not declared in the CoreText headers on older platforms.
|
||||||
|
extern "C" CTFontRef CTFontCreateForStringWithLanguage (CTFontRef currentFont,
|
||||||
|
CFStringRef string,
|
||||||
|
CFRange range,
|
||||||
|
CFStringRef language);
|
||||||
|
|
||||||
class CoreTextTypeface final : public Typeface
|
class CoreTextTypeface final : public Typeface
|
||||||
{
|
{
|
||||||
static auto& getRegistered()
|
static auto& getRegistered()
|
||||||
|
|
@ -613,6 +619,39 @@ public:
|
||||||
return Native { hb.get() };
|
return Native { hb.get() };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Typeface::Ptr createSystemFallback (const String& c, const String& language) const override
|
||||||
|
{
|
||||||
|
const CFUniquePtr<CFStringRef> cfText { c.toCFString() };
|
||||||
|
const CFUniquePtr<CFStringRef> cfLanguage { language.toCFString() };
|
||||||
|
|
||||||
|
auto* old = ctFont.get();
|
||||||
|
const CFUniquePtr<CFStringRef> oldName { CTFontCopyFamilyName (old) };
|
||||||
|
const CFUniquePtr<CTFontDescriptorRef> oldDescriptor { CTFontCopyFontDescriptor (old) };
|
||||||
|
const CFUniquePtr<CFStringRef> oldStyle { (CFStringRef) CTFontDescriptorCopyAttribute (oldDescriptor.get(),
|
||||||
|
kCTFontStyleNameAttribute) };
|
||||||
|
|
||||||
|
CFUniquePtr<CTFontRef> newFont { CTFontCreateForStringWithLanguage (old,
|
||||||
|
cfText.get(),
|
||||||
|
CFRangeMake (0, CFStringGetLength (cfText.get())),
|
||||||
|
cfLanguage.get()) };
|
||||||
|
|
||||||
|
const CFUniquePtr<CFStringRef> newName { CTFontCopyFamilyName (newFont.get()) };
|
||||||
|
const CFUniquePtr<CTFontDescriptorRef> descriptor { CTFontCopyFontDescriptor (newFont.get()) };
|
||||||
|
const CFUniquePtr<CFStringRef> newStyle { (CFStringRef) CTFontDescriptorCopyAttribute (descriptor.get(),
|
||||||
|
kCTFontStyleNameAttribute) };
|
||||||
|
|
||||||
|
HbFont result { hb_coretext_font_create (newFont.get()) };
|
||||||
|
|
||||||
|
if (result == nullptr)
|
||||||
|
return {};
|
||||||
|
|
||||||
|
return new CoreTextTypeface { std::move (newFont),
|
||||||
|
std::move (result),
|
||||||
|
String::fromCFString (newName.get()),
|
||||||
|
String::fromCFString (newStyle.get()),
|
||||||
|
{} };
|
||||||
|
}
|
||||||
|
|
||||||
static std::set<String> getRegisteredFamilies()
|
static std::set<String> getRegisteredFamilies()
|
||||||
{
|
{
|
||||||
return getRegistered().getRegisteredFamilies();
|
return getRegistered().getRegisteredFamilies();
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue