diff options
Diffstat (limited to 'stage')
-rwxr-xr-x | stage | 88 |
1 files changed, 62 insertions, 26 deletions
@@ -33,10 +33,14 @@ bpkg --version >/dev/null bdep --version >/dev/null # Make sure the build system if up to date (otherwise update will be triggered -# by libbuild2-hello distribution). +# by libbuild2-* module distribution). Also make sure the package manager is +# up to date since it depend on libbuild2. Update project manager for good +# measure. # -b build2/build2/ -b --version >/dev/null +b build2/build2/ bpkg/bpkg/ bdep/bdep/ +b --version >/dev/null +bpkg --version >/dev/null +bdep --version >/dev/null v="$(sed -n -re 's/^version: ([^.]+\.[^.]+\.[^-]+(-[ab]\.[^.+]+)?).*$/\1/p' build2-toolchain/manifest)" vf="$(echo $v | sed -re 's/^([^.]*)\.([^.]*)\.([^-]*).*$/\1.\2.\3/')" # Final. @@ -167,6 +171,7 @@ if [ "$script_only" != true ]; then XZ_OPT=-9 \ GZIP_OPT=-9 \ b dist: build2-toolchain-default/ \ + config.dist.root=/tmp/dist \ "config.dist.archives=$owd/$dist_src/$v/tar.xz $owd/$dist_src/$v/tar.gz" \ config.dist.checksums=sha256 fi @@ -203,6 +208,9 @@ for f in "${scripts[@]}"; do checksum_line "$f" done +##fi +## + # Sync the distribution. # # Note that we do the distribution first so that the toolchain changes are @@ -225,53 +233,69 @@ function sync_dist () # <dist-src> <dist-dst> [<rsync-options>] --prune-empty-dirs $rsync_ops "$@" "$s/" "$d/" } -sync_dist "$dist_src" "$dist_dst" $rsync_del +### +###if false; then -# Also sync (disable) queue. +# If we are not preparing packages, publish the distribution now. Otherwise, +# wait until we have prepared all the packages (which can take a considerable +# time). # -if [ "$mode" = "-p" ]; then - sync_dist "$queue_dist_src" "$queue_dist_dst" --delete-after -fi +if [ "$script_only" -o "$mode" = "-p" ]; then -##fi -## + sync_dist "$dist_src" "$dist_dst" $rsync_del -if [ "$script_only" = true ]; then - exit 0 -fi + # Also sync (disable) queue. + # + if [ "$mode" = "-p" ]; then + sync_dist "$queue_dist_src" "$queue_dist_dst" --delete-after + fi -if [ "$mode" = "-p" ]; then exit 0 fi # Distribute packages, regenerate and sync the repository. # +# Note: $mode is either empty or -q (which implies -d). -# These are just for testing (though libodb-mysql needs libmysqlclient). +# Extra packages for testing. # +if false; then +etc/stage-pkg -c $mode -d curl packaging/curl/curl/libcurl +etc/stage-pkg -c $mode -d curl packaging/curl/curl/curl +etc/stage-pkg -c $mode -d curl packaging/curl/ca-certificates-curl/libca-certificates-curl + +etc/stage-pkg -c $mode -d icu packaging/icu/icu/libicuuc +etc/stage-pkg -c $mode -d icu packaging/icu/icu/libicui18n +etc/stage-pkg -c $mode -d icu packaging/icu/icu/libicuio +fi + etc/stage-pkg -c $mode -d zlib packaging/zlib/zlib/libz -etc/stage-pkg -c $mode -d openssl packaging/openssl/openssl/libcrypto -etc/stage-pkg -c $mode -d openssl packaging/openssl/openssl/libssl -etc/stage-pkg -c $mode -d openssl packaging/openssl/openssl/openssl +etc/stage-pkg -c $mode -d openssl packaging/openssl/openssl/libcrypto \ + packaging/openssl/openssl/libssl \ + packaging/openssl/openssl/openssl etc/stage-pkg -c $mode -d mariadb packaging/mariadb/libmariadb etc/stage-pkg -c $mode -d mysql packaging/mysql/mysql/libmysqlclient etc/stage-pkg -c $mode -d libcutl ../cutl/libcutl -etc/stage-pkg -c $mode -d cli ../cli/cli + +etc/stage-pkg -c $mode -d cli ../cli/cli/cli +etc/stage-pkg -c $mode -d cli ../cli/cli/cli-tests +etc/stage-pkg -c $mode -d cli ../cli/cli/cli-examples # # etc/stage-pkg -c $mode -d libapr packaging/libapr/libapr1 etc/stage-pkg -c $mode -d libapreq packaging/libapreq/libapreq2 -etc/stage-pkg -c $mode -d postgresql packaging/postgresql/libpq + +etc/stage-pkg -c $mode -d postgresql packaging/postgresql/postgresql/libpq etc/stage-pkg -c $mode -d sqlite \ packaging/sqlite/sqlite/libsqlite3 \ packaging/sqlite/sqlite/sqlite3 -etc/stage-pkg -c $mode -d pkgconf packaging/pkgconf/pkgconf/libpkgconf +etc/stage-pkg -c $mode -d libpkg-config libpkg-config/libpkg-config etc/stage-pkg -c $mode -d cmark-gfm \ packaging/cmark-gfm/cmark-gfm/libcmark-gfm \ @@ -294,22 +318,34 @@ etc/stage-pkg -c $mode -d odb \ ../odb/builds/default/libodb-boost \ ../odb/builds/default/libodb-qt -etc/stage-pkg -c $mode build2 \ +# Regenerate the repository (unless $mode is -q) but do not publish. +# +etc/stage-pkg -c $mode -g build2 \ libbutl \ libbutl.bash \ build2 \ libbpkg \ bpkg \ - bpkg-rep \ + bpkg-util \ bdep \ + bdep-util \ libbbot \ brep \ bbot \ openssl-agent \ libbuild2-hello/libbuild2-hello \ - libbuild2-hello/libbuild2-hello-tests + libbuild2-hello/libbuild2-hello-tests \ + libbuild2-kconfig/kconfig-hello \ + libbuild2-kconfig/libbuild2-kconfig \ + libbuild2-kconfig/libbuild2-kconfig-tests \ + libbuild2-autoconf/libbuild2-autoconf \ + libbuild2-autoconf/libbuild2-autoconf-tests +###fi +### +sync_dist "$dist_src" "$dist_dst" $rsync_del -# msvc-linux -# libstd-modules +if [ "$mode" != "-q" ]; then + etc/stage-pkg -p +fi |