summaryrefslogtreecommitdiff
path: root/src/chroot-tools/libremakepkg
diff options
context:
space:
mode:
authorLuke Shumaker <LukeShu@sbcglobal.net>2013-10-01 20:21:07 -0400
committerLuke Shumaker <LukeShu@sbcglobal.net>2013-10-01 20:23:43 -0400
commit86ee0a5da2a3a02d291ae40c8570bcd97ff066de (patch)
treedcc9e601ec36b36792c04c5053846215677527c7 /src/chroot-tools/libremakepkg
parent64e7456af141330ae33d51dc74a1ab331cfc3b2d (diff)
libremakepkg: when prefixing output with ' | ', do better than sed.
There are two downsizes to using sed; it line-buffers, and (the existing pattern) doesn't handle '\r'. So, now I've included a Perl helper program to do a better job. I'd originally written it in C, and while that version was faster (the Perl version stutters occasionally), it required recompilation for different architectures. I could have gotten around that with tcc, but I didn't want to add any dependencies. Which is why I settled on Perl. It's part of group=(base), and it is required by packages in group=(base-devel), so I can count on it always being there. It doesn't handle every movement character, just '\n' and '\r', but that's enough for curl and pacman.
Diffstat (limited to 'src/chroot-tools/libremakepkg')
-rwxr-xr-xsrc/chroot-tools/libremakepkg3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/chroot-tools/libremakepkg b/src/chroot-tools/libremakepkg
index df4cd07..f808070 100755
--- a/src/chroot-tools/libremakepkg
+++ b/src/chroot-tools/libremakepkg
@@ -30,6 +30,7 @@ shopt -s nullglob
umask 0022
# Global variables:
+readonly _indent="$(librelib chroot/indent)"
readonly INCHROOT=$([[ -f /.arch-chroot ]] && echo true || echo false)
NONET=true # can be changed with the -N flag
# {SRC,LOG,PKG}DEST set at runtime by makepkg.conf
@@ -50,7 +51,7 @@ hook_check_pkg=(:)
# Boring/mundane functions #####################################################
indent() {
- sed 's/^/ | /'
+ "$_indent" ' | '
}
# Usage: exit_copy $copydir $src_owner