Signed-off-by: falkTX <falktx@falktx.com>tags/v1.5
| @@ -0,0 +1,20 @@ | |||||
| name: irc | |||||
| on: [push] | |||||
| jobs: | |||||
| notification: | |||||
| runs-on: ubuntu-latest | |||||
| name: IRC notification | |||||
| steps: | |||||
| - name: Format message | |||||
| id: message | |||||
| run: | | |||||
| message="${{ github.actor }} pushed $(echo '${{ github.event.commits[0].message }}' | head -n 1) ${{ github.event.commits[0].url }}" | |||||
| echo ::set-output name=message::"${message}" | |||||
| - name: IRC notification | |||||
| uses: Gottox/irc-message-action@v2 | |||||
| with: | |||||
| channel: '#kxstudio' | |||||
| nickname: kxstudio-bot | |||||
| message: ${{ steps.message.outputs.message }} | |||||
| @@ -13,6 +13,11 @@ all: dgl plugins gen | |||||
| PREFIX ?= /usr/local | PREFIX ?= /usr/local | ||||
| DESTDIR ?= | DESTDIR ?= | ||||
| # -------------------------------------------------------------- | |||||
| # Check for system-wide projectM | |||||
| HAVE_PROJECTM = $(shell pkg-config --exists libprojectM && echo true) | |||||
| # -------------------------------------------------------------- | # -------------------------------------------------------------- | ||||
| ifneq ($(CROSS_COMPILING),true) | ifneq ($(CROSS_COMPILING),true) | ||||
| @@ -60,6 +65,44 @@ ifeq ($(HAVE_OPENGL),true) | |||||
| $(MAKE) all -C plugins/ProM | $(MAKE) all -C plugins/ProM | ||||
| endif # HAVE_OPENGL | endif # HAVE_OPENGL | ||||
| ifneq ($(HAVE_PROJECTM),true) | |||||
| resources: gen | |||||
| # LV2 fonts | |||||
| install -d bin/ProM.lv2/resources/fonts | |||||
| ln -sf $(CURDIR)/plugins/ProM/projectM/fonts/*.ttf bin/ProM.lv2/resources/fonts/ | |||||
| # LV2 presets | |||||
| install -d bin/ProM.lv2/resources/presets | |||||
| ln -sf $(CURDIR)/plugins/ProM/projectM/presets/presets_* bin/ProM.lv2/resources/presets/ | |||||
| ifeq ($(MACOS),true) | |||||
| # VST2 fonts | |||||
| install -d bin/ProM.vst/Contents/Resources/fonts | |||||
| ln -sf $(CURDIR)/plugins/ProM/projectM/fonts/*.ttf bin/ProM.vst/Contents/Resources/fonts/ | |||||
| # VST2 presets | |||||
| install -d bin/ProM.vst/Contents/Resources/presets | |||||
| ln -sf $(CURDIR)/plugins/ProM/projectM/presets/presets_* bin/ProM.vst/Contents/Resources/presets/ | |||||
| else | |||||
| # VST2 directory | |||||
| install -d bin/ProM.vst | |||||
| mv bin/ProM-vst$(LIB_EXT) bin/ProM.vst/ProM$(LIB_EXT) | |||||
| # VST2 fonts | |||||
| install -d bin/ProM.vst/resources/fonts | |||||
| ln -sf $(CURDIR)/plugins/ProM/projectM/fonts/*.ttf bin/ProM.vst/resources/fonts/ | |||||
| # VST2 presets | |||||
| install -d bin/ProM.vst/resources/presets | |||||
| ln -sf $(CURDIR)/plugins/ProM/projectM/presets/presets_* bin/ProM.vst/resources/presets/ | |||||
| endif | |||||
| # VST3 fonts | |||||
| install -d bin/ProM.vst3/Contents/Resources/fonts | |||||
| ln -sf $(CURDIR)/plugins/ProM/projectM/fonts/*.ttf bin/ProM.vst3/Contents/Resources/fonts/ | |||||
| # VST3 presets | |||||
| install -d bin/ProM.vst3/Contents/Resources/presets | |||||
| ln -sf $(CURDIR)/plugins/ProM/projectM/presets/presets_* bin/ProM.vst3/Contents/Resources/presets/ | |||||
| else | |||||
| resources: | |||||
| endif | |||||
| gen: plugins dpf/utils/lv2_ttl_generator | gen: plugins dpf/utils/lv2_ttl_generator | ||||
| ifeq ($(CAN_GENERATE_TTL),true) | ifeq ($(CAN_GENERATE_TTL),true) | ||||
| @$(CURDIR)/dpf/utils/generate-ttl.sh | @$(CURDIR)/dpf/utils/generate-ttl.sh | ||||
| @@ -14,7 +14,14 @@ | |||||
| * For a full copy of the license see the LICENSE file. | * For a full copy of the license see the LICENSE file. | ||||
| */ | */ | ||||
| /* s/private/public/ as workaround old projectM versions */ | |||||
| #define private public | |||||
| #include "libprojectM/projectM.hpp" | #include "libprojectM/projectM.hpp" | ||||
| #undef private | |||||
| #ifndef PROJECTM_DATA_DIR | |||||
| #include "libprojectM/projectM-opengl.h" | |||||
| #endif | |||||
| #include "DistrhoPluginProM.hpp" | #include "DistrhoPluginProM.hpp" | ||||
| #include "DistrhoUIProM.hpp" | #include "DistrhoUIProM.hpp" | ||||
| @@ -253,6 +260,7 @@ bool DistrhoUIProM::onKeyboard(const KeyboardEvent& ev) | |||||
| if (fPM == nullptr) | if (fPM == nullptr) | ||||
| return false; | return false; | ||||
| #ifdef HAVE_PROJECTM_TEXT_FUNCTIONS | |||||
| // special handling for text | // special handling for text | ||||
| if (fPM->isTextInputActive(true) && !ev.press) | if (fPM->isTextInputActive(true) && !ev.press) | ||||
| { | { | ||||
| @@ -269,6 +277,7 @@ bool DistrhoUIProM::onKeyboard(const KeyboardEvent& ev) | |||||
| return true; | return true; | ||||
| } | } | ||||
| } | } | ||||
| #endif | |||||
| projectMKeycode pmKey = PROJECTM_K_NONE; | projectMKeycode pmKey = PROJECTM_K_NONE; | ||||
| @@ -304,12 +313,14 @@ bool DistrhoUIProM::onKeyboard(const KeyboardEvent& ev) | |||||
| case '\r': | case '\r': | ||||
| pmKey = PROJECTM_K_RETURN; | pmKey = PROJECTM_K_RETURN; | ||||
| break; | break; | ||||
| #ifdef HAVE_PROJECTM_TEXT_FUNCTIONS | |||||
| case '/': | case '/': | ||||
| pmKey = PROJECTM_K_SLASH; | pmKey = PROJECTM_K_SLASH; | ||||
| break; | break; | ||||
| case '\\': | case '\\': | ||||
| pmKey = PROJECTM_K_BACKSLASH; | pmKey = PROJECTM_K_BACKSLASH; | ||||
| break; | break; | ||||
| #endif | |||||
| case '+': | case '+': | ||||
| pmKey = PROJECTM_K_PLUS; | pmKey = PROJECTM_K_PLUS; | ||||
| break; | break; | ||||
| @@ -116,9 +116,16 @@ BASE_FLAGS += -DPROJECTM_DATA_DIR='"$(shell pkg-config --variable=pkgdatadir lib | |||||
| BASE_FLAGS += $(shell pkg-config --cflags libprojectM) | BASE_FLAGS += $(shell pkg-config --cflags libprojectM) | ||||
| LINK_FLAGS += $(shell pkg-config --libs libprojectM) | LINK_FLAGS += $(shell pkg-config --libs libprojectM) | ||||
| ifeq ($(shell pkg-config --atleast-version=3.1.8 libprojectM && echo true),true) | |||||
| BASE_FLAGS += -DHAVE_PROJECTM_TEXT_FUNCTIONS | |||||
| endif | |||||
| else # HAVE_PROJECTM | else # HAVE_PROJECTM | ||||
| # compiler macros | |||||
| # custom macros for ProM | |||||
| BASE_FLAGS += -DHAVE_PROJECTM_TEXT_FUNCTIONS | |||||
| # compiler macros from projectM | |||||
| BASE_FLAGS += -DUSE_TEXT_MENU=1 | BASE_FLAGS += -DUSE_TEXT_MENU=1 | ||||
| BASE_FLAGS += -DUSE_THREADS=1 | BASE_FLAGS += -DUSE_THREADS=1 | ||||
| # GLES stuff | # GLES stuff | ||||
| @@ -30,7 +30,7 @@ Its purpose in life is to read an audio input and to produce mesmerizing visuals | |||||
| * [Windows Store](https://www.microsoft.com/store/apps/9NDCVH0VCWJN) | * [Windows Store](https://www.microsoft.com/store/apps/9NDCVH0VCWJN) | ||||
| #### Other | #### Other | ||||
| * [Source code](https://github.com/projectM-visualizer/projectm/) | * [Source code](https://github.com/projectM-visualizer/projectm/) | ||||
| * [LV2 + VST2 audio plugin](https://github.com/DISTRHO/ProM/) | |||||
| * [LV2, VST2 and VST3 audio plugin](https://github.com/DISTRHO/ProM/) | |||||
| * [Qt5](https://www.qt.io/)-based [PulseAudio](https://www.freedesktop.org/wiki/Software/PulseAudio/) and JACK desktop apps in [source code](https://github.com/projectM-visualizer/projectm/) | * [Qt5](https://www.qt.io/)-based [PulseAudio](https://www.freedesktop.org/wiki/Software/PulseAudio/) and JACK desktop apps in [source code](https://github.com/projectM-visualizer/projectm/) | ||||
| * [ALSA, XMMS, Winamp, JACK](https://sourceforge.net/projects/projectm/files/) (source, unmaintained) | * [ALSA, XMMS, Winamp, JACK](https://sourceforge.net/projects/projectm/files/) (source, unmaintained) | ||||