[pve-devel] applied: [PATCH cluster v2] buildsys: replace autotools with plain makefiles

Thomas Lamprecht t.lamprecht at proxmox.com
Thu Jul 26 09:35:10 CEST 2018


Am 07/12/2018 um 10:06 AM schrieb Thomas Lamprecht:
> pve-cluster is not a big project with to much dependencies, so
> autotools was a bit of an overkill for it.
> Omit it, plus a ./configure step in general and just use a plain
> Makefile - in combination with pkg-config - like we do in our other
> projects.
> 
> Build time gets reduced quite a bit - albeit the were never that big
> anyway...:
> 
> (old autotools) time make deb
> make deb  12.96s user 1.78s system 94% cpu 15.543 total
> 
> (new plain makefile) time make deb
> make deb  9.40s user 1.14s system 100% cpu 10.465 total
> 
> A third less time needed here, and with compiling in parallel I can
> shave off even 1.5 seconds more, so almost  half of the original
> time.
> 
> Signed-off-by: Thomas Lamprecht <t.lamprecht at proxmox.com>
> ---
> 
> changes v1 -> v2:
> * s/make/$(MAKE)/
> * ensure all clean targets are PHONY ones
> * add all: target to data/Makefile
> * allow to build src/ binaries (pmxcfs and helpers) with make only by
>    adding them to the default target
> 
> Thanks to Wolfgang for the off-list review!
> 
>   data/Makefile             |  18 ++++
>   data/Makefile.am          |   4 -
>   data/PVE/API2/Makefile    |  11 +++
>   data/PVE/CLI/Makefile     |  11 +++
>   data/PVE/Cluster/Makefile |  17 ++++
>   data/PVE/Makefile         |  56 +++++++++++++
>   data/PVE/Makefile.am      |  54 ------------
>   data/autogen.sh           |   6 --
>   data/config.h.in          | 172 --------------------------------------
>   data/configure.ac         | 105 -----------------------
>   data/src/Makefile         |  57 +++++++++++++
>   data/src/Makefile.am      |  56 -------------
>   data/test/Makefile        |   1 -
>   debian/rules              |   2 +-
>   14 files changed, 171 insertions(+), 399 deletions(-)
>   create mode 100644 data/Makefile
>   delete mode 100644 data/Makefile.am
>   create mode 100644 data/PVE/API2/Makefile
>   create mode 100644 data/PVE/CLI/Makefile
>   create mode 100644 data/PVE/Cluster/Makefile
>   create mode 100644 data/PVE/Makefile
>   delete mode 100644 data/PVE/Makefile.am
>   delete mode 100755 data/autogen.sh
>   delete mode 100644 data/config.h.in
>   delete mode 100644 data/configure.ac
>   create mode 100644 data/src/Makefile
>   delete mode 100644 data/src/Makefile.am
> 

applied, together with Wolfgang's follow-ups (thanks!) and a 
follow-follow up from me (cleaning the dependency tracking files).




More information about the pve-devel mailing list