make: Testing Flags

 
 7.3 Conditionals that Test Flags
 ================================
 
 You can write a conditional that tests 'make' command flags such as '-t'
 by using the variable 'MAKEFLAGS' together with the 'findstring'
 function (SeeFunctions for String Substitution and Analysis Text
 Functions.).  This is useful when 'touch' is not enough to make a file
 appear up to date.
 
    The 'findstring' function determines whether one string appears as a
 substring of another.  If you want to test for the '-t' flag, use 't' as
 the first string and the value of 'MAKEFLAGS' as the other.
 
    For example, here is how to arrange to use 'ranlib -t' to finish
 marking an archive file up to date:
 
      archive.a: ...
      ifneq (,$(findstring t,$(MAKEFLAGS)))
              +touch archive.a
              +ranlib -t archive.a
      else
              ranlib archive.a
      endif
 
 The '+' prefix marks those recipe lines as "recursive" so that they will
 be executed despite use of the '-t' flag.  SeeRecursive Use of
 'make' Recursion.