Browse Source

Replace svgs with dummy files for MOD builds; Fix last commit

Signed-off-by: falkTX <falktx@falktx.com>
tags/22.02
falkTX 3 years ago
parent
commit
62f5a80f72
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
4 changed files with 71 additions and 8 deletions
  1. +2
    -2
      deps/res2c.py
  2. +51
    -0
      deps/svg2stub.py
  3. +10
    -4
      plugins/Makefile
  4. +8
    -2
      src/Makefile.cardinal.mk

plugins/res2c.py → deps/res2c.py View File

@@ -2,7 +2,7 @@
# -*- coding: utf-8 -*-

# DISTRHO Plugin Framework (DPF)
# Copyright (C) 2012-2021 Filipe Coelho <falktx@falktx.com>
# Copyright (C) 2012-2022 Filipe Coelho <falktx@falktx.com>
#
# Permission to use, copy, modify, and/or distribute this software for any purpose with
# or without fee is hereby granted, provided that the above copyright notice and this
@@ -42,7 +42,7 @@ if __name__ == '__main__':
filename = sys.argv[1]

if not os.path.exists(filename):
print("Folder '%s' does not exist" % filename)
print("File '%s' does not exist" % filename)
quit()

# dump code now

+ 51
- 0
deps/svg2stub.py View File

@@ -0,0 +1,51 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

# DISTRHO Plugin Framework (DPF)
# Copyright (C) 2012-2022 Filipe Coelho <falktx@falktx.com>
#
# Permission to use, copy, modify, and/or distribute this software for any purpose with
# or without fee is hereby granted, provided that the above copyright notice and this
# permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD
# TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN
# NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
# DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
# IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

import os
import sys
import xml.etree.ElementTree as ET

# -----------------------------------------------------

def svg2stub(filename_in, filename_out):
node = ET.parse(filename_in).getroot()

with open(filename_out, 'w') as fh:
fh.write('<?xml version="1.0" encoding="UTF-8" standalone="no"?>\n')
fh.write('<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"')
for key, value in node.items():
if '{' in key:
continue
fh.write(' %s="%s"' % (key, value))
fh.write('></svg>')

# -----------------------------------------------------

if __name__ == '__main__':
if len(sys.argv) != 3:
print("Usage: %s <in-filename> <out-filename>" % sys.argv[0])
quit()

filename_in = sys.argv[1]
filename_out = sys.argv[2]

if not os.path.exists(filename_in):
print("File '%s' does not exist" % filename_in)
quit()

# dump code now
svg2stub(filename_in, filename_out)

+ 10
- 4
plugins/Makefile View File

@@ -854,7 +854,7 @@ RESOURCE_FILES += MindMeldModular/res/ShapeMaster/CommunityShapes
RESOURCE_FILES += MindMeldModular/res/ShapeMaster/MindMeldPresets
RESOURCE_FILES += MindMeldModular/res/ShapeMaster/MindMeldShapes

# MOD builds only have FX variant for now
# MOD builds only have LV2 FX variant for now
ifeq ($(MOD_BUILD),true)
LV2_RESOURCES = $(PLUGIN_LIST:%=../bin/CardinalFX.lv2/resources/PluginManifests/%.json)
LV2_RESOURCES += $(RESOURCE_FILES:%=../bin/CardinalFX.lv2/resources/%)
@@ -865,7 +865,6 @@ LV2_RESOURCES += $(PLUGIN_LIST:%=../bin/CardinalSynth.lv2/resources/PluginManife
LV2_RESOURCES += $(RESOURCE_FILES:%=../bin/Cardinal.lv2/resources/%)
LV2_RESOURCES += $(RESOURCE_FILES:%=../bin/CardinalFX.lv2/resources/%)
LV2_RESOURCES += $(RESOURCE_FILES:%=../bin/CardinalSynth.lv2/resources/%)
endif

ifeq ($(MACOS),true)
VST2_RESOURCES = $(PLUGIN_LIST:%=../bin/CardinalFX.vst/Contents/Resources/PluginManifests/%.json)
@@ -885,6 +884,7 @@ VST3_RESOURCES += $(PLUGIN_LIST:%=../bin/CardinalSynth.vst3/Contents/Resources/P
VST3_RESOURCES += $(RESOURCE_FILES:%=../bin/Cardinal.vst3/Contents/Resources/%)
VST3_RESOURCES += $(RESOURCE_FILES:%=../bin/CardinalFX.vst3/Contents/Resources/%)
VST3_RESOURCES += $(RESOURCE_FILES:%=../bin/CardinalSynth.vst3/Contents/Resources/%)
endif

resources: $(LV2_RESOURCES) $(VST2_RESOURCES) $(VST3_RESOURCES)

@@ -900,6 +900,12 @@ resources: $(LV2_RESOURCES) $(VST2_RESOURCES) $(VST3_RESOURCES)
-@mkdir -p "$(shell dirname $@)"
$(SILENT)ln -sf $(abspath $<) $@

ifeq ($(MOD_BUILD),true)
../bin/CardinalFX.lv2/resources/%.svg: %.svg ../deps/svg2stub.py
-@mkdir -p "$(shell dirname $@)"
$(SILENT)python3 ../deps/svg2stub.py $< $@
endif

../bin/Cardinal.lv2/resources/PluginManifests/%.json: %/plugin.json
-@mkdir -p "$(shell dirname $@)"
$(SILENT)ln -sf $(abspath $<) $@
@@ -987,10 +993,10 @@ $(TARGET): $(PLUGIN_OBJS)
$(SILENT)rm -f $@
$(SILENT)$(AR) crs $@ $^

$(BUILD_DIR)/%.bin.c: % res2c.py
$(BUILD_DIR)/%.bin.c: % ../deps/res2c.py
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Generating $*.bin.c"
$(SILENT)python3 ./res2c.py $< > $@
$(SILENT)python3 ../deps/res2c.py $< > $@

$(BUILD_DIR)/%.bin.o: $(BUILD_DIR)/%.bin.c
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"


+ 8
- 2
src/Makefile.cardinal.mk View File

@@ -250,9 +250,9 @@ BUILD_CXX_FLAGS += -DCARDINAL_PLUGIN_PREFIX='"$(PREFIX)"'
# Enable all possible plugin types and setup resources

ifeq ($(CARDINAL_VARIANT),main)
all: jack lv2 vst3 resources
all: jack lv2 vst3
else
all: lv2 vst2 vst3 resources
all: lv2 vst2 vst3
endif

CORE_RESOURCES = $(subst ../Rack/res/,,$(wildcard ../Rack/res/ComponentLibrary/*.svg ../Rack/res/fonts/*.ttf))
@@ -289,6 +289,12 @@ $(TARGET_DIR)/$(NAME).lv2/resources/%: ../Rack/res/%
-@mkdir -p "$(shell dirname $@)"
$(SILENT)ln -sf $(abspath $<) $@

ifeq ($(MOD_BUILD),true)
$(TARGET_DIR)/$(NAME).lv2/resources/%.svg: ../Rack/res/%.svg ../../deps/svg2stub.py
-@mkdir -p "$(shell dirname $@)"
$(SILENT)python3 ../../deps/svg2stub.py $< $@
endif

$(TARGET_DIR)/$(NAME).vst/resources/%: ../Rack/res/%
-@mkdir -p "$(shell dirname $@)"
$(SILENT)ln -sf $(abspath $<) $@


Loading…
Cancel
Save