minutes of ESC call ...

Bjoern Michaelsen bjoern.michaelsen at canonical.com
Fri Dec 9 10:35:09 UTC 2016


Hi, 

some additional thoughts below:

On Thu, Dec 08, 2016 at 07:40:40PM +0100, Bjoern Michaelsen wrote:
> > 	AFAICS - there -should- also be no need for cygwin, LODE, or anything
> > else in this world ;-) just a single download.
> Ok, who is going to finally kill scp2, the horribly icon-theme scriping, UNO
> registry generation plumbing etc. for good? (With kill=port to plain C++ tooling).
> [...]
> Well, we sneakily use various bits of sed/gawk/gperf/perl/python/zip/tar/... in
> various corners of the build. Killing those and replacing them with GNU make
> and plain C++ would be good, but is quite a thankless effort. I agree though it
> would be appreciated to make the build easier to bootstrap.
> 
> tl;dr: First kill the POSIX deps sprinkled all over the repo[1], building a bit of
> C++ libs isnt the issue.  All the plumbing around it is.

On a more positive and actionable note: With C++11 having regex[1] that
certainly is possible and e.g. Perl-to-C++11 might even be some EasyHacks.
Limiting the tools used in the build system to C++11, GNU make and basic
cross-plattform busybox[2] might be a starting point and allow all of:

- migrating to e.g. using ninja as backend
- migrating away from GNU make (via gbuildtojson and manually recreating the
  bazillion configure-based conditional we have in Makefiles)
- simple bootstrapping on Windows without the need for cygwin or LODE 

So while I am reluctant to replace gbuild as the canonical build _right now_,
Im all for killing the custom tooling based on all of coreutils and Perl in
gbuild (and replace it with plain C++11 ... and maybe busybox for a start).
Once that happened, we can consider all the options on where to carry the build
system from there. But locking in one of those options now, with all the
tooling crap still around would be jumping the gun.

So: Who is going to champion the "kill all Perl in the Build" (for a start) EasyHack?

Best,

Bjoern

[1] http://en.cppreference.com/w/cpp/regex
[2] There are at least two native ports:
    https://github.com/rmyorston/busybox-w32
    https://github.com/pclouds/busybox-w32


More information about the LibreOffice mailing list