DISTRHO / Cardinal

Virtual modular synthesizer plugin
https://cardinal.kx.studio/
GNU General Public License v3.0
2.22k stars 153 forks source link

How do I install the Mini variants? #528

Closed magnetophon closed 1 year ago

magnetophon commented 1 year ago

They get built, but not installed, as far as I can tell. Do I need to do anything different? I've looked at the makefile, but I don't see where APP_EXT gets defined.

Here's the relevant part of the output: https://gist.github.com/magnetophon/c33baec34794e428071bf20fe94e0099

falkTX commented 1 year ago

Indeed, I forgot to add it in https://github.com/DISTRHO/Cardinal/blob/main/Makefile#L272

Since you are packaging and testing this, a patch-fix would be appreciated. Should be simple enough just following the rest of the "install" make rule

magnetophon commented 1 year ago

You want me to do a PR? I've never written a makefile in my life!

I can copy and modify the lines that install the plugins, but I don't understand the APP_EXT mechanism, so I'm not sure how I'd install the standalones. Hints would be appreciated!

falkTX commented 1 year ago

The $(APP_EXT) comes from DPF, it just expands to ".exe" on windows and nothing for other platforms.

I can fix this myself for 23.04 in case you have troubles coming up with a patch-fix.

magnetophon commented 1 year ago

What do you mean by patch-fix, if not a PR? I'll give it a go!

falkTX commented 1 year ago

an actual patch file? it doesnt have to be a PR, good patch or just inline diff in the comments works too. it is just faster for you to verify this now since you are already dealing with packaging it.

magnetophon commented 1 year ago

OK, PR coming up, but it'll take while...

magnetophon commented 1 year ago

Untested, I'm still cloning, but IIUC, all I need is the standalone and the lv2, there is no mini clap or vst, right?

@@ -274,6 +274,7 @@ install:
    install -d $(DESTDIR)$(PREFIX)/lib/lv2/Cardinal.lv2
    install -d $(DESTDIR)$(PREFIX)/lib/lv2/CardinalFX.lv2
    install -d $(DESTDIR)$(PREFIX)/lib/lv2/CardinalSynth.lv2
+   install -d $(DESTDIR)$(PREFIX)/lib/lv2/CardinalMini.lv2
    install -d $(DESTDIR)$(PREFIX)/lib/clap/Cardinal.clap
    install -d $(DESTDIR)$(PREFIX)/lib/vst/Cardinal.vst
 ifeq ($(VST3_SUPPORTED),true)
@@ -287,6 +288,7 @@ endif
    install -m 644 bin/Cardinal.lv2/*.*      $(DESTDIR)$(PREFIX)/lib/lv2/Cardinal.lv2/
    install -m 644 bin/CardinalFX.lv2/*.*    $(DESTDIR)$(PREFIX)/lib/lv2/CardinalFX.lv2/
    install -m 644 bin/CardinalSynth.lv2/*.* $(DESTDIR)$(PREFIX)/lib/lv2/CardinalSynth.lv2/
+   install -m 644 bin/CardinalMini.lv2/*.*      $(DESTDIR)$(PREFIX)/lib/lv2/CardinalMini.lv2/

    install -m 644 bin/Cardinal.clap/*.*     $(DESTDIR)$(PREFIX)/lib/clap/Cardinal.clap/
    install -m 644 bin/Cardinal.vst/*.*      $(DESTDIR)$(PREFIX)/lib/vst/Cardinal.vst/
@@ -298,6 +300,7 @@ ifeq ($(VST3_SUPPORTED),true)
 endif

    install -m 755 bin/Cardinal$(APP_EXT)       $(DESTDIR)$(PREFIX)/bin/
+   install -m 755 bin/CardinalMini$(APP_EXT)   $(DESTDIR)$(PREFIX)/bin/
    install -m 755 bin/CardinalNative$(APP_EXT) $(DESTDIR)$(PREFIX)/bin/
falkTX commented 1 year ago

there is no mini clap or vst, right?

correct. mini is just standalone and lv2

magnetophon commented 1 year ago

I'm having trouble testing. Nixos has a mechanism for applying a diff file to source code, so I tried to generate a proper diff file, using the following steps:

The diff file I generated does not apply. Then I noticed that the Makefile from the tar.gz is not the same as the one in the 23.02 branch, so I committed the one from the gz and tried to generate a new diff file, but it still doesn't apply.

I have committed the diff file as well, so you can see it: https://github.com/DISTRHO/Cardinal/compare/23.02...magnetophon:Cardinal:wip

Any ideas? Maybe I'll just wait for 23.04 after all.

magnetophon commented 1 year ago
applying patch /nix/store/m36vh3f8d0f4jysc315bmslfk2iqxr2c-installfix.diff
patching file Makefile
Hunk #1 FAILED at 274.
Hunk #2 FAILED at 287.
Hunk #3 FAILED at 298.
3 out of 3 hunks FAILED -- saving rejects to file Makefile.rej
magnetophon commented 1 year ago

Thanks!