allyourcodebase / libmp3lame

libmp3lame with the build system replaced by zig
Other
7 stars 5 forks source link

Make mpglib interface optional #4

Open kavika13 opened 1 month ago

kavika13 commented 1 month ago

This is a feature suggestion.

I believe mpglib is optional for some use cases.

I more or less did a parallel implementation of this repo on my local project before I found out this allyourcodebase org existed. In my local project, I was able to build and encode without including any of the C files under the mpglib directory.

I don't yet know how to add config options in a zig library, so that a dependent project can pass parameters and affect how a dependency's build.zig functions. But if that's possible, then adding a flag for excluding mpglib might be a good idea.

It could also be as simple as splitting it up into two build artifacts?

kavika13 commented 1 month ago

I finally had a reason to use the decoder portion of LAME, and the "mpglib" part of the code is used in decoding.

I'm not sure what upstream's intent with it was, whether they should be considered separate parts of the library or addressable separately or not. I don't think they're being split into separate static libraries, so matching that intent is probably good enough. Maybe closing this ticket is the right move.