memlnaut-nisps/vcv/Makefile.dist
w1n5t0n ba0fcab2a2 feat(vcv,playground): complete Phases 8, 9, 10 — all phases done
Phase 8 — Companion webapp bridge:
- NISPS-FORMAT.md: full .nisps JSON schema with validation rules
- Webapp iml.js: exportState() / importState() with bias handling
- osc_server.hpp: minimal UDP OSC server (cross-platform, no deps)
- VCV module: OSC toggle + port selection in right-click menu
- osc-client.js: WebSocket client with auto-reconnect
- Bridge scripts updated for bidirectional VCV↔webapp relay

Phase 9 — Panel layout variants:
- MEMLNaut.svg: 30HP standard panel (matches widget positions)
- MEMLNaut-wide.svg: 44HP with expanded display and 8 input slots
- MEMLNaut-expander.svg: 8HP with 6 extra inputs and LINK LED

Phase 10 — Polish & distribution:
- README.md: 267-line user guide (install, quick start, RL workflow,
  presets, OSC, technical details)
- BUILDING.md: build prerequisites, SDK setup, local install
- Makefile.dist: platform-stamped zip packaging
- SPEC.md: performance characteristics (1060 MADs/pass, ~46KB/instance)
- SPEC.md: v1 compatibility assessment (v2-only recommended)
2026-03-28 01:48:44 +02:00

35 lines
1.1 KiB
Text

# Distribution packaging for MEMLNaut VCV plugin
#
# Usage:
# make -f Makefile.dist dist # Build plugin then package
# make -f Makefile.dist package-only # Package without rebuilding
# make -f Makefile.dist clean-dist # Remove dist/ directory
PLUGIN_NAME = MEMLNaut
VERSION = 0.1.0
PLATFORM = $(shell uname -s)-$(shell uname -m)
# Delegate build to the main Makefile (which includes the VCV SDK plugin.mk)
all:
$(MAKE) -f Makefile
# Build then package
dist: all package-only
# Package the already-built plugin (no rebuild)
package-only:
@echo "Packaging $(PLUGIN_NAME) v$(VERSION) for $(PLATFORM)..."
mkdir -p dist/$(PLUGIN_NAME)
cp plugin.so dist/$(PLUGIN_NAME)/ 2>/dev/null || true
cp plugin.dylib dist/$(PLUGIN_NAME)/ 2>/dev/null || true
cp plugin.dll dist/$(PLUGIN_NAME)/ 2>/dev/null || true
cp plugin.json dist/$(PLUGIN_NAME)/
cp -r res dist/$(PLUGIN_NAME)/
cd dist && zip -r $(PLUGIN_NAME)-$(VERSION)-$(PLATFORM).zip $(PLUGIN_NAME)
rm -rf dist/$(PLUGIN_NAME)
@echo "Created dist/$(PLUGIN_NAME)-$(VERSION)-$(PLATFORM).zip"
clean-dist:
rm -rf dist
.PHONY: all dist package-only clean-dist