Blog

SpiderMonkey��GNU Autotools�����

By Hiroyuki OYAMA Tue Oct 12 02:11:52 2004

Mozilla�֥饦����JavaScript���󥸥�Ǥ���SpiderMonkey��¾�Υץ��������ȤǤ⥵���äȻȤ���褦�ˡ�GNU Autoconf, Automake, Libtool�ǥӥ�ɤǤ���褦�˽������뤪�á�

SpiderMonkey�Ȥϲ�����

SpiderMonkey��C����Ǽ�������Ƥ�JavaScript���󥸥�ǡ�Mozilla�֥饦����JavaScript�ޤ��μ����Ȥ������Ѥ���Ƥ��ޤ���ñ�ΤǤ����Ѳ�ǽ�ʥ饤�֥��ʤΤ�Mozilla�ʳ���Web�֥饦���䡢Web������¦�Ǥ�ưŪ�ʥ���ƥ���������ʤȤ��Ƥ䡢����¾Web�ʳ��Υ��ץꥱ�������ˤ����������ߤΥ�����ץȥ��󥸥�(Netscape Enterprise Server��LiveWire�Ȥ����������Ǥ���)�Ȥ������Ѥ���Ƥ��ޤ���Ʊ���󥸥��������ˡ�����ѻ����ϡ�Mozilla�ץ��������Ȥ�JavaScript�ץ�����������Υɥ�����Ȥ򻲾Ȥ��Ƥ����������ޤ���Java�ˤ������Ǥ���Rhino�����ѤǤ��ޤ���
�Ĥޤ�Perl��Ruby��Python�Υ��󥸥������Υץ��������Ȥ߹����(embed����)���ѤǤ���褦�ˡ�SpiderMonkey���󥸥���Ȥ߹���Ф��ʤ��Υץ�������JavaScript���᤹�뤳�Ȥ��Ǥ���褦�ˤʤ�ޤ���

����äȺ��ä��Ȥ���1

�ǡ�������Ũ�ʥ�����ץȥ��󥸥�饤�֥��Ǥ���SpiderMonkey�ʤ�Ǥ������ӥ�ɥ����ƥब��̯�˻Ȥ��ˤ����Τ�����ԤǤ����̤˥�����ʣ����Ƚ��������ԤäƤ���櫓�ǤϤʤ��ΤǤ������ץ�åȥե�����̾��ᥦ�����ӥ�ɥ����ƥ�ʤ��ᡢ�㤨��CVS����checkout������FreeBSD��ǥӥ�ɤ��褦�Ȥ��Ƥ⡢�����äȥӥ�ɤǤ��ʤ��������꤬ͭ�ä��ꤷ�ޤ���
��������FreeBSD�Ѥ�ports�Υѥå�������ͭ��ߤ����Ǥ�����Linux��Ʊ���롼��ǥӥ�ɤ��Ƥ������͡��ǿ��Τ�ΤϤ���ޤ���localtime_r�ؿ��Ȥ�ͭ��ޤ����ä���
�Ǥ���Хץ�åȥե�����̾�������Ƚ�ꤹ��ΤǤϤʤ��ơ֡��ߴؿ��ϻȤ��뤫�ݤ��פȺ٤���Ƚ�ꤷ�Ƥ�館��С��ܿ�����ӥ�ɤ��ưפˤʤ�Ϥ��ʤΤǤ�����������������ä������Ǥ���

����äȺ��ä��Ȥ���2

�ޤ����ӥ�ɤˤ�Libtool����Ѥ��Ƥ���ΤǤ����������ƥ�˥��󥹥ȡ��뤵��Ƥ���libtool���ޥ�ɤ�Ȥ����Ȥ��Ƥ��������Ŀ�Ū�ˤȤäƤ������Ǥ���Mac OS X�ξ��/usr/bin/libtool�ˤ�Apple���Ѱդ����ȼ���libtool���ޥ�ɤ����֤���Ƥ��ޤ�(�̾盧���餬���Ѥ���ޤ�)���������ʤ����ͤ��ȼ���Apache 2.x�����⥸�塼��Υӥ�ɤ䡢����¿���������̤ο������ܤ�GNU libtool��Ȥ������Τǡ������/usr/local/bin/libtool�˥��󥹥ȡ��뤷��ͥ��Ū�˻ȤäƤ��ޤ��������Ϥޤä�����ʪ�ǡ����ޥ�ɥ饤�������㤤�ޤ����Ĥޤ�ӥ�ɥ����ƥब���Ԥɤ���ư���Ƥ���ʤ���̤ˤʤ�ޤ���

