Views
currently the Pd-extended build-system features
- a working system
- a huge monolithic Makefile
- dependencies on several toplevel directories
this basically means that you have to checkout a lot of code if you need and want to build a single external (and not the entire shebang)
proposal:
- split monolithic Makefile into separate small Makefiles which are then called recursively
- each extended-enabled sub-directory in externals/ holds a
Makefile.extended
- if
Makefile.extended
is present, it will be called from the main externals/Makefile recursively
- if
- there is only a small number of build-targets
in order of inter-dependencies
configure
-- runs autoconf or whatever (if needed)build
(default) -- builds the binaryinstall
-- installs the binaries into a certain location (see below)clean
-- remove build leftovers
- configuration (e.g. path to pd-headers, compiler to use,...)
- should be distributed via environment variables
- rather than via
-include Makefile.common
constructs
- use GNU standards:
- e.g.
prefix
,DESTDIR
,... http://www.gnu.org/prep/standards/html_node/Makefile-Conventions.html
- e.g.
- each Makefile.extended is responsible to make the modules own build system (if available) conformant to this standards
obsolete? --rfabbri, Wed, 28 Sep 2011 01:00:20 +0200 reply
this has alredy been done, right?
obsolete? --rfabbri, Wed, 28 Sep 2011 01:00:27 +0200 reply
this has already been done, right?
done in a way --hans, Mon, 04 Feb 2013 02:01:38 +0100 reply
The Library Template accomplishes this in a somewhat different approach. I think it covers the over-arching idea.