1 # vim: set ts=4 sw=4 et:
5 if [ -z "$XBPS_PRESERVE_PKGS" ] ||
[ "$XBPS_BUILD_FORCEMODE" ]; then
8 arch
=$XBPS_TARGET_MACHINE
9 curpkg
=$XBPS_REPOSITORY/$repository/$pkgver.
$arch.xbps
10 if [ -e $curpkg ]; then
11 msg_warn
"$pkgver: skipping build due to existing $curpkg\n"
17 local cross
="$1" _arch f match nonegation
19 if [ -n "$archs" ]; then
20 if [ -n "$cross" ]; then
21 _arch
="$XBPS_TARGET_MACHINE"
22 elif [ -n "$XBPS_ARCH" ]; then
36 if [ -z "$nonegation" -a -n "$match" ] ||
[ -n "$nonegation" -a -z "$match" ]; then
37 report_broken
"${pkgname}-${version}_${revision}: this package cannot be built for ${_arch}.\n"
42 # Returns 1 if pkg is available in xbps repositories, 0 otherwise.
44 local pkg
="$1" cross
="$2" pkgver
46 if [ -n "$cross" ]; then
47 pkgver
=$
($XBPS_QUERY_XCMD -R -ppkgver "${pkg}" 2>/dev
/null
)
49 pkgver
=$
($XBPS_QUERY_CMD -R -ppkgver "${pkg}" 2>/dev
/null
)
52 if [ -z "$pkgver" ]; then
58 remove_pkg_autodeps
() {
59 local rval
= tmplogf
= errlogf
= prevs
=
61 cd $XBPS_MASTERDIR ||
return 1
62 msg_normal
"${pkgver:-xbps-src}: removing autodeps, please wait...\n"
63 tmplogf
=$
(mktemp
) ||
exit 1
64 errlogf
=$
(mktemp
) ||
exit 1
67 $XBPS_RECONFIGURE_CMD -a >> $tmplogf 2>&1
68 prevs
=$
(stat_size
$tmplogf)
69 echo yes |
$XBPS_REMOVE_CMD -Ryod 2>> $errlogf 1>> $tmplogf
71 while [ $rval -eq 0 ]; do
72 local curs
=$
(stat_size
$tmplogf)
73 if [ $curs -eq $prevs ]; then
77 echo yes |
$XBPS_REMOVE_CMD -Ryod 2>> $errlogf 1>> $tmplogf
81 if [ $rval -ne 0 ]; then
82 msg_red
"${pkgver:-xbps-src}: failed to remove autodeps: (returned $rval)\n"
83 cat $tmplogf && rm -f $tmplogf
84 cat $errlogf && rm -f $errlogf
85 msg_error
"${pkgver:-xbps-src}: cannot continue!\n"
92 if [ -d "$wrksrc" ]; then
93 msg_normal
"$pkgver: cleaning build directory...\n"
94 rm -rf "$wrksrc" 2>/dev
/null ||
chmod -R +wX
"$wrksrc" # Needed to delete Go Modules
99 remove_pkg_statedir
() {
100 if [ -d "$XBPS_STATEDIR" ]; then
101 rm -rf "$XBPS_STATEDIR"
106 local cross
="$1" _destdir f
108 [ -z $pkgname ] && msg_error
"nonexistent package, aborting.\n"
110 if [ -n "$cross" ]; then
111 _destdir
="$XBPS_DESTDIR/$XBPS_CROSS_TRIPLET"
113 _destdir
="$XBPS_DESTDIR"
116 [ ! -d ${_destdir} ] && return
118 for f
in ${sourcepkg} ${subpackages}; do
119 if [ -d "${_destdir}/${f}-${version}" ]; then
120 msg_normal
"$f: removing files from destdir...\n"
121 rm -rf ${_destdir}/${f}-${version}
123 if [ -d "${_destdir}/${f}-dbg-${version}" ]; then
124 msg_normal
"$f: removing dbg files from destdir...\n"
125 rm -rf ${_destdir}/${f}-dbg-${version}
127 if [ -d "${_destdir}/${f}-32bit-${version}" ]; then
128 msg_normal
"$f: removing 32bit files from destdir...\n"
129 rm -rf ${_destdir}/${f}-32bit-${version}
131 rm -f ${XBPS_STATEDIR}/${f}_${cross}_subpkg_install_done
132 rm -f ${XBPS_STATEDIR}/${f}_${cross}_prepkg_done
134 rm -f ${XBPS_STATEDIR}/${sourcepkg}_${cross}_install_done
135 rm -f ${XBPS_STATEDIR}/${sourcepkg}_${cross}_pre_install_done
136 rm -f ${XBPS_STATEDIR}/${sourcepkg}_${cross}_post_install_done