�̤��ͤ��Ķ��򤽤Τ褦�˺�äƤ��뤫����ä����äƤ�������Ȥ����Ф��ΤȤ���ʤ�Ǥ��������ۤ���ѥå�������libtool����Ѥ����硢�ۥ��Ȥ�libtool�Υ��󥹥ȡ�����׵ᤷ���ꥤ�󥹥ȡݥ�Ѥߤ�libtool����Ԥ���ȡ��������ä���������libtool������ץȤ�Ƨ��Ǥ��ޤ����ä����Ȥ�������ޤ���(�Ǹ��Ϥ��ޤ���)���̤����ۥѥå�������ltmain.sh������ץ�����ź�դ��ơ��ȼ���libtool������ץȤ����������Ѥ���Τ��ȥ�֥�򸺤餹������ȻפäƤ��ޤ�������ˤ�ä�Libtool����Ū�Ǥ���
��ͭ�饤�֥�����Υӥ�ɺ�Ȥˤ�����ץ�åȥե�����֤κ��ۤ�ۼ�������ȯ�Ԥ����줵�줿���ޥ�ɥ饤�󥤥󥿡��ե��������󶡤���
���������ã�������Ȼפ��ޤ���Autoconf, Automake���Ȥ߹�碌��Ф�äȴ�ñ�ˤʤ�ޤ�����������󤳤Υ����������ɤȥӥ�ɥ����ƥ��(������)Mozilla��ӥ�ɤ���٤�ʪ�Ǥ��äơ�ñ�ΤΥ饤�֥��Ȥ������ۤ���٤˺���Ƥ���櫓�ǤϤʤ��Τ��ͤù���Ȥ����Ǥ�ʤ��褦�ʵ��⤷�ޤ���
�äƤޤ�Mac OS X�νФ��Ф���κ��ˤϡ������libtool�������˥ץ�åȥե������Ƚ������Ѥ���config.guess������ץȤ��Ť��ƥץ�åȥե������Ƚ��Ǥ��ʤ�(Darwin?�ʤˤ��졼)�äƤ����꤬�褯����ޤ������ɤ͡�
configure�����Ԥ����顢�Ȥꤢ����/usr/share/libtool/config.guess���򥳥ԡ�
�äƤΤϥޥ����ΰ��̶��ܤ��ä��Τ����������Ǥ����äƤ椦��̤���ˤ��������֤��ĤޤǸŤ�libtool�ȤäƤ䤬����� ���顼�פʺ��ä��ץ��������Ȥ������뤳�Ȥ⵩��ͭ��ޤ����ɡ����ä���ͤλ��𤬤����Ǥ��礦��

�ȡ����֤����䤿���ä���Ĺ���ʤäƥ���Ǥ�����SpiderMonkey�Υӥ�ɤ�GNU Autoconf, Automake, Libtool�ǥ����äȤǤ���褦��Ϯ�äƤߤ����Υ�⡣

Autotools����

SpiderMonkey���Τ�ʣ���ʥӥ�ɥ롼�����äƤ���櫓�ǤϤʤ��Τǡ����μ�缫�Τ����̤Υץ��������Ȥ�GNU Autoconf, Automake, Libtool�ǥӥ�ɥ����ƥ���Ȥ�����纹�ʤ��Ȼפ��ޤ��������
  • GNU Autoconf 2.57
  • GNU Automake 1.6.3
  • GNU libtool 1.5.10
����Ѥ��ޤ�����2004ǯ10��� Autoconf��version 2.59��Automake��version 1.9.2��Libtool��version 1.5.10����꡼������Ƥ��ޤ����ä����ۤ���ѥå����������硢����οͤ����Ǥ򤫤��ʤ��٤ˤ�libtool�Ͽ�����ʥ�Ĥ�ȤäƤ����ȵȤǤ���

���1 �ǥ��쥯�ȥ�쥤�����Ȥγ�ǧ

