%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
# SPDX-License-Identifier: GPL-2.0 # Shorthand warning = $(warning-if,y,$(1)) # You can not pass commas directly to a function since they are treated as # delimiters. You can use the following trick to do so. comma := , $(warning,hello$(comma) world) # Like Make, single quotes, double quotes, spaces are treated verbatim. # The following prints the text as-is. $(warning, ' " '" ' ''' "'") # Unlike Make, '$' has special meaning only when it is followed by '('. # No need to escape '$' itself. $(warning,$) $(warning,$$) $ := 1 $(warning,$($)) # You need a trick to escape '$' followed by '(' # The following should print "$(X)". It should not be expanded further. dollar := $ $(warning,$(dollar)(X)) # You need a trick to treat unbalanced parentheses. # The following should print "(". left_paren := ( $(warning,$(left_paren)) # A simple expanded should not be expanded multiple times. # The following should print "$(X)". It should not be expanded further. Y := $(dollar)(X) $(warning,$(Y)) # The following should print "$(X)" as well. Y = $(dollar)(X) $(warning,$(Y)) # The following should print "$(". # It should not be emit "unterminated reference" error. unterminated := $(dollar)( $(warning,$(unterminated))