ð ïžãyaccã®äžã®äººãåã¶ããŒã«ããšããŠèªçããmakeãUINIXåæ ç©èª
æ ¹æ·±ã宣èšèšèªå«ããããããã®çºç«¯ã¯make/autoconfã ã£ãã®ãïŒ
ãã¯ããè¶ ããŠããã£ã¬ã¯ãã£ããªã©ã®å称ã䜿ããDSLãæºæµã¯make/autocofããããããããªãã®ã§ããããã§ã芪ãã¿ãæã£ãŠçããŠããããã
ãŸãã¯æŽå²èæ¯ãã
éæããããååãããã ãã§èŠªãã¿ãæãŠãã
ååãžã®çæããèŠç·ãšèŠªåïŒããã£ããïŒïŒããçãŸããèšèªãmake
ååã¯éæããšãããã¹ãã£ãŒããžã§ã³ãœã³ãšããã©ã£ã¡ãã£ãŠãããšYACCïŒã³ã³ãã€ã©ã®ã³ã³ãã€ã©ïŒãäœã£ã人ã
ãyaccã®äººãåã¶ããŒã«ããšããŠmakeããããããã§ã¯ã¢ãã¿ã®åã«ä»ç®ãã¯ã£ãŠãmakeããŠãðãã¿ãããªãããšããããããäºäººã§äº€ããããŠãããšæ³åãããã
ãããmakeã®ã€ã€ãããã¡ã€ã«åŒæ°ã®ãªã
ã©ãããŠãæ £ããªãããã¡ã€ã«åŒæ°ãçç¥ããå¿ èŠæ§ãææ³ãåãããªããçç±ãåããŠããæ £ç¿ã ãããã®äžç¹åŒµãã
Without arguments, Make builds the first target that appears in its makefile, which is traditionally a symbolic "phony" target named all.åŒæ°ããªãå ŽåãMake 㯠makefile ã«çŸããæåã®ã¿ãŒã²ãããæ§ç¯ããŸããããã¯äŒçµ±çã« all ãšããååã®ã·ã³ããªãã¯ãªããã»ã¢ããã¿ãŒã²ããã§ãã
Makefiles are traditionally used for compiling code (*.c, *.cc, *.C, etc.), but they can also be used for providing commands to automate common tasks.Makefile ã¯äŒçµ±çã«ã³ãŒã (*.c, *.cc, *.C, ãªã©) ã®ã³ã³ãã€ã«ã«äœ¿çšãããŸãããäžè¬çãªäœæ¥ãèªååããããã®ã³ãã³ããæäŸããããã«ã䜿çšãããããšããããŸãã
YACCã®ã¹ãã£ãŒãããåŒæ°ããããšå¶æŽã«æŽãåºãã¿ã€ãã®ããã°ã©ããŒã ã£ãããšããããšã«ãããã
makefile èšèªã¯å®£èšåããã°ã©ãã³ã°ã«äŒŒãŠããŸã
æ··ä¹±ããŠãããä»ãããããŠããããããã©ãããŠãªãã makeã俺ã«åœä»€ããŠããããšãã£ãŠããããããªãããã¹ãŠã¯YACCã®ã®ããã ãšæããã
makeã«æã¡èŸŒãŸãããã¿ãïŒã¶ã£ïŒèŸŒã¿å®£èšæ§æ
Pythonæã¡äžããæå倧ããªå£°ã§èšããªãããå 茩äœæ¥è ãã¿ããªæå¥èšã£ãŠãããã ã
Wikipediaã®äººããã§ã«ãããè °ã
äœè ã®ãã§ã«ããã³æ°ã®èšãèš³ã¯ãããªæã
ããããããšãããããããããã©ãã ã奜ããªãã YACCã
仲è¯ãããããšã«ãã
ãã£ãšè§£æ±ºæ¹æ³ã¯ããã¯ãã ãã¿ããªãã³ã³ãã€ã©äœãããã«ãªãã°ããããã£ãšãããªæªæ¥ã«ãªãã°ããããªããšã¯ãå°ããªåé¡ã ã
ãããŠmakefileã®ç»å Ž
ç£ä¿ç¶ã®ããã«ããmakeãšå¥ã«ãããªããšããåŒçšãããããããšããã£ã泚æãïŒïŒïŒïŒå¹Žæ«ã®make fileã¢ãŒãã£ã¯ã«ã«ã¯ããããå¥ã«ããããªã£ã人ã®æ°æã¡ã¯ããããmakeãšmakefileã¯å¥ã«èªã£ãæ¹ããããããã宣èšèšèªã ããããã©ãwikipediaã§ãããªããŠããããããããªããã©ã
宣èšèšèªïŒã€ã®ãçŽæ
makefileã«ã¯ïŒã€ã®çŽæããããšãããããã¯ãæ瀺çãªã«ãŒã«ããæé»çãªã«ãŒã«ããå€æ°ãããã£ã¬ã¯ãã£ãããã³ã¡ã³ããã ãããããŠèããããPrologã«ãã®ãã¡ã€ã±ãæ°ãããŠããããããããã£ãŠãã€ãyaccã«ãŸãææŠããæ¥ããããããããªãã
壮絶ãããŸãã«å£®çµ¶ãããããã
ãããŸã§å人ãžã®èŠªåãæ°ããããšãåŠã³ããæ欲ããçãŸããmakeããããã§ãæ¹å€ãããã®ã¯ã²ãšãã«äºæ³ä»¥äžã«èå ã济ã³ãŠããŸã£ãããã«éãããªãããŸããŠãããã®äžã®äžã«ãªã£ãŠãmakefileããããŸã§é åžãããæ°ããããããªãã£ãã ããããµã€ãã§äœããããåéãœããã«ãã©ãããã©ãŒã éã®åé¡ãæã¡èŸŒãŸãªãã§ããŒããšåŠçŽå§å¡ããããèšã£ãŠãããã ããã
make以å€ãã¯ãŒã«ã«é²ã¿éããŠããã®ããmakeãæ¬åœã«ããã³ãžãŒãã©ããïŒéæããªçœ ïŒããªã®ãïŒ
ãã³ãžãŒãã©ããã¿ãããªå¥ç¹ãªè©±ã¯ããã€ãèããmakeããããã察象ã ãšããã®ã¯ä»ç¥ã£ãããåãéåæãå ±æã§ãã人ãããã®ãåãã£ãã ãã§è¯ããŠãä»åã¯ãããããªæå³ã§æŽå²ãçŽè§£ããšå£®çµ¶ã ã£ãããããŠããããããã£ããŸãŸãããç¬ããã®ããã«autoconfãç»å ŽããŠãèªåå²ã®å é ã«ããã