-
-
Notifications
You must be signed in to change notification settings - Fork 480
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
make V=0 should silence the build #21539
Comments
This comment has been minimized.
This comment has been minimized.
Commit: |
Author: Matthias Koeppe |
This comment has been minimized.
This comment has been minimized.
comment:6
Needs review. |
comment:7
I think the |
comment:8
I really dislike |
comment:11
Replying to @jdemeyer:
OK, I've changed it so this is only done in V=0 mode. |
comment:12
Two comments:
to something like
The path to the log file should be given relative to |
comment:13
For the output, I'm thinking of something like this change (although I cheat in constructing the shortened path for the logfile here -- there should be a more robust solution): diff --git a/build/bin/sage-logger b/build/bin/sage-logger
index c6afae1..de6cff8 100755
--- a/build/bin/sage-logger
+++ b/build/bin/sage-logger
@@ -57,15 +57,15 @@ mkdir -p "$logdir"
if [[ "$V" = 0 && $use_prefix = true ]]; then
# Silent build.
# Similar to https://www.gnu.org/software/automake/manual/html_node/Automake-Silent-Rules.html#Automake-Silent-Rules
- echo "Running '$cmd', output appears in $logfile..."
+ echo "[$logname] installing. Log file: logs/pkg/$logname"
# Use verbose mode for output to logfiles.
export V=1
( exec> $logfile 2>&1 ; eval "$cmd" )
status=$?
if [[ $status != 0 ]]; then
- echo "Running '$cmd', output appears in $logfile... exit status $status"
+ echo " [$logname] error installing, exit status $status. Log file: $logfile"
else
- echo "Running '$cmd', output appears in $logfile... done"
+ echo " [$logname] successfully installed"
fi
exit $status
else |
comment:14
Feel free to push (a more robust version of) this to the ticket |
comment:15
Replying to @jhpalmieri:
Right. However, in this case the logs are still there by default. This ticket will only affect people who explicitly set |
Changed branch from u/mkoeppe/make_v_0_should_silence_the_build to u/jhpalmieri/make_v_0_should_silence_the_build |
comment:17
Here's a branch that makes the easy parts of those changes but does not change how the log file is printed. New commits:
|
comment:18
I would also be tempted to silence the --- configure 2016-09-27 16:34:53.000000000 -0700
+++ configure 2016-09-28 10:47:33.000000000 -0700
@@ -7311,7 +7311,7 @@
else
# Normal Sage packages
echo >&7 "\$(INST)/$PKG_VERSION:$DEPS"
- echo >&7 " +sage-logger -p '\$(SAGE_SPKG) $PKG_VERSION' '\$(SAGE_LOGS)/$PKG_VERSION.log'"
+ echo >&7 " \$(AM_V_at)+sage-logger -p '\$(SAGE_SPKG) $PKG_VERSION' '\$(SAGE_LOGS)/$PKG_VERSION.log'"
echo >&7
# Add a target with just the bare package name for "sage -i" I don't know anything about |
comment:19
Configure.ac already does that. |
comment:20
Okay, so I assume that if this is merged, This doesn't silence warnings, maybe it's not silencing STDERR, only STDOUT. So I see messages on the screen like
I want to see warnings if there is a serious problem, but it would be nice if I didn't have to see these minor ones. I'm also seeing many lines of the form
I guess they come from the target |
comment:21
Replying to @jhpalmieri:
The release manager takes care of this. |
comment:22
Replying to @jhpalmieri:
I think this indicates we are using |
comment:23
I've created #21610 for that. |
comment:24
To silence even more |
Changed branch from u/jhpalmieri/make_v_0_should_silence_the_build to u/mkoeppe/make_v_0_should_silence_the_build |
comment:26
Replying to @jhpalmieri:
I've added some more New commits:
|
comment:27
Needs review. |
comment:28
When I use
|
comment:30
Thanks for catching this. Fixed. |
comment:31
This looks okay to me now. Jeroen, any objections to a positive review? |
Reviewer: John Palmieri |
comment:32
Jeroen, please add yourself as a reviewer if you would like. |
Changed branch from u/mkoeppe/make_v_0_should_silence_the_build to |
comment:34
Related: #22418 |
Changed commit from |
Building sage outputs a lot. Especially in highly parallelized builds, the output is not very useful.
This ticket implements an option to silence the build, using
make
argument (or environment variable)V=0
. (This mimics the interface of Automake silent rules; so this is one step towards #21566):Note that, though all output is redirected, the interactive questions (#20884, #21082) still go through to the terminal. This is achieved by using
/dev/tty
.The patch also unconditionally silences a few make recipe lines involving
sage-logger
.Follow-up ticket: #21589
CC: @embray @jdemeyer @vbraun @videlec @dimpase @nexttime @kcrisman @novoselt @kiwifb
Component: build
Author: Matthias Koeppe
Branch:
740ecfb
Reviewer: John Palmieri
Issue created by migration from https://trac.sagemath.org/ticket/21539
The text was updated successfully, but these errors were encountered: