If you think the output from make is too verbose to your taste, here are some means to simplify it in the increasing order of silencing power:
Use the --no-p option (or the longer form --no-print-directory) to tell make not to print the directories it enters or exits. Since SRT already tells the name of the target and the directory when it descends into other directories, and does it in a much more compact way than what make does by default, you may want to turn this option on permanently. One way to do so is to set MAKEFLAGS environment variable to --no-p; you can do so in your shell's start up file. Then, every make command you run will pick up the option. Alternatively, you can alias the make command so that it the --no-p option is included.
Pipe the output from make to the less command, and use its -S option. This will cause it strip long lines instead of folding them. The long lines are still there, you just will be shown the characters that fit on a single terminal window line.
Pipe the output from make through a filter that chops file names to shorter forms. One such filter is provided by the tool suite, in $SRT_HOME/contrib/make-chopper. One would use it like this:
$ make |& $SRT_HOME/contrib/make-chopper |
If the QUIET makefile variable to is defined to value yes, most rules reduce the output to the minimum. Instead of printing out the entire compilation command, you will just get a short note of what the source and the target are. This will usually give a very compact output and make it a lot easier to find compilation errors, but on the other hand, you will have a harder time trying to diagnose errors that arise from bad command line options, such as missing -I directives. To enable this behaviour, just write:
$ make QUIET=yes |
Use the -s option (for --silent) to suppress all status output, but note that the option will also suppress the error messages from compilation. Use this option with care.
| [1] | This would be typically used for a package that builds only executables that other packages want to use. |
| [2] | When building official releases the path is simply taken to be the location of the package in the release. |
| [3] | Circual dependencies among packages or libraries is a bad idea. Do not do it. Not only does it force you to use the depend directive, but it also stops you from using linksets. Not to say anything about the broken software architecture you need to live with. |