{"id":496,"date":"2014-06-08T12:37:55","date_gmt":"2014-06-08T21:37:55","guid":{"rendered":"\/blog\/?p=496"},"modified":"2023-09-21T09:38:43","modified_gmt":"2023-09-21T00:38:43","slug":"make-%eb%b3%80%ec%88%98-%eb%ac%b8%eb%b2%95","status":"publish","type":"post","link":"https:\/\/hasu0707.duckdns.org\/blog\/?p=496","title":{"rendered":"make \ubcc0\uc218 \ubb38\ubc95"},"content":{"rendered":"<p><span style=\"font-family: Courier New; font-size: 9pt;\">\ucd9c\ucc98 : <\/span><a class=\"tx-link\" target=\"_blank\" href=\"http:\/\/blog.daum.net\/english_100\/10\" rel=\"noopener\"><span style=\"font-family: Courier New; font-size: 9pt;\">http:\/\/blog.daum.net\/english_100\/10<\/span><\/a><br \/><br \/><strong><span style=\"FONT-SIZE: 14pt\"><span style=\"font-family: Courier New; font-size: 9pt;\">6. <\/span><\/span><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218 \uc0ac\uc6a9\ubc95<\/span><\/strong><\/p><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><\/span><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218\ub780 \ubb38\uc790\uc5f4\uc744 \ud568\uc720\ud558\uace0 \uc788\ub294 makefile \ub0b4\uc5d0 \uc815\uc758\ub41c \n\uc774\ub984\uc774\ub2e4. \uc774 \uac12\uc740 \ud0c0\uae43\uc774\ub098 prerequisite, recipe \ub4f1 makefile\uc758 \ub2e4\ub978 \ubd80\ubd84\uc5d0\uc11c&nbsp;\uce58\ud658\ub418\uc5b4 \uc4f0\uc774\uac8c \ub41c\ub2e4. \n\ubcc0\uc218\ub098 \ud568\uc218\ub294 recipe \uc5d0\uc11c\ub9cc \uc81c\uc678\ud558\uace0 makefile\uc744 \uc77d\uc5b4\ub4e4\uc77c \ub54c '='\uc758 \uc624\ub978\ucabd \ubd80\ubd84\uc774\ub098 define \uc9c0\uc2dc\uc790\uc758 \ubab8\ud1b5\ubd80\ubd84\uc758\n \uac12\uc73c\ub85c \ud3bc\uccd0\uc9c4\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218\uc5d0\ub294 \ud30c\uc77c\uc774\ub984, \ucef4\ud30c\uc77c\ub7ec\uc5d0\uac8c \uac74\ub124\uc904 \uc635\uc158, \uc2e4\ud589\ud560 \ud504\ub85c\uadf8\ub7a8, \uac80\uc0c9\ud560 \ub514\ub809\ud1a0\ub9ac \ub4f1\ub4f1 \uc0c1\uc0c1\ud560 \uc218 \uc788\ub294 \uc5ec\ub7ec\uac00\uc9c0\uac00 \ub2f4\uae38 \uc218 \uc788\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218\uc774\ub984\uc740 ':', '#', '='\ub4f1\uc774 \ud3ec\ud568\ub418\uc9c0 \uc54a\uc740 \n\ubb38\uc790\uc5f4\ub85c \ub9cc\ub4e4\uc5b4\uc9c0\uba70 \uc54c\ud30c\ubcb3\ubb38\uc790, \uc22b\uc790, \ubc11\uc904\uc774\uc678\uc758 \ubb38\uc790\ub294 \ud53c\ud574\uc57c \ud55c\ub2e4. \uc65c\ub0d0\ud558\uba74 \uadf8\ub7f0 \ubb38\uc790\ub294 \ud2b9\uc218\ud55c \uc758\ubbf8\ub97c \uac16\uc744 \uc218 \uc788\uc73c\uba70 \ub610\ud55c \n\uc5b4\ub5a4 \uc258\uc740 \uc774\ub7f0 \ubb38\uc790\ub97c \ud558\uc704 make\uc5d0 \uc804\ub2ec\ud558\uc9c0 \ubabb\ud55c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218\uba85\uc740 \ub300\uc18c\ubb38\uc790\uac00 \uad6c\ubd84\ub418\ubbc0\ub85c 'foo', 'FOO', 'Foo'\ub294 \ubaa8\ub450 \ub2e4\ub978 \uc774\ub984\uc774 \ub41c\ub2e4.<\/span><\/p><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><\/span><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><strong><span style=\"font-family: Courier New; font-size: 9pt;\">6.1 \ubcc0\uc218 \ucc38\uc870\uc758 \uae30\ucd08<\/span><\/strong><\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218\uac12\uc744 \uce58\ud658\ud574 \uc0ac\uc6a9\ud558\uae30 \uc704\ud574\uc11c\ub294 $(foo), ${foo} \ucc98\ub7fc \ub2ec\ub7ec \uae30\ud638\uc640 \uad04\ud638\ub85c \ubb36\uc778 \ubcc0\uc218\uba85\uc744 \uc368\uc8fc\uba74 \ub41c\ub2e4. <\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218\ucc38\uc870\ub294 \ud0c0\uae43, prerequisite, recipe, \uc9c0\uc2dc\uc790, \ub2e4\ub978 \ubcc0\uc218\uac12\ub0b4 \ub4f1 \uc5b4\ub514\ub4e0 \uc4f0\uc77c \uc218 \uc788\ub2e4. \ub2e4\uc74c \uc608\ub97c \ubcf4\uc790 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">objects = program.o foo.o utils.o<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">program : $(objects)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">cc -o program $(objects)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">$(objects) : defs.h<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc5ec\uae30\uc11c \ubcc0\uc218\ub294 \ud30c\uc77c\uc774\ub984\ub4e4\uc744 \ud568\uc720\ud558\uace0 \uc788\uc73c\uba70 \uc774\ub294 \uace7\ubc14\ub85c \uce58\ud658\ub41c\ub2e4. \ub2e4\uc74c \uc608\ub294:<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">foo = c<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">prog.o : prog.$(foo)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">$(foo)$(foo) -$(foo) prog.$(foo)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774 \uc608\ub294 \ubaa8\ub4e0 foo\uac00 'c'\ub85c \uce58\ud658\ub418\uc5b4 \uc815\uc0c1\uc801\uc73c\ub85c \uc791\ub3d9\ud55c\ub2e4. \ud558\uc9c0\ub9cc \uc774\ub7f0\uc2dd\uc73c\ub85c makefile\uc744 \uc791\uc131\ud574\uc11c\ub294 \uc548\ub41c\ub2e4!<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">$x \ud615\ud0dc\uc758 \ub2ec\ub7ec\uae30\ud638\uc640 \ud55c\uac1c\uc758 \ubb38\uc790\ub85c \uc77c\ub8e8\uc5b4\uc9c4 \ud615\ud0dc\ub294 \uc5ed\uc2dc x\ub77c\ub294 \ubcc0\uc218\ub97c \ucc38\uc870\ud558\uc9c0\ub9cc \uc774\ub7f0 \uc6a9\ub840\ub294 \ubc14\ub78c\uc9c1\ud558\uc9c0 \uc54a\ub2e4. \uc65c\ub0d0\ud558\uba74 \uc790\ub3d9\ubcc0\uc218\uc640 \ud5e4\uae54\ub9b4 \uc218 \uc788\uae30\ub54c\ubb38<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><strong><span style=\"font-size: 9pt; font-family: Courier New;\">6.2 \ubcc0\uc218\uc758 \ub450\uac00\uc9c0 \ud48d\ubbf8<\/span><\/strong><\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">GNU make\uc5d0\uc11c \ubcc0\uc218\uac00 \uac12\uc744 \ud560\ub2f9\ubc1b\ub294 \ubc29\ubc95\uc740 \ub450\uac00\uc9c0\uac00 \uc788\ub2e4. \uc774\ub97c \ubcc0\uc218\uc758 \ub450\uac00\uc9c0 \ud48d\ubbf8\ub77c \ubd80\ub978\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218\uc758 \uccab\ubc88\uc9f8 \ud48d\ubbf8\ub294 \uc21c\ud658\uc801\uc73c\ub85c \ud3bc\uccd0\uc9c0\ub294 \ubcc0\uc218\ub85c '='\ub098 define \uc9c0\uc2dc\uc790\ub97c \uc774\uc6a9\ud574 \uc815\uc758\ub41c\ub2e4. \uc608\ub97c \ub4e4\uc5b4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">foo = $(bar)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">bar = $(ugh)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">ugh = Huh?<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">all : ; echo $(foo)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774 \uc608\ub294 \ud3bc\uccd0\uc9c0\uace0 \ub610 \ud3bc\uccd0\uc838 \uacb0\uad6d 'Huh?'\ub97c \ucd9c\ub825\ud55c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774 \ud615\ud0dc\ub294 \uc7a5 \ub2e8\uc810\uc774 \uc874\uc7ac\ud558\ub294\ub370 \uc7a5\uc810\uc740 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">CFLAGS = $(include_dirs) -O<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">include_dirs = -lfoo -lbar<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">'CFLAGS'\uac00 recipe\uc5d0\uc11c \uc0ac\uc6a9\ub420 \ub54c '-lfoo -lbar -O'\ub85c \uc6d0\ud558\ub294 \ub300\ub85c \ud3bc\uccd0\uc9c4\ub2e4. \ud558\uc9c0\ub9cc \uc774 \ubc29\uc2dd\uc740 \ubcc0\uc218\uc758 \ub05d\uc5d0 \ub2e4\ub978 \uac12\uc744 \ucca8\ubd80\ud560 \uc218\uac00 \uc5c6\ub2e4. \uc608\ub97c \ub4e4\uc5b4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">CFLAGS = $(CFLAGS) -O<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc65c\ub0d0\ud558\uba74 \uc774\ub294 \ubcc0\uc218 \ud3bc\uce68\uc5d0 \uc788\uc5b4 \ubb34\ud55c\ub8e8\ud504\ub97c \ud615\uc131\ud558\uae30 \ub54c\ubb38\uc774\ub2e4\n (make\uac00 \ubb34\ud55c\ub8e8\ud504\ub97c \uac10\uc9c0\ud558\uace0 \uc5d0\ub7ec\ub97c \ucd9c\ub825\ud568). \ub610\ub2e4\ub978 \ub2e8\uc810\uc740 \ubcc0\uc218 \uc815\uc758 \ub0b4\uc5d0\uc11c \ucc38\uc870\ub41c \ud568\uc218\ub294 \ubcc0\uc218\uac00 \ud3bc\uccd0\uc9c8 \ub54c\ub9c8\ub2e4 \uc2e4\ud589\ub41c\ub2e4\ub294\n \uac83\uc774\ub2e4. \uc774\ub294 make\ub97c \ub290\ub824\uc9c0\uac8c \ud560 \ubfd0 \uc544\ub2c8\ub77c \uc5c9\ub6b1\ud55c \uacb0\uacfc\ub97c \ub9cc\ub4e4\uc5b4 \ub0b4\uac8c \ub41c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774\ub7ec\ud55c \uc21c\ud658 \ud3bc\uce68 \ubcc0\uc218\uc758 \ubb38\uc81c\uc810\uc744 \ud53c\ud558\uae30\uc704\ud574 \ub2e4\ub978 \ud48d\ubbf8\ub97c \n\uac00\uc9c4 \ubcc0\uc218 \uc989&nbsp;\ub2e8\uc21c \ud3bc\uce68 \ubcc0\uc218\uac00 \uc0dd\uaca8\ub0ac\ub2e4.&nbsp;\ub2e8\uc21c \ud3bc\uce68 \ubcc0\uc218\ub294 ':='\ub97c \uc774\uc6a9\ud574 \uc815\uc758\ub418\uba70 \uadf8 \uac12\uc740 \ud14d\uc2a4\ud2b8\ub85c \ud3b8\uccd0\uc9c4 \uacb0\uacfc\uac12\uc774 \ub41c\ub2e4. \uc774\n \ubcc0\uc218\ub294 \ubcc0\uc218\uac00 \uc815\uc758\ub41c \ubc14\ub85c \uadf8\ub54c\uc758 \uac12\uc744 \uac16\ub294\ub2e4. \uc608\ub97c \ub4e4\uc5b4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">x := foo<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">y := $(x) bar<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">x := later<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ub2e4\uc74c\uacfc \ub3d9\uc77c \ud558\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">y := foo bar<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">x := later<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc258\uacfc \uc5f0\uacb0\ud574\uc11c ':='\uc758 \uc0ac\uc6a9\uc744 \uc124\uba85\ud558\ub294 \uc880 \ub354 \ubcf5\uc7a1\ud55c \uc608\ub97c \uc0b4\ud3b4\ubcf4\uc790. \uc5ec\uae30\uc5d0\ub294 MAKELEVEL \ubcc0\uc218\uac00 \uc0ac\uc6a9\ub418\ub294\ub370 \uc774\ub294 \uac01 \ub808\ubca8\uc5d0\uc11c \ub808\ubca8\ub85c \ub0b4\ub824\uac00\uba70 \uadf8 \uac12\uc774 \ubcc0\ud654\ud55c\ub2e4.<\/span><\/p><pre class=\"example\"><span style=\"font-family: Courier New; font-size: 9pt;\">     ifeq (0,${MAKELEVEL})\n     whoami    := $(shell whoami)\n     host-type := $(shell arch)\n     MAKE := ${MAKE} host-type=${host-type} whoami=${whoami}\n     endif\n<\/span><\/pre>\n\n<!-- \/wp:post-content -->\n<!-- \/wp:syntaxhighlighter\/code -->\n<span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><span style=\"font-family: Courier New; font-size: 9pt;\">':='\ub97c \uc0ac\uc6a9\ud558\ub294 \uc774\uc810\uc740 \ub2e4\uc74c\uacfc \uac19\uc774 \ub514\ub809\ud1a0\ub9ac\ub97c \ub530\ub77c \ub0b4\ub824\uac08 \ub54c \ub098\ud0c0\ub09c\ub2e4 :<\/span><\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><span style=\"font-family: Courier New; font-size: 9pt;\">${subdirs}<\/span><\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><span style=\"font-family: Courier New; font-size: 9pt;\">${MAKE} -C $@ all<\/span><\/span><\/p><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><\/span><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ub2e8\uc21c \ud3bc\uce68 \ubcc0\uc218\ub294 \uc77c\ubc18 \ud504\ub85c\uadf8\ub798\ubc0d \uc5b8\uc5b4\uc5d0\uc11c\ucc98\ub7fc \uc791\ub3d9\ub418\uae30 \ub54c\ubb38\uc5d0 \ubcf5\uc7a1\ud55c makefile\uc5d0 \ub300\ud574 \ud6e8\uc52c \uc608\uce21\uac00\ub2a5\uc131\uc744 \ub192\uc5ec\uc900\ub2e4. \ubcc0\uc218\ub97c \uc7ac\uc815\uc758\ud560 \uc218 \uc788\uac8c \ud574\uc8fc\uace0 \ud3bc\uce68 \ud568\uc218\ub97c \ub354\uc6b1\ub354 \ud6a8\uc728\uc801\uc73c\ub85c \uc0ac\uc6a9\ud560 \uc218 \uc788\uac8c \ud574\uc900\ub2e4.<\/span><\/p><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><\/span><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc911\ub7b5<\/span><\/p><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><\/span><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218\uac12 \ud560\ub2f9\uc744 \uc704\ud55c \ub610 \ub2e4\ub978 \uc5f0\uc0b0\uc790\ub85c '?='\uc774 \uc788\ub294\ub370 \uc774\ub97c \uc870\uac74 \ubcc0\uc218 \ud560\ub2f9 \uc5f0\uc0b0\uc790\ub77c\uace0 \ubd80\ub978\ub2e4. \uadf8 \uc774\uc720\ub294 \ubcc0\uc218\uac00 \uc544\uc9c1 \uc815\uc758\ub418\uc9c0 \uc54a\uc558\uc744 \ub54c\uc5d0\ub9cc \uc774 \uc5f0\uc0b0\uc774 \ud6a8\ub825\uc744 \ubc1c\ud718\ud560 \uc218 \uc788\uae30 \ub54c\ubb38\uc774\ub2e4. \uc608\ub97c \ub4e4\uc5b4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">FOO ?= bar<\/span><\/p><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><\/span><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ub294 \ub2e4\uc74c\uacfc \uc644\uc804\ud788 \ub3d9\uc77c\ud558\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">ifeq ( $(origin FOO), undefined)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">FOO =bar<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">endif<\/span><\/p><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><\/span><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><strong><span style=\"font-size: 9pt; font-family: Courier New;\">6.3&nbsp; \ubcc0\uc218 \ucc38\uc870\uc5d0 \ub300\ud55c \ub610 \ub2e4\ub978 \ud2b9\uc131<\/span><\/strong><\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><strong><span style=\"font-family: Courier New; font-size: 9pt;\">6.3.1 \uce58\ud658 \ucc38\uc870<\/span><\/strong><\/span><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uce58\ud658 \ucc38\uc870 (Substitution References)\ub294 \ubcc0\uc218\uac12\uc744 \uc6d0\ud558\ub294 \uac12\uc73c\ub85c \ubc14\uafb8\ub294 \uac83\uc73c\ub85c '$(var: \na=b)'\ud615\ud0dc\ub97c \uac16\ub294\ub2e4. \uc758\ubbf8\ub294 var\ub77c\ub290 \ubcc0\uc218\uac12\uc758 \ub05d\uc5d0 \ubd99\uc5b4\uc788\ub294 'a'\ub97c 'b'\ub85c \ubc14\uafb8\ub77c\ub294 \ub9d0\uc774\ub2e4. \ub9e8 \ub05d\uc5d0 \ubd99\uc5b4\uc788\ub294 'a'\ub9cc \n\ubc14\ub014 \ubfd0 \uc911\uac04\uc5d0 \ub098\ud0c0\ub098\ub294 'a'\uc5d0\ub294 \ubcc0\ud654\uac00 \uc5c6\ub2e4. \ub2e4\uc74c \uc608\ub294 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">foo := a.o b.o c.o<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">bar := $(foo: .o=.c)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">bar\uc758 \uac12\uc740 'a.c b.c c.c'\ub85c \ubc14\ub010\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uce58\ud658\ucc38\uc870\ub294 patsubst \ud3bc\uce68 \ud568\uc218\uc758 \ub2e8\ucd95\ud615\uc774\ub77c \ud560 \uc218 \uc788\ub2e4. \uc704 \uc608\ub97c \ub2ec\ub9ac \ud45c\uc2dc\ud558\uba74 \ub2e4\uc74c\uacfc \uac19\uc740\ub370 \uc774\ub294 $(patsubst a,b,$(bar))\uc640 \ub3d9\uc77c\ud558\ub2e4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">foo := a.o b.o c.o<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">bar := $(foo:%.o=%.c)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><strong><span style=\"font-family: Courier New; font-size: 9pt;\">6.3.2 \uacc4\uc0b0\ub41c \ubcc0\uc218\uba85<\/span><\/strong><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uacc4\uc0b0\ub41c \ubcc0\uc218\uba85\uc740 \ubcf5\uc7a1\ud55c makefile \ud504\ub85c\uadf8\ub798\ubc0d\uc5d0 \ud544\uc694\ud55c \uac1c\ub150\uc73c\ub85c \ub9ce\uc740 \uacbd\uc6b0 \uc4f0\uc774\uc9c4 \uc54a\uc9c0\ub9cc \uaf2d \uc54c\uace0 \uc2f6\uc73c\uba74 &nbsp;<\/span><a target=\"_blank\" href=\"http:\/\/www.gnu.org\/software\/make\/manual\/make.html#Advanced\" rel=\"noopener\"><span style=\"font-family: Courier New; font-size: 9pt;\">http:\/\/www.gnu.org\/software\/make\/manual\/make.html#Advanced<\/span><\/a><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;(Computed bariable names)&nbsp;\ucc38\uc870<\/span><\/p><\/span><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><\/span><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><strong><span style=\"FONT-FAMILY: Gulim,\uad74\ub9bc\"><\/span><\/strong><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><strong><span style=\"font-size: 9pt; font-family: Courier New;\">6.4 \ubcc0\uc218\uac00 \uac12\uc744 \ud560\ub2f9 \ubc1b\ub294 \ubc29\ubc95<\/span><\/strong><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">- make\uac00 \uc2e4\ud589\ub420 \ub54c \uc635\uc158\uc744 \uc774\uc6a9\ud574 \ud560\ub2f9\ubc1b\uc744 \uc218 \uc788\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">- makefile \ub0b4\uc5d0\uc11c \ubcc0\uc218\uac12\uc744 \uba85\uae30\ud568\uc73c\ub85c\uc368 \ud560\ub2f9\ubc1b\ub294\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">- \ud658\uacbd \ubcc0\uc218\ub3c4 make \ubcc0\uc218\uac00 \ub420 \uc218 \uc788\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">- \uaddc\uce59 \ub0b4\uc5d0\uc11c \uc790\ub3d9 \ubcc0\uc218\ub294 \uc0c8\ub85c\uc6b4 \uac12\uc744 \ud560\ub2f9 \ubc1b\ub294\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">- \uba87\uba87 \ubcc0\uc218\ub294 \uc560\ucd08\uc5d0 \uc0c1\uc218\ub97c \ud560\ub2f9 \ubc1b\ub294\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><strong><span style=\"font-size: 9pt; font-family: Courier New;\">6.5 \ubcc0\uc218\uac12<\/span><span style=\"font-size: 9pt; font-family: Courier New;\"> \uc124\uc815\ud558\uae30<\/span><\/strong><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">makefile \ub0b4\uc5d0\uc11c \ubcc0\uc218\uac12\uc744 \uc124\uc815\ud558\ub294 \ubc29\ubc95\uc740 '='\ub098 ':='\uc744 \uc774\uc6a9\ud574\uc11c \uc774\ub8e8\uc5b4\uc9c4\ub2e4. \uc608\ub97c \ub4e4\uc5b4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">objects = main.o foo.o bar.o utils.o<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774 \uc608\ub294 objects\ub77c\ub294 \uc774\ub984\uc758 \ubcc0\uc218\uc5d0 \uac12\uc744 \ud560\ub2f9\ud558\ub294\ub370 \uc5ec\uae30\uc11c \ubcc0\uc218\uba85 \uc55e\ub4a4\uc758 \uacf5\ubc31\uc774\ub098 '=' \uc9c1\ud6c4\uc758 \uacf5\ubc31\uc740 \ubb34\uc2dc\ub41c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218\ub294 '='\uc5d0 \uc704\ud574 \uac12\uc774 \ud560\ub2f9\ub418\uba74 \uc21c\ud658\ud3bc\uce68 \ubcc0\uc218, ':='\uc5d0 \uc758\ud558\uba74 \ub2e8\uc21c\ud3bc\uce68 \ubcc0\uc218\ub77c \ud558\ub294\ub370 \uc774\ub294 \ubcc0\uc218\uac12 \ud3bc\uce68\uc758 \uc2dc\uae30\uc5d0 \ucc28\uc774\uac00 \uc788\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218 \uae38\uc774\ub294 \ud55c\uacc4\uac00 \uc5c6\uc73c\uba70 \ubcc0\uc218 \uae38\uc774\uac00 \uae38\uba74 backslash-newline\uc744 \uc774\uc6a9\ud574 \uc5ec\ub7ec \ud589\uc73c\ub85c \ub098\ub204\uba74 makefile\uc744 \uc77d\uae30\uc5d0 \ud3b8\ud574\uc9c4\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218\uac00 \uc874\uc7ac\ud558\uc9c0 \uc54a\uc558\uc73c\uba74 \uac12\uc744 \ud560\ub2f9\ud558\uace0 \uc874\uc7ac\ud558\uba74 \uc544\ubb34\uc77c\ub3c4 \uc54a\uac8c \ud558\ub824\uba74 '?='\ub97c \uc0ac\uc6a9\ud558\uba70 \uc774\ub294 origin \ud568\uc218 \uae30\ub2a5\uacfc \ub3d9\uc77c\ud558\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">FOO ?= bar<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc640<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">ifeq ($(origin FOO), undefined)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">FOO =bar<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">endif<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ub294 \ub3d9\uc77c\ud558\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><strong><span style=\"font-size: 9pt; font-family: Courier New;\">6.6 \ubcc0\uc218\uc5d0 \uac12 \ub367\ubd99\uc774\uae30<\/span><\/strong><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774\ubbf8 \uac12\uc774 \uc8fc\uc5b4\uc9c4 \ubcc0\uc218\uc5d0 \ub2e4\ub978 \uac12\uc744 \ub367\ubd99\uc774\ub294 \uac83\uc774 \uac00\ub2a5\ud55c\ub370 \uc774\ub294 '+='\ub97c \uc774\uc6a9\ud574 \uc774\ub8e8\uc5b4\uc9c4\ub2e4. <\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">objects += another.o<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774\ub294 \uc6d0\ub798\uc758 \uac12\uc5d0 another.o\ub97c \ub367\ubd99\uc774\ub294 \uac83\uc774\ub2e4. \ub2e4\uc74c \uc608\ub294 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">objects = main.o foo.o bar.o utils.o<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">objects += another.o<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc758 \uacb0\uacfc\ub85c objects\ub294 'main.o foo.o bar.o utils.o another.o'\uac00 \ub41c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc704\uc758 \uc608\ub294 \ub2e4\uc74c\uacfc \ube44\uc2b7\ud55c\ub2e4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">objects = main.o foo.o bar.o utils.o<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">objects = $(objects) another.o<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218\uac00 \uc544\uc9c1 \uc815\uc758\ub418\uc9c0 \uc54a\uc740 \uacbd\uc6b0 '+='\ub294 '='\uc640 \uac19\uc774 \uc791\ub3d9\ud55c\ub2e4. \uc989 \uc21c\ud658\ud3bc\uce68 \ubcc0\uc218\ub97c \uc815\uc758\ud558\ub294 \uac83\uc774\ub2e4. \ud558\uc9c0\ub9cc \uc774\ubbf8 \uc815\uc758\ub418\uc5b4 \uc788\ub294 \uacbd\uc6b0\uc5d0\ub294 \uadf8 \ubcc0\uc218\uac00 \uc560\ucd08\uc5d0 \uc5b4\ub5bb\uac8c \uc815\uc758\ub418\uc5c8\ub294\uc9c0\uc5d0 \ub530\ub77c \ubcc0\uc218 \uc885\ub958\uac00 \ub2ec\ub77c\uc9c4\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">'+='\ub97c \ud1b5\ud574 \ubcc0\uc218 \uac12\uc744 \ucca8\uac00\ud560 \ub54c make\ub294 \uc6d0\ub798 \uac12\uc5d0&nbsp;\ub2e4\ub978 \uac12\uc744 \ud3ec\ud568\uc2dc\ud0a4\ub294 \ud615\ud0dc\ub97c \ucde8\ud55c\ub2e4. \uc560\ucd08\uc5d0 \ubcc0\uc218\uac00 \n':='(\ub2e8\uc21c\ud3bc\uce68)\ub97c \ud1b5\ud574 \uc815\uc758\ub418\uc5c8\ub2e4\uba74 '+=' \ub610\ud55c ':=' \ubc29\uc2dd\uc73c\ub85c \ub367\ubd99\uc5ec\uc9c0\ub294\ub370 \uc774\ub294 \uac12\uc774 \ub367\ubd99\uc5ec\uc9c0\uae30 \uc804\uc5d0 \ud3bc\uccd0\uc9d0\uc744 \uc758\ubbf8\ud55c\ub2e4.\n \uc989 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">variable := value<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">variable += more<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ub294 \ub2e4\uc74c\uacfc \uc644\uc804\ud788 \ub3d9\uc77c\ud558\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">variable := value<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">variable := $(variable) more<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774\uc640\ub294 \ub2ec\ub9ac \ubcc0\uc218\uac00 \uc560\ucd08\uc5d0 '='(\uc21c\ud658\ud3bc\uce68)\uc5d0 \uc758\ud574 \uc815\uc758\ub418\uc5c8\ub2e4\uba74 \uc870\uae08 \ub2e4\ub978 \ubc29\uc2dd\uc73c\ub85c \ucc98\ub9ac\ub41c\ub2e4. \uc21c\ud658\ud3bc\uce68 \ubcc0\uc218\uac00 \uc815\uc758 \ub420\uc5c8\uc744 \ub54c \uc774 \uac12\uc740 \uc989\uc2dc \ud3bc\uccd0\uc9c0\ub294 \uac83\uc774 \uc544\ub2c8\ub77c \ub098\uc911\uc5d0 \uadf8 \ubcc0\uc218\uc5d0 \ub300\ud574 \ucc38\uc870\ub420 \ub54c \ud3bc\uccd0\uc9c4\ub2e4.&nbsp; \uc989 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">variable = value<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">variable += more<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ub294 temp\ub77c\ub294 \ubcc0\uc218\uac00 \uc2e4\uc81c\ub85c \uc815\uc758\ub41c\uac8c \uc544\ub2c8\ub77c\ub294 \uac83\ub9cc \ube7c\uba74 \ub2e4\uc74c\uacfc \uac19\ub2e4\uace0 \ud560 \uc218 \uc788\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">temp = value<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">variable = $(temp) more<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc911\uc694\ud55c \ubb38\uc81c\ub294 \ucc98\uc74c \uc815\uc758\ud55c \ubcc0\uc218\uc5d0 \ub2e4\ub978 \ubcc0\uc218 \ucc38\uc870\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc744 \ub54c \uc0dd\uae34\ub2e4. \uc608\ub97c \ub4e4\uc5b4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">CFLAGS = $(include) -0<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">...<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">CFLAGS += -pg # enable profiling<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uccab\ud589\uc758 CFLAGS\uac00 \ub2e4\ub978 \ubcc0\uc218 \ucc38\uc870 $(inlcude)\ub97c \ud3ec\ud568\ud558\uace0 \uc788\ub2e4. '='\ub97c \uc0ac\uc6a9\ud588\ub2e4\ub294 \uac83\uc740 \uc774 \ubcc0\uc218\uac00 \uc21c\ud658\ud3bc\uce68 \n\ubcc0\uc218\uc774\uace0 make\uac00 \uc774 \ubcc0\uc218\uc758 \uc815\uc758\ub97c \ucc98\ub9ac\ud560\ub54c\ub294 '$(include) -0'\uac00 \uc544\uc9c1 \ud3bc\uccd0\uc9c0\uc9c0 \uc54a\uc74c\uc744 \uc758\ubbf8\ud55c\ub2e4. \uadf8\ub7ec\ubbc0\ub85c \ninclude\ub294 CFLAGS\uac00&nbsp;\uc774\ud6c4\uc5d0 \uc5b4\ub514\uc120\uac00 \ucc38\uc870\ub418\uae30 \uc804\uae4c\uc9c0\ub9cc \uc815\uc758\ub418\uba74 \ubb38\uc81c\uac00 \uc5c6\ub2e4. \uc5ec\uae30\uc11c \ub9cc\uc57d \ub2e4\uc74c\uacfc \uac19\uc774 \uac12\uc744 \ucd94\uac00\ud558\uba74 \n\uc5b4\ub5bb\uac8c \ub420\uae4c?<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">CFLAGS := $(CFLAGS) -pg # enable profiling<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774\ub294 \ube44\uc2b7\ud558\uae30\ub294 \ud558\uc9c0\ub9cc \uc6b0\ub9ac\uac00 \uc6d0\ud558\ub294\uac83\uacfc\ub294 \ub2e4\ub974\ub2e4. ':='\ub97c \uc0ac\uc6a9\ud588\uc73c\ubbc0\ub85c CFLAGS\ub294 \ub2e8\uc21c\ud3bc\uce68 \ubcc0\uc218\uac00 \ub418\uc5c8\uace0 \uc774\ub294 \nmake\ub85c \ud558\uc5ec\uae08 \ub2f9\uc7a5 '$(CFALGS) -pg'\ub97c \ud3bc\uce58\ub3c4\ub85d \ud55c\ub2e4. \ub9cc\uc57d include\uac00 \uc544\uc9c1 \uc815\uc758 \ub418\uc5b4\uc788\uc9c0 \uc54a\ub2e4\uba74 \uc774 \ubcc0\uc218\ub294 \n\ub2e8\uc9c0 '-0 -pg' \uac12\uc744 \uac16\uac8c \ub420\uac83\uc774\ub2e4. \ud558\uc9c0\ub9cc '+='\ub97c \uc774\uc6a9\ud558\uba74 CFLAGS\ub294 \uc544\uc9c1 \ud3bc\uccd0\uc9c0\uc9c0 \uc54a\uc740 \uc0c1\ud0dc\ub97c \uc720\uc9c0\ud558\ub2e4\uac00 \uc774\ud6c4\uc5d0 \ninclude\uac00 \uc815\uc758\ub418\uba74 \uc815\uc0c1\uc801\uc73c\ub85c \uc774\uc6a9\ub420 \uc218 \uc788\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><strong><span style=\"font-size: 9pt; font-family: Courier New;\">6.7 override \uc9c0\uc2dc\uc790<\/span><\/strong><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ub9cc\uc57d \uba85\ub839\ud589\uc5d0\uc11c&nbsp;\uba85\ub839&nbsp;\uc635\uc158\uc73c\ub85c&nbsp;\ubcc0\uc218\uac12\uc744 \ud560\ub2f9\ud558\uba74 makefile \ub0b4\uc758 \uc815\uc0c1\uc801\uc778 \ubcc0\uc218\uac12 \ud560\ub2f9\uc740 \ubaa8\ub450 \ubb34\uc2dc\ub41c\ub2e4. \ub9cc\uc57d\uc5d0 \uba85\ub839\ud589 \n\uc635\uc158\uc73c\ub85c \ubcc0\uc218\uac00 \uc124\uc815\ub418\uc5c8\uc5b4\ub3c4 makefile \ub0b4\uc5d0\uc11c&nbsp;\ub2e4\uc2dc \ud560\ub2f9\ud574\uc11c \uc0ac\uc6a9\ud558\uace0 \uc2f6\uc740 \uacbd\uc6b0\uac00 \uc788\ub294\ub370 \uc774\ub54c&nbsp;override \uc9c0\uc2dc\uc790\ub97c \n\uc0ac\uc6a9\ud55c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">override <\/span><em><span style=\"font-family: Courier New; font-size: 9pt;\">variable<\/span><\/em><span style=\"font-family: Courier New; font-size: 9pt;\"> = <\/span><em><span style=\"font-family: Courier New; font-size: 9pt;\">value<\/span><\/em><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ub610\ub294<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">override <\/span><em><span style=\"font-family: Courier New; font-size: 9pt;\">variable<\/span><\/em><span style=\"font-family: Courier New; font-size: 9pt;\"> := <\/span><em><span style=\"font-family: Courier New; font-size: 9pt;\">value<\/span><\/em><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uba85\ub839\ud589\uc5d0\uc11c \uc815\uc758\ub41c \ubcc0\uc218\uc5d0 \ub2e4\ub978\uac12\uc744 \ucca8\ubd80\ud558\uace0 \uc2f6\ub2e4\uba74 \ub2e4\uc74c\uacfc \uac19\uc774 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">override <\/span><em><span style=\"font-family: Courier New; font-size: 9pt;\">variable<\/span><\/em><span style=\"font-family: Courier New; font-size: 9pt;\"> += <\/span><em><span style=\"font-family: Courier New; font-size: 9pt;\">more text<\/span><\/em><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc608\ub97c \ub4e4\uc5b4 C \ucef4\ud30c\uc77c\ub7ec\ub97c \uc2e4\ud589\ud560 \ub54c \uba85\ub839\ud589 \ubcc0\uc218\uc815\uc758\uc744 \ud1b5\ud574 \uadf8\ub54c \uadf8\ub54c \uc6d0\ud558\ub294 \uc635\uc158\uc744 \uc0ac\uc6a9\ud558\uc9c0\ub9cc&nbsp; '-g' \uc635\uc158\ub9cc\uc740 \ud56d\uc0c1 \uc0ac\uc6a9\ud558\uae38 \uc6d0\ud55c\ub2e4\uba74 \ub2e4\uc74c\uacfc \uac19\uc774 \uc815\uc758 \ud574 \uc8fc\uba74\ub41c\ub2e4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">override CFLAGS += -g<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><strong><span style=\"font-size: 9pt; font-family: Courier New;\">6.8 \ubcf5\uc218 \ud589 \ubcc0\uc218 \uc815\uc758\ud558\uae30<\/span><\/strong><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ub610\ud558\ub098\uc758 \ubcc0\uc218\uac12 \ud560\ub2f9 \ubc29\ubc95\uc740 define \uc9c0\uc2dc\uc790\ub97c \uc0ac\uc6a9\ud558\ub294\uac83\uc774\ub2e4. \uc774 \ubc29\ubc95\uc740 newline \ubb38\uc790\ub97c \ud5c8\uc6a9\ud558\uae30 \ub54c\ubb38\uc5d0 canned \uba85\ub839\uc774\ub098 eval \ud568\uc218 \uc0ac\uc6a9\uc744 \uc704\ud55c makefile \ubb38\ubc95 \uc139\uc158\uc5d0 \uc720\uc6a9\ud558\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">define \uc9c0\uc2dc\uc790\ub294 \ub2e4\uc74c\uacfc \uac19\uc740 \ud615\ud0dc\ub85c \uc0ac\uc6a9\ub41c\ub2e4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">define variable =<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">...<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">endef<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc77c\ubc18\uc801\uc778 \ubcc0\uc218\uac12\uc740 newline \ubb38\uc790\ub97c \ud3ec\ud568\ud560 \uc218 \uc5c6\uc73c\ub098 define \uc9c0\uc2dc\uc790 \ub0b4\uc5d0 \uc788\ub294 newline \ubb38\uc790\ub294 \ubcc0\uc218\uac12\uc758 \uc77c\ubd80\uac00 \ub41c\ub2e4. \ud558\uc9c0\ub9cc \ub9c8\uc9c0\ub9c9 endef \uc9c1\uc804\uc758 newline \uc740 \ubb34\uc2dc\ub41c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ub2e4\uc74c\uc758 \uc815\uc758\uac00 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">define two-lines =<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">echo foo<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">echo $(bar)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">endef<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc2e4\uc81c recipe\uc5d0 \uc0ac\uc6a9\ub418\uba74 \uae30\ub2a5\uc801\uc73c\ub85c \ub2e4\uc74c\uacfc \ub3d9\uc77c\ud558\ub2e4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">two-lines = echo foo; echo $(bar)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc138\ubbf8\ucf5c\ub860\uc5d0 \uc758\ud574 \ubd84\ub9ac\ub41c \uba85\ub839\uc740 \uc11c\ub85c \ub2e4\ub978 \uc258 \uba85\ub839\uc73c\ub85c \ud589\ub3d9\ud55c\ub2e4. \ud558\uc9c0\ub9cc \uc11c\ub85c \ub2e4\ub978 \ud589\uc73c\ub85c \ubd84\ub9ac\ub41c \uba85\ub839\uc740 \ub3c5\ub9bd\uc801\uc778 \ub450\uac1c\uc758 \uc258\uc5d0 \uc758\ud574 \uae30\ub3d9\ub428\uc744 \uba85\uc2ec\ud558\uc790.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uba85\ub839\ud589\uc5d0 \uc758\ud574 \uc8fc\uc5b4\uc9c4 \ubcc0\uc218\uc5d0 \uc6b0\uc120\ud558\ub294 \ubcc0\uc218\ub97c \uc815\uc758\ud558\uae30 \uc704\ud574 override \uc9c0\uc2dc\uc790\ub97c \uc0ac\uc6a9\ud55c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">override define two-lines =<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">foo<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">$(bar)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">endef<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><strong><span style=\"font-size: 9pt; font-family: Courier New;\">6.9 \ubcc0\uc218 \uc815\uc758 \ubb34\ud6a8\ud654\ud558\uae30<\/span><\/strong><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218\ub97c \uc9c0\uc6b0\uae30 \uc704\ud574\uc11c\ub294 \ube48\ubb38\uc790\ub97c \ud560\ub2f9\ud558\uba74 \ub41c\ub2e4.&nbsp;\ube48\ubb38\uc790 \ubcc0\uc218\uc758 \uacbd\uc6b0 \uc815\uc758\ub418\uc9c0 \uc54a\uc558\uac74 \uc815\uc758\ub418\uc5c8\uac74 \ud3bc\uce68\uc5d0 \uc788\uc5b4\uc11c\uc758 \uacb0\uacfc\ub294 \n\ub3d9\uc77c\ud558\ub2e4. \ud558\uc9c0\ub9cc flavor \ud568\uc218\ub098 origin \ud568\uc218\ub97c \uc0ac\uc6a9\ud588\uc744 \ub54c \uc815\uc758\ub418\uc9c0 \uc54a\uc740 \uacbd\uc6b0\uc640 \ube48\ubb38\uc790\ub85c \uc138\ud305\ub41c \uacbd\uc6b0\ub294&nbsp;\ub2e4\ub978 \uacb0\uacfc\ub97c \n\ub9cc\ub4e0\ub2e4. <\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">foo := foo<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">bar = bar<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">undefine foo<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">undefine bar<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">$(info $(origin foo))<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">$(info $(flavor bar))<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774 \uc608\ub294 \ubaa8\ub450 'undefined'\ub97c \ud504\ub9b0\ud2b8\ud55c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uba85\ub839\ud589 \ubcc0\uc218\ub97c undefine\ud558\uace0 \uc2f6\ub2e4\uba74 override \uc9c0\uc2dc\uc790\ub97c \uc0ac\uc6a9\ud558\uba74 \ub41c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">override undefine CFLAGS<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><strong><span style=\"font-size: 9pt; font-family: Courier New;\">6.10 \ud658\uacbd \ubcc0\uc218<\/span><\/strong><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">make\uac00 \uc0ac\uc6a9\ud558\ub294 \ubcc0\uc218 \uc911\uc5d0\ub294&nbsp;\ud658\uacbd\uc5d0\uc11c \uac74\ub108\uc628\uac83\ub4e4\ub3c4 \uc788\ub2e4. \ud658\uacbd\ubcc0\uc218\ub294 make\uac00 \uc2dc\uc791\ud560 \ub54c \ub118\uaca8 \ubc1b\uac8c \ub418\ub294\ub370 \ub9cc\uc57d \nmakefile \ub0b4\uc5d0\ub098 \uba85\ub839\ud589\uc744 \ud1b5\ud574 \uac19\uc740 \uc774\ub984\uc758 \uba74\uc218\uac00 \uba85\uae30\ub41c\ub2e4\uba74 \uc774\ub4e4\uc774 \ud658\uacbd \ubcc0\uc218\uc5d0 \uc6b0\uc120\ud55c\ub2e4. \ud558\uc9c0\ub9cc '-e' \ud50c\ub798\uadf8\ub97c \uc0ac\uc6a9\ud55c\n \uacbd\uc6b0\uc5d0\ub294 \ud658\uacbd\ubcc0\uc218\uac00 \uc774\ub4e4\uc5d0 \uc6b0\uc120\ud558\uac8c \ub41c\ub2e4. \uc2e4\uc81c \uc0ac\uc6a9\uc740 \uc548\ud558\ub294 \ud3b8\uc774 \uc88b\uc74c.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc608\ub97c \ub4e4\uc5b4 \ud658\uacbd\uc5d0\uc11c CFLAGS \ubcc0\uc218\ub97c \uc138\ud305\ud55c \ud6c4 \ub300\ubd80\ubd84\uc758 makefile \ub0b4\uc758 \ubaa8\ub4e0 C \ucef4\ud30c\uc77c\ub7ec\uac00 \uc774\ub97c \uc0ac\uc6a9\ud558\uac8c \ud560 \uc218 \n\uc788\ub2e4. make \uac00 recipe\ub97c \uc2e4\ud589\ud560 \ub54c makefile \ub0b4\uc5d0 \uc815\uc758\ub41c \ubcc0\uc218\ub4e4\uc740 \uac01 \uc258\uc758 \ud658\uacbd\uc18d\uc73c\ub85c \ud3ec\ud568\ub41c\ub2e4. \uc774 \ubcc0\uc218\ub97c \ud558\uc704 \nmake\ub85c \uc804\ub2ec \ud560 \uc218\uac00 \uc788\ub294\ub370 \uae30\ubcf8\uc801\uc73c\ub85c \ud658\uacbd\ubcc0\uc218\uc640 \uba85\ub839\ud589\uc5d0\uc11c \uc815\uc758\ub41c \ubcc0\uc218\ub9cc\uc774 \uc21c\ud658 \uc258\uc774 \uae30\ub3d9\ud560 \ub54c \uc804\ub2ec\ub41c\ub2e4. \ub2e4\ub978 \ubcc0\uc218\uc5d0 \n\ub300\ud574\uc11c\ub294 export \ub97c \ud1b5\ud574 \uc804\ub2ec\ud560 \uc218 \uc788\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ud658\uacbd\ubcc0\uc218\uc758 \ub2e4\ub978 \uc6a9\ub3c4\uc758 \uc0ac\uc6a9\uc740 \ucd94\ucc9c\ud560 \ub9cc\ud558\uc9c0 \uc54a\ub2e4. \uc65c\ub0d0\uba74 makefile\uc774 \uc678\ubd80\uc5d0\uc11c \ub4e4\uc5b4\uc628 \ud658\uacbd\ubcc0\uc218\uc5d0 \ub108\ubb34 \uc88c\uc9c0\uc6b0\uc9c0\ub418\ub294\uac74 \n\ubc14\ub78c\uc9c1\ud558\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc774\ub2e4. \ud658\uacbd\ubcc0\uc218\ub77c\ub294 \uac83\uc740 \uc720\uc800\ub4e4 \ub9c8\ub2e4&nbsp; \ub2e4\ub97c \uc218 \uc788\uc5b4 \uac19\uc740 makefile\uc5d0 \ub300\ud574 \ub2e4\ub978 \uacb0\uacfc\ub97c \uc57c\uae30\ud560 \uc218\ub3c4 \n\uc788\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ube44\uc2b7\ud55c \ubb38\uc81c\uac00 SHELL \ubcc0\uc218\ub97c \uc0ac\uc6a9\ud560 \ub54c \uc0dd\uae34\ub2e4. \uc774 \uc77c\ubc18\uc801\uc73c\ub85c \ud658\uacbd\ub0b4\uc5d0\uc11c \uc0ac\uc6a9\uc790\uae30 \uc0ac\uc6a9\uc911\uc778 \uc258\uc744 \uac00\ub9ac\ud0a8\ub2e4. \uadf8\ub7ec\ubbc0\ub85c \nmake\uc758 \uc218\ud589\uc5d0 \uc601\ud5a5\uc744 \uc8fc\ub294 \uc774\ub7f0 \ubcc0\uc218\ub97c \uc678\ubd80\uc5d0\uc11c \ubc1b\uc544\ub4e4\uc774\ub294 \uac83\uc740 \ubc14\ub78c\uc9c1\ud558\uc9c0 \uc54a\ub2e4. \uadf8\ub798\uc11c make\ub294 \ud2b9\ubcc4\ud55c \ubc29\ubc95\uc73c\ub85c SHELL\n \ud658\uacbd \ubcc0\uc218\ub97c \ub2e4\ub8ec\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><strong><span style=\"font-size: 9pt; font-family: Courier New;\">6.11 \ud0c0\uae43\uc5d0 \ud55c\uc815\ub41c(target-specific) \ubcc0\uc218\uac12<\/span><\/strong><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc77c\ubc18\uc801\uc73c\ub85c \ubcc0\uc218\uac12\uc740 \uc5b4\ub514\uc5d0\ub098 \ud6a8\ub825\uc774 \ubbf8\uce58\uc9c0\ub9cc \uadf8 \uc608\uc678\ub85c\uc11c \uc790\ub3d9 \ubcc0\uc218\uac00 \uc788\ub2e4. \ub610 \ud558\ub098\uc758 \uc608\uc678\ub294 \ud0c0\uae43-\ud55c\uc815 \ubcc0\uc218\uac12\uc778\ub370 \uc774\ub294 \ud0c0\uae43\uc5d0 \ub530\ub77c \uac19\uc740 \ubcc0\uc218\uc758 \uac12\uc774 \ub2e4\ub974\uac8c \ub418\ub294\uac83\uc744 \ub9d0\ud55c\ub2e4. \ud0c0\uae43-\ud55c\uc815 \ubcc0\uc218\uac12\uc740 \ub2e4\uc74c\uacfc \uac19\uc774 \uc124\uc815\ub418\ub294\ub370 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><em><span style=\"font-family: Courier New; font-size: 9pt;\">target<\/span><\/em><span style=\"font-family: Courier New; font-size: 9pt;\"> ... : <\/span><em><span style=\"font-family: Courier New; font-size: 9pt;\">variable-assignment<\/span><\/em><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774 \ubcc0\uc218\uac12\uc740 export, override provate \ub4f1\uc744 \uc0ac\uc6a9\ud558\uc5ec \ud560\ub2f9\ud560 \uc218\ub3c4 \uc788\ub2e4. \ubcf5\uc218 \ud0c0\uae43\uc778 \uacbd\uc6b0\ub294 \uac01 \ud0c0\uae43\uc5d0 \ub530\ub978 \ud0c0\uae43-\ud55c\uc815 \ubcc0\uc218\uac12\uc744 \ud560\ub2f9\ud558\uac8c \ub41c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ubcc0\uc218\uac12 \ud560\ub2f9\uc740 '=', ':=', '+=', '?=' \ub4f1 \uc5b4\ub5a4\uac83\uc744 \uc0ac\uc6a9\ud574\uc11c\ub3c4 \uac00\ub2a5\ud558\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ud0c0\uae43-\ud55c\uc815 \ubcc0\uc218\ub294 \ub2e4\ub978 makefile \ubcc0\uc218\ub4e4\uacfc \uac19\uc740 \uc6b0\uc120\uad8c\uc744 \uac00\uc9c4\ub2e4. \uba85\ub839\ud589\uc744 \ud1b5\ud574 \uc81c\uacf5\ub41c \ubcc0\uc218\ub294 \ub2e4\ub978\uac83\ub4e4 \ubcf4\ub2e4 \uc6b0\uc120\ud558\uba70 override \uc9c0\uc2dc\uc790\ub97c \uc0ac\uc6a9\ud574 \uc774\ub97c \uac70\uc2a4\ub97c \uc218 \uc788\uac8c \ud574\uc900\ub2e4. <\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ud0c0\uae43-\ud55c\uc815 \ubcc0\uc218\uc5d0 \ud2b9\ubcc4\ud55c \ud2b9\uc131\uc774 \uc788\ub294\ub370 \uc774\ub294 \ud0c0\uae43-\ud55c\uc815 \ubcc0\uc218\uac00 \uc815\uc758\ub418\uba74 \uadf8 \ubcc0\uc218\uac12\uc740 \ud574\ub2f9 \ud0c0\uae43\uc758 prerequisite\ub4e4\uacfc \ub2e4\uc2dc \uadf8\ub4e4\uc758 prerequisite\uc5d0\uae4c\uc9c0 \ud6a8\ub825\uc744 \ubbf8\uce5c\ub2e4\ub294 \uac83\uc774\ub2e4. \uc608\ub97c \ub4e4\uc5b4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">prog : CFLAGS = -g<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">prog : prog.o foo.o bar.o<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ube44\ub85d CFLAGS\ub294 prog\ub77c\ub294 \ud0c0\uae43\uc5d0\uc11c \uac12\uc774 \ud560\ub2f9\ub418\uc5c8\uc9c0\ub9cc prog.o, foo.o, bar.o\ub97c \ub9cc\ub4e4\uae30 \uc704\ud55c recipe\uc5d0\ub3c4 \uac19\uc740 \ud6a8\uacfc\ub97c \ubc1c\ud718\ud558\uac8c \ub41c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ub9cc\uc57d \ud558\ub098\uc758 prerequisite \uc774 \uc5ec\ub7ec \ud0c0\uae43\uc758 prerequisite\uc73c\ub85c \uc4f0\uc774\ub294 \uacbd\uc6b0 \ucc98\uc74c \uc0dd\uc131\ub418\ub294 \ud0c0\uae43\uc758 \ud0c0\uae43-\ud55c\uc815 \ubcc0\uc218 \uac12\uc774 prerequisite\uc5d0 \uacc4\uc2b9\ub418\uace0 \ub098\uba38\uc9c0 \ud0c0\uae43\uc758 \uac12\uc740 \ubb34\uc2dc\ub41c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">6.12 \ud328\ud134-\ud55c\uc815(pattern-specific)&nbsp;\ubcc0\uc218\uac12<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ud328\ud134-\ud55c\uc815 \ubcc0\uc218\ub294 \ud328\ud134\uc5d0 \ub9de\ub294 \ud0c0\uae43\uc5d0 \ubcc0\uc218\uac12\uc744 \ud560\ub2f9\ud558\ub294 \uac83\uc774\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><em><span style=\"font-family: Courier New; font-size: 9pt;\">pattern<\/span><\/em><span style=\"font-family: Courier New; font-size: 9pt;\"> ... : <\/span><em><span style=\"font-family: Courier New; font-size: 9pt;\">variable-assignment<\/span><\/em><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ud328\ud134\uc740 %-pattern \ud615\uc2dd\uc774\uba70 \ud0c0\uae43-\ud55c\uc815 \ubcc0\uc218\uac12\uc5d0\uc11c\ucc98\ub7fc \uac00\ub2a5\ud55c \ud560\ub2f9 \ubc29\ubc95\uc744 \ubaa8\ub450 \uc0ac\uc6a9\uac00\ub2a5\ud558\ub2e4. \uc608\ub97c \ub4e4\uc5b4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">%.o : CFLAGS = -0<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ub294 %.o \ud328\ud134\uc5d0 \ub9de\ub294 \ubaa8\ub4e0 \ud0c0\uae43\uc5d0 \ub300\ud574 CFLAGS&nbsp;\uc5d0 '-0'\uc744 \ud560\ub2f9\ud55c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\ub9cc\uc57d \ud558\ub098\uc758 \ud0c0\uae43\uc774 \uc5ec\ub7ec\uac1c\uc758 \ud328\ud134\uacfc \uc77c\uce58\ud558\uba74 \uc5b4\ub5bb\uac8c \ub418\ub098? \uc774\ub7f0\ub54c\ub294 \ub354\uae34 stem\uc744 \uac16\ub294 \ud328\ud134-\ud55c\uc815 \ubcc0\uc218\uac00 \ucc44\ud0dd\ub41c\ub2e4. \ub2e4\uc2dc \ub9d0\ud574 \uc880\ub354 \uc790\uc138\ud55c \ubcc0\uc218\uac12\uc774 \ucc44\ub301\ub418\ub294 \uac83\uc774\ub2e4. \uc608\ub97c \ub4e4\uc5b4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">%.o: %.c<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">$(CC) -c $(CFLAGS) $(CPPFLAGS) $&lt; -o $@<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">lib\/%.o : CFLAGS := -fPIC -g<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">%.o : CFLAGS := -g<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">all : foo.o lib\/bar.o<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774 \uc608\uc5d0\uc11c lib\/bar.o\ub97c \uac31\uc2e0\ud558\uae30 \uc704\ud574\uc11c\ub294 \uccab\ubc88\uc9f8 CFLAGS \ubcc0\uc218\uac12\uc774 \uc4f0\uc778\ub2e4. \uc77c\uce58\ub41c \ud328\ud134\uc774 \uac19\uc740 \uae38\uc774\uc758 stem\uc744 \uac16\uc744 \ub54c\ub294 makefile\uc5d0\uc11c \uc815\uc758\ub41c \uc21c\uc11c\ub85c \uacb0\uc815\ud55c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><strong><span style=\"font-size: 9pt; font-family: Courier New;\">6.13 \uc0c1\uc18d \uc81c\ud55c\ud558\uae30<\/span><\/strong><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc55e\uc5d0\uc11c \uc5b8\uae09\ud588\ub4ef\uc774 make \ubcc0\uc218\ub4e4\uc740 prerequisite\uc5d0 \uc0c1\uc18d\ub41c\ub2e4. \uc774\ub7f0 \ud2b9\uc131\uc744 \uc774\uc6a9\ud574 prerequisite \uc774 \uc5b4\ub290 \n\ud0c0\uae43\uc5d0 \uc758\ud574 \uae30\ub3d9\ub418\ub294\uac00\uc5d0 \ub530\ub77c \uadf8 prerequisite\uc758 \ud589\ub3d9\uc744 \ubcc0\uacbd\ud560 \uc218 \uc788\ub2e4. \uc608\ub97c \ub4e4\uc5b4 debug\ub77c\ub294 \uc774\ub984\uc758 \ud0c0\uae43\uc5d0 \uc815\uc758\ub41c\n \ud0c0\uae43-\ud55c\uc815 \ubcc0\uc218\ub294 'make debug'\ub97c \uc2e4\ud589\ud558\uba74 debug\uc758 \ubaa8\ub4e0 prerequisite\uc5d0 \uc0c1\uc18d\ub41c\ub2e4. \ubc18\uba74 'make \nall'\uc744 \uc2e4\ud589\ud558\uba74 \uc774 \ud0c0\uae43-\ud55c\uc815 \ubcc0\uc218\uac00 \uc815\uc758\ub418\uc9c0 \uc54a\uc74c\uc73c\ub85c\uc368 prerequisite\uc758 \uc218\ud589\uc5d0\ub3c4 \ubcc0\ud654\uac00 \uc0dd\uae38 \uc218 \uc788\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc885\uc885 \uc774 \ubcc0\uc218\uac00 \uc0c1\uc18d\ub418\ub294 \uac83\uc744 \uc6d0\uce58 \uc54a\uc744 \uc218\ub3c4 \uc788\ub2e4. \uc774 \ub54c private \ubcc0\ud658\uc790\ub97c \uc0ac\uc6a9\ud558\uba74 \ub418\ub294\ub370 \uc774 \ubcc0\uacbd\uc790\ub294 \ubaa8\ub4e0 \ubcc0\uc218 \n\ud560\ub2f9\uc2dc \uc0ac\uc6a9\uac00\ub2a5\ud558\uc9c0\ub9cc \ud0c0\uae43-\ud55c\uc815, \ud328\ud134-\ud55c\uc815 \ubcc0\uc218\uc5d0 \uc0ac\uc6a9\ud560 \ub54c \uac00\uc7a5 \uc758\ubbf8\uac00 \uc788\ub2e4. private \ubcc0\ud658\uc790\ub85c \uc9c0\uc2dc\ub41c \ubcc0\uc218\ub294 \uadf8 \n\ud0c0\uae43\uc5d0\uc11c\ub9cc \ubcf4\uc77c \ubfd0 prerequisite\uc5d0\ub294 \ubcf4\uc774\uc9c0 \uc54a\ub294\ub2e4. \ub9c8\ucc2c\uac00\ub9ac\ub85c \uc804\uc5ed\ubcc0\uc218\uac00 private\ub85c \uc9c0\uc815\ub418\uba74 \ub2e8\uc9c0 \uc804\uc5ed\uc5d0\uc11c\ub9cc \n\ubcf4\uc77c\ubfd0 \uac01 \ud0c0\uae43\uc5d0\uc11c \ubcf4\uc774\uc9c0 \uc54a\ub294\ub2e4. \uc989 \uc5b4\ub5a4 recipe\uc5d0\uc11c\ub3c4 \uc0ac\uc6a9\ub420 \uc218 \uc5c6\ub2e4\ub294 \ub73b\uc774\ub41c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc608\ub97c \ub4e4\uc5b4 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">EXTRA_CFLAGS =<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">prog : private EXTRA_CFLAGS = -L\/usr\/local\/lib<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">prog : a.o b.o<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">\uc5ec\uae30\uc11c private \ubcc0\ud658\uc790\uac00 \uc788\uc73c\ubbc0\ub85c a.o\uc640 b.o\ub294 EXTRA_CFLAGS\ub97c \uc0c1\uc18d\ubc1b\uc9c0 \uc54a\ub294\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><strong><span style=\"font-size: 9pt; font-family: Courier New;\">6.14 \ub2e4\ub978 \ud2b9\uc218 \ubcc0\uc218\ub4e4<\/span><\/strong><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">GNU make\ub294 \ud2b9\ubcc4\ud55c \uc131\uc9c8\uc744 \uac16\ub294 \uba87\uba87 \ubcc0\uc218\ub4e4\uc744 \uc9c0\uc6d0\ud55c\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">MAKEFILE_LIST<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">make\uc5d0 \uc758\ud574 \ud574\uc11d\ub41c makefile\ub4e4\uc758 \uc774\ub984\uc744 \ud3ec\ud568\ud55c\ub2e4. \uccab\ubc88\uc9f8 \uc774\ub984\uc740 \ucc98\uc74c\uae30\ub3d9\ub41c Makefile\uc774 \ub420\uac83\uc774\ub2e4.<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">name1 := $(lastword $(MAKEFILE_LIST))<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">include inc.mk<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">name2 := $(lastword $(MAKEFILE_LIST))<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">all :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 12em\"><span style=\"font-family: Courier New; font-size: 9pt;\">@echo name1= $(name1)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 12em\"><span style=\"font-family: Courier New; font-size: 9pt;\">@echo name2=&nbsp;$(name2)<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">\uacb0\uacfc\ub294 <\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">name1= Makefile<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">name2= inc.mk<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p><span style=\"font-family: Courier New; font-size: 9pt;\">.DEFAULT_GOAL<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">\uba85\ub839\ud589\uc5d0\uc11c \ubaa9\ud45c \ud0c0\uae43\uc744 \uba85\uae30\ud558\uc9c0 \uc54a\uc558\uc73c\ub54c \uc2e4\ud589\ud560 \ud0c0\uae43\uc744 \uc54c\ub824\uc900\ub2e4. \uc774 .DEFAULT_GOAL \ubcc0\uc218\uac12\uc744 \ud074\ub9ac\uc5b4\ud558\uac70\ub098 \ud2b9\uc815 \ud0c0\uae43\uba85\uc744 \uba85\uae30\ud568\uc73c\ub85c\uc368 \ubaa9\ud45c\ud0c0\uae43\uc744 \uc815\ud55c\ub2e4. \uc608\ub97c \ub4e4\uc5b4 :<\/span><\/p><pre class=\"example\"><span style=\"font-family: Courier New; font-size: 9pt;\">          # Query the default goal.\n          ifeq ($(.DEFAULT_GOAL),)\n            $(warning no default goal is set)\n          endif  \n          .PHONY: foo\n          foo: ; @echo $@          \n          $(warning default goal is $(.DEFAULT_GOAL))          \n          # Reset the default goal.\n          .DEFAULT_GOAL :=          \n          .PHONY: bar\n          bar: ; @echo $@          \n          $(warning default goal is $(.DEFAULT_GOAL))          \n          # Set our own.\n          .DEFAULT_GOAL := foo\n<\/span><\/pre>\n<!-- \/wp:syntaxhighlighter\/code -->\n<!-- \/wp:syntaxhighlighter\/code -->\n<!-- \/wp:syntaxhighlighter\/code -->\n<span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774 \uacb0\uacfc\ub294 :<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">no default goal is set<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">default goal is foo<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">default goal is bar<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 8em\"><span style=\"font-family: Courier New; font-size: 9pt;\">foo<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">\uc774 \ubcc0\uc218\uc5d0 \uc5ec\ub7ec\uac1c\uc758 \ud0c0\uae43\uba85\uc744 \ud560\ub2f9\ud558\uba74 \uc5d0\ub7ec \ubc1c\uc0dd<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2\"><span style=\"font-family: Courier New; font-size: 9pt;\">MAKE_RESTARTS<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2\"><span style=\"font-family: Courier New; font-size: 9pt;\">.RECIPEPREFIX<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">recipe\ub97c \uc2dc\uc791\ud574\uc57c\ud558\ub294 \uccab \ubb38\uc790\ub97c \uc124\uc815\ud55c\ub2e4. \uc774 \ubcc0\uc218\uac00 \uc124\uc815\ub418\uc9c0 \uc54a\uc73c\uba74 \uae30\ubcf8\uac12\uc778 \ud0ed\ubb38\uc790\uac00 recipe\uc758 \uccab\ubb38\uc790\uac00 \ub418\uc5b4\uc57c \ud568<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2\"><span style=\"font-family: Courier New; font-size: 9pt;\">.VARIABLES<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">\uc9c0\uae08\uae4c\uc9c0 \uc815\uc758\ub41c \ubaa8\ub4e0 \uc804\uc5ed \ubcc0\uc218\uc774\ub984\uc744 \ud568\uc720\ud55c\ub2e4. \ube48\ubb38\uc790 \ubcc0\uc218\uc640 \ube4c\ud2b8\uc778 \ubcc0\uc218\ub3c4 \ud3ec\ud568<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2\"><span style=\"font-family: Courier New; font-size: 9pt;\">.FEATURES<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">make\uac00 \uc9c0\uc6d0\ud558\ub294 \ud2b9\uc131<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">'archives'<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">'check-symlick'<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">'else-if'<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">'jobserver'<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">'second-expansion'<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">'order-only'<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">'target-specific'<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">&nbsp;<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2\"><span style=\"font-family: Courier New; font-size: 9pt;\">.INCLUDE_DIRS<\/span><\/p><span style=\"font-family: Courier New; font-size: 9pt;\">\n<\/span><p style=\"LINE-HEIGHT: 2; MARGIN-LEFT: 4em\"><span style=\"font-family: Courier New; font-size: 9pt;\">make\uac00 include\ud560 makefile\uc744 \ucc3e\uc544 \ud5e4\uba5c \ub514\ub809\ud1a0\ub9ac \ub9ac\uc2a4\ud2b8<\/span><br \/><\/p><!-- \/wp:freeform -->","protected":false},"excerpt":{"rendered":"<p>\ucd9c\ucc98 : http:\/\/blog.daum.net\/english_100\/10 6. \ubcc0\uc218 \uc0ac\uc6a9\ubc95 &nbsp; \ubcc0\uc218\ub780 \ubb38\uc790\uc5f4\uc744 \ud568\uc720\ud558\uace0 \uc788\ub294 makefile \ub0b4\uc5d0 \uc815\uc758\ub41c \uc774\ub984\uc774\ub2e4. \uc774 \uac12\uc740 \ud0c0\uae43\uc774\ub098 prerequisite, recipe \ub4f1 makefile\uc758 \ub2e4\ub978 \ubd80\ubd84\uc5d0\uc11c&nbsp;\uce58\ud658\ub418\uc5b4 \uc4f0\uc774\uac8c \ub41c\ub2e4. \ubcc0\uc218\ub098 \ud568\uc218\ub294 recipe \uc5d0\uc11c\ub9cc \uc81c\uc678\ud558\uace0 makefile\uc744 \uc77d\uc5b4\ub4e4\uc77c \ub54c &#8216;=&#8217;\uc758 \uc624\ub978\ucabd \ubd80\ubd84\uc774\ub098 define \uc9c0\uc2dc\uc790\uc758 \ubab8\ud1b5\ubd80\ubd84\uc758 \uac12\uc73c\ub85c \ud3bc\uccd0\uc9c4\ub2e4. \ubcc0\uc218\uc5d0\ub294 \ud30c\uc77c\uc774\ub984, \ucef4\ud30c\uc77c\ub7ec\uc5d0\uac8c \uac74\ub124\uc904 \uc635\uc158, \uc2e4\ud589\ud560 \ud504\ub85c\uadf8\ub7a8, \uac80\uc0c9\ud560 \ub514\ub809\ud1a0\ub9ac \ub4f1\ub4f1 \uc0c1\uc0c1\ud560 \uc218 \uc788\ub294 [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[17],"tags":[],"class_list":["post-496","post","type-post","status-publish","format-standard","hentry","category-development_dev_tools"],"_links":{"self":[{"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=\/wp\/v2\/posts\/496","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=496"}],"version-history":[{"count":0,"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=\/wp\/v2\/posts\/496\/revisions"}],"wp:attachment":[{"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=496"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=496"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=496"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}