mozilla�ץ��������Ȥ�CVS����checkout����ʤ�tar ball������������(�����js-1.5-rc6a.tar.gz�����)����ȡ������Τ褦�ʥ쥤�����Ȥǥե����뤬Ÿ������ޤ���
$ ls -F
CVS/    README  jsd/    src/
CVS�ǥ��쥯�ȥ�ȥǥХå������jsd�ǥ��쥯�ȥ��̵�뤷�ơ������src�ǥ��쥯�ȥ��۲��Υ����������ɤ������ӥ�ɤ��뤳�Ȥˤ��ޤ���src�ǥ��쥯�ȥ�ʲ��ˤϥ�����������(*.c)�ȥإå��ե�����(*.h)�䡢�ӥ���ѤΥե����뤬�����Ĥ�ž���äƤ��ޤ����ޤ����˲��ˤϸߴ����ݻ��ѤΥ饤�֥��䡢Java��JavaScript���ӤĤ���LiveConnect��Ϣ�Υǥ��쥯�ȥ�䡢Perl��JavaScript���ӤĤ���PerlConnect��Ϣ�Υǥ��쥯�ȥ������ޤޤ�Ƥ��ޤ��������JavaScript�Υ饤�֥��������ߤ����Τǡ�������̵�뤹�뤳�Ȥˤ��ޤ���

Autotools���ˤ����ꡢ�ǽ�Ū�˼��Τ褦�ʥǥ��쥯�ȥ�쥤�����Ȥ�Ȥ뤳�Ȥˤ��ޤ���
./config/     - �ӥ�ɥ����ƥ��ѥե�����
./src/        - ������������(checkout������Τ�Ʊ��)
���Υ��ƥåפ˿ʤ����ˡ��ӥ�ɥ����ƥ��ѥե���������֤���ǥ��쥯�ȥ��ͽ��������Ƥ����ޤ���
$ mkdir config
$ ls -F
CVS/    README  config/ jsd/    src/

���2 configure.in�ե��������

configure������ץȤΥ롼�����뤿�ᡢconfigure.in�ե������������ޤ����٤��������å��Ϻ��ΤȤ����֤��Ƥ����ơ������Τ褦�����ƤǺ������ޤ���
AC_INIT(SpiderMonkey, 1.5-rc6a, [email protected])
AC_CONFIG_AUX_DIR(config)
AM_INIT_AUTOMAKE(SpiderMonkey, 1.5-rc6a)
AM_CONFIG_HEADER([src/config.h])

AC_PROG_CC
AC_PROG_LIBTOOL
AC_EXEEXT
AC_OUTPUT(Makefile src/Makefile)
AC_INIT���ǻ��ꤷ�Ƥ���ѥå�����̾��"SpiderMonkey"�ǤϤʤ�"js"���������ɤ��Τ��⤷��ޤ��󡣤Ǥ⥸���ͥ�å��������ɤ��ʤ������ȥ��ƥʤΥ᡼�륢�ɥ쥹�ϤȤꤢ������ʬ�Υ��ɥ쥹�Ǥ�񤤤Ƥ����ޤ��礦(�����Τ�)��

���3 Makefile.am�ե��������

Makefile�ΤҤʷ��Ǥ���Makefile.in���������뤿�ᡢMakefile.am�ե������������ޤ��������src�ǥ��쥯�ȥ�ʲ��˥����������ɤ�ͭ��Τǡ��ѥå������Υȥåץ�٥�ȡ�src�ǥ��쥯�ȥ�Σ�����˺������ޤ����ȥåץ�٥��Makefile.am�ϲ����Τ褦�˥��֥ǥ��쥯�ȥ��̾������ꤹ�����������:
SUBDIRS = src
���줳��
$ echo 'SUBDIRS = src' > Makefile.am
�Ȥ��Ǻ�äƤ⤪�ä����Ǥ���

�۲���src�ǥ��쥯�ȥ���ˤϼ��Τ褦�����Ƥ�src/Makefile.am�ե������������ޤ���
lib_LTLIBRARIES = libjs.la
libjs_la_SOURCES = jsapi.c jsarena.c jsarray.c jsatom.c jsbool.c \
                   jscntxt.c jsdate.c jsdbgapi.c jsdhash.c jsdtoa.c \
                   (��ά) 
                   jsxdrapi.h prmjtime.h resource.h  js.msg jsopcode.tbl

bin_PROGRAMS = js
js_SOURCES   = js.c jsshell.msg
js_LDADD     = libjs.la
�����JavaScript���󥸥�Υ饤�֥��Ȥ���libjs��JavaScript�Υ��󥿥ץ꥿���ޥ�ɤȤ���js�ץ�������ӥ�ɤ��ޤ������줾��ӥ�ɤ�ɬ�פʥ����������ɤ�*_SOURCES�ǻ��ꤷ�Ƥ����С����Ȥ�Automake���ޥ�ɤ��������ߤ�Makefile���äƤ���ޤ���*_PROGRAMS��*_SOURCES��S��褯˺���Τ����ա� ��ʬ

