summaryrefslogtreecommitdiffstats
path: root/sysutils/portupgrade
diff options
context:
space:
mode:
authorknu <knu@FreeBSD.org>2004-01-31 17:15:13 +0000
committerknu <knu@FreeBSD.org>2004-01-31 17:15:13 +0000
commit449bff6a60df9e47dc84409779cc2a0d0c0456e8 (patch)
tree2ebd45f51436f7301aaec0ed7cd66f5f2b066577 /sysutils/portupgrade
parent8a34a65f625d48c2e3e00e302ef205dfffe649b8 (diff)
downloadFreeBSD-ports-449bff6a60df9e47dc84409779cc2a0d0c0456e8.zip
FreeBSD-ports-449bff6a60df9e47dc84409779cc2a0d0c0456e8.tar.gz
Add a patch to make portupgrade just use stdout/stderr redirection to
keep build logs rather than calling script(1) when stdin is not a tty. I wonder if this works against the portupgrade-from-cron problem...
Diffstat (limited to 'sysutils/portupgrade')
-rw-r--r--sysutils/portupgrade/Makefile1
-rw-r--r--sysutils/portupgrade/files/patch-pkgtools.rb46
2 files changed, 47 insertions, 0 deletions
diff --git a/sysutils/portupgrade/Makefile b/sysutils/portupgrade/Makefile
index 2ceba7f..7c8eb31 100644
--- a/sysutils/portupgrade/Makefile
+++ b/sysutils/portupgrade/Makefile
@@ -7,6 +7,7 @@
PORTNAME= portupgrade
PORTVERSION= 20040113
+PORTREVISION= 1
CATEGORIES= sysutils
MASTER_SITES= ftp://ftp.iDaemons.org/pub/distfiles/ \
${MASTER_SITE_LOCAL}
diff --git a/sysutils/portupgrade/files/patch-pkgtools.rb b/sysutils/portupgrade/files/patch-pkgtools.rb
new file mode 100644
index 0000000..3d7e68a
--- /dev/null
+++ b/sysutils/portupgrade/files/patch-pkgtools.rb
@@ -0,0 +1,46 @@
+Index: lib/pkgtools.rb
+===================================================================
+RCS file: /home/cvs/pkgtools/lib/pkgtools.rb,v
+retrieving revision 1.116
+diff -u -r1.116 pkgtools.rb
+--- lib/pkgtools.rb 19 Oct 2003 11:56:34 -0000 1.116
++++ lib/pkgtools.rb 16 Jan 2004 12:11:11 -0000
+@@ -478,14 +478,20 @@
+ alias system! sudo
+ alias xsystem! xsudo
+
+-# script, xscript
+-def __script(x, file, *args)
+- if file
+- __system(x, '/usr/bin/script', '-qa', file, *args)
++def logged_command(file, args)
++ if !file
++ args
++ elsif STDIN.tty?
++ ['/usr/bin/script', '-qa', file, *args]
+ else
+- __system(x, *args)
++ ['/bin/sh', '-c', sprintf('%s >>%s 2>&1', shelljoin(*args), shelljoin(file))]
+ end
+ end
++
++# script, xscript
++def __script(x, file, *args)
++ __system(x, *logged_command(file, args))
++end
+ def script(file, *args)
+ __script(false, file, *args)
+ end
+@@ -495,11 +501,7 @@
+
+ # script!, xscript!
+ def __script!(x, file, *args)
+- if file
+- __sudo(x, '/usr/bin/script', '-qa', file, *args)
+- else
+- __sudo(x, *args)
+- end
++ __sudo(x, *logged_command(file, args))
+ end
+ def script!(file, *args)
+ __script!(false, file, *args)
OpenPOWER on IntegriCloud