File indexing completed on 2024-05-19 15:23:15

0001 <!DOCTYPE html>
0002 <html><head>
0003 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
0004 <title>Makefile</title>
0005 <meta name="generator" content="KF5::SyntaxHighlighting - Definition (Makefile) - Theme (Breeze Light)"/>
0006 </head><body style="background-color:#ffffff;color:#1f1c1b"><pre>
0007 <span style="color:#898887;"># comment</span>
0008 
0009 <span style="font-weight:bold;">include</span> Makefile.in
0010 <span style="font-weight:bold;">-include</span> Makefile.doesntexist
0011 
0012 <span style="color:#006e28;font-weight:bold;">.PHONY:</span><span style="color:#0057ae;"> all</span>
0013 
0014 <span style="color:#b08000;">all:</span><span style="color:#0057ae;"> target</span>
0015 
0016 <span style="color:#0057ae;">foo</span> <span style="color:#924c9d;">=</span><span style="color:#bf0303;"> bar </span><span style="color:#924c9d;">$(</span><span style="color:#0057ae;">var</span><span style="color:#924c9d;">)</span><span style="color:#bf0303;"> </span><span style="color:#924c9d;">\</span>
0017 <span style="color:#bf0303;">    </span><span style="color:#924c9d;">$(</span><span style="color:#0057ae;">baz</span><span style="color:#924c9d;">)</span><span style="color:#bf0303;"> quux</span>
0018 
0019 <span style="font-weight:bold;">ifeq</span> (<span style="color:#924c9d;">$(</span><span style="color:#0057ae;">CC</span><span style="color:#924c9d;">)</span>,gcc)
0020     <span style="color:#0057ae;">bla</span><span style="color:#924c9d;">=$(</span><span style="font-weight:bold;">call</span><span style="color:#bf0303;"> func</span><span style="font-weight:bold;">,</span><span style="color:#bf0303;">param1</span><span style="font-weight:bold;">,</span><span style="color:#bf0303;">param2</span><span style="color:#924c9d;">)</span>
0021 <span style="font-weight:bold;">else</span> <span style="font-weight:bold;">ifeq</span> <span style="color:#bf0303;">&quot;x&quot;</span> <span style="color:#bf0303;">&quot;y&quot;</span>
0022     <span style="color:#924c9d;">$(</span><span style="font-weight:bold;">error</span><span style="color:#bf0303;"> this seems wrong</span><span style="color:#924c9d;">)</span>
0023 <span style="font-weight:bold;">else</span>
0024     <span style="color:#0057ae;">libs</span><span style="color:#924c9d;">=$(</span><span style="color:#0057ae;">normal_libs</span><span style="color:#924c9d;">)</span>
0025 <span style="font-weight:bold;">endif</span>
0026 
0027 <span style="color:#b08000;">target1:</span>
0028 <span style="color:#bf0303;text-decoration:underline;">        </span>error
0029 
0030 <span style="color:#b08000;">target2:</span><span style="color:#0057ae;"> bla.cpp </span><span style="color:#924c9d;">$@</span>
0031     <span style="color:#924c9d;">$(</span><span style="color:#0057ae;">CC</span><span style="color:#924c9d;">)</span> bla.c -o bla.o
0032     <span style="color:#924c9d;">$(</span><span style="color:#0057ae;">CC</span><span style="color:#924c9d;">)</span> bla.o <span style="color:#924c9d;">$&lt;</span> <span style="color:#924c9d;">\</span>
0033         <span style="color:#924c9d;">-</span><span style="color:#644a9b;">o bla.exe</span>
0034     <span style="color:#924c9d;">@</span><span style="color:#644a9b;">echo </span><span style="color:#bf0303;">&quot;hello&quot;</span>
0035 
0036 <span style="color:#b08000;">target3:</span><span style="color:#0057ae;"> </span><span style="color:#924c9d;">;</span> <span style="color:#924c9d;">@</span><span style="color:#644a9b;">echo ’hello </span><span style="color:#924c9d;">\</span>
0037 <span style="color:#644a9b;">world’ ; echo </span><span style="color:#bf0303;">&quot;hello </span><span style="color:#924c9d;">\</span>
0038 <span style="color:#bf0303;">world&quot;</span>
0039     <span style="color:#924c9d;">@</span><span style="color:#644a9b;">echo </span><span style="color:#bf0303;">&quot;hello&quot;</span>
0040 
0041 <span style="color:#b08000;">target4:</span><span style="color:#0057ae;"> </span><span style="color:#924c9d;">;</span> echo ’hello <span style="color:#924c9d;">\</span>
0042 world’ ; echo <span style="color:#bf0303;">&quot;hello </span><span style="color:#924c9d;">\</span>
0043 <span style="color:#bf0303;">world&quot;</span>
0044     echo <span style="color:#bf0303;">&quot;hello&quot;</span>
0045 
0046 <span style="color:#898887;"># String Substitution</span>
0047 <span style="color:#0057ae;">VAR</span> <span style="color:#924c9d;">:=</span><span style="color:#bf0303;"> </span><span style="color:#924c9d;">$(</span><span style="color:#0057ae;">ANOTHER_VAR</span><span style="font-weight:bold;">:</span><span style="color:#ff5500;">%</span><span style="font-weight:bold;">=</span><span style="color:#ff5500;">%+1</span><span style="color:#924c9d;">)</span>
0048 
0049 <span style="color:#898887;"># Variable Assignment</span>
0050 <span style="color:#0057ae;">RELAXED</span> <span style="color:#924c9d;">::=</span><span style="color:#bf0303;"> mello</span>
0051 <span style="color:#0057ae;">rempl</span> <span style="color:#924c9d;">:=</span><span style="color:#bf0303;"> x</span>
0052 <span style="color:#0057ae;">foo</span> <span style="color:#924c9d;">:=</span><span style="color:#bf0303;"> a b c</span>
0053 <span style="color:#0057ae;">bar</span> <span style="color:#924c9d;">:=</span><span style="color:#bf0303;"> foo</span>
0054 <span style="color:#0057ae;">hello</span> <span style="color:#924c9d;">:=</span><span style="color:#bf0303;"> </span><span style="color:#924c9d;">$($(</span><span style="color:#0057ae;">bar</span><span style="color:#924c9d;">)</span><span style="font-weight:bold;">:</span><span style="color:#ff5500;">a</span><span style="font-weight:bold;">=</span><span style="color:#924c9d;">$(</span><span style="color:#0057ae;">rempl</span><span style="color:#924c9d;">))</span>
0055 <span style="color:#0057ae;">my??var</span><span style="color:#924c9d;">=</span><span style="color:#bf0303;">value</span>
0056 <span style="color:#0057ae;">var?</span><span style="color:#924c9d;">?=</span><span style="color:#bf0303;">value</span>
0057 <span style="color:#0057ae;">var</span><span style="color:#924c9d;">?=</span><span style="color:#bf0303;">value</span>
0058 <span style="color:#0057ae;">var?</span> <span style="color:#924c9d;">=</span><span style="color:#bf0303;"> value</span>
0059 <span style="color:#0057ae;">var</span> <span style="color:#924c9d;">:::=</span><span style="color:#bf0303;"> value</span>
0060 <span style="color:#0057ae;">var</span> <span style="color:#924c9d;">::=</span><span style="color:#bf0303;"> value</span>
0061 <span style="color:#0057ae;">var</span> <span style="color:#924c9d;">+=</span><span style="color:#bf0303;"> value</span>
0062 <span style="color:#0057ae;">var</span> <span style="color:#924c9d;">!=</span><span style="color:#bf0303;"> value</span>
0063   <span style="color:#0057ae;">var</span> <span style="color:#924c9d;">=</span><span style="color:#bf0303;"> value\#nocomment</span>
0064   <span style="color:#0057ae;">var</span> <span style="color:#924c9d;">=</span><span style="color:#bf0303;"> value</span><span style="color:#898887;">#comment</span>
0065   <span style="color:#0057ae;">var</span> <span style="color:#924c9d;">=</span><span style="color:#bf0303;"> value;value2</span>
0066 <span style="font-weight:bold;">override</span> <span style="color:#0057ae;">var</span> <span style="color:#924c9d;">=</span><span style="color:#bf0303;"> a</span>
0067 
0068 <span style="font-weight:bold;">define</span> <span style="color:#0057ae;">var</span> <span style="color:#924c9d;">:::=</span>
0069 bar
0070 <span style="font-weight:bold;">endef</span>
0071 
0072 <span style="font-weight:bold;">override</span> <span style="font-weight:bold;">define</span> <span style="color:#0057ae;">var</span> <span style="color:#924c9d;">:::=</span>
0073 bar
0074 <span style="font-weight:bold;">endef</span>
0075 
0076 <span style="color:#898887;"># Conditionals</span>
0077 <span style="color:#0057ae;">bar</span> <span style="color:#924c9d;">=</span>
0078 <span style="color:#0057ae;">foo</span> <span style="color:#924c9d;">=</span><span style="color:#bf0303;"> </span><span style="color:#924c9d;">$(</span><span style="color:#0057ae;">bar</span><span style="color:#924c9d;">)</span>
0079 <span style="font-weight:bold;">ifdef</span> bar
0080 <span style="color:#0057ae;">frobozz</span> <span style="color:#924c9d;">=</span><span style="color:#bf0303;"> yes</span>
0081 <span style="font-weight:bold;">else</span> <span style="font-weight:bold;">ifdef</span> foo
0082 <span style="color:#0057ae;">frobozz</span> <span style="color:#924c9d;">=</span><span style="color:#bf0303;"> no</span>
0083 <span style="font-weight:bold;">endif</span>
0084 
0085 <span style="color:#0057ae;">error_type</span> <span style="color:#924c9d;">:=</span><span style="color:#bf0303;"> 0</span>
0086 <span style="color:#b08000;">check:</span>
0087 <span style="font-weight:bold;">ifeq</span> (<span style="color:#924c9d;">$(</span><span style="color:#0057ae;">error_type</span><span style="color:#924c9d;">)</span>,0)
0088 <span style="font-weight:bold;">else</span> <span style="font-weight:bold;">ifeq</span> (<span style="color:#924c9d;">$(</span><span style="color:#0057ae;">error_type</span><span style="color:#924c9d;">)</span>,1)
0089 <span style="font-weight:bold;">else</span> <span style="font-weight:bold;">ifeq</span> (<span style="color:#924c9d;">$(</span><span style="color:#0057ae;">error_type</span><span style="color:#924c9d;">)</span>,2)
0090 <span style="font-weight:bold;">else</span> <span style="font-weight:bold;">ifeq</span> (<span style="color:#924c9d;">$(</span><span style="color:#0057ae;">error_type</span><span style="color:#924c9d;">)</span>,3)
0091 <span style="font-weight:bold;">endif</span>
0092 
0093 <span style="color:#924c9d;">$(</span><span style="font-weight:bold;">info</span><span style="color:#bf0303;"> </span><span style="color:#bf0303;">&quot;'&quot;</span><span style="color:#924c9d;">)</span>
0094 <span style="color:#924c9d;">$(</span><span style="font-weight:bold;">info</span><span style="color:#bf0303;"> </span><span style="color:#bf0303;">'&quot;'</span><span style="color:#924c9d;">)</span>
0095 <span style="color:#924c9d;">$(</span><span style="font-weight:bold;">info</span><span style="color:#bf0303;"> </span><span style="color:#924c9d;">$(</span><span style="color:#0057ae;">??</span><span style="color:#924c9d;">))</span>
0096 </pre></body></html>