Closed arfbtwn closed 5 years ago
Probably about time we extracted this one from feature/fixes too. I'll use the result of this in doing the auto-tools part of #4.
TODO: first commit in this series is huge, it needs cutting down into commits matching the goals in the description. Order is incorrect too - switching to gettext
should come before the major refactor.
Now it's separated into distinct goals, I think we may have 1-4 done, 5 is on its way and 6 is pie-in-the-sky but definitely desirable - considering the stretch goal. (we could extend that to system libraries)
Issues the current build system:
autogen.sh
is required becauseautoreconf
does not work;intltool
, which is deprecated;./configure
often fails for optional dependencies; (although it does provide resolution instructions)*.m4
file has custom style and implementation, raising the bar for new developers;Goals:
autoreconf -fvi
should produce a workingconfigure
script;*.m4
files;./configure
should succeed if base dependencies are satisfied; (or can be configured with internal facsimilies)./configure
should enable all optional components where dependencies are satisfied;./configure
should configure solution and project files. e.g triviallyLIBMTP_SIZEOF_T_64
but also the solution file build configuration.Stretch: