some recent changes in build system / scp2

Michael Stahl mstahl at redhat.com
Mon Nov 10 12:19:43 PST 2014


recently i've had some time to move more stuff out of scp2, which got
rid of a fair bit of duplicated conditionals.

on master, all libraries, executables and jars that are installed are
now registered for their scp2 package in Repository.mk.

this means that when you add something to one of the existing blocks
there you need to check that it is the *correct* block, i.e., the second
parameter of gb_Helper_register_*_for_install indicates the scp2
installation module that shall contain the file.

consistency between the "layer" of libraries / executables / jars and
whether or not they are installed is enforced by gbuild to avoid wrong
usage.

one benefit of this is that if the conditional about whether one of
these is built and whether it is included in the installation sets are
inconsistent, then the build will fail: if it is built but not
registered then the build will detect that, if it is installed but not
built then instsetoo_native will fail to build.  this should reduce
embarrassing bugs about un-packaged libraries like we've had in the past.

there were a few executables in instdir that were not actually intended
to be installed, and i've moved these to the NONE layer and the
workdir/LinkTarget/Executable dir where they belong (instdir should
contain exactly those build artifacts that are contained in installation
sets; the rest goes in workdir).

there is a new "bin/run" convenience script to run the programs out of
workdir/LinkTarget/Executable; at the time when i did the change
"bin/run vcldemo" would execute successfully on Linux - please add
support for other platforms to the script when you need it.



More information about the LibreOffice mailing list