• Bjoern Michaelsen's avatar
    introduce gb_Package_PRESTAGEDIR · ee4d7829
    Bjoern Michaelsen yazdı
    this introduces a "prestage dir" -- if a file can be found in that
    directory, it will be copied over instead of build. Usecases for this
    include:
    
    - split builds:
      e.g. a part of the LibreOffice gets build by a core package and
      "writer" or "calc" package then only builds the additional missing
      pieces (while copying existing files from the earlier package build)
      please not this does not intend to produce separately installable
      instances, only to generate the build in multiple steps, to:
      - reduce filesystem usage of one build
      - paralellisation: e.g. "writer" and "calc" could build at the same
        time on two builders
      - restart capability: e.g. if a build breaks in "writer", no need to
        rebuild everything (relevant for slow and somewhat more flaky
        platforms like arm)
    - staged single build:
      on a filesystem restrained builder, keeping all the objects around for
      the build can be a burden. With this, such builders can do a partial
      build (lets say: "make svx"), put the instdir aside, make clean and
      continue -- but without needing to keep space for the object files of
      the build up to svx.
    
    It need gb_RUNNABLE_INSTDIR -- we are going there anyway, no need to
    support other scenarios.
    
    This needs more dependency breaking for most scenarios but a:
    
    export gb_RUNNABLE_INSTDIR=T
    make
    cp -a instdir instdir_prestage
    make clean
    make sw.all
    make sw.clean
    export gb_Package_PRESTAGEDIR=`readlink -f instdir_prestage/unxlngx6.pro`
    cd sw && make build # this does no compiles, it just copies
    
    Change-Id: I22d4208b2fad0d8fc59426ba4c8c52122876f646
    Reviewed-on: https://gerrit.libreoffice.org/5591Reviewed-by: 's avatarBjörn Michaelsen <bjoern.michaelsen@canonical.com>
    Tested-by: 's avatarBjörn Michaelsen <bjoern.michaelsen@canonical.com>
    ee4d7829
Adı
Son kayıt (commit)
Son güncelleme
..
bin Loading commit data...
doc/gbuild Loading commit data...
gbuild Loading commit data...
gcc-wrappers Loading commit data...
gdb Loading commit data...
inc Loading commit data...
lldb/libreoffice Loading commit data...
CustomTarget_gdb.mk Loading commit data...
Executable_concat-deps.mk Loading commit data...
Executable_g++-wrapper.mk Loading commit data...
Executable_gcc-wrapper.mk Loading commit data...
Makefile Loading commit data...
Module_solenv.mk Loading commit data...
Package_gdb.mk Loading commit data...
Package_gdb_install.mk Loading commit data...
README Loading commit data...
StaticLibrary_wrapper.mk Loading commit data...