![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /usr/lib/modules/4.18.0-348.2.1.el8_5.x86_64/build/scripts/kconfig/tests/preprocess/escape/ |
# 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))