]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
pkgbase: Add incremental packages
authorEmmanuel Vadot <manu@FreeBSD.org>
Mon, 2 Nov 2020 18:23:50 +0000 (18:23 +0000)
committerEmmanuel Vadot <manu@FreeBSD.org>
Mon, 2 Nov 2020 18:23:50 +0000 (18:23 +0000)
commit0ac8aa55da1cb5e53a9102fd007dd01ee6d17894
treee4e370815ab8b3fbe9c705cb1df687ecf6e0a000
parent36639c3942f587e652d2aba6a71ad45b64c2ce47
pkgbase: Add incremental packages

This adds a new target update-packages which will create the new packages
compared to the last run.

This is how to use it:
At this point we cut a release
$ make buildworld ...
$ make buildkernel
$ make packages

    There is now a PKG_VERSION directory with latest link pointing to it
    Distribute the packages to server

$ something something that update the source tree
$ make buildworld ...
$ make buildkernel
$ make update-packages
You know have a PKG_VERSION directory in the REPODIR and latest link pointing to it.
In PKG_VERSION dir only the packages which differs from the latest run are
named PKG_VERSION, otherwise the old packages are there.

The process is :
Build the new packages in the PKG_VERSION directory
Compare the internal data with the PKG_VERSION_FROM version. The comparison is done
by checking the internal hash of the packages.
By default PKG_VERSION_FROM is set to what the latest link points to.
If the old and new version matches, we rm the new package and cp the old one.

Differential Revision: https://reviews.freebsd.org/D25984
Makefile
Makefile.inc1