[Libreoffice] [PORTERS HEADS-UP] feature/kill-set_soenv

Bjoern Michaelsen bjoern.michaelsen at canonical.com
Mon Sep 19 11:09:44 PDT 2011


Hi,

as quite a few of you already noted I created a branch called
kill-set_soenv which intends to ... kill set_soenv.in. Why does that
script need to die? Well, currently we are:
- calling a perl-script called autogen.sh, to:
  - call autoconf to create ./configure from configure.in
  - call the just created configure, which:
    - uses AC_OUTPUT to generate a ./set_soenv from ./set_soenv.in
    - call the just created ./set_soenv (which it a Perl script):
      - set_soenv now creates a Env.Host.sh file, which is a script
        script, which again is sourced in the build by the shell started
        by make before calling a perl script called build.pl

All of this is a sure fire way to drive a newcomer (and even oldtimers)
insane. IMHO the final goal has to be that the above process
gets as simple as:
- calling a perl-script called autogen.sh, to:
  - call autoconf to create ./configure from configure.in
  - call the just created configure, which:
    - uses AC_OUTPUT to create a config.Host.mk, which has gnu make
      syntax and is sourced by make when building the product

As there are lots and lots of obsolete variables in the Env.Host.sh
file, quite a few variables are set only under specific conditions and
some have different names (or different content as they are
hacked/changed in later steps) in:
 - the configure.in script
 - the set_soenv.in script
 - the final Env.Host.sh file
the first step is to kill the set_soenv file to create Env.Host.sh
directly with AC_OUTPUT. Then one could simplify most of the irritating
differences and and get rid of the obsolete stuff. Changing the makefile
to source a config.Host.mk makefile insead of an environment then be
the final step.

feature/kill-set_soenv is a proof-of-concept without cleanup, just
showing that set_soenv is not needed anymore. It builds the
LibreOfficeLinux.conf on unxlngx6.pro and passes subsequenttest without
failure. It also introduces a DevLean.conf (--disable-mozilla
--disable-binfilter --without-help --without-myspell-dicts) and builds
and passes that.

So what I am asking is:

 Can porters help me get "their" platform buildable on that branch?

I would integrate that branch on master in about 2 weeks and would love
it to be tested on all major platforms by then. I ported linux for now
and can test the ppc, armel, i386 and amd64 target, but elsewhere any
help (porting and testing) is appreciated.

Best,

Bjoern

-- 
https://launchpad.net/~bjoern-michaelsen




More information about the LibreOffice mailing list