"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "smake/smake.1" between
schily-2021-08-14.tar.bz2 and schily-2021-09-18.tar.bz2

About: Schily Tools are a collection of programs like cdrecord, cdda2wav, mkisofs, star and much more. In memoriam of the author Jörg Schilling, who passed away in October 2021.

smake.1  (schily-2021-08-14.tar.bz2):smake.1  (schily-2021-09-18.tar.bz2)
skipping to change at line 334 skipping to change at line 334
functionality and automated adaptivity of smake. functionality and automated adaptivity of smake.
Automake special purpose macros Automake special purpose macros
The special purpose macros that have names that match MAKE_* (see section Special Macros) are part of the The special purpose macros that have names that match MAKE_* (see section Special Macros) are part of the
automake features of smake. The related special macros are set up by sma ke to contain values that have automake features of smake. The related special macros are set up by sma ke to contain values that have
been retrieved from the results of the uname(2), sysinfo(2) or sysctl( 2) system calls. The values for been retrieved from the results of the uname(2), sysinfo(2) or sysctl( 2) system calls. The values for
these macros may however be overwritten from a makefile or from a command line macro definition. these macros may however be overwritten from a makefile or from a command line macro definition.
Automake special targets Automake special targets
The special target .INCLUDE_FAILED allows to define a rule that is evalua ted in case that an include The special target .INCLUDE_FAILED allows to define a rule that is evalua ted in case that an include
files does not exist and could not be made from other rules. As the asoc files does not exist and could not be made from other rules. As the as
iated command for this target is sociated command for this target
typically a shell script, the shell script can be written to create fall is typically a shell script, the shell script can be written to create fa
back rules in a platform inde- ll back rules in a platform
pendent way. independent way.
Search Rules For Files Search Rules For Files
In many cases, it is desirable to hold object files in a special direc tory which is different from the In many cases, it is desirable to hold object files in a special direc tory which is different from the
directory where the source files are located. For this reason, smake all ows to specify a directory where directory where the source files are located. For this reason, smake all ows to specify a directory where
all targets are placed in case they are a result of an implicit rule. Ad d all targets are placed in case they are a result of an implicit rule. Ad d
.OBJDIR: object_directory .OBJDIR: object_directory
to the makefile to activate this smake feature. If a makefile u ses this feature, it must either to the makefile to activate this smake feature. If a makefile u ses this feature, it must either
explicitely use the right file names (including the object directory) or use dynamic macros that are explicitely use the right file names (including the object directory) or use dynamic macros that are
skipping to change at line 513 skipping to change at line 513
is used to replace prefixes and suffixes in words. In this case, op is th e old prefix, os is the old suf- is used to replace prefixes and suffixes in words. In this case, op is th e old prefix, os is the old suf-
fix, np is the new prefix and ns is the new suffix. The strings op, os, np and ns may all be empty fix, np is the new prefix and ns is the new suffix. The strings op, os, np and ns may all be empty
strings. The pattern % matches a string of zero or more characters. The matched pattern is carried for- strings. The pattern % matches a string of zero or more characters. The matched pattern is carried for-
ward to the replacement target. For example: ward to the replacement target. For example:
OBJECT=foo.o OBJECT=foo.o
SCCS_HISTFILE=$(OBJECT:%.o=SCCS/s.%.c) SCCS_HISTFILE=$(OBJECT:%.o=SCCS/s.%.c)
replaces foo.o by SCCS/s.foo.c when the macro $(SCCS_HISTFILE) is referen ced. replaces foo.o by SCCS/s.foo.c when the macro $(SCCS_HISTFILE) is referen ced.
The replacement is done on a word by word base and the white space betwee
n words is literally retained.
If there is no match, the result is unmodified.
Shell Replacement Macro References Shell Replacement Macro References
A macro reference in the following form: A macro reference in the following form:
$(name:sh) $(name:sh)
will interpret the content of the macro name as a shell command line, cal l the shell with the content of will interpret the content of the macro name as a shell command line, ca ll the shell with the content of
the macro and return the output of the called command. the macro and return the output of the called command.
Special Targets Special Targets
.DEFAULT: .DEFAULT:
If a target is considered to be out of date and no other rule ap plies to this target, smake exe- If a target is considered to be out of date and no other rule appl ies to this target, smake exe-
cutes the commands from this special target. The .DEFAULT target may not have a dependency list. cutes the commands from this special target. The .DEFAULT target may not have a dependency list.
.DONE: If this special target is present, smake executes the commands aft .DONE: If this special target is present, smake executes the commands
er all targets have been pro- after all targets have been pro-
cessed. The .DONE target is also executed if a failure occurs a cessed. The .DONE target is also executed if a failure occurs and
nd no .FAILED target is present. no .FAILED target is present.
The .DONE target may not have a dependency list. The .DONE target may not have a dependency list.
.FAILED: .FAILED:
If this special target is present and an error occurred, smake exe If this special target is present and an error occurred, smake
cutes the commands instead of executes the commands instead of
the the commands of the .DONE target after all targets have bee the the commands of the .DONE target after all targets have been p
n processed. The .FAILED target rocessed. The .FAILED target
may not have a dependency list. may not have a dependency list.
.FORCE_SHELL: .FORCE_SHELL:
If this special target is present, smake executes all commands via the shell instead of trying to If this special target is present, smake executes all commands vi a the shell instead of trying to
optimize command execution for simple commands. optimize command execution for simple commands.
.GET_POSIX: .GET_POSIX:
Reserved for future use. Reserved for future use.
.IGNORE: .IGNORE:
Ignore errors. When this special target is present and has no Ignore errors. When this special target is present and has no de
dependencies, smake will ignore pendencies, smake will ignore
errors from commands. Specifying .IGNORE: without dependencies is errors from commands. Specifying .IGNORE: without dependenci
equivalent to using the -i es is equivalent to using the -i
option. If .IGNORE: has dependencies and the current target i option. If .IGNORE: has dependencies and the current target is in
s in the list of dependencies of the list of dependencies of
.IGNORE: the exit code for the related commands is ignored. .IGNORE: the exit code for the related commands is ignored.
.INCLUDE_FAILED: .INCLUDE_FAILED:
This special target implements automake features for object orient This special target implements automake features for object orie
ed layered makefiles. If this nted layered makefiles. If this
target is present, smake executes the commands for this target in target is present and defines commands, smake executes the command
case that a make file could not s for this target in case that a
be included and there was no other explicit or implicit rule that makefile could not be included and there was no other explicit
did create the the missing make or implicit rule that did create
include file. The .INCLUDE_FAILED target may not have a depende the the missing make include file.
ncy list. When the commands for
the target .INCLUDE_FAILED are called, the dependency list of the The .INCLUDE_FAILED target may not have a dependency list. When
special target is set up to the the commands for the target
include file name. The commands for the target .INCLUDE_FAILED .INCLUDE_FAILED are called, the dependency list of the special
are called for both, the include target is set up to the include
and the -include directive. If the commands for the .INCLUDE_FAILE filename that caused the failure. It is therefore recommended to
D target cannot create a file define the commands for the
that is going to be included, smake will fail in case that the inc .INCLUDE_FAILED target to include $^ as parameter. The command
lude directive was used. s for the target .INCLUDE_FAILED
are called only for the include and not for the -include directi
ve. If the commands for the
.INCLUDE_FAILED target cannot create a file that is going to be in
cluded, smake fails.
.INIT: If this target is present, the target and its dependencies are built before any other target is .INIT: If this target is present, the target and its dependencies are built before any other target is
made. made.
.KEEP_STATE: .KEEP_STATE:
Reserved by SunPRO make. Don't use this target to avoid problems w ith the SCHILY (Sing) makefile Reserved by SunPRO make. Don't use this target to avoid problems w ith the SCHILY (Sing) makefile
system. system.
.KEEP_STATE_FILE: .KEEP_STATE_FILE:
Reserved by SunPRO make. Don't use this target to avoid problems with the SCHILY (Sing) makefile Reserved by SunPRO make. Don't use this target to avoid problems with the SCHILY (Sing) makefile
skipping to change at line 1172 skipping to change at line 1178
The download directory is: The download directory is:
http://sourceforge.net/projects/schilytools/files/ http://sourceforge.net/projects/schilytools/files/
Check for the schily-*.tar.bz2 archives. Check for the schily-*.tar.bz2 archives.
Less frequently updated source code for the smake project is at: Less frequently updated source code for the smake project is at:
http://sourceforge.net/projects/s-make/files/ http://sourceforge.net/projects/s-make/files/
Joerg Schilling 2021/08/13 SMAKE(1) Joerg Schilling 2021/09/07 SMAKE(1)
 End of changes. 10 change blocks. 
38 lines changed or deleted 46 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)