�Ȥ����櫓����μ��2�Ȥ��碌����3�ĤΥե������������ޤ�����
$ ls configure.in Makefile.am src/Makefile.am
Makefile.am     configure.in    src/Makefile.am

���4 aclocal��libtoolize���ޥ�ɼ¹�

configure.in�ǻ��Ѥ���ޥ����򤫤�����뤿�ᡢaclocal���ޥ����¹Ԥ��ޤ���
$ aclocal
�õ����뤳�Ȥ��ä�̵���ä����¹Ԥ���������¹Ը塢configure.in�ե�����ǻ��Ѥ��Ƥ���M4�ޥ����򤫤������aclocal.m4�ե������������ޤ���

�ޤ���libtool������ץȤ���������config/ltmain.sh������ץȤ䡢�ץ�åȥե������Ƚ��˻��Ѥ���cofig/config.guess������ץȤ䡢�ץ�åȥե�����̾��û��̾������̾���Ѵ����뤿���config/config.sub������ץȤ����֤���٤�libtoolize���ޥ�ɤ�¹Ԥ��ޤ���
$ libtoolize
Putting files in AC_CONFIG_AUX_DIR, `config'.
�¹Ԥ����config�ǥ��쥯�ȥ��۲��˼��Τ褦�˥ե����뤬���֤���ޤ���
$ ls config/
config.guess    config.sub      ltmain.sh
�����config�ǥ��쥯�ȥ�����֤����ե������libtool�ΥС������ˤ�ä�¿���Ѳ������褦�ʵ������ޤ����ɡ����ˤ��ʤ���OK�ä���

���5 automake�¹�

Makefile.am�����Ȥ�Makefile.in�����������ꡢLibtool������ɬ�פʥե���������֤���٤�automake���ޥ����¹Ԥ��ޤ���
$ automake --add-missing

���6 autoheader�¹�

configure������ץȤη�̤򸵤ˡ��ץ�åȥۡ����¸��ʬ��ۼ�����­��Ȥʤ� src/config.h.in�ե��������������٤�autoheader���ޥ����¹Ԥ��ޤ���
$ autoheader
�¹Ը�ˤ�configure.in��AM_CONFIG_HEADER()�ǻ��ꤷ��src/config.h�ΤҤʷ��Ȥʤ� src/config.h.in�ե����뤬��������ޤ���

���7 autoconf�¹�

configure������ץȤ���������٤ˡ�autoconf���ޥ����¹Ԥ��ޤ���
$ autoconf

���8 ��­�ե�����κ���

automake���ޥ�ɤǷٹ𤬽ФƤ������ѥå�������ɬ�פʥե����뤿����������Ƥ����ޤ����Ȥꤢ�������Ǥ��ɤ��Τ�
$ touch NEWS AUTHORS ChangeLog
�ʤɤǺ������Ƥ����ޤ���

���̤Υץ��������ȤǤ���С����μ��8�λ����ǽ�λ�ǡ��Ȥꤢ������
$ ./configure
$ make
# make install
�Ȥ��Ǥ���褦�ˤʤ�ޤ����饤�֥��ξ��ϥ��󥹥ȡ��뤹��إå��ե��������ꤷ���ꤷ�Ƥ�����ɬ�פ�ͭ��Τǡ������Ĥ��ɲäκ�Ȥ�ɬ�פǤ���

SpiderMonkey��ͭ�κ��

���̤Υѥå������Ǥ���о嵭�μ�³���ǽ�λ�ʤΤǤ�����SpiderMonkey�ξ���2���ۤ����դ��٤��Ȥ�����ͭ��ޤ���������ܤϥӥ�ɻ���XP_UNIX�ʤɥץ�åȥե�����̾�򼨤��ͤ�#define or -D ����������ɬ�פ����롣����ܤϥ������ƥ������¸���ͤ�Ĵ�٤�src/jsautocfg.h�ե�������������Ƥ�����ɬ�פ�ͭ�����Ǥ���

�ɲü��9 �ץ�åȥե�����Ƚ���������ɲä���

�Ȥꤢ��������ϡ��ͤδĶ��ǥӥ�ɤǤ����OK�פʤΤǡ���­���Ƥ��������ӥ�ɻ����ɲä���褦configure.in�ե�����˲����Τ褦���ɵ����ޤ���
AC_DEFINE([XP_UNIX], [1], [description])
AC_DEFINE([SVR4], [1], [description])
AC_DEFINE([SYSV], [1], [description])
AC_DEFINE([_BSD_SOURCE], [1], [description])
AC_DEFINE([POSIX_SOURCE], [1], [description])
AC_DEFINE([DARWIN], [1], [description])
�������ͤϡ��ץ�åȥե�����ˤ�ä��Ѳ����ޤ����㤨��Solaris�ξ���
AC_DEFINE([XP_UNIX], [1], [description])
AC_DEFINE([SVR4], [1], [description])
AC_DEFINE([SYSV], [1], [description])
AC_DEFINE([SOLARIS], [1], [description])
AC_DEFINE([HAVE_LOCALTIME_R], [1], [description])
�Ȥ������˻��ꤹ��ɬ�פ����ꡢ����libm���󥯤���(-lm)�褦���ꤹ��ɬ�פ�ͭ��ޤ���

�����Υץ�åȥե����ऴ�Ȥκ��ۤ�SpiderMonkey�Υӥ�ɥ����ƥ�(src/Makefile.ref, src/config/*)�򻲹ͤˤ��ơ�configure������ץ���ǥץ�åȥե������Ƚ�ꤷ���ꤷ�Ƥ����ޤ�(����ϻ��Ѥ��뵡ǽ���Ȥ�Ƚ�ꤹ��褦�ˤ���٤��Ǥ�����)���ץ�åȥե������Ƚ��롼��ȡ�ɬ�פ�����������configure.in�ե������shell������ץȤȤ��Ƶ��Ҥ��Ƥ����ޤ����ܺ٤Ͼ�ά(������)���ޤ�����Ĵ�٤Ƥߤ�������ȤäƤʤ������¿���Τǡ���äȴ��Dz��Ǥ������Ǥ���
���ξ��֤�autoreconfi���ޥ�ɤ�configure������ץ������ӥ�ɤ���configure������ץȤ�¹Ԥ���ȡ�AC_DEFINE()�ǻ��ꤷ���ͤ� src/config.h�ե������#define����ޤ������Τ���SpiderMonkey�Υ�����������¦�Ǥ���src/condfig.h�ե������#include���Ƥ�����ɬ�פ�ͭ��ޤ���
������ɬ�פ����ʥե������
src/jsapi.h
src/jstypes.h
���餤�Τ褦���ä��Τǡ������Υإå��ե������src/config.h��#include����褦�������ޤ�����
�⤷src/config.h��#define����ΤǤϤʤ�������ѥ��饪�ץ����Ȥ����ͤ�����Ϥ���������configure.in�ե������AM_CONFIG_HEADER�򥳥��ȥ����Ȥ����ꤹ���OK�Ǥ������Τ����ӥ�ɻ��Υ����ߥʥ�β��̤����Ѥʤ��Ȥˤʤ�ޤ����ɡ�

�ɲü��10 jsautocfg.h�ե����������

�ӥ�ɤ���ץ�åȥե�������ѿ����Υӥå����䥨��ǥ�����򵭽Ҥ���src/jsautocfg.h�ե�����ϡ�src/jscpucfg.c�򸵤˥ӥ�ɤ���jscpucfg���ޥ�ɤDz����Τ褦���������Ƥ��ޤ���
$ src/jscpucfg > src/jsautocfg.h
src/jsautocfg.h�ե�����ϥ饤�֥��γƥ����������ɤ����Ѥ����Τǡ�����������Ƥ���ɬ�פ�ͭ��ޤ���src/Makefile.am��
  • jscpucfg���ޥ�ɤ�ӥ�ɤ���롼��
  • jsautocfg.h�Υӥ�ɥ롼��
  • libjs��jsautocfg.h����¸���Ƥ��뤳�Ȥ�������
���Ҥ򤽤줾�켡�Τ褦���ɵ����ޤ�(�������ɵ�ʬ��
bin_PROGRAMS = jscpucfg js
jscpucfg_SOURCES = jscpucfg.c

jsautocfg.h: jscpucfg
	./jscpucfg > jsautocfg.h

jsapi.c: jsautocfg.h
�Ǹ��jsapi.c��jsautocfg.h���¸�����Ƥ��뵭�Ҥ�����äȳʹ���뤤��Ǥ������ʤ󤫥��å�����������ˡ��ͭ�ä���ï�������Ƥ���������

���11 autoreconf�¹�

configure.in�ե������Makefile.am�ե�������������Τǡ��ӥ�ɥ����ƥ����Τ򹹿����뤿���autoreconf���ޥ�ɤ�¹Ԥ��ޤ���
$ autoreconf
���Ȥϡ����̤Υ��ݥץ󥽡����ʥѥå�������Ʊ�ͤ�
$ ./configure
$ make
���ƥӥ�ɤǤ���褦�ˤʤ�ޤ������ʤߤ˥��󥹥ȡ��뤬ɬ�פʥإå��ե������src/Makefile.am�ե�����Dz����Τ褦�˻��ꤷ�Ƥ����ޤ���
pkginclude_HEADERS =  jsapi.h jsarena.h jsarray.h jsatomh (�ʲ�ά)
�������ۥѥå�������configure������ץȤμ¹Ը��
$ make dist
�������Ǥ��ޤ���������줿...

��������ä��ѥå��������֤��Ƥ����ޤ���
SpiderMonkey-1.5-rc6a.tar.gz
�긵��Mac OS X 10.3.5�ȡ��ο����Solaris 8(UltraAX-i2)�Ȥ���ޤ��̤��ο����FreeBSD 4.7(i386)�ǥӥ�ɤǤ���褦�ˤ��Ƥ���ޤ���¾�Υץ�åȥե�����ˤĤ��Ƥ�configure.in�ե�������������б����ƤߤƤ�������������������Ⱥǽ��������ä��ץ�åȥե�����Ƚ�꼰���Ȱܿ��������ޥ����ä��������������̵������� �äƵ��⤷�ޤ������������ˤ����ޤǽ������뵤�Ϥʤ�������֡�
���ȡ�ECMAScript�Ǥ��������Ƥ��ʤ�File���饹�ѤΥ���������������ޤޤ�Ƥ��ޤ����������Ǥ�̵�뤷�Ƥ��ޤ����ӥ�ɻ���-DJS_HAS_FILE_OBJECT ��������ʤΤǡ�./configure --enable-class=file,socket,xml �ߤ����˻���Ǥ���褦�ˤ��٤��Ǥ��͡�

GNU Autoconf/Automake/LibtoolGNU Autoconf, Automake, Libtool�ˤĤ��Ƥ��ܤ���Ĵ�٤�������GNU Autoconf/Automake/Libtool��������Ǥ���¿�����Ƥ��Ť��ʤäƤϤ��ޤ������Τ�����ˤȤäƤ���Ω�ĤϤ��Ǥ����ޤ���Autotools��Ȥ�ʤ��ͤǤ⡢�����������ɤΰܿ������ä���ӥ�ɥ����ƥ�Υ��ƥʥ󥹤Υͥ�����������Ф�Ƥ���Τdzڤ����Ϥ��Ǥ���
�Ȥꤢ�������Ȥ���ץ��������Ȥ�Autotools�۲���SpiderMonkey��Ȥ������ä��Τǡ��ͤ��׵���������Ƥ���äݤ��Ǥ����ƥ��ȤϤޤ��ޤ�­��Ƥޤ��󤱤ɡ�

�ǡ�SpiderMonke(libjs)�λȤ�����?

�Ǵο���SpiderMonkey(libjs)�λȤ������̤λ��˽񤭤ޤ����ɥ�����Ȥ������Ĥ���������Ƥ���Τǡ��������ɤ��JavaScript���󥸥���Ȥ߹������䡢C����¦�����ȼ��Υ��饹���ɲä�����ˡ������äȽ񤤤Ƥ���ޤ���
AFS��Apache�Ѥ�mod_js�⥸�塼��Ȥ��γ�ȯ�򤷤Ƥ����褦�ʵ��������ΤǤ�������¢����ʤΤ����顩 ñ��Apache������������������򤯤ʤ����򤷤���ʤ��Τǡ��ʤ󤫳ڤ������Ѥ��Ǥ�����ɤ��Ǥ��͡�

Comments

Post a comment

Name:


URL:


Comments:


Web¥¨¥ó¥¸¥Ë¥¢¤Î¤¿¤á¤ÎApache¥â¥¸¥å¡¼¥ë¥×¥í¥°¥é¥ß¥ó¥°¥¬¥¤¥É

Apache��Hack����!
�⥸�塼��ץ�����ߥ󥰶������θ�!!
���: 2,919��(�ǹ�)
ISBN: 4-7741-1799-4

hiroyuki_oyama IM status

Apache Users

Apache Modules

CPAN


Home > Blog > SpiderMonkey��GNU Autotools�����