]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
pkgbase: Add incremental packages
authormanu <manu@FreeBSD.org>
Mon, 2 Nov 2020 18:23:50 +0000 (18:23 +0000)
committermanu <manu@FreeBSD.org>
Mon, 2 Nov 2020 18:23:50 +0000 (18:23 +0000)
commit4a6942636be912c80b895d299b74edda560ce813
treee4e370815ab8b3fbe9c705cb1df687ecf6e0a000
parentf6c1d0c440585e023a2d1ab1086803bcf2f8bf78
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