gyp ã§ãã¤ãã£ãã³ã¼ãããã¸ã§ã¯ãã®ãã«ããå¤ç°å¢ã«å¯¾å¿ããã
ä»åã¯ãgyp ã§ãã¤ãã£ãã³ã¼ãããã¸ã§ã¯ãã®ãã«ããå¤ç°å¢ã«å¯¾å¿ããããã§ããç§ããã£ã¦ãããã¨ãã¡ã¢ãã¦ããã¾ãã
èæ¯
ç§ã¯ Windows ã®ã³ã¼ããããæ¸ãã¦ãã¾ãããããæãã AndroidãWindows MobileãLinuxãMac OS XãiOS ã§ãåãããã«æèãã¦æ¸ãããã«ãªãã¾ãããããã«ãã³ã¼ãããã«ãããããã®å種è¨å®ãã¡ã¤ã«ãç¨æããã®ãé¢åã«ãªãã¾ãããVisual StudioãXcodeãMakefileãAndroid NDK ç¨ Makefileã»ã»ã»ãã£ã¦ãããã¾ãããã
ãã«ããã¼ã«å·¡ãã»ã»ã»cmakeãsconsãwafããã㦠gyp ã¸
ãã«ãè¨å®ãã¡ã¤ã«ãèªåçæããããã®ãã«ããã¼ã«ãæ¢ãã¦ã¿ãã¨ããã«ããã¤ãåºã¦ãã¾ãããåå¹´ã»ã© cmake 㨠scons ã並è¡éç¨ãã¦ãã¾ãããããã®ä¸ã§æ°ã«å ¥ããªãç¹ãåºã¦ãã¾ããã
- ãã«ãã¯ã§ããã Visual StudioãXcode ãªã©ã®ããã¸ã§ã¯ããã¡ã¤ã«ãçæã§ããªã
- sconsãwaf ãªã©ã¯ãã
- Visual StudioãXcode ã®ããã¸ã§ã¯ããã¡ã¤ã«ãçæã§ãããä¸èº«ãã¤ãã¤ã
- cmake ã§ã¯ãinclude ãã£ã¬ã¯ããªããªãã絶対ãã¹ã ã£ãããã
- ããã¸ã§ã¯ãéã®è¨å®ã®å
±æãã¤ãã¤ã
- Android NDK ã® export ã®æ¦å¿µã«ç¸å½ãããã®ããã£ãããªãã£ãã
- Android NDK ã«å¯¾å¿ãã¦ããªã
- å½æ㯠cmakeãsconsãwaf ã©ãã対å¿ãã¦ã¾ããã§ãã
ãã®è¾ºããã¹ã¦ãã¾ã対å¿ãã¦ãããã®ããgyp*1 ã§ããgyp 㯠Google Chrome ãã¯ããã¨ãã Google 製ã¯ã©ã¤ã¢ã³ãããã°ã©ã ãä¸å¿ã«å©ç¨å®ç¸¾ãããã¾ã*2ãGoogle æ¥æ¬èªå
¥åã®ãã¼ã¹ã§ãã mozc ãªãããããã§ãããnode.js*3ããã®ä¸ã§åãã¦ãã v8*4ãlibuv ãªããã gyp ã§ãã«ããããããã«ãªã£ã¦ãã¾ãããã ããgyp ã®ã¹ã¯ãªããã¯Python 2.4 ã ã¨åããªã*5ã®ã§ãCent OS ãªã© Python 2.4 ãæ¢å®ã®ç°å¢ã§ã¯å°å³ã«è¾ãã®ã§ãããæã§ãã«ãè¨å®ãã¡ã¤ã«ãæ¸ããã¨ã«æ¯ã¹ãã°ããããªåé¡ã§ãã
gyp ãããã¸ã§ã¯ãã«é ç½®ãã
gyp ã¯ãã ã® Python ã¹ã¯ãªãã群ã§ããNew BSD ã©ã¤ã»ã³ã¹ãªã®ã§ãèªåã®ããã¸ã§ã¯ãã«çµã¿è¾¼ãã§ãã¾ãã®ã楽ããããã¾ãããç§ã®å ´åã¯ãnode.js ãåèã«ä»¥ä¸ã®ããã«ãã¦éç¨ãã¦ãã¾ãã
- $PROJECT_ROOT/tools/gyp
- gyp ä¸å¼ãé ç½®ãã
- $PROJECT_ROOT/build/common.gypi
- åããã¸ã§ã¯ãã®å
±éè¨å®ãæ¸ã
- Visual Studio ã®ããã¸ã§ã¯ãè¨å®ãXcode ã®ããã¸ã§ã¯ãè¨å®ãªã©
- åããã¸ã§ã¯ãã®å
±éè¨å®ãæ¸ã
- $PROJECT_ROOT/configure.py
- gyp ãå¼ã³åºãã¦ããã¸ã§ã¯ããã¡ã¤ã«ãçæããã¹ã¯ãªãããæ¸ã
- $PROJECT_ROOT/README.md
- ãã«ãæé ãæ¸ã
Android NDK åãã®ãã³å ¥ã
gyp ãçæãã Android NDK ç¨ã® Makefile ã§ãã«ãããã¨ããããã¨é·ããã¡ã¤ã«åã«ãªã£ã¦ãã¾ãã®ã§ãç§ã¯ä»¥ä¸ã®ãã¡ã¤ã«ãä¸é¨ä¿®æ£ãã¦ãã¡ã¤ã«åãçããªãããã«ãã¦ãã¾ãã
- $PROJECT_ROOT/tools/gyp/pylib/gyp/generator/android.py
- ComputeAndroidModule 㧠return self.target ããããã«ãã¦ãã
ã¾ã¨ã
ãã®è¨äºã«ã¯å ·ä½ä¾ãããã¾ããããGithub ã® node.js ã®ã³ã¼ããä½ãããéå¼ã§ãã
*1:https://code.google.com/p/gyp/
*2:gyp 㯠Google Chrome ãªã©ãä»ç°å¢ã§ãã«ãããããã®ä½ããããã®ã§ã以å㯠scons ã§ãã«ãããã¦ãã¾ãã
*3:以å㯠waf ã§ãã«ãããã¦ãã¾ãã
*4:以å㯠scons ã§ãã«ãããã¦ãã¾ãã
*5:with ãªã©æ°ããæ§æã使ã£ã¦ãããã