OS標準のiconvでうまくいくかどうかわからないので、とりあえずGNU iconvを入れてみる。
※libiconvのインストール先は、OS標準のiconvとかちあわないように、独立したディレクトリにしている。
---------------------------------------------------------------------- --- Makefile.ORIG Fri Mar 1 15:41:55 2002 +++ Makefile Fri Mar 1 15:41:55 2002 @@ -1,10 +1,11 @@ -APXS = apxs -Wc,-Wall +APXS = /usr/local/apache/bin/apxs -Wc,-Wall -INCS = +ICONV = /usr/local/iconv +INCS = -I$(ICONV)/include DEFS = -DMOD_ENCODING_DEBUG=1 -Diconv=iconv_hook \ -Diconv_open=iconv_hook_open -Diconv_close=iconv_hook_close -LIBS = -L/usr/local/lib -Llib -liconv_hook +LIBS = -L/usr/local/lib -Llib -L$(ICONV)/lib -Wl,-R$(ICONV)/lib -liconv_hook RM = rm -f CP = cp @@ -15,10 +16,10 @@ all: mod_encoding.so mod_encoding.so: mod_encoding.c - $(APXS) -c $(DEFS) $(INCS) $(LIBS) $< + $(APXS) -c $(DEFS) $(INCS) $(LIBS) mod_encoding.c install: mod_encoding.so - $(APXS) -i $^ + $(APXS) -i mod_encoding.so clean: $(RM) *.so *.o ----------------------------------------------------------------------
---------------------------------------------------------------------- --- Makefile.ORIG Fri Mar 1 15:38:59 2002 +++ Makefile Fri Mar 1 15:38:59 2002 @@ -6,10 +6,10 @@ OBJS = $(SRCS:.c=.o) DEFS = -DHAS_ICONV -LIBS = +LIBS = -L/usr/local/iconv/lib -R/usr/local/iconv/lib -liconv #LIBS = -liconv -CC = gcc -Wall +CC = gcc -Wall -O2 -fPIC -I/usr/local/iconv/include RM = rm -f INSTALL = install @@ -22,7 +22,7 @@ $(CC) -shared -o $@ $(OBJS) $(LIBS) install: $(TARGET) - $(INSTALL) -m 755 $(TARGET) /usr/local/lib + $(INSTALL) -m 755 $(TARGET) /usr/local/iconv/lib clean: $(RM) *.o *.so *~ ----------------------------------------------------------------------
---------------------------------------------------------------------- --- Makefile.in.ORIG Fri Mar 1 15:52:03 2002 +++ Makefile.in Fri Mar 1 15:52:16 2002 @@ -27,11 +27,7 @@ mod_dav.c \ dav_lock.c \ dav_opaquelock.c \ - dav_dyn.c \ - iconv_hook_default.c \ - iconv_hook_ja_auto.c \ - iconv_hook_mssjis.c \ - identify_encoding.c + dav_dyn.c REPOS_SRCS = \ dav_fs_dbm.c \ ----------------------------------------------------------------------
---------------------------------------------------------------------- LoadModule headers_module libexec/mod_headers.so LoadModule dav_module libexec/libdav.so LoadModule encoding_module libexec/mod_encoding.so LoadModule headers_module libexec/mod_headers.so LoadModule dav_module libexec/libdav.so LoadModule encoding_module libexec/mod_encoding.so <IfModule mod_encoding.c> EncodingEngine on SetServerEncoding EUC-JP AddClientEncoding "Microsoft .* DAV" SJIS AddClientEncoding "xdwin9x/" SJIS AddClientEncoding "cadaver/" EUC-JP </IfModule> <IfModule mod_dav.c> DavServerEncoding EUC-JP DAVLockDB /usr/local/www/var/DAVLock <Location /WebDAV> AllowOverride None Options None DAV on Header add MS-Author-Via "DAV" # 以下は必要に応じて適宜変更 AuthType Basic AuthName WebDAV AuthUserFile /usr/local/www/etc/passwd AuthGroupFile /usr/local/www/etc/group require group webdav </Location> </IfModule> ----------------------------------------------------------------------
[BACK]