porres / pd-else

ELSE - EL Locus Solus' Externals for Pure Data
Do What The F*ck You Want To Public License
289 stars 36 forks source link

improve build system #2158

Open porres opened 2 weeks ago

porres commented 2 weeks ago

It would be good to build ELSE all on its own... right now I have to do special makes for [plaits~], [play.file~]/[sfload], [circuit~], [sfz~] and [sfont~].

It's ok to have a single way to build just these, but I'd like to have a single make that builds it all

Also, there are a couple of folders that I wanted to copy when doing make, but I don't know how to do that. Both are in the /documentation folder: Live-Electronics-Tutorial and extra_files/sf (I should also put the 'sfz' folder in here).

porres commented 2 weeks ago

sfz~ and circuit~ shouldn't install in ~/library/pd

Screenshot 2024-08-26 at 21 33 00
porres commented 2 weeks ago

@timothyschoen I'd need your help for these

porres commented 2 weeks ago

I'd like the code_source folder to include objects independently instead of having [play.file~] and [sfload] in the same folder and built together... same with [pd.link] and [pd.link~], specially because I have a separate folder for control and signal objects.

so moving sfload.c to control objects and pd.link~.c to signal objects is necessary.

and now we also have [pd.link] and [pd.link~] that need to be built separately, and I hope ALL objects could be built at once... [plaits~], [play.file~], [sfload], [circuit~], [sfz~], [sfont~] and now [pd.link] and [pd.link~]

porres commented 2 weeks ago

also, we should and could use a single pd-lib-builder, right now they are all over the place

timothyschoen commented 2 weeks ago

I'd like the code_source folder to include objects independently instead of having [play.file~] and [sfload] in the same folder and built together... same with [pd.link] and [pd.link~], specially because I have a separate folder for control and signal objects.

so moving sfload.c to control objects and pd.link~.c to signal objects is necessary.

That's fine, but then all the dependencies of those objects need to move to the "shared" folder. I'm not sure that's the best way to go?

timothyschoen commented 2 weeks ago

Also in general, I wonder if it's useful to separate "signal" and "control" into separate folders? It makes it harder to find related objects. If I could list alphabetically, you can find those much quicker.

A small pet peeve for me is that I have to click through 4 layers of folders to get to objects when working on ELSE. Why not structure it like this:

This way, you can get to the most important parts much faster. There is less width and depth in the amount of folders.

timothyschoen commented 2 weeks ago

For the build system: I can't fix this with Makefiles, I'm not an expert on those. I can write a shell script though, to build and copy everything?

porres commented 2 weeks ago

but then all the dependencies of those objects need to move to the "shared" folder.

I'd actually like that, makes sense with the rest of things

porres commented 2 weeks ago

I can write a shell script though, to build and copy everything?

sure

porres commented 2 weeks ago

Also in general, I wonder if it's useful to separate "signal" and "control" into separate folders?

One problem I have sometimes if I have cents2ratio and cents2ratio~ on the same folder is that if I change 'cents2ratio' and save, it removes cents2ratio~

I also like to keep count of objects separately (number of signal [coded and abstraction] objects, number of control [coded and abstraction] objects).