From 2e991b1aa559154bb65ad3b129f3643735e1dd4b Mon Sep 17 00:00:00 2001 From: Akinori MUSHA Date: Sat, 31 Jan 2004 17:15:13 +0000 Subject: 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... --- sysutils/portupgrade-devel/Makefile | 1 + sysutils/portupgrade-devel/files/patch-pkgtools.rb | 46 ++++++++++++++++++++++ sysutils/portupgrade/Makefile | 1 + sysutils/portupgrade/files/patch-pkgtools.rb | 46 ++++++++++++++++++++++ 4 files changed, 94 insertions(+) create mode 100644 sysutils/portupgrade-devel/files/patch-pkgtools.rb create mode 100644 sysutils/portupgrade/files/patch-pkgtools.rb (limited to 'sysutils') diff --git a/sysutils/portupgrade-devel/Makefile b/sysutils/portupgrade-devel/Makefile index 2ceba7fb7180..7c8eb3195579 100644 --- a/sysutils/portupgrade-devel/Makefile +++ b/sysutils/portupgrade-devel/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-devel/files/patch-pkgtools.rb b/sysutils/portupgrade-devel/files/patch-pkgtools.rb new file mode 100644 index 000000000000..3d7e68a52709 --- /dev/null +++ b/sysutils/portupgrade-devel/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) diff --git a/sysutils/portupgrade/Makefile b/sysutils/portupgrade/Makefile index 2ceba7fb7180..7c8eb3195579 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 000000000000..3d7e68a52709 --- /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) -- cgit v1.2.3