xbps-src: fix fetch phase with depends, performance improvements.
- The fetch phase *must* run after installing pkg dependencies, otherwise it could fail if we need them for fetching. - Performance improvements for xbps-src. Only source shutils files at the start, not every time we use a function.
This commit is contained in:
parent
12b16e75a0
commit
7984b39928
10 changed files with 10 additions and 63 deletions
|
@ -23,8 +23,6 @@
|
|||
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
#-
|
||||
|
||||
. $XBPS_SHUTILSDIR/tmpl_funcs.sh
|
||||
|
||||
install_pkg_from_repos()
|
||||
{
|
||||
local cmd rval pkgdepname pkg="$1"
|
||||
|
@ -91,7 +89,6 @@ autoremove_pkg_dependencies()
|
|||
continue
|
||||
fi
|
||||
# remove pkg.
|
||||
. ${XBPS_SHUTILSDIR}/pkgtarget_funcs.sh
|
||||
msg_warn "removing package $pkgname installed from source...\n"
|
||||
remove_pkg
|
||||
fi
|
||||
|
|
|
@ -54,7 +54,6 @@ if [ "${chroot_cmd}" = "chroot" ]; then
|
|||
fi
|
||||
fi
|
||||
|
||||
. $XBPS_SHUTILSDIR/builddep_funcs.sh
|
||||
check_installed_pkg base-chroot-0.11
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "${XBPS_MASTERDIR} has not been prepared for chroot operations."
|
||||
|
|
|
@ -141,7 +141,6 @@ msg_red()
|
|||
msg_error()
|
||||
{
|
||||
msg_red "$@"
|
||||
. $XBPS_SHUTILSDIR/builddep_funcs.sh
|
||||
autoremove_pkg_dependencies
|
||||
|
||||
exit 1
|
||||
|
|
|
@ -66,7 +66,6 @@ configure_src_phase()
|
|||
|
||||
# Apply patches if requested by template file
|
||||
if [ ! -f $XBPS_APPLYPATCHES_DONE ]; then
|
||||
. $XBPS_SHUTILSDIR/patch_funcs.sh
|
||||
apply_tmpl_patches
|
||||
fi
|
||||
|
||||
|
|
|
@ -49,7 +49,6 @@ xbps_write_metadata_pkg()
|
|||
. $XBPS_SRCPKGDIR/${sourcepkg}/${subpkg}.template
|
||||
pkgname=${subpkg}
|
||||
set_tmpl_common_vars
|
||||
. ${XBPS_SHUTILSDIR}/verify_rundeps.sh
|
||||
verify_rundeps ${DESTDIR}
|
||||
xbps_write_metadata_pkg_real
|
||||
done
|
||||
|
@ -66,7 +65,6 @@ xbps_write_metadata_pkg()
|
|||
fi
|
||||
setup_tmpl ${sourcepkg}
|
||||
# Verify pkg deps.
|
||||
. ${XBPS_SHUTILSDIR}/verify_rundeps.sh
|
||||
verify_rundeps ${DESTDIR}
|
||||
xbps_write_metadata_pkg_real
|
||||
}
|
||||
|
@ -412,7 +410,6 @@ _EOF
|
|||
# Create the INSTALL/REMOVE scripts if package uses them
|
||||
# or uses any available trigger.
|
||||
#
|
||||
. ${XBPS_SHUTILSDIR}/metadata_scripts.sh; \
|
||||
xbps_write_metadata_scripts_pkg install; \
|
||||
xbps_write_metadata_scripts_pkg remove; \
|
||||
} || return $?
|
||||
|
|
|
@ -23,9 +23,6 @@
|
|||
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
#-
|
||||
|
||||
. ${XBPS_SHUTILSDIR}/tmpl_funcs.sh
|
||||
. ${XBPS_SHUTILSDIR}/common_funcs.sh
|
||||
|
||||
#
|
||||
# Installs a pkg by reading its build template file.
|
||||
#
|
||||
|
@ -44,17 +41,9 @@ install_pkg()
|
|||
|
||||
pkg="$curpkgn-$version"
|
||||
[ -n "$INSTALLING_DEPS" ] && setup_tmpl $curpkgn
|
||||
|
||||
#
|
||||
# Fetch distfiles before checking its dependencies.
|
||||
#
|
||||
. $XBPS_SHUTILSDIR/fetch_funcs.sh
|
||||
fetch_distfiles
|
||||
|
||||
#
|
||||
# Refuse to install the same package that is already installed.
|
||||
#
|
||||
. $XBPS_SHUTILSDIR/builddep_funcs.sh
|
||||
check_installed_pkg "$pkg"
|
||||
if [ $? -eq 1 -o $? -eq 0 ]; then
|
||||
instver="$($XBPS_PKGDB_CMD version $pkgname)"
|
||||
|
@ -79,12 +68,15 @@ install_pkg()
|
|||
msg_normal "Installing '$pkgname'...\n"
|
||||
fi
|
||||
|
||||
#
|
||||
# Fetch distfiles before checking its dependencies.
|
||||
#
|
||||
fetch_distfiles
|
||||
|
||||
#
|
||||
# Fetch, extract, build and install into the destination directory.
|
||||
#
|
||||
|
||||
if [ ! -f "$XBPS_EXTRACT_DONE" ]; then
|
||||
. $XBPS_SHUTILSDIR/extract_funcs.sh
|
||||
extract_distfiles
|
||||
if [ $? -ne 0 ]; then
|
||||
msg_red "cannot extract distfiles for '$pkgname'!\n"
|
||||
|
@ -93,7 +85,6 @@ install_pkg()
|
|||
fi
|
||||
|
||||
if [ ! -f "$XBPS_CONFIGURE_DONE" ]; then
|
||||
. $XBPS_SHUTILSDIR/configure_funcs.sh
|
||||
configure_src_phase
|
||||
if [ $? -ne 0 ]; then
|
||||
msg_red "cannot configure '$pkgname'!\n"
|
||||
|
@ -102,7 +93,6 @@ install_pkg()
|
|||
fi
|
||||
|
||||
if [ ! -f "$XBPS_BUILD_DONE" ]; then
|
||||
. $XBPS_SHUTILSDIR/build_funcs.sh
|
||||
build_src_phase
|
||||
if [ $? -ne 0 ]; then
|
||||
msg_red "cannot build '$pkgname'!\n"
|
||||
|
@ -121,12 +111,10 @@ install_pkg()
|
|||
|
||||
# Strip binaries/libraries.
|
||||
if [ -z "$noarch" ]; then
|
||||
. $XBPS_SHUTILSDIR/strip_files.sh
|
||||
strip_files
|
||||
fi
|
||||
|
||||
# Always write metadata to package's destdir.
|
||||
. $XBPS_SHUTILSDIR/metadata.sh
|
||||
trap 'remove_pkgdestdir_sighandler ${pkgname}' INT
|
||||
xbps_write_metadata_pkg
|
||||
if [ $? -ne 0 ]; then
|
||||
|
@ -139,7 +127,6 @@ install_pkg()
|
|||
[ "$install_destdir_target" = "yes" ] && return 0
|
||||
|
||||
# Stow package into masterdir.
|
||||
. $XBPS_SHUTILSDIR/stow_funcs.sh
|
||||
stow_pkg_handler stow
|
||||
if [ $? -ne 0 ]; then
|
||||
msg_red "cannot stow '$pkgname'!\n"
|
||||
|
@ -174,7 +161,6 @@ install_pkg()
|
|||
# Autoremove packages installed as dependencies if
|
||||
# XBPS_PREFER_BINPKG_DEPS is set.
|
||||
#
|
||||
. ${XBPS_SHUTILSDIR}/builddep_funcs.sh
|
||||
autoremove_pkg_dependencies
|
||||
|
||||
return $?
|
||||
|
@ -205,7 +191,6 @@ remove_pkg()
|
|||
[ -z $pkgname ] && msg_error "unexistent package, aborting.\n"
|
||||
|
||||
ver=$($XBPS_PKGDB_CMD version $pkgname)
|
||||
. $XBPS_SHUTILSDIR/stow_funcs.sh
|
||||
stow_pkg_handler unstow || return $?
|
||||
|
||||
for subpkg in ${subpackages}; do
|
||||
|
|
|
@ -23,8 +23,6 @@
|
|||
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
#-
|
||||
|
||||
. ${XBPS_SHUTILSDIR}/builddep_funcs.sh
|
||||
|
||||
stow_pkg_handler()
|
||||
{
|
||||
local action="$1" subpkg spkgrev
|
||||
|
|
|
@ -23,8 +23,6 @@
|
|||
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
#-
|
||||
|
||||
. ${XBPS_SHUTILSDIR}/tmpl_funcs.sh
|
||||
|
||||
strip_files()
|
||||
{
|
||||
local subpkg
|
||||
|
|
|
@ -66,7 +66,6 @@ info_tmpl()
|
|||
done
|
||||
echo "$long_desc"
|
||||
echo
|
||||
. $XBPS_SHUTILSDIR/builddep_funcs.sh
|
||||
check_build_depends_pkg
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "This package requires the following build-time dependencies:"
|
||||
|
@ -284,8 +283,6 @@ set_tmpl_common_vars()
|
|||
{
|
||||
[ -z "$pkgname" ] && return 1
|
||||
|
||||
. ${XBPS_SHUTILSDIR}/install_files.sh
|
||||
|
||||
FILESDIR=$XBPS_SRCPKGDIR/$pkgname/files
|
||||
PATCHESDIR=$XBPS_SRCPKGDIR/$pkgname/patches
|
||||
DESTDIR=${XBPS_DESTDIR}/${pkgname}-${version}
|
||||
|
|
|
@ -212,14 +212,17 @@ if [ -n "${_MASTERDIR}" ]; then
|
|||
fi
|
||||
. @@XBPS_INSTALL_SHAREDIR@@/shutils/init_funcs.sh
|
||||
set_defvars
|
||||
for f in $(echo @@XBPS_INSTALL_SHAREDIR@@/shutils/*.sh); do
|
||||
if [ -r "$f" -a "$(basename $f)" != "chroot.sh" ]; then
|
||||
. $f
|
||||
fi
|
||||
done
|
||||
|
||||
#
|
||||
# Check for required utilities in host system.
|
||||
#
|
||||
check_reqhost_utils
|
||||
|
||||
. $XBPS_SHUTILSDIR/common_funcs.sh
|
||||
|
||||
#
|
||||
# Fix up some vars when XBPS_USE_CAPABILITIES is set.
|
||||
#
|
||||
|
@ -263,8 +266,6 @@ export PATH="$MYPATH"
|
|||
#
|
||||
case "$target" in
|
||||
bootstrap)
|
||||
. $XBPS_SHUTILSDIR/tmpl_funcs.sh
|
||||
. $XBPS_SHUTILSDIR/pkgtarget_funcs.sh
|
||||
[ ! -d $XBPS_SRCPKGDIR/base-chroot ] && \
|
||||
msg_error "Cannot find $XBPS_SRCPKGDIR/base-chroot directory!\n"
|
||||
cd $XBPS_SRCPKGDIR/base-chroot && _ORIGINPKG="$(basename_cwd)"
|
||||
|
@ -285,8 +286,6 @@ build|configure)
|
|||
_ORIGINPKG="${_pkgname}"
|
||||
setup_tmpl ${_ORIGINPKG}
|
||||
# If pkg has dependencies, install them first.
|
||||
. $XBPS_SHUTILSDIR/pkgtarget_funcs.sh
|
||||
. $XBPS_SHUTILSDIR/builddep_funcs.sh
|
||||
install_dependencies_pkg "$pkgname-$version"
|
||||
if [ $? -ne 0 ]; then
|
||||
msg_red "cannot install required deps for $pkgname.\n"
|
||||
|
@ -294,28 +293,21 @@ build|configure)
|
|||
fi
|
||||
# All deps were installed, continue with the origin pkg...
|
||||
setup_tmpl ${_ORIGINPKG}
|
||||
. $XBPS_SHUTILSDIR/fetch_funcs.sh
|
||||
fetch_distfiles
|
||||
if [ ! -f "$XBPS_EXTRACT_DONE" ]; then
|
||||
. $XBPS_SHUTILSDIR/extract_funcs.sh
|
||||
extract_distfiles
|
||||
fi
|
||||
if [ "$target" = "configure" ]; then
|
||||
. $XBPS_SHUTILSDIR/configure_funcs.sh
|
||||
configure_src_phase
|
||||
else
|
||||
if [ ! -f "$XBPS_CONFIGURE_DONE" ]; then
|
||||
. $XBPS_SHUTILSDIR/configure_funcs.sh
|
||||
configure_src_phase
|
||||
fi
|
||||
. $XBPS_SHUTILSDIR/build_funcs.sh
|
||||
build_src_phase
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
build-pkg)
|
||||
. $XBPS_SHUTILSDIR/make-binpkg.sh
|
||||
. $XBPS_SHUTILSDIR/tmpl_funcs.sh
|
||||
if [ -n "${_PACKAGEDIR}" ]; then
|
||||
export XBPS_PACKAGESDIR=${_PACKAGEDIR}
|
||||
fi
|
||||
|
@ -337,8 +329,6 @@ build-pkg)
|
|||
fi
|
||||
;;
|
||||
checkvers)
|
||||
. $XBPS_SHUTILSDIR/tmpl_funcs.sh
|
||||
. $XBPS_SHUTILSDIR/check_installed_packages.sh
|
||||
check_installed_packages
|
||||
;;
|
||||
chroot)
|
||||
|
@ -346,7 +336,6 @@ chroot)
|
|||
xbps_chroot_handler chroot dummy
|
||||
;;
|
||||
clean)
|
||||
. $XBPS_SHUTILSDIR/tmpl_funcs.sh
|
||||
if [ -z "${_pkgname}" ]; then
|
||||
[ ! -r ./template ] && msg_error "missing build template in $(pwd).\n"
|
||||
_pkgname=$(basename_cwd)
|
||||
|
@ -355,24 +344,19 @@ clean)
|
|||
remove_tmpl_wrksrc $wrksrc
|
||||
;;
|
||||
extract|fetch|info)
|
||||
. $XBPS_SHUTILSDIR/tmpl_funcs.sh
|
||||
if [ -z "${_pkgname}" ]; then
|
||||
[ ! -r ./template ] && msg_error "missing build template in $(pwd).\n"
|
||||
_pkgname=$(basename_cwd)
|
||||
fi
|
||||
setup_tmpl ${_pkgname}
|
||||
if [ "$target" = "info" ]; then
|
||||
. $XBPS_SHUTILSDIR/tmpl_funcs.sh
|
||||
info_tmpl
|
||||
exit $?
|
||||
fi
|
||||
. $XBPS_SHUTILSDIR/fetch_funcs.sh
|
||||
fetch_distfiles $update_checksum
|
||||
. $XBPS_SHUTILSDIR/extract_funcs.sh
|
||||
extract_distfiles
|
||||
;;
|
||||
install|install-destdir)
|
||||
. $XBPS_SHUTILSDIR/tmpl_funcs.sh
|
||||
if [ -z "${_pkgname}" ]; then
|
||||
[ ! -r ./template ] && msg_error "missing build template in $(pwd).\n"
|
||||
_pkgname=$(basename_cwd)
|
||||
|
@ -386,7 +370,6 @@ install|install-destdir)
|
|||
. $XBPS_SHUTILSDIR/chroot.sh
|
||||
xbps_chroot_handler $target ${_ORIGINPKG} $dontrm_builddir
|
||||
else
|
||||
. $XBPS_SHUTILSDIR/pkgtarget_funcs.sh
|
||||
setup_tmpl ${_ORIGINPKG}
|
||||
install_pkg $pkgname
|
||||
fi
|
||||
|
@ -396,7 +379,6 @@ list|listfiles)
|
|||
$XBPS_BIN_CMD list
|
||||
exit $?
|
||||
fi
|
||||
. $XBPS_SHUTILSDIR/pkgtarget_funcs.sh
|
||||
list_pkg_files $2
|
||||
;;
|
||||
make-repoidx)
|
||||
|
@ -411,7 +393,6 @@ make-repoidx)
|
|||
[ $? -eq 0 ] && echo "=> done."
|
||||
;;
|
||||
remove)
|
||||
. $XBPS_SHUTILSDIR/pkgtarget_funcs.sh
|
||||
if [ -z "${_pkgname}" ]; then
|
||||
[ ! -r ./template ] && msg_error "missing build template in $(pwd).\n"
|
||||
_pkgname=$(basename_cwd)
|
||||
|
@ -426,13 +407,11 @@ remove)
|
|||
;;
|
||||
stow)
|
||||
stow_flag=yes
|
||||
. $XBPS_SHUTILSDIR/tmpl_funcs.sh
|
||||
if [ -z "${_pkgname}" ]; then
|
||||
[ ! -r ./template ] && msg_error "missing build template in $(pwd).\n"
|
||||
_pkgname=$(basename_cwd)
|
||||
fi
|
||||
setup_tmpl ${_pkgname}
|
||||
. $XBPS_SHUTILSDIR/stow_funcs.sh
|
||||
stow_pkg_handler stow
|
||||
;;
|
||||
unstow)
|
||||
|
@ -442,7 +421,6 @@ unstow)
|
|||
_pkgname=$(basename_cwd)
|
||||
fi
|
||||
setup_tmpl ${_pkgname}
|
||||
. $XBPS_SHUTILSDIR/stow_funcs.sh
|
||||
stow_pkg_handler unstow
|
||||
;;
|
||||
*)
|
||||
|
|
Loading…
Reference in a new issue