ALL: Merge the win32-contrib branch.
authorChristophe Mutricy <xtophe@videolan.org>
Tue, 1 Nov 2005 11:30:23 +0000 (11:30 +0000)
committerChristophe Mutricy <xtophe@videolan.org>
Tue, 1 Nov 2005 11:30:23 +0000 (11:30 +0000)
Todo:
Fix FLAC
SDL patch by Meuh

32 files changed:
configure.ac
extras/contrib/src/Makefile
extras/contrib/src/Patches/dirac-cross.patch [new file with mode: 0644]
extras/contrib/src/Patches/faad2-20050513-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/ffmpeg-20050513-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/ffmpeg-beos.patch.cvs [new file with mode: 0644]
extras/contrib/src/Patches/ffmpeg-cvs.patch [new file with mode: 0644]
extras/contrib/src/Patches/ffmpeg.patch [deleted file]
extras/contrib/src/Patches/ffmpeg.patch.cvs [deleted file]
extras/contrib/src/Patches/fribidi-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/gettext-osx.patch [new file with mode: 0644]
extras/contrib/src/Patches/gettext.patch [deleted file]
extras/contrib/src/Patches/goom2k4-0-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/goom2k4-0-win32.patch.bak [new file with mode: 0644]
extras/contrib/src/Patches/libdvdnav-20050211-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/libdvdread-20041028-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/libdvdread-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/libdvdread.patch
extras/contrib/src/Patches/libebml-svn-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/libiconv.patch
extras/contrib/src/Patches/libmatroska-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/libogg-1.1-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/libpng-1.2.5-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/livedotcom-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/tiff-cross.patch [new file with mode: 0644]
extras/contrib/src/Patches/wx-cvs-2005-02-09-patch.diff [new file with mode: 0644]
extras/contrib/src/Patches/wxMSW-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/x264-20050624-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/x264-svn-win32.patch [new file with mode: 0644]
extras/contrib/src/Patches/xml2-win32.patch [new file with mode: 0644]
extras/contrib/src/packages.mak
m4/vlc.m4

index 527299a..a1da8a2 100644 (file)
@@ -87,6 +87,8 @@ AC_ARG_WITH(contrib,
 
   if test -d ${topdir}/extras/contrib/lib; then
     export PATH=${topdir}/extras/contrib/bin:$PATH
+dnl kludge because only the debian package provides a ffmpeg-config
+    with_ffmpeg_config_path=${topdir}/extras/contrib/bin       
     CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include"
     CPPFLAGS_save="${CPPFLAGS_save} -I${topdir}/extras/contrib/include"
     CFLAGS="${CFLAGS} -I${topdir}/extras/contrib/include"
@@ -95,6 +97,11 @@ AC_ARG_WITH(contrib,
     CXXFLAGS_save="${CXXFLAGS_save} -I${topdir}/extras/contrib/include"
     OBJCFLAGS="${OBJCFLAGS} -I${topdir}/extras/contrib/include"
     OBJCFLAGS_save="${OBJCFLAGS_save} -I${topdir}/extras/contrib/include"
+    if test $BUILD = $HOST; then
+       export PKG_CONFIG_PATH=${topdir}/extras/contrib/bin:$PKG_CONFIG_PATH
+    else
+       export PKG_CONFIG_LIBDIR=${topdir}/extras/contrib/bin
+    fi
     if test -d ${topdir}/extras/contrib/vlc-lib; then
       LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/vlc-lib"
       LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/vlc-lib"
index dd45746..a198b2b 100644 (file)
@@ -54,6 +54,18 @@ export PATH = $(PREFIX)/bin:/opt/beos-tools/bin:/opt/cross-tools/bin:/usr/bin:/b
 endif
 endif
 
+ifeq ($(HOST),i586-mingw32msvc)
+HAVE_WIN32=1
+endif
+ifeq ($(HOST),cygwin)
+HAVE_WIN32=1
+endif
+ifdef HAVE_WIN32
+export PATH := $(PREFIX)/bin:$(PATH)
+#EXTRA_CPPFLAGS = /usr/win32/include
+#EXTRA_LDFLAGS = /usr/win32/lib
+endif
+
 export CFLAGS = -I$(PREFIX)/include $(EXTRA_CFLAGS) $(EXTRA_CPPFLAGS)
 export CPPFLAGS = -I$(PREFIX)/include $(EXTRA_CFLAGS) $(EXTRA_CPPFLAGS)
 export CXXFLAGS = -I$(PREFIX)/include $(EXTRA_CFLAGS) $(EXTRA_CPPFLAGS)
@@ -68,11 +80,13 @@ export LDFLAGS = -L$(PREFIX)/lib $(EXTRA_LDFLAGS)
 
 ifneq ($(BUILD),$(HOST))
 # We are cross compiling
-HOSTCONF=--host=$(HOST)
+HOSTCONF=--host=$(HOST) --build=$(BUILD)  
 HOSTCC=CC=$(HOST)-gcc CXX=$(HOST)-g++ AR=$(HOST)-ar RANLIB=$(HOST)-ranlib
 # For libebml/libmatroska. Grrr.
-HOSTCC2=CC=$(HOST)-gcc CXX=$(HOST)-g++ "AR=$(HOST)-ar rcvu" RANLIB=$(HOST)-ranlib
+HOSTCC2=CC=$(HOST)-gcc CXX=$(HOST)-g++ AR="$(HOST)-ar rcvu" RANLIB=$(HOST)-ranlib
 FFMPEGCONF=--cross-prefix=$(HOST)-
+X264CONF=--cross-prefix=$(HOST)
+LIVECC=C_COMPILER=$(HOST)-gcc CPP=$(HOST)-cpp CPLUSPLUS_COMPILER=$(HOST)-g++ LINK="$(HOST)-g++ -o" LIBRARY_LINK="$(HOST)-ld -o"
 RANLIB=$(HOST)-ranlib
 else
 # Building natively
@@ -82,6 +96,13 @@ ifeq ($(HOST),i586-pc-beos)
 FFMPEGCONF+=--cpu=x86
 endif
 
+# Special target-dependant options
+#win
+ifdef HAVE_WIN32
+HOSTCONF+= --without-pic --disable-shared --enable-msw --with-included-opencdk --with-included-libtasn1 --disable-depedency-tracking
+FFMPEGCONF+= --enable-mingw32  --enable-memalign-hack --cpu=x86
+endif
+
 # ***************************************************************************
 # Standard rules
 # ***************************************************************************
@@ -112,12 +133,28 @@ else
        .dvdread .dvdnav .dvbpsi .aclocal
   endif
  else
+  ifdef HAVE_WIN32
+
+   all: .iconv .intl .freetype .fribidi .zlib\
+       .a52 .mpeg2 .id3tag .mad .ogg .vorbis .vorbisenc .theora \
+       .FLAC .speex .faad .faac .lame .ebml .dts .matroska .ffmpeg .dvdcss \
+       .live .goom2k4 .caca .mod .x264  .xml .twolame\
+       .png .gpg-error .gcrypt .gnutls \
+       .gnutls .dvdread .dvdnav .dvbpsi .wxwidgets .dirac \
+       .dx_headers .dshow_headers .aclocal .gecko-win32
+#      .SDL_image  .daap .cddb .cdio .vcdimager 
+   else
 # Standard Linux or other UNIX-like systems
-   all: .iconv .intl .freetype .fribidi \
-       .a52 .mpeg2 .id3tag .mad .ogg .vorbis .vorbisenc .x264 .theora \
-       .FLAC .speex .faad .faac .lame .ebml .matroska .ffmpeg .dvdcss \
-       .dvdread .dvdnav .dvbpsi .live .aclocal
- endif
+   all: .iconv .intl .freetype .fribidi .zlib\
+       .a52 .mpeg2 .id3tag .mad .ogg .vorbis .vorbisenc .theora \
+       .FLAC .speex .faad .faac .lame .ebml .dts .matroska .ffmpeg .dvdcss \
+       .live .goom2k4 .caca .mod .x264  .xml .twolame\
+       .png .gpg-error .gcrypt .gnutls \
+       .gnutls .dvdread .dvdnav .dvbpsi .wxwidgets .dirac \
+       .aclocal 
+#      .SDL_image  .daap .cddb .cdio .vcdimager 
+  endif
+  endif
 endif
 
 FORCE:
@@ -302,10 +339,16 @@ gettext-$(GETTEXT_VERSION).tar.gz:
 
 gettext: gettext-$(GETTEXT_VERSION).tar.gz
        $(EXTRACT_GZ)
+ifdef HAVE_DARWIN_OS
        patch -p 0 < Patches/gettext.patch
+endif
 
 .intl: gettext .iconv
+ifdef HAVE_WIN32
+       ( cd $< && ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-relocatable --with-iconv-prefix=$(PREFIX))
+else
        ( cd $< && ./configure $(HOSTCONF) --prefix=$(PREFIX) )
+endif
 ifeq ($(BUILD),i586-pc-beos)
 # The ugliest kludge ever - so libtool correctly links shared libraries
 # on BeOS. Sorry, I just can't figure out how libtool works
@@ -317,6 +360,10 @@ ifneq ($(HOST),$(BUILD))
 else
 # Build and install the whole gettext
        ( cd $< && make && make install )
+endif
+# Work around another non-sense of autoconf.
+ifdef HAVE_WIN32
+       (cd ../include; sed -i.bak '283 c #if !1' libintl.h)
 endif
        $(INSTALL_NAME)
        touch $@
@@ -334,10 +381,12 @@ libiconv-$(LIBICONV_VERSION).tar.gz:
 
 libiconv: libiconv-$(LIBICONV_VERSION).tar.gz
        $(EXTRACT_GZ)
+ifdef HAVE_DARWIN_OS
        patch -p 0 < Patches/libiconv.patch
+endif
 
 .iconv: libiconv
-       (cd libiconv; ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-nls && make && make install)
+       (cd libiconv; CPPFLAGS="-Dssize_t=long" ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-nls && make && make install)
        $(INSTALL_NAME)
        touch $@
 
@@ -374,9 +423,11 @@ fribidi-$(FRIBIDI_VERSION).tar.gz:
 fribidi: fribidi-$(FRIBIDI_VERSION).tar.gz
        $(EXTRACT_GZ)
        patch -p 0 < Patches/fribidi.patch.real
-
-.fribidi: fribidi
-       (cd $<; ./bootstrap && ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install)
+ifdef HAVE_WIN32
+       patch -p 0 <Patches/fribidi-win32.patch
+endif
+.fribidi: fribidi .iconv
+       (cd $<; ./bootstrap && ./configure $(HOSTCONF) --prefix=$(PREFIX)  && make && make install)
        $(INSTALL_NAME)
        touch $@
 
@@ -487,6 +538,9 @@ libogg-$(OGG_VERSION).tar.gz:
 libogg: libogg-$(OGG_VERSION).tar.gz
        $(EXTRACT_GZ)
        patch -p 0 < Patches/ogg.patch
+#ifdef HAVE_WIN32
+#      (cd libogg;patch -p 0 <../Patches/libogg-1.1-win32.patch)
+#endiF
 
 .ogg: libogg
        (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install)
@@ -517,7 +571,7 @@ libvorbis: libvorbis-$(VORBIS_VERSION).tar.gz
 .vorbis: libvorbis .ogg
 # FIXME: shared libs disabled for now because of linking errors
 #   -- titer 2005/09/16
-       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-shared && make && make install)
+       (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-shared && make && make install)
 #      $(INSTALL_NAME)
        touch $@
 
@@ -578,8 +632,9 @@ flac-$(FLAC_VERSION).tar.gz:
 flac: flac-$(FLAC_VERSION).tar.gz
        $(EXTRACT_GZ)
 
-.FLAC: flac
-       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install)
+.FLAC: flac .ogg
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-oggtest && cd src&& make -C libFLAC&& make -C libFLAC install  && cd .. && make -C include install)
+#      (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-oggtest && cd src&& make -C libFLAC&& make -C libFLAC install && make -C libOggFLAC &&make -C libOggFLAC install && cd .. && make -C include install)
        $(INSTALL_NAME)
        touch $@
 
@@ -623,9 +678,11 @@ faad2-$(FAAD2_VERSION).tar.bz2:
 
 faad2: faad2-$(FAAD2_VERSION).tar.bz2
        $(EXTRACT_BZ2)
-
+ifdef HAVE_WIN32
+       (cd faad2;patch -p 0  < ../Patches/faad2-20050513-win32.patch)
+endif
 .faad: faad2
-       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="-O3" && make -C libfaad && make -C libfaad install)
+       (cd $<; ./bootstrap && ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="-O3" && make -C libfaad && make -C libfaad install)
        $(INSTALL_NAME)
        touch $@
 
@@ -663,7 +720,7 @@ lame: lame-$(LAME_VERSION).tar.gz
        $(EXTRACT_GZ)
 
 .lame: lame
-       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-shared && make && make install)
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-analyser-hooks --disable-decoder --disable-shared --disable-gtktest --disable-frontend && make && make install)
        touch $@
 
 CLEAN_FILE += .lame
@@ -674,20 +731,27 @@ DISTCLEAN_PKG += lame-$(LAME_VERSION).tar.gz
 # libebml
 # ***************************************************************************
 
-ifdef SVN
-libebml:
-       $(SVN) co http://svn.matroska.org/svn/matroska/trunk/libebml libebml
-else
+#ifdef SVN
+#libebml: 
+#      $(SVN) co http://svn.matroska.org/svn/matroska/trunk/libebml libebml
+#else
 libebml-$(LIBEBML_VERSION).tar.bz2:
        $(WGET) $(LIBEBML_URL)
 
 libebml: libebml-$(LIBEBML_VERSION).tar.bz2
        $(EXTRACT_BZ2)
+ifdef HAVE_WIN32
+       (cd $@; patch -p 0 < ../Patches/libebml-svn-win32.patch)
 endif
+#endif
 
 .ebml: libebml
+ifdef HAVE_WIN32
+       (cd $<; make -C make/mingw32 prefix=$(PREFIX) $(HOSTCC2) CFLAGS="$(CFLAGS) -DWIN32" SHARED=no && make -C make/linux install_staticlib install_headers prefix=$(PREFIX) $(HOSTCC2))
+else
        (cd $<; make -C make/linux prefix=$(PREFIX) $(HOSTCC2) staticlib && make -C make/linux install_staticlib install_headers prefix=$(PREFIX))
        $(RANLIB) $(PREFIX)/lib/libebml.a
+endif  
        touch $@
 
 CLEAN_FILE += .ebml
@@ -698,20 +762,27 @@ DISTCLEAN_PKG += libebml-$(LIBEBML_VERSION).tar.bz2
 # libmatroska
 # ***************************************************************************
 
-ifdef SVN
-libmatroska:
-       $(SVN) co http://svn.matroska.org/svn/matroska/trunk/libmatroska libmatroska
-else
+#ifdef SVN
+#libmatroska:
+#      $(SVN) co http://svn.matroska.org/svn/matroska/trunk/libmatroska libmatroska
+#else
 libmatroska-$(LIBMATROSKA_VERSION).tar.bz2:
        $(WGET) $(LIBMATROSKA_URL)
 
 libmatroska: libmatroska-$(LIBMATROSKA_VERSION).tar.bz2
        $(EXTRACT_BZ2)
+ifdef HAVE_WIN32
+       (cd $@; patch -p 0 < ../Patches/libmatroska-win32.patch)
 endif
+#endif
 
-.matroska: libmatroska
+.matroska: libmatroska .ebml
+ifdef HAVE_WIN32
+       (cd $<; make -C make/mingw32 prefix=$(PREFIX) $(HOSTCC2) CPPFLAGS=$(CFLAGS) libmatroska.a && make -C make/linux install_staticlib install_headers prefix=$(PREFIX) $(HOSTCC2))
+else
        (cd $<; make -C make/linux prefix=$(PREFIX) $(HOSTCC2) staticlib && make -C make/linux install_staticlib install_headers prefix=$(PREFIX))
        $(RANLIB) $(PREFIX)/lib/libmatroska.a
+endif
        touch $@
 
 CLEAN_FILE += .matroska
@@ -722,15 +793,14 @@ DISTCLEAN_PKG += libmatroska-$(LIBMATROSKA_VERSION).tar.bz2
 # ffmpeg
 # ***************************************************************************
 
-# Note: we are using this cvs-snapshot of ffmpeg now, because this one 
-# compiles finely on 10.2 and is used in the win32-port as well, so we
-# experience the same bugs in both ports ;)
-
 ffmpeg:
        echo $(FFMPEG_CVSROOT) A > ./ffmpeg.cvs
        CVS_PASSFILE=./ffmpeg.cvs cvs -z3 -d $(FFMPEG_CVSROOT) co ffmpeg
-       patch -p 0 < Patches/ffmpeg.patch.cvs
-#      (cd $@; ./bootstrap)
+       (cd $@;patch -p 0 <../Patches/ffmpeg-cvs.patch) 
+ifeq ($(HOST),i586-pc-beos)
+       patch -p 0 < Patches/ffmpeg-beos.patch.cvs
+       (cd $@; ./bootstrap)
+endif
 
 ffmpeg-$(FFMPEG_VERSION).tar.gz:
        $(WGET) $(FFMPEG_URL)
@@ -739,8 +809,8 @@ ffmpeg-$(FFMPEG_VERSION).tar.gz:
 #      $(EXTRACT_GZ)
 #      patch -p 0 < Patches/ffmpeg.patch
 
-.ffmpeg: ffmpeg
-       (cd $<; ./configure $(FFMPEGCONF) --prefix=$(PREFIX) --extra-cflags="$(CFLAGS) -DRUNTIME_CPUDETECT" --extra-ldflags="$(LDFLAGS)" --enable-gpl --enable-mp3lame --enable-faac --enable-pp --disable-vhook --disable-audio-beos --disable-ffserver --enable-mp3lame --enable-a52 --disable-ffplay && echo -e "#define HAVE_LRINTF 1" >> config.h && make && make -C libavcodec/libpostproc install && make -C libavcodec installlib && make -C libavformat installlib && make -C libavutil installlib)
+.ffmpeg: ffmpeg .faac .lame .zlib
+       (cd $<; ./configure $(FFMPEGCONF) --prefix=$(PREFIX) --extra-cflags="$(CFLAGS) -DRUNTIME_CPUDETECT" --extra-ldflags="$(LDFLAGS)" --enable-gpl --enable-mp3lame --enable-faac --enable-pp --disable-vhook --disable-audio-beos --disable-ffserver  --enable-a52 --disable-ffplay && for dir in libavcodec/libpostproc libavcodec libavformat libavutil; do make -C $$dir && make -C $$dir installlib; done)
        touch $@
 
 CLEAN_FILE += .ffmpeg
@@ -759,7 +829,7 @@ openslp: openslp-$(OPENSLP_VERSION).tar.gz
        patch -p 0 < Patches/openslp.patch
 
 .openslp: openslp
-       (cd $<; ./configure --prefix=$(PREFIX) && make SUBDIRS="common libslpattr slpd libslp slptool" && make install SUBDIRS="common libslpattr slpd libslp slptool")
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) && make SUBDIRS="common libslpattr slpd libslp slptool" && make install SUBDIRS="common libslpattr slpd libslp slptool")
        touch $@
 
 CLEAN_FILE += .openslp
@@ -795,32 +865,44 @@ DISTCLEAN_PKG += libdvdcss-$(LIBDVDCSS_VERSION).tar.gz
 # libdvdread
 # ***************************************************************************
 
-libdvdread-$(LIBDVDREAD_VERSION).tar.gz:
+libdvdread-$(LIBDVDREAD_VERSION).tar.bz2:
        $(WGET) $(LIBDVDREAD_URL)
 
-libdvdread: libdvdread-$(LIBDVDREAD_VERSION).tar.gz
-       $(EXTRACT_GZ)
-       patch -p 0 < Patches/libdvdread.patch
+libdvdread: libdvdread-$(LIBDVDREAD_VERSION).tar.bz2
+       $(EXTRACT_BZ2)
+       patch  -p 0 < Patches/libdvdread.patch
+ifdef HAVE_WIN32
+       if automake-1.4 --version >/dev/null 2>&1; then \
+               echo "Please get rid of your automake 1.4"; \
+               rm -rf $@ \
+               exit 1; \
+       fi
+       (cd libdvdread;patch -p 0 < ../Patches/libdvdread-20041028-win32.patch; ./bootstrap)
+endif
 
 .dvdread: libdvdread .dvdcss
-       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) --with-libdvdcss=$(PREFIX) && make && make install)
+       (cd libdvdread; ./configure $(HOSTCONF) --prefix=$(PREFIX) --with-libdvdcss=$(PREFIX) && make && make install)
        $(INSTALL_NAME)
        touch $@
+       
 
 CLEAN_FILE += .dvdread
 CLEAN_PKG += libdvdread
-DISTCLEAN_PKG += libdvdread-$(LIBDVDREAD_VERSION).tar.gz
+DISTCLEAN_PKG += libdvdread-$(LIBDVDREAD_VERSION).tar.bz2
 
 # ***************************************************************************
 # libdvdnav
 # ***************************************************************************
 
-libdvdnav-$(LIBDVDNAV_VERSION).tar.gz:
+libdvdnav-$(LIBDVDNAV_VERSION).tar.bz2:
        $(WGET) $(LIBDVDNAV_URL)
 
-libdvdnav: libdvdnav-$(LIBDVDNAV_VERSION).tar.gz
-       $(EXTRACT_GZ)
-       patch -p 0 < Patches/dvdnav.patch
+libdvdnav: libdvdnav-$(LIBDVDNAV_VERSION).tar.bz2
+       $(EXTRACT_BZ2)
+#      patch -p 0 < Patches/dvdnav.patch
+ifdef HAVE_WIN32
+       (cd $@; patch -p 0 < ../Patches/libdvdnav-20050211-win32.patch)
+endif
 ifdef HAVE_DARWIN_OS
        (cd $@; autoconf)
 else
@@ -828,13 +910,17 @@ else
 endif
 
 .dvdnav: libdvdnav .dvdread
+ifdef HAVE_WIN32       
+       (cd $<; ./configure $(HOSTCONF) --enable-static --prefix=$(PREFIX) --with-libdvdcss=$(PREFIX) --disable-builtin-dvdread CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS) -DNDEBUG -Dssize_t=long" && make  && make install)
+else
        (cd $<; ./configure $(HOSTCONF) --enable-static --prefix=$(PREFIX) --with-libdvdcss=$(PREFIX) CFLAGS="$(CFLAGS) -Dlseek64=lseek -Doff64_t=off_t" && make && make install)
+endif
        $(INSTALL_NAME)
        touch $@
 
 CLEAN_FILE += .dvdnav
 CLEAN_PKG += libdvdnav
-DISTCLEAN_PKG += libdvdnav-$(LIBDVDNAV_VERSION).tar.gz
+DISTCLEAN_PKG += libdvdnav-$(LIBDVDNAV_VERSION).tar.bz2
 
 # ***************************************************************************
 # libdvbpsi
@@ -865,13 +951,18 @@ live555-$(LIVEDOTCOM_VERSION).tar.gz:
 live: live555-$(LIVEDOTCOM_VERSION).tar.gz
        $(EXTRACT_GZ)
        patch -p 0 < Patches/live.patch
+       patch -p 0 < Patches/livedotcom-win32.patch
        patch -p 0 < Patches/livedotcom-osx.patch
 
 .live: live
 ifeq ($(HOST),ppc-darwin)
        (cd $<; ./genMakefiles macosx-before-version-10.4 && make )
+else
+ifdef HAVE_WIN32
+       (cd $<;./genMakefiles mingw && make)
 else
        (cd $<; ./genMakefiles macosx && make )
+endif
 endif
        touch $@
 
@@ -907,10 +998,15 @@ goom$(GOOM2k4_VERSION).tar.gz:
 
 goom: goom$(GOOM2k4_VERSION).tar.gz
        $(EXTRACT_GZ)
+ifdef HAVE_DARWIN_OS
        patch -p 0 < Patches/goom.patch
+endif
+ifdef HAVE_WIN32
+       patch -p 0 <Patches/goom2k4-0-win32.patch
+endif
 
 .goom2k4: goom
-       (cd $<; ./configure --prefix=$(PREFIX) --disable-shared --enable-static && make && make install )
+       (cd $<&& autoconf configure.in >|configure &&./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-shared --enable-static --disable-glibtest --disable-gtktest && make && make install )
        touch $@
 
 CLEAN_FILE += .goom2k4
@@ -928,7 +1024,7 @@ libcaca: libcaca-$(LIBCACA_VERSION).tar.gz
        $(EXTRACT_GZ)
 
 .caca: libcaca
-       (cd $<; ./configure --prefix=$(PREFIX) --disable-imlib2 --disable-doc && make && make install)
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-imlib2 --disable-doc && make && make install)
        touch $@
 
 CLEAN_FILE += .caca
@@ -953,7 +1049,7 @@ libdts: libdts-$(LIBDTS_VERSION).tar.gz
 endif
 
 .dts: libdts
-       (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install)
        touch $@
 
 CLEAN_FILE += .dts
@@ -967,20 +1063,28 @@ DISTCLEAN_PKG += libdts-$(LIBDTS_VERSION).tar.gz
 ifdef SVN
 x264: 
        $(SVN) co svn://svn.videolan.org/x264/trunk/ x264
+ifdef HAVE_WIN32
+       (cd x264; patch -p 0 <../Patches/x264-svn-win32.patch )
+else
        cd x264 && patch -p 0 < ../Patches/x264_svn.patch
        rm x264/x264.c
+endif
 else
 x264-$(X264_VERSION).tar.gz:
        $(WGET) $(X264_URL)
 
 x264: x264-$(X264_VERSION).tar.gz
        $(EXTRACT_GZ)
+ifdef HAVE_WIN32
+       (cd x264;patch -p 0 <../Patches/x264-20050624-win32.patch)
+else
        patch -p 0 < Patches/x264.patch
        rm x264/x264.c
 endif
+endif
 
 .x264: x264
-       (cd $<; ./configure --enable-pthread --prefix=$(PREFIX) && make && make install)
+       (cd $<; ./configure $(X264CONF) --prefix=$(PREFIX) && make && make install)
        touch $@
 
 CLEAN_FILE += .x264
@@ -998,7 +1102,7 @@ libmodplug: libmodplug-$(MODPLUG_VERSION).tar.gz
        $(EXTRACT_GZ)
 
 .mod: libmodplug
-       (cd $<; ./configure --prefix=$(PREFIX) --disable-shared --enable-static && make && make install)
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-shared --enable-static && make && make install)
        touch $@
 
 CLEAN_FILE += .mod
@@ -1009,20 +1113,20 @@ DISTCLEAN_PKG += libmodplug-$(MODPLUG_VERSION).tar.gz
 # libcddb
 # ***************************************************************************
 
-libcddb-$(CDDB_VERSION).tar.gz:
+libcddb-$(CDDB_VERSION).tar.bz2:
        $(WGET) $(CDDB_URL)
 
-libcddb: libcddb-$(CDDB_VERSION).tar.gz
-       $(EXTRACT_GZ)
+libcddb: libcddb-$(CDDB_VERSION).tar.bz2
+       $(EXTRACT_BZ2)
        patch -p 0 < Patches/libcddb.patch
 
 .cddb: libcddb
-       (cd $<; ./configure --prefix=$(PREFIX) --disable-shared --enable-static CFLAGS="$(CFLAGS) -D_BSD_SOCKLEN_T_=int" LDFLAGS="$(LDFLAGS) -liconv" && make && make install)
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-shared --enable-static CFLAGS="$(CFLAGS) -D_BSD_SOCKLEN_T_=int" LDFLAGS="$(LDFLAGS) -liconv" && make && make install)
        touch $@
 
 CLEAN_FILE += .cddb
 CLEAN_PKG += libcddb
-DISTCLEAN_PKG += libcddb-$(CDDB_VERSION).tar.gz
+DISTCLEAN_PKG += libcddb-$(CDDB_VERSION).tar.bz2
 
 # ***************************************************************************
 # vcdimager
@@ -1084,6 +1188,71 @@ CLEAN_FILE += .mash
 CLEAN_PKG += mash-code
 DISTCLEAN_PKG += mash-src-$(MASH_VERSION).tar.gz
 
+# ***************************************************************************
+# wxWidgets
+# ***************************************************************************
+
+wxWidgets-$(WXWIDGETS_VERSION).tar.gz:
+       $(WGET) $(WXWIDGETS_URL)
+
+wxwidgets: wxWidgets-$(WXWIDGETS_VERSION).tar.gz
+       $(EXTRACT_GZ)
+#      (cd wxwidgets; patch -p1 <../Patches/wxMSW-win32.patch)
+
+.wxwidgets: wxwidgets
+       (cd wxwidgets; ./configure $(HOSTCONF) --prefix=$(PREFIX) --enable-optimise --disable-debug --disable-threads --disable-gif --disable-pcx --disable-iff --disable-pnm --without-zlib  --without-libpng --without-libjpeg --without-libtiff --without-regex  --disable-zipstream --disable-fs_zip --enable-no_rtti  --enable-no_exceptions --disable-exceptions --disable-stl --disable-html --without-expat --disable-protocols --disable-protocol --disable-xrc --disable-sound --disable-dialupman --disable-mediactrl  --disable-joystick --disable-grid --disable-datepick --disable-postscript--disable-filesystem --disable-fileproto --disable-ipc --disable-sockets  && make && make install)
+       $(INSTALL_NAME)
+       touch $@
+
+CLEAN_FILE += .wxwidgets
+CLEAN_PKG += wxwidgets
+DISTCLEAN_PKG += wxWidgets-$(WXWIDGETS_VERSION).tar.gz
+
+# ***************************************************************************
+# zlib
+# ***************************************************************************
+
+zlib-$(ZLIB_VERSION).tar.gz:
+       $(WGET) $(ZLIB_URL)
+
+zlib: zlib-$(ZLIB_VERSION).tar.gz
+       $(EXTRACT_GZ)
+
+.zlib: zlib
+       (cd zlib; $(HOSTCC2) ./configure  --prefix=$(PREFIX) && make && make  install)
+       $(INSTALL_NAME)
+       touch $@
+
+CLEAN_FILE += .zlib
+CLEAN_PKG += zlib
+DISTCLEAN_PKG += zlib-$(ZLIB_VERSION).tar.gz
+
+
+
+# ***************************************************************************
+# xml
+# ***************************************************************************
+
+libxml2-$(XML_VERSION).tar.gz:
+       $(WGET) $(XML_URL)
+
+xml: libxml2-$(XML_VERSION).tar.gz
+       $(EXTRACT_GZ)
+ifdef HAVE_WIN32
+       patch -p 0 < Patches/xml2-win32.patch
+       rm -f xml/aclocal.m4
+endif
+
+.xml: xml
+       (cd xml; ./configure $(HOSTCONF) --prefix=$(PREFIX) --with-minimal --with-catalog --with-reader --with-tree --with-push --with-xptr --with-valid --with-writer --with-output --with-xpath --with-xinclude --with-sax1 --without-zlib --without-iconv --without-http --without-ftp && make && make install)
+       $(INSTALL_NAME)
+       touch $@
+
+CLEAN_FILE += .xml
+CLEAN_PKG += xml
+DISTCLEAN_PKG += libxml2-$(XML_VERSION).tar.gz
+
+
 # ***************************************************************************
 # twolame
 # ***************************************************************************
@@ -1113,9 +1282,20 @@ libpng-$(PNG_VERSION).tar.bz2:
 libpng: libpng-$(PNG_VERSION).tar.bz2
        $(EXTRACT_BZ2)
        cat Patches/libpng.patch | sed s,PREFIX,$(PREFIX), | patch -p0
-
-.png: libpng
+ifdef HAVE_WIN32
+       (cd $@; cat ../Patches/libpng-1.2.5-win32.patch | sed s,££PREFIX££,$(PREFIX), | patch -p0)
+endif
+.png: libpng .zlib
+ifdef HAVE_DARWIN_OS
        (cd $<; cp scripts/makefile.macosx Makefile && make && make install)
+else
+ifdef HAVE_WIN32
+       (cd $<; cp scripts/makefile.cygwin Makefile && make && make install)
+else
+       (cd $<;./configure $(HOSTCONF) --prefix=$(PREFIX) && make   && make install)
+endif
+endif
+       $(INSTALL_NAME)  
        touch $@
 
 CLEAN_FILE += .png
@@ -1138,7 +1318,7 @@ zvbi: zvbi-$(ZVBI_VERSION).tar.bz2
 
 CLEAN_FILE += .zvbi
 CLEAN_PKG += zvbi
-DISTCLEAN_PKG += zvbi-$(ZVBI_VERSION).tar.bz2
+#DISTCLEAN_PKG += zvbi-$(ZVBI_VERSION).tar.bz2
 
 # ***************************************************************************
 # gpg-error 
@@ -1151,7 +1331,7 @@ libgpg-error: libgpg-error-$(GPGERROR_VERSION).tar.gz
        $(EXTRACT_GZ)
 
 .gpg-error: libgpg-error
-       (cd $<; ./configure --prefix=$(PREFIX) --disable-nls && make && make install)
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-nls && make && make install)
        $(INSTALL_NAME)
        touch $@
 
@@ -1163,21 +1343,22 @@ DISTCLEAN_PKG += libgpg-error-$(GPGERROR_VERSION).tar.gz
 # libgcrypt
 # ***************************************************************************
 
-libgcrypt-$(GCRYPT_VERSION).tar.gz:
+libgcrypt-$(GCRYPT_VERSION).tar.bz2:
        $(WGET) $(GCRYPT_URL)
 
-libgcrypt: libgcrypt-$(GCRYPT_VERSION).tar.gz
-       $(EXTRACT_GZ)
-       patch -p 0 < Patches/gcrypt.patch
+libgcrypt: libgcrypt-$(GCRYPT_VERSION).tar.bz2
+       $(EXTRACT_BZ2)
+#      patch -p 0 < Patches/gcrypt.patch
 
 .gcrypt: libgcrypt .gpg-error
-       (cd $<; ./configure --prefix=$(PREFIX) CFLAGS="$(CFLAGS) -D_BSD_SOCKLEN_T_=int" && make && make install)
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" && make && make install)
+#      (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS) -D_BSD_SOCKLEN_T_=int" && make && make install)
        $(INSTALL_NAME)
        touch $@
 
 CLEAN_FILE += .gcrypt
 CLEAN_PKG += libgcrypt
-DISTCLEAN_PKG += libgcrypt-$(GCRYPT_VERSION).tar.gz
+DISTCLEAN_PKG += libgcrypt-$(GCRYPT_VERSION).tar.bz2
 
 # ***************************************************************************
 # gnutls
@@ -1188,9 +1369,14 @@ gnutls-$(GNUTLS_VERSION).tar.bz2:
 
 gnutls: gnutls-$(GNUTLS_VERSION).tar.bz2
        $(EXTRACT_BZ2)
+       (cd gnutls/gl ;ln -s alloca_.h alloca.h)
 
 .gnutls: gnutls .gcrypt .gpg-error
-       (cd $<; ./configure --prefix=$(PREFIX) && make && make install)
+ifdef HAVE_WIN32
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" && cd crypto && make && cd ../gl && make &&  cd ../lib &&make && make install && cd ../includes && make install)
+else
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)"  && cd lib &&make && make install)
+endif
        $(INSTALL_NAME)
        touch $@
 
@@ -1272,6 +1458,37 @@ CLEAN_FILE += .gecko
 CLEAN_PKG += gecko-sdk
 DISTCLEAN_PKG += gecko-sdk-ppc-macosx10.2-1.7.5.tar.gz
 
+# ***************************************************************************
+# Gecko SDK win32
+# ***************************************************************************
+
+gecko-sdk-i586-pc-msvc-1.7.5.zip:
+       $(WGET) $(GECKO_SDK_WIN32_URL)
+
+libIDL-0.6.3-win32-bin.zip:
+       $(WGET) $(LIBIDL_WIN32_BIN_URL)
+
+vc71-glib-1.2.10-bin.zip:
+       $(WGET) $(VC71_GLIB_WIN32_BIN_URL)
+
+gecko-sdk-win32: gecko-sdk-i586-pc-msvc-1.7.5.zip libIDL-0.6.3-win32-bin.zip vc71-glib-1.2.10-bin.zip
+       unzip  gecko-sdk-i586-pc-msvc-1.7.5.zip
+       rm -rf ../gecko-sdk
+       mv gecko-sdk ..
+       unzip libIDL-0.6.3-win32-bin.zip
+       unzip vc71-glib-1.2.10-bin.zip
+       mv libIDL-0.6.3-win32-bin/libIDL-0.6.dll ../gecko-sdk/bin
+       rm -rf libIDL-0.6.3-win32-bin
+       mv vc71/bin/glib-1.2.dll ../gecko-sdk/bin
+       rm -rf vc71
+
+.gecko-win32: gecko-sdk-win32
+       touch $@
+
+CLEAN_FILE += .gecko-win32
+CLEAN_PKG += gecko-sdk-win32
+DISTCLEAN_PKG += gecko-sdk-i586-pc-msvc-1.7.5.zip libIDL-0.6.3-win32-bin.zip vc71-glib-1.2.10-bin.zip
+
 # ***************************************************************************
 # mozilla
 # ***************************************************************************
@@ -1301,7 +1518,7 @@ jpeg: jpeg-$(JPEG_VERSION).tar.gz
        $(EXTRACT_GZ)
 
 .jpeg: jpeg
-       (cd $<; ./configure --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" && make && make install-lib)
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" $(HOSTCC) && make && make install-lib)
        $(RANLIB) $(PREFIX)/lib/libjpeg.a
        touch $@
 
@@ -1320,9 +1537,12 @@ tiff-$(TIFF_VERSION).tar.gz:
 tiff: tiff-$(TIFF_VERSION).tar.gz 
        $(EXTRACT_GZ)
        patch -p 0 < Patches/tiff.patch
+ifneq ($(HOST),$(BUILD))
+       patch -p 0 < Patches/tiff-cross.patch
+endif
 
 .tiff: tiff
-       (cd $<; ./configure --noninteractive --with-DIR_BIN=$(PREFIX)/bin --with-DIR_LIB=$(PREFIX)/lib --with-DIR_INC=$(PREFIX)/include --with-CFLAGS="$(CFLAGS)" --with-JPEG=no --with-ZIP=no && make -C libtiff && make -C libtiff install)
+       (cd $<;  ./configure  --noninteractive --target=$(HOST) --with-CC=$(HOST)-gcc --with-DIR_BIN=$(PREFIX)/bin --with-DIR_LIB=$(PREFIX)/lib --with-DIR_INC=$(PREFIX)/include --with-CFLAGS="$(CFLAGS)" --with-JPEG=no --with-ZIP=no  && make -C libtiff && make -C libtiff install)
        touch $@
 
 CLEAN_FILE += .tiff
@@ -1341,7 +1561,7 @@ SDL: SDL-$(SDL_VERSION).tar.gz
        patch -p 0 < Patches/SDL.patch
 
 .SDL: SDL
-       (cd $<; ./configure --prefix=$(PREFIX) --disable-audio --disable-video-x11 --disable-video-aalib --disable-video-dga --disable-video-fbcon --disable-video-directfb --disable-video-ggi --disable-video-svga --disable-directx --disable-joystick --disable-cdrom --disable-threads --disable-sdl-dlopen CFLAGS="$(CFLAGS)" && make && make install)
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-audio --disable-video-x11 --disable-video-aalib --disable-video-dga --disable-video-fbcon --disable-video-directfb --disable-video-ggi --disable-video-svga --disable-directx --disable-joystick --disable-cdrom --disable-threads --disable-sdl-dlopen CFLAGS="$(CFLAGS)" && make && make install)
        $(INSTALL_NAME)
        touch $@
 
@@ -1361,7 +1581,7 @@ SDL_image: SDL_image-$(SDL_IMAGE_VERSION).tar.gz
        patch -p 0 < Patches/SDL_image.patch
 
 .SDL_image: SDL_image .SDL .png .jpeg .tiff
-       (cd $<; ./configure --prefix=$(PREFIX) --enable-tif CFLAGS="$(CFLAGS)" && make && make install)
+       (cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) --enable-tif CFLAGS="$(CFLAGS)" && make && make install)
        $(INSTALL_NAME)
        touch $@
 
@@ -1387,6 +1607,54 @@ CLEAN_FILE += .libmpcdec
 CLEAN_PKG += libmpcdec
 DISTCLEAN_PKG += libmpcdec-$(MUSE_VERSION).tar.bz2
 
+
+
+# ***************************************************************************
+ # Dirac
+ # ***************************************************************************
+
+dirac-$(DIRAC_VERSION).tar.gz:
+       $(WGET) $(DIRAC_URL)
+
+dirac: dirac-$(DIRAC_VERSION).tar.gz
+       $(EXTRACT_GZ)
+ifneq ($(HOST),$(BUILD))
+       patch -p 0 <Patches/dirac-cross.patch
+       (cd $@; autoconf && automake)
+endif
+
+.dirac: dirac
+       (cd $<; aclocal && ./configure $(HOSTCONF) --prefix=$(PREFIX)  CFLAGS="$(CFLAGS)" && DOC_DIR="" make && DOC_DIR="" make install)
+       $(INSTALL_NAME)
+       touch $@
+
+CLEAN_FILE += .dirac
+CLEAN_PKG += dirac
+DISTCLEAN_PKG += dirac-$(DIRAC_VERSION).tar.gz
+
+# *************************************************************************
+# DirectX headers
+# *************************************************************************
+win32-dx7headers.tgz:
+       $(WGET) $(DX_HEADERS_URL)
+.dx_headers: win32-dx7headers.tgz
+       (cd ../include ; tar xzf ../src/$<)
+       touch $@
+CLEAN_FILE += .dx_headers
+DISTCLEAN_PKG += win32-dx7headers.tgz
+# *************************************************************************
+# DirectShow headers
+# *************************************************************************
+dshow-headers.tgz:
+       $(WGET) $(DSHOW_HEADERS_URL)
+.dshow_headers: dshow-headers.tgz
+       (cd ../include ; tar xzf ../src/$<)
+       touch $@
+CLEAN_FILE += .dshow_headers
+DISTCLEAN_PKG += dshow-headers.tgz
+                                                          
+
 # ***************************************************************************
 # Copy aclocal files
 # This is necessary for --missing aclocal to succeed after a
diff --git a/extras/contrib/src/Patches/dirac-cross.patch b/extras/contrib/src/Patches/dirac-cross.patch
new file mode 100644 (file)
index 0000000..62d1383
--- /dev/null
@@ -0,0 +1,78 @@
+--- dirac/Makefile.am  2005-05-20 15:05:25.000000000 +0200
++++ dirac-new/Makefile.am      2005-09-16 18:43:26.000000000 +0200
+@@ -2,18 +2,12 @@
+ #
+ SUBDIRS = libdirac_common libdirac_motionest libdirac_encoder libdirac_decoder \
+-encoder decoder util $(CPPUNITTESTS_DIR) tests $(DOC_DIR) win32
++encoder decoder util $(CPPUNITTESTS_DIR)  win32
+ .PHONY: valgrind-check
+ valgrind-check:
+       cd tests && $(MAKE) $(AM_MAKEFLAGS) $@
+-if HAVE_DOXYGEN
+-DOC_DIR = doc
+-else
+-DOC_DIR =
+-endif
+-
+ if HAVE_LATEX
+ DOC_DIR = doc
+ endif
+--- dirac/configure.ac 2005-08-22 14:51:34.000000000 +0200
++++ dirac-new/configure.ac     2005-09-05 16:18:00.000000000 +0200
+@@ -143,7 +143,7 @@
+ dnl algorithm documentation is not distributed in
+ dnl the release. It is available only from CVS
+ dnl -----------------------------------------------
+-AC_CHECK_FILE($srcdir/doc/documentation/algorithm/algorithm/index.htm,[HAVE_ALGO="true"], [HAVE_ALGO="false"])
++dnl AC_CHECK_FILE($srcdir/doc/documentation/algorithm/algorithm/index.htm,[HAVE_ALGO="true"], [HAVE_ALGO="false"])
+ AM_CONDITIONAL(HAVE_ALGO, $HAVE_ALGO)
+ dnl -----------------------------------------------
+@@ -151,7 +151,7 @@
+ dnl Enhancements is not distributed in
+ dnl the release. It is available only from CVS
+ dnl -----------------------------------------------
+-AC_CHECK_FILE($srcdir/doc/documentation/algorithm/enhancements/index.htm,[HAVE_ENHANCE="true"], [HAVE_ENHANCE="false"])
++dnl AC_CHECK_FILE($srcdir/doc/documentation/algorithm/enhancements/index.htm,[HAVE_ENHANCE="true"], [HAVE_ENHANCE="false"])
+ AM_CONDITIONAL(HAVE_ENHANCE, $HAVE_ENHANCE)
+ dnl -----------------------------------------------
+@@ -159,7 +159,7 @@
+ dnl Global Motion documentation is not distributed in
+ dnl the release. It is available only from CVS
+ dnl -----------------------------------------------
+-AC_CHECK_FILE($srcdir/doc/documentation/algorithm/global_motion/index.htm,[HAVE_GM="true"], [HAVE_GM="false"])
++dnl AC_CHECK_FILE($srcdir/doc/documentation/algorithm/global_motion/index.htm,[HAVE_GM="true"], [HAVE_GM="false"])
+ AM_CONDITIONAL(HAVE_GM, $HAVE_GM)
+ dnl -----------------------------------------------
+@@ -167,7 +167,7 @@
+ dnl Upconversion doc is not distributed in
+ dnl the release. It is available only from CVS
+ dnl -----------------------------------------------
+-AC_CHECK_FILE($srcdir/doc/documentation/algorithm/upconversion/index.htm,[HAVE_UPCONV="true"], [HAVE_UPCONV="false"])
++dnl AC_CHECK_FILE($srcdir/doc/documentation/algorithm/upconversion/index.htm,[HAVE_UPCONV="true"], [HAVE_UPCONV="false"])
+ AM_CONDITIONAL(HAVE_UPCONV, $HAVE_UPCONV)
+ dnl -----------------------------------------------
+@@ -175,7 +175,7 @@
+ dnl programmer's guide is not distributed in
+ dnl the release. It is available only from CVS
+ dnl -----------------------------------------------
+-AC_CHECK_FILE($srcdir/doc/documentation/code/programmers_guide/index.htm,[HAVE_PROG="true"], [HAVE_PROG="false"])
++dnl AC_CHECK_FILE($srcdir/doc/documentation/code/programmers_guide/index.htm,[HAVE_PROG="true"], [HAVE_PROG="false"])
+ AM_CONDITIONAL(HAVE_PROG, $HAVE_PROG)
+ dnl -----------------------------------------------
+@@ -183,7 +183,7 @@
+ dnl Diagnostics tools docs are is not distributed in
+ dnl the release. It is available only from CVS
+ dnl -----------------------------------------------
+-AC_CHECK_FILE($srcdir/doc/documentation/tools/diagnostics/index.htm,[HAVE_DIAG="true"], [HAVE_DIAG="false"])
++dnl AC_CHECK_FILE($srcdir/doc/documentation/tools/diagnostics/index.htm,[HAVE_DIAG="true"], [HAVE_DIAG="false"])
+ AM_CONDITIONAL(HAVE_DIAG, $HAVE_DIAG)
+ dnl -----------------------------------------------
diff --git a/extras/contrib/src/Patches/faad2-20050513-win32.patch b/extras/contrib/src/Patches/faad2-20050513-win32.patch
new file mode 100644 (file)
index 0000000..ac6e501
--- /dev/null
@@ -0,0 +1,20 @@
++codebook/hcb_9.h codebook/hcb_10.h codebook/hcb_11.h codebook/hcb_sf.h
+Index: libfaad/common.h
+===================================================================
+RCS file: /cvsroot/faac/faad2/libfaad/common.h,v
+retrieving revision 1.66
+diff -u -r1.66 common.h
+--- libfaad/common.h   1 Feb 2005 13:23:35 -0000       1.66
++++ libfaad/common.h   13 May 2005 09:07:19 -0000
+@@ -309,8 +309,10 @@
+   }
+-  #if defined(_WIN32) && !defined(__MINGW32__)
++  #ifdef __MINGW32__
+     #define HAS_LRINTF
++  #elif defined(_WIN32)
++   #define HAS_LRINTF
+     static INLINE int lrintf(float f)
+     {
+         int i;
diff --git a/extras/contrib/src/Patches/ffmpeg-20050513-win32.patch b/extras/contrib/src/Patches/ffmpeg-20050513-win32.patch
new file mode 100644 (file)
index 0000000..4ee4716
--- /dev/null
@@ -0,0 +1,17 @@
+? win-ffmpeg.sh
+Index: libavcodec/libpostproc/postprocess.c
+===================================================================
+RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/libpostproc/postprocess.c,v
+retrieving revision 1.110
+diff -u -r1.110 postprocess.c
+--- libavcodec/libpostproc/postprocess.c       11 May 2005 23:51:44 -0000      1.110
++++ libavcodec/libpostproc/postprocess.c       13 May 2005 09:22:27 -0000
+@@ -92,6 +92,8 @@
+ #include "mangle.h" //FIXME should be supressed
++#define RUNTIME_CPUDETECT 1
++
+ #ifdef HAVE_ALTIVEC_H
+ #include <altivec.h>
+ #endif
diff --git a/extras/contrib/src/Patches/ffmpeg-beos.patch.cvs b/extras/contrib/src/Patches/ffmpeg-beos.patch.cvs
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/extras/contrib/src/Patches/ffmpeg-cvs.patch b/extras/contrib/src/Patches/ffmpeg-cvs.patch
new file mode 100644 (file)
index 0000000..67a6474
--- /dev/null
@@ -0,0 +1,16 @@
+Index: libavcodec/libpostproc/Makefile
+===================================================================
+RCS file: /cvsroot/ffmpeg/ffmpeg/libavcodec/libpostproc/Makefile,v
+retrieving revision 1.26
+diff -u -r1.26 Makefile
+--- libavcodec/libpostproc/Makefile    26 Sep 2005 10:05:13 -0000      1.26
++++ libavcodec/libpostproc/Makefile    31 Oct 2005 20:23:34 -0000
+@@ -56,7 +56,7 @@
+       $(AR) rc $@ $(PPOBJS)
+       $(RANLIB) $@
+-install: all
++installlib: all
+ ifeq ($(SHARED_PP),yes)
+ ifeq ($(CONFIG_WIN32),yes)
+       install $(INSTALLSTRIP) -m 755 $(SPPLIBNAME) "$(prefix)"
diff --git a/extras/contrib/src/Patches/ffmpeg.patch b/extras/contrib/src/Patches/ffmpeg.patch
deleted file mode 100644 (file)
index 8abe10c..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-diff -ru ffmpeg.old/configure ffmpeg/configure
---- ffmpeg.old/configure       Sun Sep 28 17:26:39 2003
-+++ ffmpeg/configure   Tue Nov 11 17:17:59 2003
-@@ -172,18 +172,18 @@
- extralibs=""
- darwin="yes"
- strip="strip -x"
--LDFLAGS="-d"
-+LDFLAGS="$LDFLAGS -d"
- FFSLDFLAGS=-Wl,-bind_at_load
- gcc_version="$($cc -v 2>&1 | grep version | cut -d ' ' -f3-)"
- case "$gcc_version" in
- *2.95*) 
--CFLAGS="-no-cpp-precomp -pipe -fomit-frame-pointer"
-+CFLAGS="$CFLAGS -no-cpp-precomp -pipe -fomit-frame-pointer"
- ;;
- *3.3*) 
--CFLAGS="-no-cpp-precomp -pipe -fomit-frame-pointer -mdynamic-no-pic -force_cpusubtype_ALL"
-+CFLAGS="$CFLAGS -no-cpp-precomp -pipe -fomit-frame-pointer -mdynamic-no-pic -force_cpusubtype_ALL"
- ;;
- *) 
--CFLAGS="-no-cpp-precomp -pipe -fomit-frame-pointer -mdynamic-no-pic"
-+CFLAGS="$CFLAGS -no-cpp-precomp -pipe -fomit-frame-pointer -mdynamic-no-pic"
- ;;
- esac
- ;;
-diff -ru ffmpeg.old/libavcodec/dsputil.h ffmpeg/libavcodec/dsputil.h
---- ffmpeg.old/libavcodec/dsputil.h    Sun Sep 28 17:26:39 2003
-+++ ffmpeg/libavcodec/dsputil.h        Tue Nov 11 17:16:28 2003
-@@ -477,6 +477,8 @@
-           +name8(s, dst+8+8*stride, src+8+8*stride, stride);\
- }
-+/* Meuuh power */
-+#undef HAVE_LRINTF
- #ifndef HAVE_LRINTF
- /* XXX: add ISOC specific test to avoid specific BSD testing. */
- /* better than nothing implementation. */
-diff -ru ffmpeg.old/libavcodec/eval.c ffmpeg/libavcodec/eval.c
---- ffmpeg.old/libavcodec/eval.c       Sun Sep 28 17:26:39 2003
-+++ ffmpeg/libavcodec/eval.c   Tue Nov 11 17:16:28 2003
-@@ -34,6 +34,8 @@
- #include <string.h>
- #include <math.h>
-+/* Meuuh power */
-+#undef NAN
- #ifndef NAN
-   #define NAN 0
- #endif
-diff -ru ffmpeg.old/libavcodec/libpostproc/Makefile ffmpeg/libavcodec/libpostproc/Makefile
---- ffmpeg.old/libavcodec/libpostproc/Makefile Sun Sep 28 17:26:40 2003
-+++ ffmpeg/libavcodec/libpostproc/Makefile     Tue Nov 11 17:16:28 2003
-@@ -55,6 +55,9 @@
-       ldconfig || true
-       mkdir -p $(prefix)/include/postproc
-       install -m 644 postprocess.h $(prefix)/include/postproc/postprocess.h
-+else
-+      mkdir -p $(prefix)/include/libpostproc
-+      install -m 644 postprocess.h $(prefix)/include/libpostproc/postprocess.h
- endif
-diff -ru ffmpeg.old/libavcodec/resample.c ffmpeg/libavcodec/resample.c
---- ffmpeg.old/libavcodec/resample.c   Sun Sep 28 17:26:39 2003
-+++ ffmpeg/libavcodec/resample.c       Tue Nov 11 17:16:28 2003
-@@ -49,7 +49,7 @@
- static void init_mono_resample(ReSampleChannelContext *s, float ratio)
- {
-     ratio = 1.0 / ratio;
--    s->iratio = (int)floorf(ratio);
-+    s->iratio = (int)floor(ratio);
-     if (s->iratio == 0)
-         s->iratio = 1;
-     s->incr = (int)((ratio / s->iratio) * FRAC);
-diff -ru ffmpeg.old/libavformat/rtsp.c ffmpeg/libavformat/rtsp.c
---- ffmpeg.old/libavformat/rtsp.c      Sun Sep 28 17:26:40 2003
-+++ ffmpeg/libavformat/rtsp.c  Tue Nov 11 17:16:28 2003
-@@ -20,6 +20,7 @@
- #include <unistd.h> /* for select() prototype */
- #include <sys/time.h>
-+#include <unistd.h>
- #include <netinet/in.h>
- #include <sys/socket.h>
- #ifndef __BEOS__
-diff -ru ffmpeg.old/libavformat/tcp.c ffmpeg/libavformat/tcp.c
---- ffmpeg.old/libavformat/tcp.c       Sun Sep 28 17:26:40 2003
-+++ ffmpeg/libavformat/tcp.c   Tue Nov 11 17:16:28 2003
-@@ -32,6 +32,7 @@
- #include <netdb.h>
- #include <sys/time.h>
- #include <fcntl.h>
-+#define socklen_t int
- typedef struct TCPContext {
-     int fd;
diff --git a/extras/contrib/src/Patches/ffmpeg.patch.cvs b/extras/contrib/src/Patches/ffmpeg.patch.cvs
deleted file mode 100644 (file)
index 2b792cb..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-diff -ru ffmpeg-orig/configure ffmpeg/configure
---- ffmpeg-orig/configure      2005-10-23 16:00:23.000000000 +0200
-+++ ffmpeg/configure   2005-10-23 16:05:03.000000000 +0200
-@@ -254,7 +254,7 @@
- 2.9-beos-991026*|2.9-beos-000224*) echo "R5/GG gcc"
- mmx="no"
- ;;
--*20010315*) echo "BeBits gcc"
-+*20010315*|2.95.3*) echo "BeBits gcc"
- CFLAGS="$CFLAGS -fno-expensive-optimizations"
- ;;
- esac
-@@ -448,7 +448,7 @@
-   ;;
-   --extra-ldflags=*) LDFLAGS="$LDFLAGS ${opt#--extra-ldflags=}"
-   ;;
--  --extra-libs=*) extralibs=${opt#--extra-libs=}
-+  --extra-libs=*) extralibs="$extralibs ${opt#--extra-libs=}"
-   ;;
-   --build-suffix=*) BUILDSUF=${opt#--build-suffix=}
-   ;;
-@@ -473,7 +473,6 @@
-   --disable-audio-oss) audio_oss="no"
-   ;;
-   --disable-audio-beos) audio_beos="no"
--    extralibs="$extralibs -lbe -lmedia"
-   ;;
-   --disable-dv1394) dv1394="no"
-   ;;                                                                           
-@@ -867,6 +866,18 @@
- ranlib="${cross_prefix}${ranlib}"
- strip="${cross_prefix}${strip}"
-+if test "${cross_prefix}" = "i586-pc-beos-"; then
-+  # Cross-compiling from Linux for BeOS
-+  CFLAGS="$CFLAGS -DPIC -fomit-frame-pointer -fno-expensive-optimizations"
-+  SHFLAGS=-nostart
-+  audio_oss="no"
-+  v4l="no"
-+  dv1394="no"
-+  netserver="yes"
-+  need_inet_aton="yes"
-+  extralibs="-lnet"
-+fi
-+
- if test -z "$cross_prefix" ; then
- # ---
-@@ -985,6 +996,7 @@
- EOF
- have_lrintf="no"
-+if test "${cross_prefix}" != "i586-pc-beos-"; then
- if $cc $CFLAGS $LDFLAGS $extralibs -o $TMPE $TMPC 2> /dev/null ; then
-   have_lrintf="yes"
-   # allanc@chickenandporn.com: cannot execute cross-compiled
-@@ -993,6 +1005,7 @@
-     $TMPE 2> /dev/null > /dev/null || have_lrintf="no"
-   fi
- fi
-+fi
- _restrict=
- for restrict_keyword in restrict __restrict__ __restrict; do
-diff -ru ffmpeg-orig/libavcodec/eval.c ffmpeg/libavcodec/eval.c
---- ffmpeg-orig/libavcodec/eval.c      2005-10-23 16:00:22.000000000 +0200
-+++ ffmpeg/libavcodec/eval.c   2005-10-23 16:05:34.000000000 +0200
-@@ -34,6 +34,8 @@
- #include <string.h>
- #include <math.h>
-+/* Meuuh power */
-+#undef NAN
- #ifndef NAN
-   #define NAN 0
- #endif
-diff -ru ffmpeg-orig/libavformat/tcp.c ffmpeg/libavformat/tcp.c
---- ffmpeg-orig/libavformat/tcp.c      2005-10-23 16:00:22.000000000 +0200
-+++ ffmpeg/libavformat/tcp.c   2005-10-23 16:06:19.000000000 +0200
-@@ -32,6 +32,7 @@
- #include <netdb.h>
- #include <sys/time.h>
- #include <fcntl.h>
-+#define socklen_t int
- typedef struct TCPContext {
-     int fd;
-@@ -112,11 +113,13 @@
-                 break;
-         }
-         
-+#ifndef __BEOS__
-         /* test error */
-         optlen = sizeof(ret);
-         getsockopt (fd, SOL_SOCKET, SO_ERROR, &ret, &optlen);
-         if (ret != 0)
-             goto fail;
-+#endif
-     }
-     s->fd = fd;
-     return 0;
diff --git a/extras/contrib/src/Patches/fribidi-win32.patch b/extras/contrib/src/Patches/fribidi-win32.patch
new file mode 100644 (file)
index 0000000..b063823
--- /dev/null
@@ -0,0 +1,21 @@
+diff -Naur fribidi-orig/Makefile.am fribidi/Makefile.am
+--- fribidi-orig/Makefile.am   2002-05-16 12:25:37.000000000 +0200
++++ fribidi/Makefile.am        2005-08-26 15:20:26.000000000 +0200
+@@ -1,7 +1,7 @@
+ AUTOMAKE_OPTIONS = gnu 
+-noinst_PROGRAMS = fribidi_benchmark   \
++noinst_PROGRAMS = \
+               fribidi_create_char_types       \
+               fribidi_create_mirroring
+@@ -103,8 +103,6 @@
+       $(OTHER_FILES)  \
+       $(EXTRA_HEADERS)
+-fribidi_benchmark_SOURCES = fribidi_benchmark.c $(GETOPT_SRC)
+-fribidi_benchmark_LDADD = libfribidi.la
+ fribidi_create_char_types_SOURCES = fribidi_create_char_types.c packtab.c
diff --git a/extras/contrib/src/Patches/gettext-osx.patch b/extras/contrib/src/Patches/gettext-osx.patch
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/extras/contrib/src/Patches/gettext.patch b/extras/contrib/src/Patches/gettext.patch
deleted file mode 100644 (file)
index d828a39..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-diff -ru gettext-original/gettext-runtime/intl/libgnuintl.h.in gettext/gettext-runtime/intl/libgnuintl.h.in
---- gettext-original/gettext-runtime/intl/libgnuintl.h.in      Sun Nov 16 16:27:58 2003
-+++ gettext/gettext-runtime/intl/libgnuintl.h.in       Fri Aug 20 12:34:40 2004
-@@ -280,7 +280,7 @@
-    or gettext() but for which the format string could be the return value
-    of _() or gettext() need to add this #include.  Oh well.  */
--#if !@HAVE_POSIX_PRINTF@
-+#if !@HAVE_POSIX_PRINTF@ && !defined(__BEOS__)
- #include <stdio.h>
- #include <stddef.h>
-diff -ru gettext-original/gettext-runtime/intl/printf.c gettext/gettext-runtime/intl/printf.c
---- gettext-original/gettext-runtime/intl/printf.c     Wed Sep 17 18:09:12 2003
-+++ gettext/gettext-runtime/intl/printf.c      Fri Aug 20 12:34:40 2004
-@@ -45,7 +45,7 @@
- #include <stdio.h>
--#if !HAVE_POSIX_PRINTF
-+#if !HAVE_POSIX_PRINTF && !defined(__BEOS__)
- #include <stdlib.h>
- #include <string.h>
-diff -ru gettext-original/gettext-runtime/libasprintf/autosprintf.cc gettext/gettext-runtime/libasprintf/autosprintf.cc
---- gettext-original/gettext-runtime/libasprintf/autosprintf.cc        Mon Oct 28 20:44:32 2002
-+++ gettext/gettext-runtime/libasprintf/autosprintf.cc Fri Aug 20 13:09:56 2004
-@@ -32,6 +32,51 @@
- #include <string.h>
- #include "lib-asprintf.h"
-+#ifdef __BEOS__
-+/* vasprintf emulation (borrowed from VLC) */
-+#define vasprintf beossux_vasprintf
-+int beossux_vasprintf(char **strp, const char *fmt, va_list ap)
-+{
-+    /* Guess we need no more than 100 bytes. */
-+    int     i_size = 100;
-+    char    *p = (char *) malloc( i_size );
-+    int     n;
-+
-+    if( p == NULL )
-+    {
-+        *strp = NULL;
-+        return -1;
-+    }
-+
-+    for( ;; )
-+    {
-+        /* Try to print in the allocated space. */
-+        n = vsnprintf( p, i_size, fmt, ap );
-+
-+        /* If that worked, return the string. */
-+        if (n > -1 && n < i_size)
-+        {
-+            *strp = p;
-+            return strlen( p );
-+        }
-+        /* Else try again with more space. */
-+        if (n > -1)    /* glibc 2.1 */
-+        {
-+           i_size = n+1; /* precisely what is needed */
-+        }
-+        else           /* glibc 2.0 */
-+        {
-+           i_size *= 2;  /* twice the old size */
-+        }
-+        if( (p = (char *) realloc( p, i_size ) ) == NULL)
-+        {
-+            *strp = NULL;
-+            return -1;
-+        }
-+    }
-+}
-+#endif
-+
- namespace gnu
- {
-diff -ru gettext-original/gettext-runtime/libasprintf/lib-asprintf.c gettext/gettext-runtime/libasprintf/lib-asprintf.c
---- gettext-original/gettext-runtime/libasprintf/lib-asprintf.c        Fri Jun 20 14:52:05 2003
-+++ gettext/gettext-runtime/libasprintf/lib-asprintf.c Fri Aug 20 12:34:40 2004
-@@ -21,7 +21,7 @@
- # include <config.h>
- #endif
--#if !(HAVE_VASPRINTF && HAVE_POSIX_PRINTF)
-+#if !(HAVE_VASPRINTF && HAVE_POSIX_PRINTF) && !defined(__BEOS__)
- #define STATIC static
-diff -ru gettext-original/gettext-runtime/libasprintf/lib-asprintf.h gettext/gettext-runtime/libasprintf/lib-asprintf.h
---- gettext-original/gettext-runtime/libasprintf/lib-asprintf.h        Fri Jun 20 14:56:51 2003
-+++ gettext/gettext-runtime/libasprintf/lib-asprintf.h Fri Aug 20 12:34:40 2004
-@@ -21,7 +21,7 @@
- # include <config.h>
- #endif
--#if HAVE_VASPRINTF && HAVE_POSIX_PRINTF
-+#if ( HAVE_VASPRINTF && HAVE_POSIX_PRINTF ) || defined(__BEOS__)
- /* Get asprintf(), vasprintf() declarations.  */
- #include <stdio.h>
diff --git a/extras/contrib/src/Patches/goom2k4-0-win32.patch b/extras/contrib/src/Patches/goom2k4-0-win32.patch
new file mode 100644 (file)
index 0000000..fd5819a
--- /dev/null
@@ -0,0 +1,68 @@
+diff -Naur goom-orig/configure.in goom/configure.in
+--- goom-orig/configure.in     2005-02-07 14:46:41.000000000 +0100
++++ goom/configure.in  2005-08-26 16:37:03.000000000 +0200
+@@ -1,6 +1,5 @@
+ AC_INIT(README)\r
\r
+-AM_DISABLE_STATIC\r
+ AM_INIT_AUTOMAKE(SDL_Goom, 2k4)\r
\r
+ ACLOCAL="$ACLOCAL -I m4"\r
+@@ -76,24 +75,7 @@
+ AM_CONDITIONAL(MACTARGET,test "x$MACTARGET" = "xyes")\r
\r
\r
+-AC_CHECK_HEADER(pthread.h,,AC_MSG_ERROR([*** POSIX thread support not installed - please install first ***]))\r
+-\r
+-PTHREAD_LIBS=error\r
+-AC_CHECK_LIB(pthread, pthread_attr_init, PTHREAD_LIBS="-lpthread")\r
+-\r
+-if test "x$PTHREAD_LIBS" = xerror; then\r
+-    AC_CHECK_LIB(pthreads, pthread_attr_init, PTHREAD_LIBS="-lpthreads")\r
+-fi\r
+-\r
+-if test "x$PTHREAD_LIBS" = xerror; then\r
+-    AC_CHECK_LIB(c_r, pthread_attr_init, PTHREAD_LIBS="-lc_r")\r
+-fi\r
+-\r
+-if test "x$PTHREAD_LIBS" = xerror; then\r
+-    AC_CHECK_FUNC(pthread_attr_init, PTHREAD_LIBS="")\r
+-fi\r
+-\r
+-AC_SUBST(PTHREAD_LIBS)\r
++dnl AC_SUBST(PTHREAD_LIBS)\r
\r
+ dnl rm -f mmx_zoom.s\r
+ dnl   echo -n checking for nasm...\r
+diff -Naur goom-orig/src/filters.c goom/src/filters.c
+--- goom-orig/src/filters.c    2005-02-07 14:46:41.000000000 +0100
++++ goom/src/filters.c 2005-08-26 16:31:17.000000000 +0200
+@@ -201,8 +201,8 @@
+     /* Noise */
+     if (data->noisify)
+     {
+-        vx += (((float)random()) / ((float)RAND_MAX) - 0.5f) / 50.0f;
+-        vy += (((float)random()) / ((float)RAND_MAX) - 0.5f) / 50.0f;
++        vx += (((float)rand()) / ((float)RAND_MAX) - 0.5f) / 50.0f;
++        vy += (((float)rand()) / ((float)RAND_MAX) - 0.5f) / 50.0f;
+     }
+     
+     /* Hypercos */
+diff -Naur goom-orig/src/goom_core.c goom/src/goom_core.c
+--- goom-orig/src/goom_core.c  2005-02-07 14:46:41.000000000 +0100
++++ goom/src/goom_core.c       2005-08-26 16:33:01.000000000 +0200
+@@ -40,11 +40,11 @@
+ static void init_buffers(PluginInfo *goomInfo, int buffsize)
+ {
+     goomInfo->pixel = (guint32 *) malloc (buffsize * sizeof (guint32) + 128);
+-    bzero (goomInfo->pixel, buffsize * sizeof (guint32) + 128);
++    memset (goomInfo->pixel, 0, buffsize * sizeof (guint32) + 128);
+     goomInfo->back = (guint32 *) malloc (buffsize * sizeof (guint32) + 128);
+-    bzero (goomInfo->back, buffsize * sizeof (guint32) + 128);
++    memset (goomInfo->back, 0, buffsize * sizeof (guint32) + 128);
+     goomInfo->conv = (Pixel *) malloc (buffsize * sizeof (guint32) + 128);
+-    bzero (goomInfo->conv, buffsize * sizeof (guint32) + 128);
++    memset (goomInfo->conv, 0, buffsize * sizeof (guint32) + 128);
+     goomInfo->outputBuf = goomInfo->conv;
+     
diff --git a/extras/contrib/src/Patches/goom2k4-0-win32.patch.bak b/extras/contrib/src/Patches/goom2k4-0-win32.patch.bak
new file mode 100644 (file)
index 0000000..27adae3
--- /dev/null
@@ -0,0 +1,150 @@
+--- /tmp/goom2k4-dev15-pre/configure.in        2004-03-27 18:15:05.000000000 +0100
++++ configure.in       2004-05-08 21:35:25.000000000 +0200
+@@ -1,6 +1,5 @@
+ AC_INIT(README)
+-AM_DISABLE_STATIC
+ AM_INIT_AUTOMAKE(SDL_Goom, 2k4)
+ AM_PROG_LIBTOOL
+@@ -9,69 +8,11 @@
+ AC_C_BIGENDIAN
+-dnl AM_PATH_XMMS(0.9.5.1,LIBS=$XMMS_LIBS, [
+-dnl    echo "*** ^^^ IGNORE THE ABOVE WARNING MESSAGE IF YOU HAVE NOT PATCHED XMMS"
+-dnl    echo "*** ^^^ WITH THE xmms-config patch!"
+-dnl    echo "*** xmms-config was not found in your path; guessing values for CFLAGS"
+-dnl    echo "*** and libs."
+-
+-    AM_PATH_GLIB(1.2.2,,AC_MSG_ERROR([*** GLIB >= 1.2.2 not installed - please install first ***]))
+-    AM_PATH_GTK(1.2.2,,AC_MSG_ERROR([*** GTK+ >= 1.2.2 not installed - please install first ***]),gthread)
+-
+-    LIBS="$GTK_LIBS -lxmms"
+-    CFLAGS="$GTK_CFLAGS -I$prefix/include/xmms"
+-
+-    AC_TRY_COMPILE(xmms/plugin.h, , AC_MSG_ERROR([*** XMMS header files (xmms-devel) not installed - please install first ***]))
+-    AC_PREFIX_PROGRAM(xmms)
+-  
+-    if test "$prefix" = "/usr/bin"; then # happens if xmms is in /usr/bin/X11
+-      prefix=/usr
+-    fi
+-
+-    if test "$prefix" = "/usr/X11R6"; then # happens if xmms is in /usr/X11R6/bin
+-      prefix=/usr
+-    fi
+-
+-    echo "prefix set to $prefix"
+-
+-    XMMS_LIBS="$GTK_LIBS -lxmms"
+-    XMMS_CFLAGS="$GTK_CFLAGS -I$prefix/include/xmms"
+-    XMMS_PLUGIN_DIR="$prefix/lib/xmms"
+-    XMMS_VISUALIZATION_PLUGIN_DIR="$XMMS_PLUGIN_DIR/Visualization"
+-    XMMS_DATA_DIR="$prefix/share/xmms"
+-
+-    AC_SUBST(XMMS_LIBS)    
+-    AC_SUBST(XMMS_CFLAGS)
+-    AC_SUBST(XMMS_PLUGIN_DIR)
+-    AC_SUBST(XMMS_VISUALIZATION_PLUGIN_DIR)
+-    AC_SUBST(XMMS_DATA_DIR)
+-dnl ])
+-
+-CFLAGS="$CFLAGS $GTK_CFLAGS"
+-AC_SUBST(GTK_LIBS)
++dnl AC_SUBST(GTK_LIBS)
+-AC_CHECK_HEADER(pthread.h,,AC_MSG_ERROR([*** POSIX thread support not installed - please install first ***]))
+-
+-PTHREAD_LIBS=error
+-AC_CHECK_LIB(pthread, pthread_attr_init, PTHREAD_LIBS="-lpthread")
+-
+-dnl SDL_LIBS=error
+-dnl AC_CHECK_LIB(SDL, main, SDL_LIBS=-lSDL)
+ dnl AC_SUBST(SDL_LIBS)
+-if test "x$PTHREAD_LIBS" = xerror; then
+-    AC_CHECK_LIB(pthreads, pthread_attr_init, PTHREAD_LIBS="-lpthreads")
+-fi
+-
+-if test "x$PTHREAD_LIBS" = xerror; then
+-    AC_CHECK_LIB(c_r, pthread_attr_init, PTHREAD_LIBS="-lc_r")
+-fi
+-
+-if test "x$PTHREAD_LIBS" = xerror; then
+-    AC_CHECK_FUNC(pthread_attr_init, PTHREAD_LIBS="")
+-fi
+-
+-AC_SUBST(PTHREAD_LIBS)
++dnl AC_SUBST(PTHREAD_LIBS)
+ dnl rm -f mmx_zoom.s
+ case "$host" in
+--- /tmp/goom2k4-dev15-pre/src/Makefile.am     2004-03-27 19:07:40.000000000 +0100
++++ src/Makefile.am    2004-05-08 20:58:43.000000000 +0200
+@@ -1,18 +1,3 @@
+-# the xmms plugin
+-xmms_lib_LTLIBRARIES = libxmmsgoom2.la
+-
+-xmms_libdir = @XMMS_PLUGIN_DIR@/Visualization
+-
+-libxmmsgoom2_la_LDFLAGS = -module -avoid-version
+-xmms_LIBS = -L. -L$(prefix)/lib @XMMS_LIBS@
+-
+-xmms_INCLUDES = $(all_includes)\
+-      -I$(top_srcdir)
+-
+-xmms_CFLAGS = -O9 -g -DDATADIR=\"@XMMS_DATA_DIR@\" @XMMS_CFLAGS@ -Wall
+-
+-libxmmsgoom2_la_SOURCES = xmms_goom.c
+-
+ # libgoom2
+ goom2_lib_LTLIBRARIES = libgoom2.la
+@@ -31,17 +16,3 @@
+ libgoom2_la_SOURCES = \
+ goom_tools.c mmx.c xmmx.c config_param.c convolve_fx.c filters.c flying_stars_fx.c gfontlib.c gfontrle.c goom_core.c graphic.c ifs.c lines.c mathtools.c sound_tester.c surf3d.c surface.c tentacle3d.c plugin_info.c v3d.c drawmethods.c goom_script.c goom_hash.c goom_script_scanner.c goom_script_scanner.tab.c cpu_info.c
+-# the goom2 stand alone program
+-bin_PROGRAMS = goom2
+-
+-LIBS = -L. -L$(prefix)/lib `sdl-config --libs` @XMMS_LIBS@
+-
+-INCLUDES = $(all_includes)\
+-              -I$(top_srcdir)
+-
+-CFLAGS = -O9 -g `sdl-config --cflags` @XMMS_CFLAGS@ -Wall
+-
+-# FIXME, link to libgoom
+-goom2_SOURCES = \
+-config_param.c convolve_fx.c filters.c flying_stars_fx.c frame_rate_tester.c gfontlib.c gfontrle.c gmtimer.c goom_core.c graphic.c gtk-callbacks.c gtk-interface.c gtk-support.c ifs.c lines.c mathtools.c pixeldoubler.c readme.c sdl_goom.c sdl_pixeldoubler.c sound_tester.c surf3d.c surface.c tentacle3d.c xmms_goom.c mmx.c xmmx.c goom_tools.c plugin_info.c v3d.c drawmethods.c goom_script.c goom_hash.c goom_script_scanner.c goom_script_scanner.tab.c cpu_info.c
+-
+--- /tmp/goom2k4-dev15-pre/src/filters.c       2004-03-27 18:15:05.000000000 +0100
++++ src/filters.c      2004-05-09 11:57:07.000000000 +0200
+@@ -199,8 +199,8 @@
+     /* Noise */
+     if (data->noisify)
+     {
+-        vx += (((float)random()) / ((float)RAND_MAX) - 0.5f) / 50.0f;
+-        vy += (((float)random()) / ((float)RAND_MAX) - 0.5f) / 50.0f;
++        vx += (((float)rand()) / ((float)RAND_MAX) - 0.5f) / 50.0f;
++        vy += (((float)rand()) / ((float)RAND_MAX) - 0.5f) / 50.0f;
+     }
+     
+     /* Hypercos */
+--- /tmp/goom2k4-dev15-pre/src/goom_core.c     2004-03-27 18:15:05.000000000 +0100
++++ src/goom_core.c    2004-05-09 11:50:23.000000000 +0200
+@@ -39,11 +39,11 @@
+ static void init_buffers(PluginInfo *goomInfo, int buffsize)
+ {
+     goomInfo->pixel = (guint32 *) malloc (buffsize * sizeof (guint32) + 128);
+-    bzero (goomInfo->pixel, buffsize * sizeof (guint32) + 128);
++    memset (goomInfo->pixel, 0, buffsize * sizeof (guint32) + 128);
+     goomInfo->back = (guint32 *) malloc (buffsize * sizeof (guint32) + 128);
+-    bzero (goomInfo->back, buffsize * sizeof (guint32) + 128);
++    memset (goomInfo->back, 0, buffsize * sizeof (guint32) + 128);
+     goomInfo->conv = (Pixel *) malloc (buffsize * sizeof (guint32) + 128);
+-    bzero (goomInfo->conv, buffsize * sizeof (guint32) + 128);
++    memset (goomInfo->conv, 0, buffsize * sizeof (guint32) + 128);
+     
+     goomInfo->p1 = (Pixel *) ((1 + ((unsigned int) (goomInfo->pixel)) / 128) * 128);
+     goomInfo->p2 = (Pixel *) ((1 + ((unsigned int) (goomInfo->back)) / 128) * 128);
diff --git a/extras/contrib/src/Patches/libdvdnav-20050211-win32.patch b/extras/contrib/src/Patches/libdvdnav-20050211-win32.patch
new file mode 100644 (file)
index 0000000..047dc90
--- /dev/null
@@ -0,0 +1,245 @@
+Index: configure.ac
+===================================================================
+RCS file: /cvsroot/dvd/libdvdnav/configure.ac,v
+retrieving revision 1.22
+diff -u -r1.22 configure.ac
+--- configure.ac       3 Jan 2005 20:24:21 -0000       1.22
++++ configure.ac       11 Feb 2005 11:08:09 -0000
+@@ -171,6 +171,12 @@
+ esac
+ dnl ---------------------------------------------
++dnl enable builtin libdvdread
++dnl ---------------------------------------------
++AC_ARG_ENABLE(builtin-dvdread,
++[  --disable-builtin-dvdread       use external libdvdread (default builtin)])
++
++dnl ---------------------------------------------
+ dnl cflags
+ dnl ---------------------------------------------
+ dnl Common cflags for all platforms
+@@ -218,13 +224,20 @@
+ fi
+ AC_SUBST(DEPCOMP)
++if test "${enable_builtin_dvdread}" != "no"; then
++  BUILTIN_DVDREAD=dvdread
++  BUILTIN_DVDREAD_LIB='$(top_builddir)/src/dvdread/libdvdread.la'
++  AC_SUBST(BUILTIN_DVDREAD)
++  AC_SUBST(BUILTIN_DVDREAD_LIB)
++  AC_OUTPUT([src/dvdread/Makefile])
++fi
++
+ dnl ---------------------------------------------
+ dnl Output configuration files
+ dnl ---------------------------------------------
+ AC_OUTPUT([
+ Makefile 
+ src/Makefile
+-src/dvdread/Makefile
+ src/vm/Makefile
+ misc/Makefile
+ misc/dvdnav-config
+Index: src/Makefile.am
+===================================================================
+RCS file: /cvsroot/dvd/libdvdnav/src/Makefile.am,v
+retrieving revision 1.28
+diff -u -r1.28 Makefile.am
+--- src/Makefile.am    3 Jan 2005 20:24:21 -0000       1.28
++++ src/Makefile.am    11 Feb 2005 11:08:09 -0000
+@@ -1,6 +1,6 @@
+ include $(top_srcdir)/misc/Makefile.common
+-SUBDIRS = dvdread vm
++SUBDIRS = $(BUILTIN_DVDREAD) vm
+ includedir = ${prefix}/include/dvdnav
+@@ -17,7 +17,7 @@
+       dvdnav_internal.h read_cache.h remap.h
+ libdvdnav_la_LIBADD = $(THREAD_LIBS) \
+-      $(top_builddir)/src/dvdread/libdvdread.la \
++      $(BUILTIN_DVDREAD_LIB) \
+       $(top_builddir)/src/vm/libdvdvm.la
+ libdvdnav_la_LDFLAGS = \
+Index: src/dvdnav.c
+===================================================================
+RCS file: /cvsroot/dvd/libdvdnav/src/dvdnav.c,v
+retrieving revision 1.65
+diff -u -r1.65 dvdnav.c
+--- src/dvdnav.c       15 Dec 2004 21:16:58 -0000      1.65
++++ src/dvdnav.c       11 Feb 2005 11:08:09 -0000
+@@ -31,7 +31,6 @@
+ #include "dvdnav_internal.h"
+ #include "read_cache.h"
+-#include "nav_read.h"
+ #include <stdlib.h>
+ #include <stdio.h>
+Index: src/dvdnav.h
+===================================================================
+RCS file: /cvsroot/dvd/libdvdnav/src/dvdnav.h,v
+retrieving revision 1.31
+diff -u -r1.31 dvdnav.h
+--- src/dvdnav.h       9 Jun 2003 15:17:44 -0000       1.31
++++ src/dvdnav.h       11 Feb 2005 11:08:10 -0000
+@@ -33,16 +33,19 @@
+ extern "C" {
+ #endif
++#include <inttypes.h>
++
++#include <dvdread/dvd_reader.h>
++#include <dvdread/nav_types.h>
++#include <dvdread/nav_read.h>
++#include <dvdread/ifo_types.h> /* For vm_cmd_t */
++
+ #ifdef DVDNAV_COMPILE
+ #  include "dvdnav_events.h"
+ #  include "dvd_types.h"
+-#  include "dvd_reader.h"
+-#  include "ifo_types.h" /* For vm_cmd_t */
+ #else
+ #  include <dvdnav/dvdnav_events.h>
+ #  include <dvdnav/dvd_types.h>
+-#  include <dvdnav/dvd_reader.h>
+-#  include <dvdnav/ifo_types.h> /* For vm_cmd_t */
+ #endif
+Index: src/dvdnav_events.h
+===================================================================
+RCS file: /cvsroot/dvd/libdvdnav/src/dvdnav_events.h,v
+retrieving revision 1.12
+diff -u -r1.12 dvdnav_events.h
+--- src/dvdnav_events.h        27 Apr 2003 01:26:18 -0000      1.12
++++ src/dvdnav_events.h        11 Feb 2005 11:08:10 -0000
+@@ -28,10 +28,6 @@
+ #ifndef DVDNAV_EVENTS_H_INCLUDED
+ #define DVDNAV_EVENTS_H_INCLUDED
+-#include "ifo_types.h"
+-#include "dvd_reader.h"
+-#include "nav_types.h"
+-
+ /*
+  * DVDNAV_BLOCK_OK
+Index: src/highlight.c
+===================================================================
+RCS file: /cvsroot/dvd/libdvdnav/src/highlight.c,v
+retrieving revision 1.32
+diff -u -r1.32 highlight.c
+--- src/highlight.c    20 Jan 2004 01:22:24 -0000      1.32
++++ src/highlight.c    11 Feb 2005 11:08:10 -0000
+@@ -26,7 +26,6 @@
+ #endif
+ #include <assert.h>
+-#include "nav_types.h"
+ #include "dvdnav_internal.h"
+ /*
+Index: src/remap.c
+===================================================================
+RCS file: /cvsroot/dvd/libdvdnav/src/remap.c,v
+retrieving revision 1.4
+diff -u -r1.4 remap.c
+--- src/remap.c        27 Aug 2003 13:54:19 -0000      1.4
++++ src/remap.c        11 Feb 2005 11:08:10 -0000
+@@ -189,7 +189,11 @@
+     remap_t *map;
+     /* Build the map filename */
+-    home = getenv("HOME"); assert(home);
++    home = getenv("HOME");
++    if (!home) {
++      fprintf(MSG_OUT, "libdvdnav: Unable to find map for title '%s'\n", title);
++      return NULL;
++    }
+     strncpy(fname, home, sizeof(fname));
+     strncat(fname, "/.dvdnav/", sizeof(fname));
+     strncat(fname, title, sizeof(fname));
+Index: src/vm/decoder.c
+===================================================================
+RCS file: /cvsroot/dvd/libdvdnav/src/vm/decoder.c,v
+retrieving revision 1.2
+diff -u -r1.2 decoder.c
+--- src/vm/decoder.c   3 Mar 2004 16:50:42 -0000       1.2
++++ src/vm/decoder.c   11 Feb 2005 11:08:10 -0000
+@@ -31,7 +31,6 @@
+ #include <stdlib.h>
+ #include <inttypes.h>
+ #include <string.h>  /* For memset */
+-#include "ifo_types.h" /* vm_cmd_t */
+ #include "dvdnav_internal.h"
+Index: src/vm/decoder.h
+===================================================================
+RCS file: /cvsroot/dvd/libdvdnav/src/vm/decoder.h,v
+retrieving revision 1.1
+diff -u -r1.1 decoder.h
+--- src/vm/decoder.h   11 Jan 2004 21:43:13 -0000      1.1
++++ src/vm/decoder.h   11 Feb 2005 11:08:10 -0000
+@@ -28,7 +28,7 @@
+ #include <inttypes.h>
+ #include <sys/time.h>
+-#include "ifo_types.h" /*  vm_cmd_t */
++#include <dvdread/ifo_types.h> /*  vm_cmd_t */
+ #include "dvdnav_internal.h"
+ /* link command types */
+Index: src/vm/vm.c
+===================================================================
+RCS file: /cvsroot/dvd/libdvdnav/src/vm/vm.c,v
+retrieving revision 1.11
+diff -u -r1.11 vm.c
+--- src/vm/vm.c        16 Jan 2005 16:47:05 -0000      1.11
++++ src/vm/vm.c        11 Feb 2005 11:08:11 -0000
+@@ -38,13 +38,17 @@
+ #include <sys/stat.h>
+ #include <fcntl.h>
+-#include "ifo_types.h"
+-#include "ifo_read.h"
++/* from dvdread */
++#include <dvdread/ifo_types.h>
++#include <dvdread/ifo_read.h>
+ #include "dvdnav_internal.h"
+ #ifdef _MSC_VER
+ #include <io.h>   /* read() */
++#elif defined(WIN32)
++#   define lseek _lseeki64
++#   define off_t int64_t
+ #endif /* _MSC_VER */
+ /*
+diff -Naur Makefile.am Makefile.am
+--- Makefile.am       2004-10-26 19:26:07.000000000 +0200
++++ Makefile.am   2005-09-02 15:05:20.000000000 +0200
+@@ -2,7 +2,7 @@
+
+ AUTOMAKE_OPTIONS = 1.3
+
+-SUBDIRS = src examples doc misc m4
++SUBDIRS = src misc m4
+
+ EXTRA_DIST = autogen.sh \
+             AUTHORS \
+
+--- misc/dvdnav-config.in      2003-04-27 03:26:17.000000000 +0200
++++ misc/dvdnav-config.in      2005-09-21 20:27:06.000000000 +0200
+@@ -76,5 +76,5 @@
+ fi
+ if test "$echo_libs" = "yes"; then
+-      echo -L@libdir@ -ldvdnav @THREAD_LIBS@
++      echo -L@libdir@ -ldvdnav @THREAD_LIBS@ -ldvdread -ldvdcss
+ fi      
diff --git a/extras/contrib/src/Patches/libdvdread-20041028-win32.patch b/extras/contrib/src/Patches/libdvdread-20041028-win32.patch
new file mode 100644 (file)
index 0000000..ebc5a68
--- /dev/null
@@ -0,0 +1,112 @@
+? winwx.sh
+Index: configure.in
+===================================================================
+RCS file: /cvsroot/ogle/libdvdread/configure.in,v
+retrieving revision 1.24
+diff -u -r1.24 configure.in
+--- configure.in       5 Jul 2003 18:30:25 -0000       1.24
++++ configure.in       2 Sep 2004 13:43:23 -0000
+@@ -77,6 +77,11 @@
+       [ ],
+       AC_MSG_ERROR(You need libdvdcss (dvdcss.h))
+     )
++    case "x${host}" in
++    x*mingw32* | x*cygwin*)
++    CSS_LIBS=-ldvdcss
++    ;;
++    x*)
+     AC_MSG_CHECKING([for dvdcss_interface_2 in -ldvdcss])
+     saved_LDFLAGS=$LDFLAGS
+     LDFLAGS="$LDFLAGS -ldvdcss"
+@@ -88,6 +93,8 @@
+         ] )
+     LDFLAGS=$saved_LDFLAGS
+     AC_MSG_RESULT([yes])
++    ;;
++    esac
+   else
+     dnl -w added to shutup GCC3.1's cpp warning about -I/usr/local
+     saved_CPPFLAGS=$CPPFLAGS
+@@ -99,6 +106,12 @@
+     CPPFLAGS=$saved_CPPFLAGS
+     saved_CFLAGS=$CFLAGS
+     CFLAGS="$CFLAGS -I$dvdcss_path/include -L$dvdcss_path/lib -ldvdcss"
++    case "x${host}" in
++    x*mingw32* | x*cygwin*)
++    CSS_LIBS="-L$dvdcss_path/lib -R$dvdcss_path/lib -ldvdcss"
++    CSS_CFLAGS=-I$dvdcss_path/include
++    ;;
++    x*)
+     AC_MSG_CHECKING([for dvdcss_interface_2 in -ldvdcss])
+     AC_TRY_LINK([#include <dvdcss/dvdcss.h>], 
+                 [if(!dvdcss_interface_2) { return 1; }],
+@@ -109,6 +122,8 @@
+         ] )
+     CFLAGS=$saved_CFLAGS
+     AC_MSG_RESULT([yes])
++    ;;
++    esac
+   fi
+ fi
+Index: dvdread/bswap.h
+===================================================================
+RCS file: /cvsroot/ogle/libdvdread/dvdread/bswap.h,v
+retrieving revision 1.10
+diff -u -r1.10 bswap.h
+--- dvdread/bswap.h    18 Jun 2003 13:35:03 -0000      1.10
++++ dvdread/bswap.h    2 Sep 2004 13:43:25 -0000
+@@ -85,14 +85,14 @@
+       (((x) & 0x0000ff00) <<  8) | \
+       (((x) & 0x000000ff) << 24))
+ #define B2N_64(x) \
+- x = ((((x) & 0xff00000000000000) >> 56) | \
+-      (((x) & 0x00ff000000000000) >> 40) | \
+-      (((x) & 0x0000ff0000000000) >> 24) | \
+-      (((x) & 0x000000ff00000000) >>  8) | \
+-      (((x) & 0x00000000ff000000) <<  8) | \
+-      (((x) & 0x0000000000ff0000) << 24) | \
+-      (((x) & 0x000000000000ff00) << 40) | \
+-      (((x) & 0x00000000000000ff) << 56))
++ x = ((((x) & 0xff00000000000000LL) >> 56) | \
++      (((x) & 0x00ff000000000000LL) >> 40) | \
++      (((x) & 0x0000ff0000000000LL) >> 24) | \
++      (((x) & 0x000000ff00000000LL) >>  8) | \
++      (((x) & 0x00000000ff000000LL) <<  8) | \
++      (((x) & 0x0000000000ff0000LL) << 24) | \
++      (((x) & 0x000000000000ff00LL) << 40) | \
++      (((x) & 0x00000000000000ffLL) << 56))
+ #else
+Index: dvdread/dvd_input.c
+===================================================================
+RCS file: /cvsroot/ogle/libdvdread/dvdread/dvd_input.c,v
+retrieving revision 1.8
+diff -u -r1.8 dvd_input.c
+--- dvdread/dvd_input.c        4 Apr 2004 20:02:27 -0000       1.8
++++ dvdread/dvd_input.c        2 Sep 2004 13:43:25 -0000
+@@ -21,11 +21,23 @@
+ #include <stdio.h>
+ #include <stdlib.h>
++
++#if defined(HAVE_INTTYPES_H)
++#include <inttypes.h>
++#elif defined(HAVE_STDINT_H)
++#include <stdint.h>
++#endif
++
+ #include <fcntl.h>
+ #include <unistd.h>
+ #include "dvd_reader.h"
+ #include "dvd_input.h"
++
++#ifdef WIN32
++#   define lseek _lseeki64
++#   define off_t int64_t
++#endif
+ /* The function pointers that is the exported interface of this file. */
+ dvd_input_t (*dvdinput_open)  (const char *);
diff --git a/extras/contrib/src/Patches/libdvdread-win32.patch b/extras/contrib/src/Patches/libdvdread-win32.patch
new file mode 100644 (file)
index 0000000..e27b7d2
--- /dev/null
@@ -0,0 +1,61 @@
+Index: dvdread/bswap.h
+===================================================================
+RCS file: /cvsroot/ogle/libdvdread/dvdread/bswap.h,v
+retrieving revision 1.10
+diff -u -r1.10 bswap.h
+--- dvdread/bswap.h    18 Jun 2003 13:35:03 -0000      1.10
++++ dvdread/bswap.h    2 Sep 2004 13:43:25 -0000
+@@ -85,14 +85,14 @@
+       (((x) & 0x0000ff00) <<  8) | \
+       (((x) & 0x000000ff) << 24))
+ #define B2N_64(x) \
+- x = ((((x) & 0xff00000000000000) >> 56) | \
+-      (((x) & 0x00ff000000000000) >> 40) | \
+-      (((x) & 0x0000ff0000000000) >> 24) | \
+-      (((x) & 0x000000ff00000000) >>  8) | \
+-      (((x) & 0x00000000ff000000) <<  8) | \
+-      (((x) & 0x0000000000ff0000) << 24) | \
+-      (((x) & 0x000000000000ff00) << 40) | \
+-      (((x) & 0x00000000000000ff) << 56))
++ x = ((((x) & 0xff00000000000000LL) >> 56) | \
++      (((x) & 0x00ff000000000000LL) >> 40) | \
++      (((x) & 0x0000ff0000000000LL) >> 24) | \
++      (((x) & 0x000000ff00000000LL) >>  8) | \
++      (((x) & 0x00000000ff000000LL) <<  8) | \
++      (((x) & 0x0000000000ff0000LL) << 24) | \
++      (((x) & 0x000000000000ff00LL) << 40) | \
++      (((x) & 0x00000000000000ffLL) << 56))
+ #else
+Index: dvdread/dvd_input.c
+===================================================================
+RCS file: /cvsroot/ogle/libdvdread/dvdread/dvd_input.c,v
+retrieving revision 1.8
+diff -u -r1.8 dvd_input.c
+--- dvdread/dvd_input.c        4 Apr 2004 20:02:27 -0000       1.8
++++ dvdread/dvd_input.c        2 Sep 2004 13:43:25 -0000
+@@ -21,11 +21,23 @@
+ #include <stdio.h>
+ #include <stdlib.h>
++
++#if defined(HAVE_INTTYPES_H)
++#include <inttypes.h>
++#elif defined(HAVE_STDINT_H)
++#include <stdint.h>
++#endif
++
+ #include <fcntl.h>
+ #include <unistd.h>
+ #include "dvd_reader.h"
+ #include "dvd_input.h"
++
++#ifdef WIN32
++#   define lseek _lseeki64
++#   define off_t int64_t
++#endif
+ /* The function pointers that is the exported interface of this file. */
+ dvd_input_t (*dvdinput_open)  (const char *);
index e813215..357a7fb 100644 (file)
@@ -1,4 +1,3 @@
-Only in libdvdread/dvdread: .dvd_input.c.swp
 diff -ru libdvdread-0.9.4/dvdread/bswap.h libdvdread/dvdread/bswap.h
 --- libdvdread-0.9.4/dvdread/bswap.h   2002-12-15 01:09:12.000000000 +0100
 +++ libdvdread/dvdread/bswap.h 2005-08-31 19:24:57.000000000 +0200
@@ -6,24 +5,24 @@ diff -ru libdvdread-0.9.4/dvdread/bswap.h libdvdread/dvdread/bswap.h
   * functionality! 
   */
  
--#elif defined(__FreeBSD__) || defined(__sun) || defined(__bsdi__)
-+#elif defined(__FreeBSD__) || defined(__sun) || defined(__bsdi__) || defined( __BEOS__ )
+-#elif defined(__FreeBSD__) || defined(__sun) || defined(__bsdi__) || defined(WIN32)
++#elif defined(__FreeBSD__) || defined(__sun) || defined(__bsdi__) || defined(WIN32) || defined( __BEOS__ )
  #define B2N_16(x) \
   x = ((((x) & 0xff00) >> 8) | \
        (((x) & 0x00ff) << 8))
 diff -ru libdvdread-0.9.4/dvdread/dvd_reader.c libdvdread/dvdread/dvd_reader.c
 --- libdvdread-0.9.4/dvdread/dvd_reader.c      2003-02-13 23:31:21.000000000 +0100
 +++ libdvdread/dvdread/dvd_reader.c    2005-08-31 19:24:57.000000000 +0200
-@@ -303,8 +303,7 @@
-     if( path == NULL )
-       return 0;
--    ret = stat( path, &fileinfo );
--    if( ret < 0 ) {
-+    if( *path && (ret = stat( path, &fileinfo ) < 0) ) {
-       /* If we can't stat the file, give up */
-       fprintf( stderr, "libdvdread: Can't stat %s\n", path );
-       perror("");
+@@ -324,8 +324,7 @@
+     else
+ #endif
+     {
+-        ret = stat( path, &fileinfo );
+-        if( ret < 0 ) {
++        if( *path && (ret = stat( path, &fileinfo ) < 0) ) {
+           /* If we can't stat the file, give up */
+           fprintf( stderr, "libdvdread: Can't stat %s\n", path );
+           perror("");
 @@ -315,7 +314,7 @@
      have_css = dvdinput_setup();
  
@@ -68,4 +67,3 @@ diff -ru libdvdread-0.9.4/dvdread/dvd_reader.c libdvdread/dvdread/dvd_reader.c
      return -1;
  }
  
-Only in libdvdread/dvdread: dvd_reader.c.orig
diff --git a/extras/contrib/src/Patches/libebml-svn-win32.patch b/extras/contrib/src/Patches/libebml-svn-win32.patch
new file mode 100644 (file)
index 0000000..3c2023b
--- /dev/null
@@ -0,0 +1,41 @@
+Index: make/linux/Makefile
+===================================================================
+--- make/linux/Makefile        (revision 1206)
++++ make/linux/Makefile        (working copy)
+@@ -36,9 +36,9 @@
+ DEBUGFLAGS=-g -DDEBUG
+ endif
+-ifneq (,$(shell $(CXX) -v 2>&1 | tail -n 1 | grep -i mingw))
+-$(error Please use the Makefile in ../mingw32)
+-endif
++#ifneq (,$(shell $(CXX) -v 2>&1 | tail -n 1 | grep -i mingw))
++#$(error Please use the Makefile in ../mingw32)
++#endif
+ CWD=$(shell pwd)
+Index: make/mingw32/Makefile
+===================================================================
+--- make/mingw32/Makefile      (revision 1206)
++++ make/mingw32/Makefile      (working copy)
+@@ -19,6 +19,8 @@
+ CXX  = g++.exe
+ CC   = gcc.exe
+ WINDRES = windres.exe
++AR = ar rcvu
++RANLIB = ranlib
+ RES  = 
+ SRC  = $(wildcard ../../src/*.cpp)
+ OBJ  = $(patsubst %.cpp,%.o,$(SRC))
+@@ -47,8 +49,8 @@
+       rm -f .depend
+ libebml.a: $(OBJ)
+-      ar r $@ $(OBJ)
+-      ranlib $@
++      $(AR) $@ $(OBJ)
++      $(RANLIB) $@
+ libebml.dll: $(OBJ)
+       $(CXX) -shared -Wl,--export-all -Wl,--out-implib=$@.a -o $@ $(OBJ)
index c8b161b..e69de29 100644 (file)
-diff -Naur libiconv.old/lib/aliases.gperf libiconv/lib/aliases.gperf
---- libiconv.old/lib/aliases.gperf     2003-05-22 22:17:15.000000000 +0200
-+++ libiconv/lib/aliases.gperf 2005-08-04 18:54:43.000000000 +0200
-@@ -21,6 +21,7 @@
- US, ei_ascii
- CSASCII, ei_ascii
- UTF-8, ei_utf8
-+UTF-8-MAC, ei_utf8mac
- UCS-2, ei_ucs2
- ISO-10646-UCS-2, ei_ucs2
- CSUNICODE, ei_ucs2
-diff -Naur libiconv.old/lib/aliases.h libiconv/lib/aliases.h
---- libiconv.old/lib/aliases.h 2003-05-22 22:17:17.000000000 +0200
-+++ libiconv/lib/aliases.h     2005-08-04 18:54:43.000000000 +0200
-@@ -1,4 +1,4 @@
--/* ANSI-C code produced by gperf version 3.0 */
-+/* ANSI-C code produced by gperf version 3.0.1 */
- /* Command-line: gperf -m 10 lib/aliases.gperf  */
- /* Computed positions: -k'1,3-11,$' */
-@@ -32,7 +32,7 @@
- #line 1 "lib/aliases.gperf"
- struct alias { int name; unsigned int encoding_index; };
--#define TOTAL_KEYWORDS 324
-+#define TOTAL_KEYWORDS 325
- #define MIN_WORD_LENGTH 2
- #define MAX_WORD_LENGTH 45
- #define MIN_HASH_VALUE 15
-@@ -55,11 +55,11 @@
-       880, 880, 880, 880, 880, 880, 880, 880, 880, 880,
-       880, 880, 880, 880, 880, 880, 880, 880, 880, 880,
-       880, 880, 880, 880, 880, 880, 880, 880, 880, 880,
--      880, 880, 880, 880, 880,   6,  69, 880,  44,   5,
--        6,  18,  60,   9,   8,  50,  14,  13, 271, 880,
-+      880, 880, 880, 880, 880,   6, 142, 880,  44,   5,
-+        6,  18,  60,   9,   8,  50,  14,  13, 291, 880,
-       880, 880, 880, 880, 880, 107, 152,   5,  29,   7,
--       43, 112,  42,   5, 341, 106,  10, 158,   8,   5,
--        6, 880,  61,  38,  98, 152, 194, 112,  30,  10,
-+      205, 112,  42,   5, 341, 106,  10, 158,   8,   5,
-+        6, 880,  61,  38,  98, 152, 110, 112,  30,  10,
-         6, 880, 880, 880, 880,  60, 880, 880, 880, 880,
-       880, 880, 880, 880, 880, 880, 880, 880, 880, 880,
-       880, 880, 880, 880, 880, 880, 880, 880, 880, 880,
-@@ -205,6 +205,7 @@
-     char stringpool_str171[sizeof("MAC")];
-     char stringpool_str172[sizeof("ISO_8859-3")];
-     char stringpool_str173[sizeof("ISO-IR-109")];
-+    char stringpool_str174[sizeof("VISCII")];
-     char stringpool_str175[sizeof("ISO8859-7")];
-     char stringpool_str176[sizeof("ISO-8859-10")];
-     char stringpool_str177[sizeof("CSASCII")];
-@@ -212,6 +213,7 @@
-     char stringpool_str179[sizeof("ISO-IR-179")];
-     char stringpool_str182[sizeof("ISO-8859-7")];
-     char stringpool_str184[sizeof("ISO-IR-203")];
-+    char stringpool_str186[sizeof("CSVISCII")];
-     char stringpool_str189[sizeof("ISO-IR-149")];
-     char stringpool_str190[sizeof("MS-EE")];
-     char stringpool_str191[sizeof("ISO-IR-148")];
-@@ -237,34 +239,28 @@
-     char stringpool_str222[sizeof("ISO-IR-14")];
-     char stringpool_str225[sizeof("ELOT_928")];
-     char stringpool_str227[sizeof("LATIN7")];
--    char stringpool_str228[sizeof("UTF-16")];
-+    char stringpool_str228[sizeof("TCVN")];
-     char stringpool_str230[sizeof("ISO_8859-10")];
-     char stringpool_str232[sizeof("CSUNICODE")];
-     char stringpool_str233[sizeof("UCS-2LE")];
--    char stringpool_str234[sizeof("UTF-8")];
-     char stringpool_str235[sizeof("ISO-IR-100")];
-     char stringpool_str236[sizeof("ISO_8859-7")];
--    char stringpool_str237[sizeof("UTF-32")];
-     char stringpool_str238[sizeof("CHAR")];
-     char stringpool_str241[sizeof("UNICODE-1-1")];
-     char stringpool_str242[sizeof("CSUNICODE11")];
-     char stringpool_str244[sizeof("TIS620")];
-     char stringpool_str245[sizeof("EUCKR")];
--    char stringpool_str246[sizeof("UTF-16LE")];
-     char stringpool_str247[sizeof("LATIN4")];
-     char stringpool_str250[sizeof("KSC_5601")];
-     char stringpool_str251[sizeof("TIS-620")];
-     char stringpool_str252[sizeof("EUC-KR")];
-     char stringpool_str254[sizeof("IBM-CP1133")];
-     char stringpool_str256[sizeof("ISO_8859-4")];
--    char stringpool_str257[sizeof("UTF-32LE")];
--    char stringpool_str258[sizeof("VISCII")];
-     char stringpool_str259[sizeof("KOI8-R")];
-     char stringpool_str262[sizeof("ISO_8859-14")];
-     char stringpool_str264[sizeof("CSKOI8R")];
-     char stringpool_str266[sizeof("GREEK8")];
-     char stringpool_str267[sizeof("MS-CYRL")];
--    char stringpool_str270[sizeof("CSVISCII")];
-     char stringpool_str280[sizeof("IBM850")];
-     char stringpool_str283[sizeof("ISO-IR-144")];
-     char stringpool_str286[sizeof("BIG5")];
-@@ -283,12 +279,11 @@
-     char stringpool_str303[sizeof("KOREAN")];
-     char stringpool_str304[sizeof("CSISOLATIN2")];
-     char stringpool_str305[sizeof("CN-BIG5")];
--    char stringpool_str306[sizeof("UTF-7")];
-+    char stringpool_str307[sizeof("TCVN-5712")];
-     char stringpool_str308[sizeof("CSISOLATIN6")];
-     char stringpool_str309[sizeof("CSISOLATINCYRILLIC")];
-     char stringpool_str310[sizeof("CSISOLATIN5")];
--    char stringpool_str312[sizeof("TCVN")];
--    char stringpool_str315[sizeof("TIS620.2529-1")];
-+    char stringpool_str312[sizeof("TCVN5712-1")];
-     char stringpool_str318[sizeof("CSGB2312")];
-     char stringpool_str320[sizeof("ISO-10646-UCS-2")];
-     char stringpool_str321[sizeof("UCS-4")];
-@@ -301,12 +296,12 @@
-     char stringpool_str328[sizeof("CSISOLATIN3")];
-     char stringpool_str329[sizeof("ISO646-US")];
-     char stringpool_str331[sizeof("US-ASCII")];
--    char stringpool_str332[sizeof("TIS620.2533-1")];
-     char stringpool_str333[sizeof("KOI8-T")];
-     char stringpool_str334[sizeof("MS-ANSI")];
-     char stringpool_str335[sizeof("KS_C_5601-1989")];
-     char stringpool_str336[sizeof("GB_1988-80")];
-     char stringpool_str339[sizeof("EUCTW")];
-+    char stringpool_str342[sizeof("VISCII1.1-1")];
-     char stringpool_str343[sizeof("GREEK")];
-     char stringpool_str346[sizeof("EUC-TW")];
-     char stringpool_str347[sizeof("WINDOWS-1251")];
-@@ -314,7 +309,6 @@
-     char stringpool_str349[sizeof("JP")];
-     char stringpool_str350[sizeof("WINDOWS-1256")];
-     char stringpool_str351[sizeof("WINDOWS-1255")];
--    char stringpool_str353[sizeof("VISCII1.1-1")];
-     char stringpool_str354[sizeof("CSISO2022KR")];
-     char stringpool_str356[sizeof("WINDOWS-1258")];
-     char stringpool_str360[sizeof("WINDOWS-1253")];
-@@ -323,7 +317,6 @@
-     char stringpool_str368[sizeof("ROMAN8")];
-     char stringpool_str369[sizeof("HZ-GB-2312")];
-     char stringpool_str370[sizeof("EUCJP")];
--    char stringpool_str371[sizeof("TIS620.2533-0")];
-     char stringpool_str372[sizeof("KS_C_5601-1987")];
-     char stringpool_str373[sizeof("MACICELAND")];
-     char stringpool_str374[sizeof("ISO-10646-UCS-4")];
-@@ -331,76 +324,81 @@
-     char stringpool_str377[sizeof("EUC-JP")];
-     char stringpool_str386[sizeof("WINDOWS-1250")];
-     char stringpool_str387[sizeof("ARABIC")];
--    char stringpool_str388[sizeof("UTF-16BE")];
--    char stringpool_str391[sizeof("TCVN-5712")];
-+    char stringpool_str388[sizeof("TIS620.2529-1")];
-+    char stringpool_str390[sizeof("UTF-16")];
-     char stringpool_str392[sizeof("WINDOWS-1257")];
-     char stringpool_str394[sizeof("CSPC862LATINHEBREW")];
--    char stringpool_str396[sizeof("TCVN5712-1")];
--    char stringpool_str399[sizeof("UTF-32BE")];
-+    char stringpool_str396[sizeof("UTF-8")];
-+    char stringpool_str399[sizeof("UTF-32")];
-     char stringpool_str402[sizeof("WINDOWS-1254")];
-     char stringpool_str404[sizeof("CSEUCKR")];
-+    char stringpool_str405[sizeof("TIS620.2533-1")];
-     char stringpool_str406[sizeof("ASMO-708")];
-+    char stringpool_str408[sizeof("UTF-16LE")];
-     char stringpool_str409[sizeof("CSISOLATINARABIC")];
-     char stringpool_str410[sizeof("MACINTOSH")];
-     char stringpool_str411[sizeof("UCS-2-INTERNAL")];
-     char stringpool_str412[sizeof("CSISOLATIN4")];
-     char stringpool_str416[sizeof("ECMA-114")];
-     char stringpool_str418[sizeof("CN-GB-ISOIR165")];
--    char stringpool_str420[sizeof("ANSI_X3.4-1986")];
-+    char stringpool_str419[sizeof("UTF-32LE")];
-     char stringpool_str421[sizeof("CSISO57GB1988")];
-     char stringpool_str423[sizeof("CSISO58GB231280")];
-     char stringpool_str424[sizeof("HP-ROMAN8")];
--    char stringpool_str426[sizeof("ANSI_X3.4-1968")];
-     char stringpool_str427[sizeof("MACTHAI")];
-     char stringpool_str429[sizeof("UCS-4BE")];
-     char stringpool_str430[sizeof("CSHPROMAN8")];
-     char stringpool_str432[sizeof("CN-GB")];
-     char stringpool_str434[sizeof("UNICODELITTLE")];
--    char stringpool_str435[sizeof("ISO_8859-5:1988")];
--    char stringpool_str438[sizeof("ISO_8859-9:1989")];
--    char stringpool_str440[sizeof("ISO_8859-8:1988")];
-     char stringpool_str441[sizeof("KOI8-U")];
--    char stringpool_str444[sizeof("ISO_8859-3:1988")];
-+    char stringpool_str444[sizeof("TIS620.2533-0")];
-     char stringpool_str448[sizeof("ISO-2022-JP")];
-     char stringpool_str449[sizeof("ISO-2022-JP-1")];
-     char stringpool_str450[sizeof("ISO-2022-JP-2")];
-     char stringpool_str451[sizeof("CSISOLATINHEBREW")];
-     char stringpool_str454[sizeof("ISO646-JP")];
-+    char stringpool_str455[sizeof("ISO_8859-5:1988")];
-     char stringpool_str457[sizeof("EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE")];
-+    char stringpool_str458[sizeof("ISO_8859-9:1989")];
-+    char stringpool_str460[sizeof("ISO_8859-8:1988")];
-+    char stringpool_str464[sizeof("ISO_8859-3:1988")];
-     char stringpool_str465[sizeof("UCS-4-INTERNAL")];
--    char stringpool_str467[sizeof("ISO_8859-1:1987")];
--    char stringpool_str468[sizeof("ISO_8859-2:1987")];
--    char stringpool_str470[sizeof("ISO_8859-6:1987")];
-+    char stringpool_str468[sizeof("UTF-7")];
-     char stringpool_str479[sizeof("CSISO2022JP")];
-     char stringpool_str480[sizeof("CSISO2022JP2")];
--    char stringpool_str486[sizeof("ISO_8859-4:1988")];
-+    char stringpool_str485[sizeof("ISO_646.IRV:1991")];
-+    char stringpool_str487[sizeof("ISO_8859-1:1987")];
-+    char stringpool_str488[sizeof("ISO_8859-2:1987")];
-     char stringpool_str489[sizeof("MACCENTRALEUROPE")];
-+    char stringpool_str490[sizeof("ISO_8859-6:1987")];
-     char stringpool_str492[sizeof("HEBREW")];
-+    char stringpool_str493[sizeof("ANSI_X3.4-1986")];
-     char stringpool_str494[sizeof("MS-HEBR")];
--    char stringpool_str496[sizeof("ISO_646.IRV:1991")];
-     char stringpool_str498[sizeof("CSEUCTW")];
-+    char stringpool_str499[sizeof("ANSI_X3.4-1968")];
-     char stringpool_str503[sizeof("KOI8-RU")];
-     char stringpool_str505[sizeof("WINDOWS-874")];
-+    char stringpool_str506[sizeof("ISO_8859-4:1988")];
-     char stringpool_str508[sizeof("JIS0208")];
-     char stringpool_str509[sizeof("GEORGIAN-PS")];
--    char stringpool_str512[sizeof("ISO_8859-7:1987")];
-     char stringpool_str514[sizeof("CSISOLATINGREEK")];
-     char stringpool_str515[sizeof("JIS_C6226-1983")];
-     char stringpool_str518[sizeof("MACROMAN")];
-     char stringpool_str519[sizeof("UCS-2-SWAPPED")];
-     char stringpool_str524[sizeof("CSMACINTOSH")];
--    char stringpool_str527[sizeof("BIGFIVE")];
-     char stringpool_str528[sizeof("CSISO159JISX02121990")];
-     char stringpool_str529[sizeof("CSISO14JISC6220RO")];
-     char stringpool_str530[sizeof("CSPC850MULTILINGUAL")];
--    char stringpool_str534[sizeof("BIG-FIVE")];
-+    char stringpool_str532[sizeof("ISO_8859-7:1987")];
-     char stringpool_str541[sizeof("JIS_C6220-1969-RO")];
-     char stringpool_str545[sizeof("JIS_X0212")];
-     char stringpool_str549[sizeof("BIG5HKSCS")];
-+    char stringpool_str550[sizeof("UTF-16BE")];
-     char stringpool_str553[sizeof("JISX0201-1976")];
-     char stringpool_str554[sizeof("GEORGIAN-ACADEMY")];
-     char stringpool_str556[sizeof("BIG5-HKSCS")];
-     char stringpool_str560[sizeof("CSISO87JISX0208")];
-+    char stringpool_str561[sizeof("UTF-32BE")];
-     char stringpool_str570[sizeof("MACGREEK")];
-     char stringpool_str571[sizeof("MS-GREEK")];
-     char stringpool_str573[sizeof("UCS-4-SWAPPED")];
-@@ -410,25 +408,28 @@
-     char stringpool_str594[sizeof("UNICODEBIG")];
-     char stringpool_str599[sizeof("JIS_X0212-1990")];
-     char stringpool_str600[sizeof("JIS_X0208")];
-+    char stringpool_str605[sizeof("BIGFIVE")];
-+    char stringpool_str612[sizeof("BIG-FIVE")];
-     char stringpool_str614[sizeof("MACARABIC")];
--    char stringpool_str619[sizeof("CSHALFWIDTHKATAKANA")];
-     char stringpool_str620[sizeof("JIS_X0208-1983")];
--    char stringpool_str621[sizeof("SHIFT-JIS")];
-+    char stringpool_str621[sizeof("TCVN5712-1:1993")];
-     char stringpool_str626[sizeof("MACUKRAINE")];
--    char stringpool_str635[sizeof("CSEUCPKDFMTJAPANESE")];
-     char stringpool_str646[sizeof("JIS_X0208-1990")];
--    char stringpool_str663[sizeof("CSSHIFTJIS")];
--    char stringpool_str664[sizeof("JIS_X0212.1990-0")];
-     char stringpool_str665[sizeof("MACHEBREW")];
--    char stringpool_str675[sizeof("SHIFT_JIS")];
--    char stringpool_str685[sizeof("TCVN5712-1:1993")];
-+    char stringpool_str667[sizeof("UTF-8-MAC")];
-+    char stringpool_str669[sizeof("JAVA")];
-     char stringpool_str694[sizeof("MS-TURK")];
-     char stringpool_str717[sizeof("MACTURKISH")];
-     char stringpool_str731[sizeof("MACROMANIA")];
-+    char stringpool_str737[sizeof("JIS_X0212.1990-0")];
-     char stringpool_str750[sizeof("MS-ARAB")];
--    char stringpool_str753[sizeof("JAVA")];
-+    char stringpool_str781[sizeof("CSHALFWIDTHKATAKANA")];
-+    char stringpool_str783[sizeof("SHIFT-JIS")];
-+    char stringpool_str797[sizeof("CSEUCPKDFMTJAPANESE")];
-     char stringpool_str798[sizeof("MS_KANJI")];
-     char stringpool_str799[sizeof("JOHAB")];
-+    char stringpool_str825[sizeof("CSSHIFTJIS")];
-+    char stringpool_str837[sizeof("SHIFT_JIS")];
-     char stringpool_str879[sizeof("WINBALTRIM")];
-   };
- static const struct stringpool_t stringpool_contents =
-@@ -532,6 +533,7 @@
-     "MAC",
-     "ISO_8859-3",
-     "ISO-IR-109",
-+    "VISCII",
-     "ISO8859-7",
-     "ISO-8859-10",
-     "CSASCII",
-@@ -539,6 +541,7 @@
-     "ISO-IR-179",
-     "ISO-8859-7",
-     "ISO-IR-203",
-+    "CSVISCII",
-     "ISO-IR-149",
-     "MS-EE",
-     "ISO-IR-148",
-@@ -564,34 +567,28 @@
-     "ISO-IR-14",
-     "ELOT_928",
-     "LATIN7",
--    "UTF-16",
-+    "TCVN",
-     "ISO_8859-10",
-     "CSUNICODE",
-     "UCS-2LE",
--    "UTF-8",
-     "ISO-IR-100",
-     "ISO_8859-7",
--    "UTF-32",
-     "CHAR",
-     "UNICODE-1-1",
-     "CSUNICODE11",
-     "TIS620",
-     "EUCKR",
--    "UTF-16LE",
-     "LATIN4",
-     "KSC_5601",
-     "TIS-620",
-     "EUC-KR",
-     "IBM-CP1133",
-     "ISO_8859-4",
--    "UTF-32LE",
--    "VISCII",
-     "KOI8-R",
-     "ISO_8859-14",
-     "CSKOI8R",
-     "GREEK8",
-     "MS-CYRL",
--    "CSVISCII",
-     "IBM850",
-     "ISO-IR-144",
-     "BIG5",
-@@ -610,12 +607,11 @@
-     "KOREAN",
-     "CSISOLATIN2",
-     "CN-BIG5",
--    "UTF-7",
-+    "TCVN-5712",
-     "CSISOLATIN6",
-     "CSISOLATINCYRILLIC",
-     "CSISOLATIN5",
--    "TCVN",
--    "TIS620.2529-1",
-+    "TCVN5712-1",
-     "CSGB2312",
-     "ISO-10646-UCS-2",
-     "UCS-4",
-@@ -628,12 +624,12 @@
-     "CSISOLATIN3",
-     "ISO646-US",
-     "US-ASCII",
--    "TIS620.2533-1",
-     "KOI8-T",
-     "MS-ANSI",
-     "KS_C_5601-1989",
-     "GB_1988-80",
-     "EUCTW",
-+    "VISCII1.1-1",
-     "GREEK",
-     "EUC-TW",
-     "WINDOWS-1251",
-@@ -641,7 +637,6 @@
-     "JP",
-     "WINDOWS-1256",
-     "WINDOWS-1255",
--    "VISCII1.1-1",
-     "CSISO2022KR",
-     "WINDOWS-1258",
-     "WINDOWS-1253",
-@@ -650,7 +645,6 @@
-     "ROMAN8",
-     "HZ-GB-2312",
-     "EUCJP",
--    "TIS620.2533-0",
-     "KS_C_5601-1987",
-     "MACICELAND",
-     "ISO-10646-UCS-4",
-@@ -658,76 +652,81 @@
-     "EUC-JP",
-     "WINDOWS-1250",
-     "ARABIC",
--    "UTF-16BE",
--    "TCVN-5712",
-+    "TIS620.2529-1",
-+    "UTF-16",
-     "WINDOWS-1257",
-     "CSPC862LATINHEBREW",
--    "TCVN5712-1",
--    "UTF-32BE",
-+    "UTF-8",
-+    "UTF-32",
-     "WINDOWS-1254",
-     "CSEUCKR",
-+    "TIS620.2533-1",
-     "ASMO-708",
-+    "UTF-16LE",
-     "CSISOLATINARABIC",
-     "MACINTOSH",
-     "UCS-2-INTERNAL",
-     "CSISOLATIN4",
-     "ECMA-114",
-     "CN-GB-ISOIR165",
--    "ANSI_X3.4-1986",
-+    "UTF-32LE",
-     "CSISO57GB1988",
-     "CSISO58GB231280",
-     "HP-ROMAN8",
--    "ANSI_X3.4-1968",
-     "MACTHAI",
-     "UCS-4BE",
-     "CSHPROMAN8",
-     "CN-GB",
-     "UNICODELITTLE",
--    "ISO_8859-5:1988",
--    "ISO_8859-9:1989",
--    "ISO_8859-8:1988",
-     "KOI8-U",
--    "ISO_8859-3:1988",
-+    "TIS620.2533-0",
-     "ISO-2022-JP",
-     "ISO-2022-JP-1",
-     "ISO-2022-JP-2",
-     "CSISOLATINHEBREW",
-     "ISO646-JP",
-+    "ISO_8859-5:1988",
-     "EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE",
-+    "ISO_8859-9:1989",
-+    "ISO_8859-8:1988",
-+    "ISO_8859-3:1988",
-     "UCS-4-INTERNAL",
--    "ISO_8859-1:1987",
--    "ISO_8859-2:1987",
--    "ISO_8859-6:1987",
-+    "UTF-7",
-     "CSISO2022JP",
-     "CSISO2022JP2",
--    "ISO_8859-4:1988",
-+    "ISO_646.IRV:1991",
-+    "ISO_8859-1:1987",
-+    "ISO_8859-2:1987",
-     "MACCENTRALEUROPE",
-+    "ISO_8859-6:1987",
-     "HEBREW",
-+    "ANSI_X3.4-1986",
-     "MS-HEBR",
--    "ISO_646.IRV:1991",
-     "CSEUCTW",
-+    "ANSI_X3.4-1968",
-     "KOI8-RU",
-     "WINDOWS-874",
-+    "ISO_8859-4:1988",
-     "JIS0208",
-     "GEORGIAN-PS",
--    "ISO_8859-7:1987",
-     "CSISOLATINGREEK",
-     "JIS_C6226-1983",
-     "MACROMAN",
-     "UCS-2-SWAPPED",
-     "CSMACINTOSH",
--    "BIGFIVE",
-     "CSISO159JISX02121990",
-     "CSISO14JISC6220RO",
-     "CSPC850MULTILINGUAL",
--    "BIG-FIVE",
-+    "ISO_8859-7:1987",
-     "JIS_C6220-1969-RO",
-     "JIS_X0212",
-     "BIG5HKSCS",
-+    "UTF-16BE",
-     "JISX0201-1976",
-     "GEORGIAN-ACADEMY",
-     "BIG5-HKSCS",
-     "CSISO87JISX0208",
-+    "UTF-32BE",
-     "MACGREEK",
-     "MS-GREEK",
-     "UCS-4-SWAPPED",
-@@ -737,25 +736,28 @@
-     "UNICODEBIG",
-     "JIS_X0212-1990",
-     "JIS_X0208",
-+    "BIGFIVE",
-+    "BIG-FIVE",
-     "MACARABIC",
--    "CSHALFWIDTHKATAKANA",
-     "JIS_X0208-1983",
--    "SHIFT-JIS",
-+    "TCVN5712-1:1993",
-     "MACUKRAINE",
--    "CSEUCPKDFMTJAPANESE",
-     "JIS_X0208-1990",
--    "CSSHIFTJIS",
--    "JIS_X0212.1990-0",
-     "MACHEBREW",
--    "SHIFT_JIS",
--    "TCVN5712-1:1993",
-+    "UTF-8-MAC",
-+    "JAVA",
-     "MS-TURK",
-     "MACTURKISH",
-     "MACROMANIA",
-+    "JIS_X0212.1990-0",
-     "MS-ARAB",
--    "JAVA",
-+    "CSHALFWIDTHKATAKANA",
-+    "SHIFT-JIS",
-+    "CSEUCPKDFMTJAPANESE",
-     "MS_KANJI",
-     "JOHAB",
-+    "CSSHIFTJIS",
-+    "SHIFT_JIS",
-     "WINBALTRIM"
-   };
- #define stringpool ((const char *) &stringpool_contents)
-@@ -764,820 +766,830 @@
-   {
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 271 "lib/aliases.gperf"
-+#line 272 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str15, ei_iso646_cn},
-     {-1},
--#line 60 "lib/aliases.gperf"
-+#line 61 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str17, ei_iso8859_1},
--#line 68 "lib/aliases.gperf"
-+#line 69 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str18, ei_iso8859_2},
-     {-1},
--#line 133 "lib/aliases.gperf"
-+#line 134 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str20, ei_iso8859_10},
--#line 125 "lib/aliases.gperf"
-+#line 126 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str21, ei_iso8859_9},
-     {-1}, {-1}, {-1}, {-1},
--#line 147 "lib/aliases.gperf"
-+#line 148 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str26, ei_iso8859_14},
-     {-1}, {-1},
--#line 196 "lib/aliases.gperf"
-+#line 197 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str29, ei_cp862},
--#line 76 "lib/aliases.gperf"
-+#line 77 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str30, ei_iso8859_3},
-     {-1}, {-1},
--#line 200 "lib/aliases.gperf"
-+#line 201 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str33, ei_cp866},
--#line 51 "lib/aliases.gperf"
-+#line 52 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str34, ei_c99},
-     {-1}, {-1}, {-1},
--#line 301 "lib/aliases.gperf"
-+#line 302 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str38, ei_euc_cn},
-     {-1}, {-1},
--#line 167 "lib/aliases.gperf"
-+#line 168 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str41, ei_cp1251},
-     {-1},
--#line 170 "lib/aliases.gperf"
-+#line 171 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str43, ei_cp1252},
--#line 194 "lib/aliases.gperf"
-+#line 195 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str44, ei_cp862},
--#line 300 "lib/aliases.gperf"
-+#line 301 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str45, ei_euc_cn},
-     {-1},
--#line 182 "lib/aliases.gperf"
-+#line 183 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str47, ei_cp1256},
--#line 198 "lib/aliases.gperf"
-+#line 199 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str48, ei_cp866},
--#line 179 "lib/aliases.gperf"
-+#line 180 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str49, ei_cp1255},
--#line 311 "lib/aliases.gperf"
-+#line 312 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str50, ei_hz},
-     {-1},
--#line 331 "lib/aliases.gperf"
-+#line 332 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str52, ei_johab},
--#line 294 "lib/aliases.gperf"
-+#line 295 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str53, ei_cp932},
-     {-1},
--#line 57 "lib/aliases.gperf"
-+#line 58 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str55, ei_iso8859_1},
-     {-1},
--#line 306 "lib/aliases.gperf"
-+#line 307 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str57, ei_ces_gbk},
--#line 265 "lib/aliases.gperf"
-+#line 266 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str58, ei_jisx0212},
--#line 188 "lib/aliases.gperf"
-+#line 189 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str59, ei_cp1258},
-     {-1}, {-1},
--#line 140 "lib/aliases.gperf"
-+#line 141 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str62, ei_iso8859_13},
-     {-1}, {-1}, {-1}, {-1},
--#line 173 "lib/aliases.gperf"
-+#line 174 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str67, ei_cp1253},
-     {-1}, {-1}, {-1}, {-1},
--#line 84 "lib/aliases.gperf"
-+#line 85 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str72, ei_iso8859_4},
-     {-1}, {-1},
--#line 227 "lib/aliases.gperf"
-+#line 228 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str75, ei_cp1133},
-     {-1},
--#line 219 "lib/aliases.gperf"
-+#line 220 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str77, ei_hp_roman8},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 276 "lib/aliases.gperf"
-+#line 277 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str84, ei_gb2312},
--#line 62 "lib/aliases.gperf"
-+#line 63 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str85, ei_iso8859_1},
-     {-1},
--#line 70 "lib/aliases.gperf"
-+#line 71 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str87, ei_iso8859_2},
-     {-1}, {-1}, {-1},
--#line 102 "lib/aliases.gperf"
-+#line 103 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str91, ei_iso8859_6},
--#line 53 "lib/aliases.gperf"
-+#line 54 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str92, ei_iso8859_1},
--#line 93 "lib/aliases.gperf"
-+#line 94 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str93, ei_iso8859_5},
--#line 63 "lib/aliases.gperf"
-+#line 64 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str94, ei_iso8859_2},
--#line 252 "lib/aliases.gperf"
-+#line 253 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str95, ei_jisx0201},
-     {-1},
--#line 159 "lib/aliases.gperf"
-+#line 160 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str97, ei_iso8859_16},
--#line 94 "lib/aliases.gperf"
-+#line 95 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str98, ei_iso8859_6},
--#line 154 "lib/aliases.gperf"
-+#line 155 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str99, ei_iso8859_15},
--#line 87 "lib/aliases.gperf"
-+#line 88 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str100, ei_iso8859_5},
--#line 127 "lib/aliases.gperf"
-+#line 128 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str101, ei_iso8859_9},
-     {-1},
--#line 119 "lib/aliases.gperf"
-+#line 120 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str103, ei_iso8859_8},
--#line 155 "lib/aliases.gperf"
-+#line 156 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str104, ei_iso8859_16},
--#line 192 "lib/aliases.gperf"
-+#line 193 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str105, ei_cp850},
--#line 150 "lib/aliases.gperf"
-+#line 151 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str106, ei_iso8859_15},
-     {-1},
--#line 120 "lib/aliases.gperf"
-+#line 121 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str108, ei_iso8859_9},
--#line 328 "lib/aliases.gperf"
-+#line 329 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str109, ei_cp949},
--#line 113 "lib/aliases.gperf"
-+#line 114 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str110, ei_iso8859_8},
--#line 78 "lib/aliases.gperf"
-+#line 79 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str111, ei_iso8859_3},
- #line 16 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str112, ei_ascii},
--#line 258 "lib/aliases.gperf"
-+#line 259 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str113, ei_jisx0208},
--#line 91 "lib/aliases.gperf"
-+#line 92 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str114, ei_iso8859_5},
-     {-1},
--#line 308 "lib/aliases.gperf"
-+#line 309 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str116, ei_iso2022_cn},
--#line 141 "lib/aliases.gperf"
-+#line 142 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str117, ei_iso8859_13},
--#line 71 "lib/aliases.gperf"
-+#line 72 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str118, ei_iso8859_3},
--#line 164 "lib/aliases.gperf"
-+#line 165 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str119, ei_cp1250},
--#line 322 "lib/aliases.gperf"
-+#line 323 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str120, ei_cp950},
--#line 190 "lib/aliases.gperf"
-+#line 191 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str121, ei_cp850},
--#line 269 "lib/aliases.gperf"
-+#line 270 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str122, ei_iso646_cn},
--#line 291 "lib/aliases.gperf"
-+#line 292 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str123, ei_sjis},
--#line 136 "lib/aliases.gperf"
-+#line 137 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str124, ei_iso8859_13},
--#line 106 "lib/aliases.gperf"
-+#line 107 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str125, ei_iso8859_7},
--#line 158 "lib/aliases.gperf"
-+#line 159 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str126, ei_iso8859_16},
--#line 235 "lib/aliases.gperf"
-+#line 236 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str127, ei_tis620},
-     {-1},
--#line 277 "lib/aliases.gperf"
-+#line 278 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str129, ei_isoir165},
-     {-1},
--#line 185 "lib/aliases.gperf"
-+#line 186 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str131, ei_cp1257},
- #line 13 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str132, ei_ascii},
-     {-1},
--#line 274 "lib/aliases.gperf"
-+#line 275 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str134, ei_gb2312},
-     {-1},
- #line 19 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str136, ei_ascii},
--#line 59 "lib/aliases.gperf"
-+#line 60 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str137, ei_iso8859_1},
--#line 266 "lib/aliases.gperf"
-+#line 267 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str138, ei_jisx0212},
--#line 67 "lib/aliases.gperf"
-+#line 68 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str139, ei_iso8859_2},
-     {-1}, {-1},
--#line 145 "lib/aliases.gperf"
-+#line 146 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str142, ei_iso8859_14},
--#line 132 "lib/aliases.gperf"
-+#line 133 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str143, ei_iso8859_10},
-     {-1},
--#line 124 "lib/aliases.gperf"
-+#line 125 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str145, ei_iso8859_9},
--#line 54 "lib/aliases.gperf"
-+#line 55 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str146, ei_iso8859_1},
--#line 309 "lib/aliases.gperf"
-+#line 310 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str147, ei_iso2022_cn},
--#line 64 "lib/aliases.gperf"
-+#line 65 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str148, ei_iso8859_2},
--#line 116 "lib/aliases.gperf"
-+#line 117 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str149, ei_iso8859_8},
-     {-1},
--#line 176 "lib/aliases.gperf"
-+#line 177 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str151, ei_cp1254},
--#line 95 "lib/aliases.gperf"
-+#line 96 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str152, ei_iso8859_6},
-     {-1},
--#line 88 "lib/aliases.gperf"
-+#line 89 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str154, ei_iso8859_5},
--#line 146 "lib/aliases.gperf"
-+#line 147 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str155, ei_iso8859_14},
-     {-1},
--#line 66 "lib/aliases.gperf"
-+#line 67 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str157, ei_iso8859_2},
--#line 156 "lib/aliases.gperf"
-+#line 157 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str158, ei_iso8859_16},
--#line 302 "lib/aliases.gperf"
-+#line 303 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str159, ei_euc_cn},
--#line 151 "lib/aliases.gperf"
-+#line 152 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str160, ei_iso8859_15},
--#line 148 "lib/aliases.gperf"
-+#line 149 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str161, ei_iso8859_14},
--#line 121 "lib/aliases.gperf"
-+#line 122 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str162, ei_iso8859_9},
--#line 75 "lib/aliases.gperf"
-+#line 76 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str163, ei_iso8859_3},
--#line 114 "lib/aliases.gperf"
-+#line 115 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str164, ei_iso8859_8},
--#line 329 "lib/aliases.gperf"
-+#line 330 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str165, ei_cp949},
-     {-1}, {-1}, {-1},
--#line 135 "lib/aliases.gperf"
-+#line 136 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str169, ei_iso8859_10},
--#line 152 "lib/aliases.gperf"
-+#line 153 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str170, ei_iso8859_15},
--#line 204 "lib/aliases.gperf"
-+#line 205 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str171, ei_mac_roman},
--#line 72 "lib/aliases.gperf"
-+#line 73 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str172, ei_iso8859_3},
--#line 74 "lib/aliases.gperf"
-+#line 75 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str173, ei_iso8859_3},
--    {-1},
--#line 112 "lib/aliases.gperf"
-+#line 239 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str174, ei_viscii},
-+#line 113 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str175, ei_iso8859_7},
--#line 128 "lib/aliases.gperf"
-+#line 129 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str176, ei_iso8859_10},
- #line 22 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str177, ei_ascii},
--#line 137 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str178, ei_iso8859_13},
- #line 138 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str178, ei_iso8859_13},
-+#line 139 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str179, ei_iso8859_13},
-     {-1}, {-1},
--#line 103 "lib/aliases.gperf"
-+#line 104 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str182, ei_iso8859_7},
-     {-1},
--#line 153 "lib/aliases.gperf"
-+#line 154 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str184, ei_iso8859_15},
--    {-1}, {-1}, {-1}, {-1},
--#line 282 "lib/aliases.gperf"
-+    {-1},
-+#line 241 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str186, ei_viscii},
-+    {-1}, {-1},
-+#line 283 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str189, ei_ksc5601},
--#line 166 "lib/aliases.gperf"
-+#line 167 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str190, ei_cp1250},
--#line 123 "lib/aliases.gperf"
-+#line 124 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str191, ei_iso8859_9},
- #line 21 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str192, ei_ascii},
-     {-1},
--#line 236 "lib/aliases.gperf"
-+#line 237 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str194, ei_cp874},
--#line 86 "lib/aliases.gperf"
-+#line 87 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str195, ei_iso8859_4},
--#line 82 "lib/aliases.gperf"
-+#line 83 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str196, ei_iso8859_4},
--#line 130 "lib/aliases.gperf"
-+#line 131 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str197, ei_iso8859_10},
-     {-1},
--#line 157 "lib/aliases.gperf"
-+#line 158 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str199, ei_iso8859_16},
-     {-1},
--#line 149 "lib/aliases.gperf"
-+#line 150 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str201, ei_iso8859_14},
--#line 79 "lib/aliases.gperf"
-+#line 80 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str202, ei_iso8859_4},
--#line 195 "lib/aliases.gperf"
-+#line 196 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str203, ei_cp862},
-     {-1}, {-1},
--#line 270 "lib/aliases.gperf"
-+#line 271 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str206, ei_iso646_cn},
--#line 199 "lib/aliases.gperf"
-+#line 200 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str207, ei_cp866},
--#line 142 "lib/aliases.gperf"
-+#line 143 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str208, ei_iso8859_14},
--#line 97 "lib/aliases.gperf"
-+#line 98 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str209, ei_iso8859_6},
--#line 310 "lib/aliases.gperf"
-+#line 311 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str210, ei_iso2022_cn_ext},
--#line 259 "lib/aliases.gperf"
-+#line 260 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str211, ei_jisx0208},
--#line 131 "lib/aliases.gperf"
-+#line 132 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str212, ei_iso8859_10},
--#line 24 "lib/aliases.gperf"
-+#line 25 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str213, ei_ucs2},
--#line 58 "lib/aliases.gperf"
-+#line 59 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str214, ei_iso8859_1},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 144 "lib/aliases.gperf"
-+#line 145 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str221, ei_iso8859_14},
--#line 247 "lib/aliases.gperf"
-+#line 248 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str222, ei_iso646_jp},
-     {-1}, {-1},
--#line 108 "lib/aliases.gperf"
-+#line 109 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str225, ei_iso8859_7},
-     {-1},
--#line 139 "lib/aliases.gperf"
-+#line 140 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str227, ei_iso8859_13},
--#line 38 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str228, ei_utf16},
-+#line 242 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str228, ei_tcvn},
-     {-1},
--#line 129 "lib/aliases.gperf"
-+#line 130 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str230, ei_iso8859_10},
-     {-1},
--#line 26 "lib/aliases.gperf"
-+#line 27 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str232, ei_ucs2},
--#line 31 "lib/aliases.gperf"
-+#line 32 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str233, ei_ucs2le},
--#line 23 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str234, ei_utf8},
--#line 56 "lib/aliases.gperf"
-+    {-1},
-+#line 57 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str235, ei_iso8859_1},
--#line 104 "lib/aliases.gperf"
-+#line 105 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str236, ei_iso8859_7},
--#line 41 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str237, ei_utf32},
--#line 334 "lib/aliases.gperf"
-+    {-1},
-+#line 335 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str238, ei_local_char},
-     {-1}, {-1},
--#line 29 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str241, ei_ucs2be},
- #line 30 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str241, ei_ucs2be},
-+#line 31 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str242, ei_ucs2be},
-     {-1},
--#line 230 "lib/aliases.gperf"
-+#line 231 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str244, ei_tis620},
--#line 326 "lib/aliases.gperf"
-+#line 327 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str245, ei_euc_kr},
--#line 40 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str246, ei_utf16le},
--#line 83 "lib/aliases.gperf"
-+    {-1},
-+#line 84 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str247, ei_iso8859_4},
-     {-1}, {-1},
--#line 279 "lib/aliases.gperf"
-+#line 280 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str250, ei_ksc5601},
--#line 229 "lib/aliases.gperf"
-+#line 230 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str251, ei_tis620},
--#line 325 "lib/aliases.gperf"
-+#line 326 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str252, ei_euc_kr},
-     {-1},
--#line 228 "lib/aliases.gperf"
-+#line 229 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str254, ei_cp1133},
-     {-1},
--#line 80 "lib/aliases.gperf"
-+#line 81 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str256, ei_iso8859_4},
--#line 43 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str257, ei_utf32le},
--#line 238 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str258, ei_viscii},
--#line 160 "lib/aliases.gperf"
-+    {-1}, {-1},
-+#line 161 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str259, ei_koi8_r},
-     {-1}, {-1},
--#line 143 "lib/aliases.gperf"
-+#line 144 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str262, ei_iso8859_14},
-     {-1},
--#line 161 "lib/aliases.gperf"
-+#line 162 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str264, ei_koi8_r},
-     {-1},
--#line 109 "lib/aliases.gperf"
-+#line 110 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str266, ei_iso8859_7},
--#line 169 "lib/aliases.gperf"
-+#line 170 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str267, ei_cp1251},
--    {-1}, {-1},
--#line 240 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str270, ei_viscii},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 191 "lib/aliases.gperf"
-+    {-1}, {-1}, {-1},
-+#line 192 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str280, ei_cp850},
-     {-1}, {-1},
--#line 90 "lib/aliases.gperf"
-+#line 91 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str283, ei_iso8859_5},
-     {-1}, {-1},
--#line 316 "lib/aliases.gperf"
-+#line 317 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str286, ei_ces_big5},
--#line 37 "lib/aliases.gperf"
-+#line 38 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str287, ei_ucs4le},
--#line 307 "lib/aliases.gperf"
-+#line 308 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str288, ei_gb18030},
-     {-1},
--#line 210 "lib/aliases.gperf"
-+#line 211 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str290, ei_mac_cyrillic},
--#line 46 "lib/aliases.gperf"
-+#line 47 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str291, ei_utf7},
--#line 45 "lib/aliases.gperf"
-+#line 46 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str292, ei_utf7},
--#line 317 "lib/aliases.gperf"
-+#line 318 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str293, ei_ces_big5},
-     {-1},
- #line 20 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str295, ei_ascii},
--#line 231 "lib/aliases.gperf"
-+#line 232 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str296, ei_tis620},
-     {-1},
--#line 321 "lib/aliases.gperf"
-+#line 322 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str298, ei_ces_big5},
--#line 221 "lib/aliases.gperf"
-+#line 222 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str299, ei_nextstep},
-     {-1},
--#line 283 "lib/aliases.gperf"
-+#line 284 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str301, ei_ksc5601},
--#line 61 "lib/aliases.gperf"
-+#line 62 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str302, ei_iso8859_1},
--#line 284 "lib/aliases.gperf"
-+#line 285 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str303, ei_ksc5601},
--#line 69 "lib/aliases.gperf"
-+#line 70 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str304, ei_iso8859_2},
--#line 320 "lib/aliases.gperf"
-+#line 321 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str305, ei_ces_big5},
--#line 44 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str306, ei_utf7},
-     {-1},
--#line 134 "lib/aliases.gperf"
-+#line 243 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str307, ei_tcvn},
-+#line 135 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str308, ei_iso8859_10},
--#line 92 "lib/aliases.gperf"
-+#line 93 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str309, ei_iso8859_5},
--#line 126 "lib/aliases.gperf"
-+#line 127 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str310, ei_iso8859_9},
-     {-1},
--#line 241 "lib/aliases.gperf"
-+#line 244 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str312, ei_tcvn},
--    {-1}, {-1},
--#line 232 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str315, ei_tis620},
--    {-1}, {-1},
--#line 304 "lib/aliases.gperf"
-+    {-1}, {-1}, {-1}, {-1}, {-1},
-+#line 305 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str318, ei_euc_cn},
-     {-1},
--#line 25 "lib/aliases.gperf"
-+#line 26 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str320, ei_ucs2},
--#line 33 "lib/aliases.gperf"
-+#line 34 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str321, ei_ucs4},
--#line 226 "lib/aliases.gperf"
-+#line 227 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str322, ei_mulelao},
--#line 332 "lib/aliases.gperf"
-+#line 333 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str323, ei_iso2022_kr},
--#line 107 "lib/aliases.gperf"
-+#line 108 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str324, ei_iso8859_7},
--#line 273 "lib/aliases.gperf"
-+#line 274 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str325, ei_gb2312},
--#line 35 "lib/aliases.gperf"
-+#line 36 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str326, ei_ucs4},
--#line 305 "lib/aliases.gperf"
-+#line 306 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str327, ei_ces_gbk},
--#line 77 "lib/aliases.gperf"
-+#line 78 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str328, ei_iso8859_3},
- #line 14 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str329, ei_ascii},
-     {-1},
- #line 12 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str331, ei_ascii},
--#line 234 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str332, ei_tis620},
--#line 225 "lib/aliases.gperf"
-+    {-1},
-+#line 226 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str333, ei_koi8_t},
--#line 172 "lib/aliases.gperf"
-+#line 173 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str334, ei_cp1252},
--#line 281 "lib/aliases.gperf"
-+#line 282 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str335, ei_ksc5601},
--#line 268 "lib/aliases.gperf"
-+#line 269 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str336, ei_iso646_cn},
-     {-1}, {-1},
--#line 314 "lib/aliases.gperf"
-+#line 315 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str339, ei_euc_tw},
--    {-1}, {-1}, {-1},
--#line 110 "lib/aliases.gperf"
-+    {-1}, {-1},
-+#line 240 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str342, ei_viscii},
-+#line 111 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str343, ei_iso8859_7},
-     {-1}, {-1},
--#line 313 "lib/aliases.gperf"
-+#line 314 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str346, ei_euc_tw},
--#line 168 "lib/aliases.gperf"
-+#line 169 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str347, ei_cp1251},
--#line 171 "lib/aliases.gperf"
-+#line 172 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str348, ei_cp1252},
--#line 248 "lib/aliases.gperf"
-+#line 249 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str349, ei_iso646_jp},
--#line 183 "lib/aliases.gperf"
-+#line 184 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str350, ei_cp1256},
--#line 180 "lib/aliases.gperf"
-+#line 181 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str351, ei_cp1255},
--    {-1},
--#line 239 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str353, ei_viscii},
--#line 333 "lib/aliases.gperf"
-+    {-1}, {-1},
-+#line 334 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str354, ei_iso2022_kr},
-     {-1},
--#line 189 "lib/aliases.gperf"
-+#line 190 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str356, ei_cp1258},
-     {-1}, {-1}, {-1},
--#line 174 "lib/aliases.gperf"
-+#line 175 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str360, ei_cp1253},
--#line 222 "lib/aliases.gperf"
-+#line 223 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str361, ei_armscii_8},
-     {-1}, {-1}, {-1}, {-1},
--#line 201 "lib/aliases.gperf"
-+#line 202 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str366, ei_cp866},
-     {-1},
--#line 218 "lib/aliases.gperf"
-+#line 219 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str368, ei_hp_roman8},
--#line 312 "lib/aliases.gperf"
-+#line 313 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str369, ei_hz},
--#line 286 "lib/aliases.gperf"
-+#line 287 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str370, ei_euc_jp},
--#line 233 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str371, ei_tis620},
--#line 280 "lib/aliases.gperf"
-+    {-1},
-+#line 281 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str372, ei_ksc5601},
--#line 207 "lib/aliases.gperf"
-+#line 208 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str373, ei_mac_iceland},
--#line 34 "lib/aliases.gperf"
-+#line 35 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str374, ei_ucs4},
--#line 27 "lib/aliases.gperf"
-+#line 28 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str375, ei_ucs2be},
-     {-1},
--#line 285 "lib/aliases.gperf"
-+#line 286 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str377, ei_euc_jp},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 165 "lib/aliases.gperf"
-+#line 166 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str386, ei_cp1250},
--#line 100 "lib/aliases.gperf"
-+#line 101 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str387, ei_iso8859_6},
-+#line 233 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str388, ei_tis620},
-+    {-1},
- #line 39 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str388, ei_utf16be},
--    {-1}, {-1},
--#line 242 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str391, ei_tcvn},
--#line 186 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str390, ei_utf16},
-+    {-1},
-+#line 187 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str392, ei_cp1257},
-     {-1},
--#line 197 "lib/aliases.gperf"
-+#line 198 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str394, ei_cp862},
-     {-1},
--#line 243 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str396, ei_tcvn},
-+#line 23 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str396, ei_utf8},
-     {-1}, {-1},
- #line 42 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str399, ei_utf32be},
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str399, ei_utf32},
-     {-1}, {-1},
--#line 177 "lib/aliases.gperf"
-+#line 178 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str402, ei_cp1254},
-     {-1},
--#line 327 "lib/aliases.gperf"
-+#line 328 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str404, ei_euc_kr},
--    {-1},
--#line 99 "lib/aliases.gperf"
-+#line 235 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str405, ei_tis620},
-+#line 100 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str406, ei_iso8859_6},
--    {-1}, {-1},
--#line 101 "lib/aliases.gperf"
-+    {-1},
-+#line 41 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str408, ei_utf16le},
-+#line 102 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str409, ei_iso8859_6},
--#line 203 "lib/aliases.gperf"
-+#line 204 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str410, ei_mac_roman},
--#line 47 "lib/aliases.gperf"
-+#line 48 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str411, ei_ucs2internal},
--#line 85 "lib/aliases.gperf"
-+#line 86 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str412, ei_iso8859_4},
-     {-1}, {-1}, {-1},
--#line 98 "lib/aliases.gperf"
-+#line 99 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str416, ei_iso8859_6},
-     {-1},
--#line 278 "lib/aliases.gperf"
-+#line 279 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str418, ei_isoir165},
-+#line 44 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str419, ei_utf32le},
-     {-1},
--#line 18 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str420, ei_ascii},
--#line 272 "lib/aliases.gperf"
-+#line 273 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str421, ei_iso646_cn},
-     {-1},
--#line 275 "lib/aliases.gperf"
-+#line 276 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str423, ei_gb2312},
--#line 217 "lib/aliases.gperf"
-+#line 218 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str424, ei_hp_roman8},
--    {-1},
--#line 17 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str426, ei_ascii},
--#line 216 "lib/aliases.gperf"
-+    {-1}, {-1},
-+#line 217 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str427, ei_mac_thai},
-     {-1},
--#line 36 "lib/aliases.gperf"
-+#line 37 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str429, ei_ucs4be},
--#line 220 "lib/aliases.gperf"
-+#line 221 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str430, ei_hp_roman8},
-     {-1},
--#line 303 "lib/aliases.gperf"
-+#line 304 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str432, ei_euc_cn},
-     {-1},
--#line 32 "lib/aliases.gperf"
-+#line 33 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str434, ei_ucs2le},
--#line 89 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str435, ei_iso8859_5},
--    {-1}, {-1},
--#line 122 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str438, ei_iso8859_9},
--    {-1},
--#line 115 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str440, ei_iso8859_8},
--#line 162 "lib/aliases.gperf"
-+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-+#line 163 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str441, ei_koi8_u},
-     {-1}, {-1},
--#line 73 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str444, ei_iso8859_3},
-+#line 234 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str444, ei_tis620},
-     {-1}, {-1}, {-1},
--#line 295 "lib/aliases.gperf"
-+#line 296 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str448, ei_iso2022_jp},
--#line 297 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str449, ei_iso2022_jp1},
- #line 298 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str449, ei_iso2022_jp1},
-+#line 299 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str450, ei_iso2022_jp2},
--#line 118 "lib/aliases.gperf"
-+#line 119 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str451, ei_iso8859_8},
-     {-1}, {-1},
--#line 246 "lib/aliases.gperf"
-+#line 247 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str454, ei_iso646_jp},
--    {-1}, {-1},
--#line 287 "lib/aliases.gperf"
-+#line 90 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str455, ei_iso8859_5},
-+    {-1},
-+#line 288 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str457, ei_euc_jp},
--    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 49 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str465, ei_ucs4internal},
-+#line 123 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str458, ei_iso8859_9},
-     {-1},
--#line 55 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str467, ei_iso8859_1},
--#line 65 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str468, ei_iso8859_2},
-+#line 116 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str460, ei_iso8859_8},
-+    {-1}, {-1}, {-1},
-+#line 74 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str464, ei_iso8859_3},
-+#line 50 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str465, ei_ucs4internal},
-+    {-1}, {-1},
-+#line 45 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str468, ei_utf7},
-+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1},
--#line 96 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str470, ei_iso8859_6},
--    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 296 "lib/aliases.gperf"
-+#line 297 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str479, ei_iso2022_jp},
--#line 299 "lib/aliases.gperf"
-+#line 300 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str480, ei_iso2022_jp2},
--    {-1}, {-1}, {-1}, {-1}, {-1},
--#line 81 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str486, ei_iso8859_4},
--    {-1}, {-1},
--#line 206 "lib/aliases.gperf"
-+    {-1}, {-1}, {-1}, {-1},
-+#line 15 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str485, ei_ascii},
-+    {-1},
-+#line 56 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str487, ei_iso8859_1},
-+#line 66 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str488, ei_iso8859_2},
-+#line 207 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str489, ei_mac_centraleurope},
--    {-1}, {-1},
--#line 117 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str492, ei_iso8859_8},
-+#line 97 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str490, ei_iso8859_6},
-     {-1},
--#line 181 "lib/aliases.gperf"
-+#line 118 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str492, ei_iso8859_8},
-+#line 18 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str493, ei_ascii},
-+#line 182 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str494, ei_cp1255},
--    {-1},
--#line 15 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str496, ei_ascii},
--    {-1},
--#line 315 "lib/aliases.gperf"
-+    {-1}, {-1}, {-1},
-+#line 316 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str498, ei_euc_tw},
--    {-1}, {-1}, {-1}, {-1},
--#line 163 "lib/aliases.gperf"
-+#line 17 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str499, ei_ascii},
-+    {-1}, {-1}, {-1},
-+#line 164 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str503, ei_koi8_ru},
-     {-1},
--#line 237 "lib/aliases.gperf"
-+#line 238 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str505, ei_cp874},
--    {-1}, {-1},
--#line 257 "lib/aliases.gperf"
-+#line 82 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str506, ei_iso8859_4},
-+    {-1},
-+#line 258 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str508, ei_jisx0208},
--#line 224 "lib/aliases.gperf"
-+#line 225 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str509, ei_georgian_ps},
--    {-1}, {-1},
--#line 105 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str512, ei_iso8859_7},
--    {-1},
--#line 111 "lib/aliases.gperf"
-+    {-1}, {-1}, {-1}, {-1},
-+#line 112 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str514, ei_iso8859_7},
--#line 260 "lib/aliases.gperf"
-+#line 261 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str515, ei_jisx0208},
-     {-1}, {-1},
--#line 202 "lib/aliases.gperf"
-+#line 203 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str518, ei_mac_roman},
--#line 48 "lib/aliases.gperf"
-+#line 49 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str519, ei_ucs2swapped},
-     {-1}, {-1}, {-1}, {-1},
--#line 205 "lib/aliases.gperf"
-+#line 206 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str524, ei_mac_roman},
--    {-1}, {-1},
--#line 319 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str527, ei_ces_big5},
--#line 267 "lib/aliases.gperf"
-+    {-1}, {-1}, {-1},
-+#line 268 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str528, ei_jisx0212},
--#line 249 "lib/aliases.gperf"
-+#line 250 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str529, ei_iso646_jp},
--#line 193 "lib/aliases.gperf"
-+#line 194 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str530, ei_cp850},
--    {-1}, {-1}, {-1},
--#line 318 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str534, ei_ces_big5},
--    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 245 "lib/aliases.gperf"
-+    {-1},
-+#line 106 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str532, ei_iso8859_7},
-+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-+#line 246 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str541, ei_iso646_jp},
-     {-1}, {-1}, {-1},
--#line 262 "lib/aliases.gperf"
-+#line 263 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str545, ei_jisx0212},
-     {-1}, {-1}, {-1},
--#line 324 "lib/aliases.gperf"
-+#line 325 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str549, ei_big5hkscs},
--    {-1}, {-1}, {-1},
--#line 251 "lib/aliases.gperf"
-+#line 40 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str550, ei_utf16be},
-+    {-1}, {-1},
-+#line 252 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str553, ei_jisx0201},
--#line 223 "lib/aliases.gperf"
-+#line 224 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str554, ei_georgian_academy},
-     {-1},
--#line 323 "lib/aliases.gperf"
-+#line 324 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str556, ei_big5hkscs},
-     {-1}, {-1}, {-1},
--#line 261 "lib/aliases.gperf"
-+#line 262 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str560, ei_jisx0208},
--    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 212 "lib/aliases.gperf"
-+#line 43 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str561, ei_utf32be},
-+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-+#line 213 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str570, ei_mac_greek},
--#line 175 "lib/aliases.gperf"
-+#line 176 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str571, ei_cp1253},
-     {-1},
--#line 50 "lib/aliases.gperf"
-+#line 51 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str573, ei_ucs4swapped},
-     {-1}, {-1}, {-1}, {-1},
--#line 208 "lib/aliases.gperf"
-+#line 209 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str578, ei_mac_croatian},
-     {-1}, {-1}, {-1},
--#line 250 "lib/aliases.gperf"
-+#line 251 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str582, ei_jisx0201},
-     {-1}, {-1},
--#line 335 "lib/aliases.gperf"
-+#line 336 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str585, ei_local_wchar_t},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 28 "lib/aliases.gperf"
-+#line 29 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str594, ei_ucs2be},
-     {-1}, {-1}, {-1}, {-1},
--#line 264 "lib/aliases.gperf"
-+#line 265 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str599, ei_jisx0212},
--#line 254 "lib/aliases.gperf"
-+#line 255 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str600, ei_jisx0208},
--    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1}, {-1}, {-1}, {-1},
--#line 215 "lib/aliases.gperf"
-+#line 320 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str605, ei_ces_big5},
-+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-+#line 319 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str612, ei_ces_big5},
-+    {-1},
-+#line 216 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str614, ei_mac_arabic},
--    {-1}, {-1}, {-1}, {-1},
--#line 253 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str619, ei_jisx0201},
--#line 255 "lib/aliases.gperf"
-+    {-1}, {-1}, {-1}, {-1}, {-1},
-+#line 256 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str620, ei_jisx0208},
--#line 290 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str621, ei_sjis},
-+#line 245 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str621, ei_tcvn},
-     {-1}, {-1}, {-1}, {-1},
--#line 211 "lib/aliases.gperf"
-+#line 212 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str626, ei_mac_ukraine},
--    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 288 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str635, ei_euc_jp},
-+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1},
--#line 256 "lib/aliases.gperf"
-+#line 257 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str646, ei_jisx0208},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 293 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str663, ei_sjis},
--#line 263 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str664, ei_jisx0212},
--#line 214 "lib/aliases.gperf"
-+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-+#line 215 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str665, ei_mac_hebrew},
-+    {-1},
-+#line 24 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str667, ei_utf8mac},
-+    {-1},
-+#line 53 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str669, ei_java},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 289 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str675, ei_sjis},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 244 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str685, ei_tcvn},
--    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 178 "lib/aliases.gperf"
-+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-+#line 179 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str694, ei_cp1254},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1}, {-1}, {-1}, {-1},
--#line 213 "lib/aliases.gperf"
-+#line 214 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str717, ei_mac_turkish},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1}, {-1}, {-1}, {-1},
--#line 209 "lib/aliases.gperf"
-+#line 210 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str731, ei_mac_romania},
-+    {-1}, {-1}, {-1}, {-1}, {-1},
-+#line 264 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str737, ei_jisx0212},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 184 "lib/aliases.gperf"
-+    {-1}, {-1}, {-1},
-+#line 185 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str750, ei_cp1256},
--    {-1}, {-1},
--#line 52 "lib/aliases.gperf"
--    {(int)(long)&((struct stringpool_t *)0)->stringpool_str753, ei_java},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-+    {-1}, {-1}, {-1},
-+#line 254 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str781, ei_jisx0201},
-+    {-1},
-+#line 291 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str783, ei_sjis},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 292 "lib/aliases.gperf"
-+    {-1}, {-1}, {-1}, {-1},
-+#line 289 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str797, ei_euc_jp},
-+#line 293 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str798, ei_sjis},
--#line 330 "lib/aliases.gperf"
-+#line 331 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str799, ei_johab},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-+    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-+#line 294 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str825, ei_sjis},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-+    {-1}, {-1},
-+#line 290 "lib/aliases.gperf"
-+    {(int)(long)&((struct stringpool_t *)0)->stringpool_str837, ei_sjis},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-     {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--    {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
--#line 187 "lib/aliases.gperf"
-+    {-1}, {-1}, {-1}, {-1}, {-1},
-+#line 188 "lib/aliases.gperf"
-     {(int)(long)&((struct stringpool_t *)0)->stringpool_str879, ei_cp1257}
-   };
-diff -Naur libiconv.old/lib/converters.h libiconv/lib/converters.h
---- libiconv.old/lib/converters.h      2002-05-29 16:06:52.000000000 +0200
-+++ libiconv/lib/converters.h  2005-08-04 18:54:52.000000000 +0200
-@@ -109,6 +109,7 @@
- /* General multi-byte encodings */
- #include "utf8.h"
- #include "ucs2.h"
-+#include "utf8mac.h"
- #include "ucs2be.h"
- #include "ucs2le.h"
- #include "ucs4.h"
-diff -Naur libiconv.old/lib/encodings.def libiconv/lib/encodings.def
---- libiconv.old/lib/encodings.def     2003-04-24 12:48:06.000000000 +0200
-+++ libiconv/lib/encodings.def 2005-08-04 18:54:43.000000000 +0200
-@@ -60,6 +60,13 @@
-             utf8,
-             { utf8_mbtowc, NULL },        { utf8_wctomb, NULL })
-+DEFENCODING(( "UTF-8-MAC",               /* utf8-nfd */
-+            "UTF8-MAC",                /* label from samba 2.2jp */
-+            ),
-+            utf8mac,
-+            { utf8mac_mbtowc, NULL },     { utf8mac_wctomb, NULL })
-+
-+
- DEFENCODING(( "UCS-2",                  /* glibc */
-               "ISO-10646-UCS-2",        /* IANA */
-               "csUnicode",              /* IANA */
-diff -Naur libiconv.old/lib/flags.h libiconv/lib/flags.h
---- libiconv.old/lib/flags.h   2003-05-06 11:18:02.000000000 +0200
-+++ libiconv/lib/flags.h       2005-08-04 18:54:43.000000000 +0200
-@@ -14,6 +14,7 @@
- #define ei_ascii_oflags (0)
- #define ei_utf8_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
-+#define ei_utf8mac_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
- #define ei_ucs2_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
- #define ei_ucs2be_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
- #define ei_ucs2le_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
-diff -Naur libiconv.old/lib/utf8mac.h libiconv/lib/utf8mac.h
---- libiconv.old/lib/utf8mac.h 1970-01-01 01:00:00.000000000 +0100
-+++ libiconv/lib/utf8mac.h     2005-08-04 18:54:43.000000000 +0200
-@@ -0,0 +1,1595 @@
-+/*
-+ * Copyright (C) 2003 Apple Computer, Inc. All rights reserved.
-+ *
-+ * This file is part of the GNU LIBICONV Library.
-+ *
-+ * The GNU LIBICONV Library is free software; you can redistribute it
-+ * and/or modify it under the terms of the GNU Library General Public
-+ * License as published by the Free Software Foundation; either version 2
-+ * of the License, or (at your option) any later version.
-+ *
-+ * The GNU LIBICONV Library is distributed in the hope that it will be
-+ * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Library General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Library General Public
-+ * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
-+ * If not, write to the Free Software Foundation, Inc., 59 Temple Place -
-+ * Suite 330, Boston, MA 02111-1307, USA.
-+ */
-+
-+/*
-+ * UTF-8-MAC
-+ */
-+
-+ /*
-+      Includes Unicode 3.2 decomposition code derived from Core Foundation
-+ */
-+
-+#include <inttypes.h>
-+
-+#define       UTF_REVERSE_ENDIAN      0x01    /* reverse UCS-2 byte order */
-+#define       UTF_NO_NULL_TERM        0x02    /* do not add null termination */
-+#define       UTF_DECOMPOSED          0x04    /* generate fully decomposed UCS-2 */
-+#define       UTF_PRECOMPOSED         0x08    /* generate precomposed UCS-2 */
-+
-+int   utf8_encodestr (const u_int16_t *, size_t, u_int8_t *, size_t *,
-+              size_t, u_int16_t, int);
-+
-+int   utf8_decodestr (const u_int8_t *, size_t, u_int16_t *,size_t *,
-+              size_t, u_int16_t, int, size_t *);
-+
-+/*
-+      Derived from Core Foundation headers:
-+
-+              CFUniCharDecompData.h
-+              CFUniCharPrecompData.h
-+              CFUniCharNonBaseData.h
-+*/
-+
-+static const u_int16_t
-+__CFUniCharDecompositionTable[] = {
-+      0x00C0, 0x2000,   0x00C1, 0x2002,   0x00C2, 0x2004,   0x00C3, 0x2006,
-+      0x00C4, 0x2008,   0x00C5, 0x200A,   0x00C7, 0x200C,   0x00C8, 0x200E,
-+      0x00C9, 0x2010,   0x00CA, 0x2012,   0x00CB, 0x2014,   0x00CC, 0x2016,
-+      0x00CD, 0x2018,   0x00CE, 0x201A,   0x00CF, 0x201C,   0x00D1, 0x201E,
-+      0x00D2, 0x2020,   0x00D3, 0x2022,   0x00D4, 0x2024,   0x00D5, 0x2026,
-+      0x00D6, 0x2028,   0x00D9, 0x202A,   0x00DA, 0x202C,   0x00DB, 0x202E,
-+      0x00DC, 0x2030,   0x00DD, 0x2032,   0x00E0, 0x2034,   0x00E1, 0x2036,
-+      0x00E2, 0x2038,   0x00E3, 0x203A,   0x00E4, 0x203C,   0x00E5, 0x203E,
-+      0x00E7, 0x2040,   0x00E8, 0x2042,   0x00E9, 0x2044,   0x00EA, 0x2046,
-+      0x00EB, 0x2048,   0x00EC, 0x204A,   0x00ED, 0x204C,   0x00EE, 0x204E,
-+      0x00EF, 0x2050,   0x00F1, 0x2052,   0x00F2, 0x2054,   0x00F3, 0x2056,
-+      0x00F4, 0x2058,   0x00F5, 0x205A,   0x00F6, 0x205C,   0x00F9, 0x205E,
-+      0x00FA, 0x2060,   0x00FB, 0x2062,   0x00FC, 0x2064,   0x00FD, 0x2066,
-+      0x00FF, 0x2068,   0x0100, 0x206A,   0x0101, 0x206C,   0x0102, 0x206E,
-+      0x0103, 0x2070,   0x0104, 0x2072,   0x0105, 0x2074,   0x0106, 0x2076,
-+      0x0107, 0x2078,   0x0108, 0x207A,   0x0109, 0x207C,   0x010A, 0x207E,
-+      0x010B, 0x2080,   0x010C, 0x2082,   0x010D, 0x2084,   0x010E, 0x2086,
-+      0x010F, 0x2088,   0x0112, 0x208A,   0x0113, 0x208C,   0x0114, 0x208E,
-+      0x0115, 0x2090,   0x0116, 0x2092,   0x0117, 0x2094,   0x0118, 0x2096,
-+      0x0119, 0x2098,   0x011A, 0x209A,   0x011B, 0x209C,   0x011C, 0x209E,
-+      0x011D, 0x20A0,   0x011E, 0x20A2,   0x011F, 0x20A4,   0x0120, 0x20A6,
-+      0x0121, 0x20A8,   0x0122, 0x20AA,   0x0123, 0x20AC,   0x0124, 0x20AE,
-+      0x0125, 0x20B0,   0x0128, 0x20B2,   0x0129, 0x20B4,   0x012A, 0x20B6,
-+      0x012B, 0x20B8,   0x012C, 0x20BA,   0x012D, 0x20BC,   0x012E, 0x20BE,
-+      0x012F, 0x20C0,   0x0130, 0x20C2,   0x0134, 0x20C4,   0x0135, 0x20C6,
-+      0x0136, 0x20C8,   0x0137, 0x20CA,   0x0139, 0x20CC,   0x013A, 0x20CE,
-+      0x013B, 0x20D0,   0x013C, 0x20D2,   0x013D, 0x20D4,   0x013E, 0x20D6,
-+      0x0143, 0x20D8,   0x0144, 0x20DA,   0x0145, 0x20DC,   0x0146, 0x20DE,
-+      0x0147, 0x20E0,   0x0148, 0x20E2,   0x014C, 0x20E4,   0x014D, 0x20E6,
-+      0x014E, 0x20E8,   0x014F, 0x20EA,   0x0150, 0x20EC,   0x0151, 0x20EE,
-+      0x0154, 0x20F0,   0x0155, 0x20F2,   0x0156, 0x20F4,   0x0157, 0x20F6,
-+      0x0158, 0x20F8,   0x0159, 0x20FA,   0x015A, 0x20FC,   0x015B, 0x20FE,
-+      0x015C, 0x2100,   0x015D, 0x2102,   0x015E, 0x2104,   0x015F, 0x2106,
-+      0x0160, 0x2108,   0x0161, 0x210A,   0x0162, 0x210C,   0x0163, 0x210E,
-+      0x0164, 0x2110,   0x0165, 0x2112,   0x0168, 0x2114,   0x0169, 0x2116,
-+      0x016A, 0x2118,   0x016B, 0x211A,   0x016C, 0x211C,   0x016D, 0x211E,
-+      0x016E, 0x2120,   0x016F, 0x2122,   0x0170, 0x2124,   0x0171, 0x2126,
-+      0x0172, 0x2128,   0x0173, 0x212A,   0x0174, 0x212C,   0x0175, 0x212E,
-+      0x0176, 0x2130,   0x0177, 0x2132,   0x0178, 0x2134,   0x0179, 0x2136,
-+      0x017A, 0x2138,   0x017B, 0x213A,   0x017C, 0x213C,   0x017D, 0x213E,
-+      0x017E, 0x2140,   0x01A0, 0x2142,   0x01A1, 0x2144,   0x01AF, 0x2146,
-+      0x01B0, 0x2148,   0x01CD, 0x214A,   0x01CE, 0x214C,   0x01CF, 0x214E,
-+      0x01D0, 0x2150,   0x01D1, 0x2152,   0x01D2, 0x2154,   0x01D3, 0x2156,
-+      0x01D4, 0x2158,   0x01D5, 0xA15A,   0x01D6, 0xA15C,   0x01D7, 0xA15E,
-+      0x01D8, 0xA160,   0x01D9, 0xA162,   0x01DA, 0xA164,   0x01DB, 0xA166,
-+      0x01DC, 0xA168,   0x01DE, 0xA16A,   0x01DF, 0xA16C,   0x01E0, 0xA16E,
-+      0x01E1, 0xA170,   0x01E2, 0x2172,   0x01E3, 0x2174,   0x01E6, 0x2176,
-+      0x01E7, 0x2178,   0x01E8, 0x217A,   0x01E9, 0x217C,   0x01EA, 0x217E,
-+      0x01EB, 0x2180,   0x01EC, 0xA182,   0x01ED, 0xA184,   0x01EE, 0x2186,
-+      0x01EF, 0x2188,   0x01F0, 0x218A,   0x01F4, 0x218C,   0x01F5, 0x218E,
-+      0x01F8, 0x2190,   0x01F9, 0x2192,   0x01FA, 0xA194,   0x01FB, 0xA196,
-+      0x01FC, 0x2198,   0x01FD, 0x219A,   0x01FE, 0x219C,   0x01FF, 0x219E,
-+      0x0200, 0x21A0,   0x0201, 0x21A2,   0x0202, 0x21A4,   0x0203, 0x21A6,
-+      0x0204, 0x21A8,   0x0205, 0x21AA,   0x0206, 0x21AC,   0x0207, 0x21AE,
-+      0x0208, 0x21B0,   0x0209, 0x21B2,   0x020A, 0x21B4,   0x020B, 0x21B6,
-+      0x020C, 0x21B8,   0x020D, 0x21BA,   0x020E, 0x21BC,   0x020F, 0x21BE,
-+      0x0210, 0x21C0,   0x0211, 0x21C2,   0x0212, 0x21C4,   0x0213, 0x21C6,
-+      0x0214, 0x21C8,   0x0215, 0x21CA,   0x0216, 0x21CC,   0x0217, 0x21CE,
-+      0x0218, 0x21D0,   0x0219, 0x21D2,   0x021A, 0x21D4,   0x021B, 0x21D6,
-+      0x021E, 0x21D8,   0x021F, 0x21DA,   0x0226, 0x21DC,   0x0227, 0x21DE,
-+      0x0228, 0x21E0,   0x0229, 0x21E2,   0x022A, 0xA1E4,   0x022B, 0xA1E6,
-+      0x022C, 0xA1E8,   0x022D, 0xA1EA,   0x022E, 0x21EC,   0x022F, 0x21EE,
-+      0x0230, 0xA1F0,   0x0231, 0xA1F2,   0x0232, 0x21F4,   0x0233, 0x21F6,
-+      0x0340, 0x1300,   0x0341, 0x1301,   0x0343, 0x1313,   0x0344, 0x21F8,
-+      0x0374, 0x12B9,   0x037E, 0x103B,   0x0385, 0x21FA,   0x0386, 0x21FC,
-+      0x0387, 0x10B7,   0x0388, 0x21FE,   0x0389, 0x2200,   0x038A, 0x2202,
-+      0x038C, 0x2204,   0x038E, 0x2206,   0x038F, 0x2208,   0x0390, 0xA20A,
-+      0x03AA, 0x220C,   0x03AB, 0x220E,   0x03AC, 0x2210,   0x03AD, 0x2212,
-+      0x03AE, 0x2214,   0x03AF, 0x2216,   0x03B0, 0xA218,   0x03CA, 0x221A,
-+      0x03CB, 0x221C,   0x03CC, 0x221E,   0x03CD, 0x2220,   0x03CE, 0x2222,
-+      0x03D3, 0x2224,   0x03D4, 0x2226,   0x0400, 0x2228,   0x0401, 0x222A,
-+      0x0403, 0x222C,   0x0407, 0x222E,   0x040C, 0x2230,   0x040D, 0x2232,
-+      0x040E, 0x2234,   0x0419, 0x2236,   0x0439, 0x2238,   0x0450, 0x223A,
-+      0x0451, 0x223C,   0x0453, 0x223E,   0x0457, 0x2240,   0x045C, 0x2242,
-+      0x045D, 0x2244,   0x045E, 0x2246,   0x0476, 0x2248,   0x0477, 0x224A,
-+      0x04C1, 0x224C,   0x04C2, 0x224E,   0x04D0, 0x2250,   0x04D1, 0x2252,
-+      0x04D2, 0x2254,   0x04D3, 0x2256,   0x04D6, 0x2258,   0x04D7, 0x225A,
-+      0x04DA, 0x225C,   0x04DB, 0x225E,   0x04DC, 0x2260,   0x04DD, 0x2262,
-+      0x04DE, 0x2264,   0x04DF, 0x2266,   0x04E2, 0x2268,   0x04E3, 0x226A,
-+      0x04E4, 0x226C,   0x04E5, 0x226E,   0x04E6, 0x2270,   0x04E7, 0x2272,
-+      0x04EA, 0x2274,   0x04EB, 0x2276,   0x04EC, 0x2278,   0x04ED, 0x227A,
-+      0x04EE, 0x227C,   0x04EF, 0x227E,   0x04F0, 0x2280,   0x04F1, 0x2282,
-+      0x04F2, 0x2284,   0x04F3, 0x2286,   0x04F4, 0x2288,   0x04F5, 0x228A,
-+      0x04F8, 0x228C,   0x04F9, 0x228E,   0x0622, 0x2290,   0x0623, 0x2292,
-+      0x0624, 0x2294,   0x0625, 0x2296,   0x0626, 0x2298,   0x06C0, 0x229A,
-+      0x06C2, 0x229C,   0x06D3, 0x229E,   0x0929, 0x22A0,   0x0931, 0x22A2,
-+      0x0934, 0x22A4,   0x0958, 0x22A6,   0x0959, 0x22A8,   0x095A, 0x22AA,
-+      0x095B, 0x22AC,   0x095C, 0x22AE,   0x095D, 0x22B0,   0x095E, 0x22B2,
-+      0x095F, 0x22B4,   0x09CB, 0x22B6,   0x09CC, 0x22B8,   0x09DC, 0x22BA,
-+      0x09DD, 0x22BC,   0x09DF, 0x22BE,   0x0A33, 0x22C0,   0x0A36, 0x22C2,
-+      0x0A59, 0x22C4,   0x0A5A, 0x22C6,   0x0A5B, 0x22C8,   0x0A5E, 0x22CA,
-+      0x0B48, 0x22CC,   0x0B4B, 0x22CE,   0x0B4C, 0x22D0,   0x0B5C, 0x22D2,
-+      0x0B5D, 0x22D4,   0x0B94, 0x22D6,   0x0BCA, 0x22D8,   0x0BCB, 0x22DA,
-+      0x0BCC, 0x22DC,   0x0C48, 0x22DE,   0x0CC0, 0x22E0,   0x0CC7, 0x22E2,
-+      0x0CC8, 0x22E4,   0x0CCA, 0x22E6,   0x0CCB, 0xA2E8,   0x0D4A, 0x22EA,
-+      0x0D4B, 0x22EC,   0x0D4C, 0x22EE,   0x0DDA, 0x22F0,   0x0DDC, 0x22F2,
-+      0x0DDD, 0xA2F4,   0x0DDE, 0x22F6,   0x0F43, 0x22F8,   0x0F4D, 0x22FA,
-+      0x0F52, 0x22FC,   0x0F57, 0x22FE,   0x0F5C, 0x2300,   0x0F69, 0x2302,
-+      0x0F73, 0x2304,   0x0F75, 0x2306,   0x0F76, 0x2308,   0x0F78, 0x230A,
-+      0x0F81, 0x230C,   0x0F93, 0x230E,   0x0F9D, 0x2310,   0x0FA2, 0x2312,
-+      0x0FA7, 0x2314,   0x0FAC, 0x2316,   0x0FB9, 0x2318,   0x1026, 0x231A,
-+      0x1E00, 0x231C,   0x1E01, 0x231E,   0x1E02, 0x2320,   0x1E03, 0x2322,
-+      0x1E04, 0x2324,   0x1E05, 0x2326,   0x1E06, 0x2328,   0x1E07, 0x232A,
-+      0x1E08, 0xA32C,   0x1E09, 0xA32E,   0x1E0A, 0x2330,   0x1E0B, 0x2332,
-+      0x1E0C, 0x2334,   0x1E0D, 0x2336,   0x1E0E, 0x2338,   0x1E0F, 0x233A,
-+      0x1E10, 0x233C,   0x1E11, 0x233E,   0x1E12, 0x2340,   0x1E13, 0x2342,
-+      0x1E14, 0xA344,   0x1E15, 0xA346,   0x1E16, 0xA348,   0x1E17, 0xA34A,
-+      0x1E18, 0x234C,   0x1E19, 0x234E,   0x1E1A, 0x2350,   0x1E1B, 0x2352,
-+      0x1E1C, 0xA354,   0x1E1D, 0xA356,   0x1E1E, 0x2358,   0x1E1F, 0x235A,
-+      0x1E20, 0x235C,   0x1E21, 0x235E,   0x1E22, 0x2360,   0x1E23, 0x2362,
-+      0x1E24, 0x2364,   0x1E25, 0x2366,   0x1E26, 0x2368,   0x1E27, 0x236A,
-+      0x1E28, 0x236C,   0x1E29, 0x236E,   0x1E2A, 0x2370,   0x1E2B, 0x2372,
-+      0x1E2C, 0x2374,   0x1E2D, 0x2376,   0x1E2E, 0xA378,   0x1E2F, 0xA37A,
-+      0x1E30, 0x237C,   0x1E31, 0x237E,   0x1E32, 0x2380,   0x1E33, 0x2382,
-+      0x1E34, 0x2384,   0x1E35, 0x2386,   0x1E36, 0x2388,   0x1E37, 0x238A,
-+      0x1E38, 0xA38C,   0x1E39, 0xA38E,   0x1E3A, 0x2390,   0x1E3B, 0x2392,
-+      0x1E3C, 0x2394,   0x1E3D, 0x2396,   0x1E3E, 0x2398,   0x1E3F, 0x239A,
-+      0x1E40, 0x239C,   0x1E41, 0x239E,   0x1E42, 0x23A0,   0x1E43, 0x23A2,
-+      0x1E44, 0x23A4,   0x1E45, 0x23A6,   0x1E46, 0x23A8,   0x1E47, 0x23AA,
-+      0x1E48, 0x23AC,   0x1E49, 0x23AE,   0x1E4A, 0x23B0,   0x1E4B, 0x23B2,
-+      0x1E4C, 0xA3B4,   0x1E4D, 0xA3B6,   0x1E4E, 0xA3B8,   0x1E4F, 0xA3BA,
-+      0x1E50, 0xA3BC,   0x1E51, 0xA3BE,   0x1E52, 0xA3C0,   0x1E53, 0xA3C2,
-+      0x1E54, 0x23C4,   0x1E55, 0x23C6,   0x1E56, 0x23C8,   0x1E57, 0x23CA,
-+      0x1E58, 0x23CC,   0x1E59, 0x23CE,   0x1E5A, 0x23D0,   0x1E5B, 0x23D2,
-+      0x1E5C, 0xA3D4,   0x1E5D, 0xA3D6,   0x1E5E, 0x23D8,   0x1E5F, 0x23DA,
-+      0x1E60, 0x23DC,   0x1E61, 0x23DE,   0x1E62, 0x23E0,   0x1E63, 0x23E2,
-+      0x1E64, 0xA3E4,   0x1E65, 0xA3E6,   0x1E66, 0xA3E8,   0x1E67, 0xA3EA,
-+      0x1E68, 0xA3EC,   0x1E69, 0xA3EE,   0x1E6A, 0x23F0,   0x1E6B, 0x23F2,
-+      0x1E6C, 0x23F4,   0x1E6D, 0x23F6,   0x1E6E, 0x23F8,   0x1E6F, 0x23FA,
-+      0x1E70, 0x23FC,   0x1E71, 0x23FE,   0x1E72, 0x2400,   0x1E73, 0x2402,
-+      0x1E74, 0x2404,   0x1E75, 0x2406,   0x1E76, 0x2408,   0x1E77, 0x240A,
-+      0x1E78, 0xA40C,   0x1E79, 0xA40E,   0x1E7A, 0xA410,   0x1E7B, 0xA412,
-+      0x1E7C, 0x2414,   0x1E7D, 0x2416,   0x1E7E, 0x2418,   0x1E7F, 0x241A,
-+      0x1E80, 0x241C,   0x1E81, 0x241E,   0x1E82, 0x2420,   0x1E83, 0x2422,
-+      0x1E84, 0x2424,   0x1E85, 0x2426,   0x1E86, 0x2428,   0x1E87, 0x242A,
-+      0x1E88, 0x242C,   0x1E89, 0x242E,   0x1E8A, 0x2430,   0x1E8B, 0x2432,
-+      0x1E8C, 0x2434,   0x1E8D, 0x2436,   0x1E8E, 0x2438,   0x1E8F, 0x243A,
-+      0x1E90, 0x243C,   0x1E91, 0x243E,   0x1E92, 0x2440,   0x1E93, 0x2442,
-+      0x1E94, 0x2444,   0x1E95, 0x2446,   0x1E96, 0x2448,   0x1E97, 0x244A,
-+      0x1E98, 0x244C,   0x1E99, 0x244E,   0x1E9B, 0x2450,   0x1EA0, 0x2452,
-+      0x1EA1, 0x2454,   0x1EA2, 0x2456,   0x1EA3, 0x2458,   0x1EA4, 0xA45A,
-+      0x1EA5, 0xA45C,   0x1EA6, 0xA45E,   0x1EA7, 0xA460,   0x1EA8, 0xA462,
-+      0x1EA9, 0xA464,   0x1EAA, 0xA466,   0x1EAB, 0xA468,   0x1EAC, 0xA46A,
-+      0x1EAD, 0xA46C,   0x1EAE, 0xA46E,   0x1EAF, 0xA470,   0x1EB0, 0xA472,
-+      0x1EB1, 0xA474,   0x1EB2, 0xA476,   0x1EB3, 0xA478,   0x1EB4, 0xA47A,
-+      0x1EB5, 0xA47C,   0x1EB6, 0xA47E,   0x1EB7, 0xA480,   0x1EB8, 0x2482,
-+      0x1EB9, 0x2484,   0x1EBA, 0x2486,   0x1EBB, 0x2488,   0x1EBC, 0x248A,
-+      0x1EBD, 0x248C,   0x1EBE, 0xA48E,   0x1EBF, 0xA490,   0x1EC0, 0xA492,
-+      0x1EC1, 0xA494,   0x1EC2, 0xA496,   0x1EC3, 0xA498,   0x1EC4, 0xA49A,
-+      0x1EC5, 0xA49C,   0x1EC6, 0xA49E,   0x1EC7, 0xA4A0,   0x1EC8, 0x24A2,
-+      0x1EC9, 0x24A4,   0x1ECA, 0x24A6,   0x1ECB, 0x24A8,   0x1ECC, 0x24AA,
-+      0x1ECD, 0x24AC,   0x1ECE, 0x24AE,   0x1ECF, 0x24B0,   0x1ED0, 0xA4B2,
-+      0x1ED1, 0xA4B4,   0x1ED2, 0xA4B6,   0x1ED3, 0xA4B8,   0x1ED4, 0xA4BA,
-+      0x1ED5, 0xA4BC,   0x1ED6, 0xA4BE,   0x1ED7, 0xA4C0,   0x1ED8, 0xA4C2,
-+      0x1ED9, 0xA4C4,   0x1EDA, 0xA4C6,   0x1EDB, 0xA4C8,   0x1EDC, 0xA4CA,
-+      0x1EDD, 0xA4CC,   0x1EDE, 0xA4CE,   0x1EDF, 0xA4D0,   0x1EE0, 0xA4D2,
-+      0x1EE1, 0xA4D4,   0x1EE2, 0xA4D6,   0x1EE3, 0xA4D8,   0x1EE4, 0x24DA,
-+      0x1EE5, 0x24DC,   0x1EE6, 0x24DE,   0x1EE7, 0x24E0,   0x1EE8, 0xA4E2,
-+      0x1EE9, 0xA4E4,   0x1EEA, 0xA4E6,   0x1EEB, 0xA4E8,   0x1EEC, 0xA4EA,
-+      0x1EED, 0xA4EC,   0x1EEE, 0xA4EE,   0x1EEF, 0xA4F0,   0x1EF0, 0xA4F2,
-+      0x1EF1, 0xA4F4,   0x1EF2, 0x24F6,   0x1EF3, 0x24F8,   0x1EF4, 0x24FA,
-+      0x1EF5, 0x24FC,   0x1EF6, 0x24FE,   0x1EF7, 0x2500,   0x1EF8, 0x2502,
-+      0x1EF9, 0x2504,   0x1F00, 0x2506,   0x1F01, 0x2508,   0x1F02, 0xA50A,
-+      0x1F03, 0xA50C,   0x1F04, 0xA50E,   0x1F05, 0xA510,   0x1F06, 0xA512,
-+      0x1F07, 0xA514,   0x1F08, 0x2516,   0x1F09, 0x2518,   0x1F0A, 0xA51A,
-+      0x1F0B, 0xA51C,   0x1F0C, 0xA51E,   0x1F0D, 0xA520,   0x1F0E, 0xA522,
-+      0x1F0F, 0xA524,   0x1F10, 0x2526,   0x1F11, 0x2528,   0x1F12, 0xA52A,
-+      0x1F13, 0xA52C,   0x1F14, 0xA52E,   0x1F15, 0xA530,   0x1F18, 0x2532,
-+      0x1F19, 0x2534,   0x1F1A, 0xA536,   0x1F1B, 0xA538,   0x1F1C, 0xA53A,
-+      0x1F1D, 0xA53C,   0x1F20, 0x253E,   0x1F21, 0x2540,   0x1F22, 0xA542,
-+      0x1F23, 0xA544,   0x1F24, 0xA546,   0x1F25, 0xA548,   0x1F26, 0xA54A,
-+      0x1F27, 0xA54C,   0x1F28, 0x254E,   0x1F29, 0x2550,   0x1F2A, 0xA552,
-+      0x1F2B, 0xA554,   0x1F2C, 0xA556,   0x1F2D, 0xA558,   0x1F2E, 0xA55A,
-+      0x1F2F, 0xA55C,   0x1F30, 0x255E,   0x1F31, 0x2560,   0x1F32, 0xA562,
-+      0x1F33, 0xA564,   0x1F34, 0xA566,   0x1F35, 0xA568,   0x1F36, 0xA56A,
-+      0x1F37, 0xA56C,   0x1F38, 0x256E,   0x1F39, 0x2570,   0x1F3A, 0xA572,
-+      0x1F3B, 0xA574,   0x1F3C, 0xA576,   0x1F3D, 0xA578,   0x1F3E, 0xA57A,
-+      0x1F3F, 0xA57C,   0x1F40, 0x257E,   0x1F41, 0x2580,   0x1F42, 0xA582,
-+      0x1F43, 0xA584,   0x1F44, 0xA586,   0x1F45, 0xA588,   0x1F48, 0x258A,
-+      0x1F49, 0x258C,   0x1F4A, 0xA58E,   0x1F4B, 0xA590,   0x1F4C, 0xA592,
-+      0x1F4D, 0xA594,   0x1F50, 0x2596,   0x1F51, 0x2598,   0x1F52, 0xA59A,
-+      0x1F53, 0xA59C,   0x1F54, 0xA59E,   0x1F55, 0xA5A0,   0x1F56, 0xA5A2,
-+      0x1F57, 0xA5A4,   0x1F59, 0x25A6,   0x1F5B, 0xA5A8,   0x1F5D, 0xA5AA,
-+      0x1F5F, 0xA5AC,   0x1F60, 0x25AE,   0x1F61, 0x25B0,   0x1F62, 0xA5B2,
-+      0x1F63, 0xA5B4,   0x1F64, 0xA5B6,   0x1F65, 0xA5B8,   0x1F66, 0xA5BA,
-+      0x1F67, 0xA5BC,   0x1F68, 0x25BE,   0x1F69, 0x25C0,   0x1F6A, 0xA5C2,
-+      0x1F6B, 0xA5C4,   0x1F6C, 0xA5C6,   0x1F6D, 0xA5C8,   0x1F6E, 0xA5CA,
-+      0x1F6F, 0xA5CC,   0x1F70, 0x25CE,   0x1F71, 0x93AC,   0x1F72, 0x25D0,
-+      0x1F73, 0x93AD,   0x1F74, 0x25D2,   0x1F75, 0x93AE,   0x1F76, 0x25D4,
-+      0x1F77, 0x93AF,   0x1F78, 0x25D6,   0x1F79, 0x93CC,   0x1F7A, 0x25D8,
-+      0x1F7B, 0x93CD,   0x1F7C, 0x25DA,   0x1F7D, 0x93CE,   0x1F80, 0xA5DC,
-+      0x1F81, 0xA5DE,   0x1F82, 0xA5E0,   0x1F83, 0xA5E2,   0x1F84, 0xA5E4,
-+      0x1F85, 0xA5E6,   0x1F86, 0xA5E8,   0x1F87, 0xA5EA,   0x1F88, 0xA5EC,
-+      0x1F89, 0xA5EE,   0x1F8A, 0xA5F0,   0x1F8B, 0xA5F2,   0x1F8C, 0xA5F4,
-+      0x1F8D, 0xA5F6,   0x1F8E, 0xA5F8,   0x1F8F, 0xA5FA,   0x1F90, 0xA5FC,
-+      0x1F91, 0xA5FE,   0x1F92, 0xA600,   0x1F93, 0xA602,   0x1F94, 0xA604,
-+      0x1F95, 0xA606,   0x1F96, 0xA608,   0x1F97, 0xA60A,   0x1F98, 0xA60C,
-+      0x1F99, 0xA60E,   0x1F9A, 0xA610,   0x1F9B, 0xA612,   0x1F9C, 0xA614,
-+      0x1F9D, 0xA616,   0x1F9E, 0xA618,   0x1F9F, 0xA61A,   0x1FA0, 0xA61C,
-+      0x1FA1, 0xA61E,   0x1FA2, 0xA620,   0x1FA3, 0xA622,   0x1FA4, 0xA624,
-+      0x1FA5, 0xA626,   0x1FA6, 0xA628,   0x1FA7, 0xA62A,   0x1FA8, 0xA62C,
-+      0x1FA9, 0xA62E,   0x1FAA, 0xA630,   0x1FAB, 0xA632,   0x1FAC, 0xA634,
-+      0x1FAD, 0xA636,   0x1FAE, 0xA638,   0x1FAF, 0xA63A,   0x1FB0, 0x263C,
-+      0x1FB1, 0x263E,   0x1FB2, 0xA640,   0x1FB3, 0x2642,   0x1FB4, 0xA644,
-+      0x1FB6, 0x2646,   0x1FB7, 0xA648,   0x1FB8, 0x264A,   0x1FB9, 0x264C,
-+      0x1FBA, 0x264E,   0x1FBB, 0x9386,   0x1FBC, 0x2650,   0x1FBE, 0x13B9,
-+      0x1FC1, 0x2652,   0x1FC2, 0xA654,   0x1FC3, 0x2656,   0x1FC4, 0xA658,
-+      0x1FC6, 0x265A,   0x1FC7, 0xA65C,   0x1FC8, 0x265E,   0x1FC9, 0x9388,
-+      0x1FCA, 0x2660,   0x1FCB, 0x9389,   0x1FCC, 0x2662,   0x1FCD, 0x2664,
-+      0x1FCE, 0x2666,   0x1FCF, 0x2668,   0x1FD0, 0x266A,   0x1FD1, 0x266C,
-+      0x1FD2, 0xA66E,   0x1FD3, 0x9390,   0x1FD6, 0x2670,   0x1FD7, 0xA672,
-+      0x1FD8, 0x2674,   0x1FD9, 0x2676,   0x1FDA, 0x2678,   0x1FDB, 0x938A,
-+      0x1FDD, 0x267A,   0x1FDE, 0x267C,   0x1FDF, 0x267E,   0x1FE0, 0x2680,
-+      0x1FE1, 0x2682,   0x1FE2, 0xA684,   0x1FE3, 0x93B0,   0x1FE4, 0x2686,
-+      0x1FE5, 0x2688,   0x1FE6, 0x268A,   0x1FE7, 0xA68C,   0x1FE8, 0x268E,
-+      0x1FE9, 0x2690,   0x1FEA, 0x2692,   0x1FEB, 0x938E,   0x1FEC, 0x2694,
-+      0x1FED, 0x2696,   0x1FEE, 0x9385,   0x1FEF, 0x1060,   0x1FF2, 0xA698,
-+      0x1FF3, 0x269A,   0x1FF4, 0xA69C,   0x1FF6, 0x269E,   0x1FF7, 0xA6A0,
-+      0x1FF8, 0x26A2,   0x1FF9, 0x938C,   0x1FFA, 0x26A4,   0x1FFB, 0x938F,
-+      0x1FFC, 0x26A6,   0x1FFD, 0x10B4,   0x304C, 0x26A8,   0x304E, 0x26AA,
-+      0x3050, 0x26AC,   0x3052, 0x26AE,   0x3054, 0x26B0,   0x3056, 0x26B2,
-+      0x3058, 0x26B4,   0x305A, 0x26B6,   0x305C, 0x26B8,   0x305E, 0x26BA,
-+      0x3060, 0x26BC,   0x3062, 0x26BE,   0x3065, 0x26C0,   0x3067, 0x26C2,
-+      0x3069, 0x26C4,   0x3070, 0x26C6,   0x3071, 0x26C8,   0x3073, 0x26CA,
-+      0x3074, 0x26CC,   0x3076, 0x26CE,   0x3077, 0x26D0,   0x3079, 0x26D2,
-+      0x307A, 0x26D4,   0x307C, 0x26D6,   0x307D, 0x26D8,   0x3094, 0x26DA,
-+      0x309E, 0x26DC,   0x30AC, 0x26DE,   0x30AE, 0x26E0,   0x30B0, 0x26E2,
-+      0x30B2, 0x26E4,   0x30B4, 0x26E6,   0x30B6, 0x26E8,   0x30B8, 0x26EA,
-+      0x30BA, 0x26EC,   0x30BC, 0x26EE,   0x30BE, 0x26F0,   0x30C0, 0x26F2,
-+      0x30C2, 0x26F4,   0x30C5, 0x26F6,   0x30C7, 0x26F8,   0x30C9, 0x26FA,
-+      0x30D0, 0x26FC,   0x30D1, 0x26FE,   0x30D3, 0x2700,   0x30D4, 0x2702,
-+      0x30D6, 0x2704,   0x30D7, 0x2706,   0x30D9, 0x2708,   0x30DA, 0x270A,
-+      0x30DC, 0x270C,   0x30DD, 0x270E,   0x30F4, 0x2710,   0x30F7, 0x2712,
-+      0x30F8, 0x2714,   0x30F9, 0x2716,   0x30FA, 0x2718,   0x30FE, 0x271A,
-+      0xFB1D, 0x271C,   0xFB1F, 0x271E,   0xFB2A, 0x2720,   0xFB2B, 0x2722,
-+      0xFB2C, 0xA724,   0xFB2D, 0xA726,   0xFB2E, 0x2728,   0xFB2F, 0x272A,
-+      0xFB30, 0x272C,   0xFB31, 0x272E,   0xFB32, 0x2730,   0xFB33, 0x2732,
-+      0xFB34, 0x2734,   0xFB35, 0x2736,   0xFB36, 0x2738,   0xFB38, 0x273A,
-+      0xFB39, 0x273C,   0xFB3A, 0x273E,   0xFB3B, 0x2740,   0xFB3C, 0x2742,
-+      0xFB3E, 0x2744,   0xFB40, 0x2746,   0xFB41, 0x2748,   0xFB43, 0x274A,
-+      0xFB44, 0x274C,   0xFB46, 0x274E,   0xFB47, 0x2750,   0xFB48, 0x2752,
-+      0xFB49, 0x2754,   0xFB4A, 0x2756,   0xFB4B, 0x2758,   0xFB4C, 0x275A,
-+      0xFB4D, 0x275C,   0xFB4E, 0x275E
-+};
-+
-+static const u_int32_t __UniCharDecompositionTableLength =
-+      (sizeof(__CFUniCharDecompositionTable) / (sizeof(u_int16_t) * 2));
-+
-+
-+static const u_int16_t
-+__CFUniCharMultipleDecompositionTable[] = {
-+      0x0041, 0x0300, 0x0041, 0x0301, 0x0041, 0x0302, 0x0041, 0x0303,
-+      0x0041, 0x0308, 0x0041, 0x030A, 0x0043, 0x0327, 0x0045, 0x0300,
-+      0x0045, 0x0301, 0x0045, 0x0302, 0x0045, 0x0308, 0x0049, 0x0300,
-+      0x0049, 0x0301, 0x0049, 0x0302, 0x0049, 0x0308, 0x004E, 0x0303,
-+      0x004F, 0x0300, 0x004F, 0x0301, 0x004F, 0x0302, 0x004F, 0x0303,
-+      0x004F, 0x0308, 0x0055, 0x0300, 0x0055, 0x0301, 0x0055, 0x0302,
-+      0x0055, 0x0308, 0x0059, 0x0301, 0x0061, 0x0300, 0x0061, 0x0301,
-+      0x0061, 0x0302, 0x0061, 0x0303, 0x0061, 0x0308, 0x0061, 0x030A,
-+      0x0063, 0x0327, 0x0065, 0x0300, 0x0065, 0x0301, 0x0065, 0x0302,
-+      0x0065, 0x0308, 0x0069, 0x0300, 0x0069, 0x0301, 0x0069, 0x0302,
-+      0x0069, 0x0308, 0x006E, 0x0303, 0x006F, 0x0300, 0x006F, 0x0301,
-+      0x006F, 0x0302, 0x006F, 0x0303, 0x006F, 0x0308, 0x0075, 0x0300,
-+      0x0075, 0x0301, 0x0075, 0x0302, 0x0075, 0x0308, 0x0079, 0x0301,
-+      0x0079, 0x0308, 0x0041, 0x0304, 0x0061, 0x0304, 0x0041, 0x0306,
-+      0x0061, 0x0306, 0x0041, 0x0328, 0x0061, 0x0328, 0x0043, 0x0301,
-+      0x0063, 0x0301, 0x0043, 0x0302, 0x0063, 0x0302, 0x0043, 0x0307,
-+      0x0063, 0x0307, 0x0043, 0x030C, 0x0063, 0x030C, 0x0044, 0x030C,
-+      0x0064, 0x030C, 0x0045, 0x0304, 0x0065, 0x0304, 0x0045, 0x0306,
-+      0x0065, 0x0306, 0x0045, 0x0307, 0x0065, 0x0307, 0x0045, 0x0328,
-+      0x0065, 0x0328, 0x0045, 0x030C, 0x0065, 0x030C, 0x0047, 0x0302,
-+      0x0067, 0x0302, 0x0047, 0x0306, 0x0067, 0x0306, 0x0047, 0x0307,
-+      0x0067, 0x0307, 0x0047, 0x0327, 0x0067, 0x0327, 0x0048, 0x0302,
-+      0x0068, 0x0302, 0x0049, 0x0303, 0x0069, 0x0303, 0x0049, 0x0304,
-+      0x0069, 0x0304, 0x0049, 0x0306, 0x0069, 0x0306, 0x0049, 0x0328,
-+      0x0069, 0x0328, 0x0049, 0x0307, 0x004A, 0x0302, 0x006A, 0x0302,
-+      0x004B, 0x0327, 0x006B, 0x0327, 0x004C, 0x0301, 0x006C, 0x0301,
-+      0x004C, 0x0327, 0x006C, 0x0327, 0x004C, 0x030C, 0x006C, 0x030C,
-+      0x004E, 0x0301, 0x006E, 0x0301, 0x004E, 0x0327, 0x006E, 0x0327,
-+      0x004E, 0x030C, 0x006E, 0x030C, 0x004F, 0x0304, 0x006F, 0x0304,
-+      0x004F, 0x0306, 0x006F, 0x0306, 0x004F, 0x030B, 0x006F, 0x030B,
-+      0x0052, 0x0301, 0x0072, 0x0301, 0x0052, 0x0327, 0x0072, 0x0327,
-+      0x0052, 0x030C, 0x0072, 0x030C, 0x0053, 0x0301, 0x0073, 0x0301,
-+      0x0053, 0x0302, 0x0073, 0x0302, 0x0053, 0x0327, 0x0073, 0x0327,
-+      0x0053, 0x030C, 0x0073, 0x030C, 0x0054, 0x0327, 0x0074, 0x0327,
-+      0x0054, 0x030C, 0x0074, 0x030C, 0x0055, 0x0303, 0x0075, 0x0303,
-+      0x0055, 0x0304, 0x0075, 0x0304, 0x0055, 0x0306, 0x0075, 0x0306,
-+      0x0055, 0x030A, 0x0075, 0x030A, 0x0055, 0x030B, 0x0075, 0x030B,
-+      0x0055, 0x0328, 0x0075, 0x0328, 0x0057, 0x0302, 0x0077, 0x0302,
-+      0x0059, 0x0302, 0x0079, 0x0302, 0x0059, 0x0308, 0x005A, 0x0301,
-+      0x007A, 0x0301, 0x005A, 0x0307, 0x007A, 0x0307, 0x005A, 0x030C,
-+      0x007A, 0x030C, 0x004F, 0x031B, 0x006F, 0x031B, 0x0055, 0x031B,
-+      0x0075, 0x031B, 0x0041, 0x030C, 0x0061, 0x030C, 0x0049, 0x030C,
-+      0x0069, 0x030C, 0x004F, 0x030C, 0x006F, 0x030C, 0x0055, 0x030C,
-+      0x0075, 0x030C, 0x00DC, 0x0304, 0x00FC, 0x0304, 0x00DC, 0x0301,
-+      0x00FC, 0x0301, 0x00DC, 0x030C, 0x00FC, 0x030C, 0x00DC, 0x0300,
-+      0x00FC, 0x0300, 0x00C4, 0x0304, 0x00E4, 0x0304, 0x0226, 0x0304,
-+      0x0227, 0x0304, 0x00C6, 0x0304, 0x00E6, 0x0304, 0x0047, 0x030C,
-+      0x0067, 0x030C, 0x004B, 0x030C, 0x006B, 0x030C, 0x004F, 0x0328,
-+      0x006F, 0x0328, 0x01EA, 0x0304, 0x01EB, 0x0304, 0x01B7, 0x030C,
-+      0x0292, 0x030C, 0x006A, 0x030C, 0x0047, 0x0301, 0x0067, 0x0301,
-+      0x004E, 0x0300, 0x006E, 0x0300, 0x00C5, 0x0301, 0x00E5, 0x0301,
-+      0x00C6, 0x0301, 0x00E6, 0x0301, 0x00D8, 0x0301, 0x00F8, 0x0301,
-+      0x0041, 0x030F, 0x0061, 0x030F, 0x0041, 0x0311, 0x0061, 0x0311,
-+      0x0045, 0x030F, 0x0065, 0x030F, 0x0045, 0x0311, 0x0065, 0x0311,
-+      0x0049, 0x030F, 0x0069, 0x030F, 0x0049, 0x0311, 0x0069, 0x0311,
-+      0x004F, 0x030F, 0x006F, 0x030F, 0x004F, 0x0311, 0x006F, 0x0311,
-+      0x0052, 0x030F, 0x0072, 0x030F, 0x0052, 0x0311, 0x0072, 0x0311,
-+      0x0055, 0x030F, 0x0075, 0x030F, 0x0055, 0x0311, 0x0075, 0x0311,
-+      0x0053, 0x0326, 0x0073, 0x0326, 0x0054, 0x0326, 0x0074, 0x0326,
-+      0x0048, 0x030C, 0x0068, 0x030C, 0x0041, 0x0307, 0x0061, 0x0307,
-+      0x0045, 0x0327, 0x0065, 0x0327, 0x00D6, 0x0304, 0x00F6, 0x0304,
-+      0x00D5, 0x0304, 0x00F5, 0x0304, 0x004F, 0x0307, 0x006F, 0x0307,
-+      0x022E, 0x0304, 0x022F, 0x0304, 0x0059, 0x0304, 0x0079, 0x0304,
-+      0x0308, 0x0301, 0x00A8, 0x0301, 0x0391, 0x0301, 0x0395, 0x0301,
-+      0x0397, 0x0301, 0x0399, 0x0301, 0x039F, 0x0301, 0x03A5, 0x0301,
-+      0x03A9, 0x0301, 0x03CA, 0x0301, 0x0399, 0x0308, 0x03A5, 0x0308,
-+      0x03B1, 0x0301, 0x03B5, 0x0301, 0x03B7, 0x0301, 0x03B9, 0x0301,
-+      0x03CB, 0x0301, 0x03B9, 0x0308, 0x03C5, 0x0308, 0x03BF, 0x0301,
-+      0x03C5, 0x0301, 0x03C9, 0x0301, 0x03D2, 0x0301, 0x03D2, 0x0308,
-+      0x0415, 0x0300, 0x0415, 0x0308, 0x0413, 0x0301, 0x0406, 0x0308,
-+      0x041A, 0x0301, 0x0418, 0x0300, 0x0423, 0x0306, 0x0418, 0x0306,
-+      0x0438, 0x0306, 0x0435, 0x0300, 0x0435, 0x0308, 0x0433, 0x0301,
-+      0x0456, 0x0308, 0x043A, 0x0301, 0x0438, 0x0300, 0x0443, 0x0306,
-+      0x0474, 0x030F, 0x0475, 0x030F, 0x0416, 0x0306, 0x0436, 0x0306,
-+      0x0410, 0x0306, 0x0430, 0x0306, 0x0410, 0x0308, 0x0430, 0x0308,
-+      0x0415, 0x0306, 0x0435, 0x0306, 0x04D8, 0x0308, 0x04D9, 0x0308,
-+      0x0416, 0x0308, 0x0436, 0x0308, 0x0417, 0x0308, 0x0437, 0x0308,
-+      0x0418, 0x0304, 0x0438, 0x0304, 0x0418, 0x0308, 0x0438, 0x0308,
-+      0x041E, 0x0308, 0x043E, 0x0308, 0x04E8, 0x0308, 0x04E9, 0x0308,
-+      0x042D, 0x0308, 0x044D, 0x0308, 0x0423, 0x0304, 0x0443, 0x0304,
-+      0x0423, 0x0308, 0x0443, 0x0308, 0x0423, 0x030B, 0x0443, 0x030B,
-+      0x0427, 0x0308, 0x0447, 0x0308, 0x042B, 0x0308, 0x044B, 0x0308,
-+      0x0627, 0x0653, 0x0627, 0x0654, 0x0648, 0x0654, 0x0627, 0x0655,
-+      0x064A, 0x0654, 0x06D5, 0x0654, 0x06C1, 0x0654, 0x06D2, 0x0654,
-+      0x0928, 0x093C, 0x0930, 0x093C, 0x0933, 0x093C, 0x0915, 0x093C,
-+      0x0916, 0x093C, 0x0917, 0x093C, 0x091C, 0x093C, 0x0921, 0x093C,
-+      0x0922, 0x093C, 0x092B, 0x093C, 0x092F, 0x093C, 0x09C7, 0x09BE,
-+      0x09C7, 0x09D7, 0x09A1, 0x09BC, 0x09A2, 0x09BC, 0x09AF, 0x09BC,
-+      0x0A32, 0x0A3C, 0x0A38, 0x0A3C, 0x0A16, 0x0A3C, 0x0A17, 0x0A3C,
-+      0x0A1C, 0x0A3C, 0x0A2B, 0x0A3C, 0x0B47, 0x0B56, 0x0B47, 0x0B3E,
-+      0x0B47, 0x0B57, 0x0B21, 0x0B3C, 0x0B22, 0x0B3C, 0x0B92, 0x0BD7,
-+      0x0BC6, 0x0BBE, 0x0BC7, 0x0BBE, 0x0BC6, 0x0BD7, 0x0C46, 0x0C56,
-+      0x0CBF, 0x0CD5, 0x0CC6, 0x0CD5, 0x0CC6, 0x0CD6, 0x0CC6, 0x0CC2,
-+      0x0CCA, 0x0CD5, 0x0D46, 0x0D3E, 0x0D47, 0x0D3E, 0x0D46, 0x0D57,
-+      0x0DD9, 0x0DCA, 0x0DD9, 0x0DCF, 0x0DDC, 0x0DCA, 0x0DD9, 0x0DDF,
-+      0x0F42, 0x0FB7, 0x0F4C, 0x0FB7, 0x0F51, 0x0FB7, 0x0F56, 0x0FB7,
-+      0x0F5B, 0x0FB7, 0x0F40, 0x0FB5, 0x0F71, 0x0F72, 0x0F71, 0x0F74,
-+      0x0FB2, 0x0F80, 0x0FB3, 0x0F80, 0x0F71, 0x0F80, 0x0F92, 0x0FB7,
-+      0x0F9C, 0x0FB7, 0x0FA1, 0x0FB7, 0x0FA6, 0x0FB7, 0x0FAB, 0x0FB7,
-+      0x0F90, 0x0FB5, 0x1025, 0x102E, 0x0041, 0x0325, 0x0061, 0x0325,
-+      0x0042, 0x0307, 0x0062, 0x0307, 0x0042, 0x0323, 0x0062, 0x0323,
-+      0x0042, 0x0331, 0x0062, 0x0331, 0x00C7, 0x0301, 0x00E7, 0x0301,
-+      0x0044, 0x0307, 0x0064, 0x0307, 0x0044, 0x0323, 0x0064, 0x0323,
-+      0x0044, 0x0331, 0x0064, 0x0331, 0x0044, 0x0327, 0x0064, 0x0327,
-+      0x0044, 0x032D, 0x0064, 0x032D, 0x0112, 0x0300, 0x0113, 0x0300,
-+      0x0112, 0x0301, 0x0113, 0x0301, 0x0045, 0x032D, 0x0065, 0x032D,
-+      0x0045, 0x0330, 0x0065, 0x0330, 0x0228, 0x0306, 0x0229, 0x0306,
-+      0x0046, 0x0307, 0x0066, 0x0307, 0x0047, 0x0304, 0x0067, 0x0304,
-+      0x0048, 0x0307, 0x0068, 0x0307, 0x0048, 0x0323, 0x0068, 0x0323,
-+      0x0048, 0x0308, 0x0068, 0x0308, 0x0048, 0x0327, 0x0068, 0x0327,
-+      0x0048, 0x032E, 0x0068, 0x032E, 0x0049, 0x0330, 0x0069, 0x0330,
-+      0x00CF, 0x0301, 0x00EF, 0x0301, 0x004B, 0x0301, 0x006B, 0x0301,
-+      0x004B, 0x0323, 0x006B, 0x0323, 0x004B, 0x0331, 0x006B, 0x0331,
-+      0x004C, 0x0323, 0x006C, 0x0323, 0x1E36, 0x0304, 0x1E37, 0x0304,
-+      0x004C, 0x0331, 0x006C, 0x0331, 0x004C, 0x032D, 0x006C, 0x032D,
-+      0x004D, 0x0301, 0x006D, 0x0301, 0x004D, 0x0307, 0x006D, 0x0307,
-+      0x004D, 0x0323, 0x006D, 0x0323, 0x004E, 0x0307, 0x006E, 0x0307,
-+      0x004E, 0x0323, 0x006E, 0x0323, 0x004E, 0x0331, 0x006E, 0x0331,
-+      0x004E, 0x032D, 0x006E, 0x032D, 0x00D5, 0x0301, 0x00F5, 0x0301,
-+      0x00D5, 0x0308, 0x00F5, 0x0308, 0x014C, 0x0300, 0x014D, 0x0300,
-+      0x014C, 0x0301, 0x014D, 0x0301, 0x0050, 0x0301, 0x0070, 0x0301,
-+      0x0050, 0x0307, 0x0070, 0x0307, 0x0052, 0x0307, 0x0072, 0x0307,
-+      0x0052, 0x0323, 0x0072, 0x0323, 0x1E5A, 0x0304, 0x1E5B, 0x0304,
-+      0x0052, 0x0331, 0x0072, 0x0331, 0x0053, 0x0307, 0x0073, 0x0307,
-+      0x0053, 0x0323, 0x0073, 0x0323, 0x015A, 0x0307, 0x015B, 0x0307,
-+      0x0160, 0x0307, 0x0161, 0x0307, 0x1E62, 0x0307, 0x1E63, 0x0307,
-+      0x0054, 0x0307, 0x0074, 0x0307, 0x0054, 0x0323, 0x0074, 0x0323,
-+      0x0054, 0x0331, 0x0074, 0x0331, 0x0054, 0x032D, 0x0074, 0x032D,
-+      0x0055, 0x0324, 0x0075, 0x0324, 0x0055, 0x0330, 0x0075, 0x0330,
-+      0x0055, 0x032D, 0x0075, 0x032D, 0x0168, 0x0301, 0x0169, 0x0301,
-+      0x016A, 0x0308, 0x016B, 0x0308, 0x0056, 0x0303, 0x0076, 0x0303,
-+      0x0056, 0x0323, 0x0076, 0x0323, 0x0057, 0x0300, 0x0077, 0x0300,
-+      0x0057, 0x0301, 0x0077, 0x0301, 0x0057, 0x0308, 0x0077, 0x0308,
-+      0x0057, 0x0307, 0x0077, 0x0307, 0x0057, 0x0323, 0x0077, 0x0323,
-+      0x0058, 0x0307, 0x0078, 0x0307, 0x0058, 0x0308, 0x0078, 0x0308,
-+      0x0059, 0x0307, 0x0079, 0x0307, 0x005A, 0x0302, 0x007A, 0x0302,
-+      0x005A, 0x0323, 0x007A, 0x0323, 0x005A, 0x0331, 0x007A, 0x0331,
-+      0x0068, 0x0331, 0x0074, 0x0308, 0x0077, 0x030A, 0x0079, 0x030A,
-+      0x017F, 0x0307, 0x0041, 0x0323, 0x0061, 0x0323, 0x0041, 0x0309,
-+      0x0061, 0x0309, 0x00C2, 0x0301, 0x00E2, 0x0301, 0x00C2, 0x0300,
-+      0x00E2, 0x0300, 0x00C2, 0x0309, 0x00E2, 0x0309, 0x00C2, 0x0303,
-+      0x00E2, 0x0303, 0x1EA0, 0x0302, 0x1EA1, 0x0302, 0x0102, 0x0301,
-+      0x0103, 0x0301, 0x0102, 0x0300, 0x0103, 0x0300, 0x0102, 0x0309,
-+      0x0103, 0x0309, 0x0102, 0x0303, 0x0103, 0x0303, 0x1EA0, 0x0306,
-+      0x1EA1, 0x0306, 0x0045, 0x0323, 0x0065, 0x0323, 0x0045, 0x0309,
-+      0x0065, 0x0309, 0x0045, 0x0303, 0x0065, 0x0303, 0x00CA, 0x0301,
-+      0x00EA, 0x0301, 0x00CA, 0x0300, 0x00EA, 0x0300, 0x00CA, 0x0309,
-+      0x00EA, 0x0309, 0x00CA, 0x0303, 0x00EA, 0x0303, 0x1EB8, 0x0302,
-+      0x1EB9, 0x0302, 0x0049, 0x0309, 0x0069, 0x0309, 0x0049, 0x0323,
-+      0x0069, 0x0323, 0x004F, 0x0323, 0x006F, 0x0323, 0x004F, 0x0309,
-+      0x006F, 0x0309, 0x00D4, 0x0301, 0x00F4, 0x0301, 0x00D4, 0x0300,
-+      0x00F4, 0x0300, 0x00D4, 0x0309, 0x00F4, 0x0309, 0x00D4, 0x0303,
-+      0x00F4, 0x0303, 0x1ECC, 0x0302, 0x1ECD, 0x0302, 0x01A0, 0x0301,
-+      0x01A1, 0x0301, 0x01A0, 0x0300, 0x01A1, 0x0300, 0x01A0, 0x0309,
-+      0x01A1, 0x0309, 0x01A0, 0x0303, 0x01A1, 0x0303, 0x01A0, 0x0323,
-+      0x01A1, 0x0323, 0x0055, 0x0323, 0x0075, 0x0323, 0x0055, 0x0309,
-+      0x0075, 0x0309, 0x01AF, 0x0301, 0x01B0, 0x0301, 0x01AF, 0x0300,
-+      0x01B0, 0x0300, 0x01AF, 0x0309, 0x01B0, 0x0309, 0x01AF, 0x0303,
-+      0x01B0, 0x0303, 0x01AF, 0x0323, 0x01B0, 0x0323, 0x0059, 0x0300,
-+      0x0079, 0x0300, 0x0059, 0x0323, 0x0079, 0x0323, 0x0059, 0x0309,
-+      0x0079, 0x0309, 0x0059, 0x0303, 0x0079, 0x0303, 0x03B1, 0x0313,
-+      0x03B1, 0x0314, 0x1F00, 0x0300, 0x1F01, 0x0300, 0x1F00, 0x0301,
-+      0x1F01, 0x0301, 0x1F00, 0x0342, 0x1F01, 0x0342, 0x0391, 0x0313,
-+      0x0391, 0x0314, 0x1F08, 0x0300, 0x1F09, 0x0300, 0x1F08, 0x0301,
-+      0x1F09, 0x0301, 0x1F08, 0x0342, 0x1F09, 0x0342, 0x03B5, 0x0313,
-+      0x03B5, 0x0314, 0x1F10, 0x0300, 0x1F11, 0x0300, 0x1F10, 0x0301,
-+      0x1F11, 0x0301, 0x0395, 0x0313, 0x0395, 0x0314, 0x1F18, 0x0300,
-+      0x1F19, 0x0300, 0x1F18, 0x0301, 0x1F19, 0x0301, 0x03B7, 0x0313,
-+      0x03B7, 0x0314, 0x1F20, 0x0300, 0x1F21, 0x0300, 0x1F20, 0x0301,
-+      0x1F21, 0x0301, 0x1F20, 0x0342, 0x1F21, 0x0342, 0x0397, 0x0313,
-+      0x0397, 0x0314, 0x1F28, 0x0300, 0x1F29, 0x0300, 0x1F28, 0x0301,
-+      0x1F29, 0x0301, 0x1F28, 0x0342, 0x1F29, 0x0342, 0x03B9, 0x0313,
-+      0x03B9, 0x0314, 0x1F30, 0x0300, 0x1F31, 0x0300, 0x1F30, 0x0301,
-+      0x1F31, 0x0301, 0x1F30, 0x0342, 0x1F31, 0x0342, 0x0399, 0x0313,
-+      0x0399, 0x0314, 0x1F38, 0x0300, 0x1F39, 0x0300, 0x1F38, 0x0301,
-+      0x1F39, 0x0301, 0x1F38, 0x0342, 0x1F39, 0x0342, 0x03BF, 0x0313,
-+      0x03BF, 0x0314, 0x1F40, 0x0300, 0x1F41, 0x0300, 0x1F40, 0x0301,
-+      0x1F41, 0x0301, 0x039F, 0x0313, 0x039F, 0x0314, 0x1F48, 0x0300,
-+      0x1F49, 0x0300, 0x1F48, 0x0301, 0x1F49, 0x0301, 0x03C5, 0x0313,
-+      0x03C5, 0x0314, 0x1F50, 0x0300, 0x1F51, 0x0300, 0x1F50, 0x0301,
-+      0x1F51, 0x0301, 0x1F50, 0x0342, 0x1F51, 0x0342, 0x03A5, 0x0314,
-+      0x1F59, 0x0300, 0x1F59, 0x0301, 0x1F59, 0x0342, 0x03C9, 0x0313,
-+      0x03C9, 0x0314, 0x1F60, 0x0300, 0x1F61, 0x0300, 0x1F60, 0x0301,
-+      0x1F61, 0x0301, 0x1F60, 0x0342, 0x1F61, 0x0342, 0x03A9, 0x0313,
-+      0x03A9, 0x0314, 0x1F68, 0x0300, 0x1F69, 0x0300, 0x1F68, 0x0301,
-+      0x1F69, 0x0301, 0x1F68, 0x0342, 0x1F69, 0x0342, 0x03B1, 0x0300,
-+      0x03B5, 0x0300, 0x03B7, 0x0300, 0x03B9, 0x0300, 0x03BF, 0x0300,
-+      0x03C5, 0x0300, 0x03C9, 0x0300, 0x1F00, 0x0345, 0x1F01, 0x0345,
-+      0x1F02, 0x0345, 0x1F03, 0x0345, 0x1F04, 0x0345, 0x1F05, 0x0345,
-+      0x1F06, 0x0345, 0x1F07, 0x0345, 0x1F08, 0x0345, 0x1F09, 0x0345,
-+      0x1F0A, 0x0345, 0x1F0B, 0x0345, 0x1F0C, 0x0345, 0x1F0D, 0x0345,
-+      0x1F0E, 0x0345, 0x1F0F, 0x0345, 0x1F20, 0x0345, 0x1F21, 0x0345,
-+      0x1F22, 0x0345, 0x1F23, 0x0345, 0x1F24, 0x0345, 0x1F25, 0x0345,
-+      0x1F26, 0x0345, 0x1F27, 0x0345, 0x1F28, 0x0345, 0x1F29, 0x0345,
-+      0x1F2A, 0x0345, 0x1F2B, 0x0345, 0x1F2C, 0x0345, 0x1F2D, 0x0345,
-+      0x1F2E, 0x0345, 0x1F2F, 0x0345, 0x1F60, 0x0345, 0x1F61, 0x0345,
-+      0x1F62, 0x0345, 0x1F63, 0x0345, 0x1F64, 0x0345, 0x1F65, 0x0345,
-+      0x1F66, 0x0345, 0x1F67, 0x0345, 0x1F68, 0x0345, 0x1F69, 0x0345,
-+      0x1F6A, 0x0345, 0x1F6B, 0x0345, 0x1F6C, 0x0345, 0x1F6D, 0x0345,
-+      0x1F6E, 0x0345, 0x1F6F, 0x0345, 0x03B1, 0x0306, 0x03B1, 0x0304,
-+      0x1F70, 0x0345, 0x03B1, 0x0345, 0x03AC, 0x0345, 0x03B1, 0x0342,
-+      0x1FB6, 0x0345, 0x0391, 0x0306, 0x0391, 0x0304, 0x0391, 0x0300,
-+      0x0391, 0x0345, 0x00A8, 0x0342, 0x1F74, 0x0345, 0x03B7, 0x0345,
-+      0x03AE, 0x0345, 0x03B7, 0x0342, 0x1FC6, 0x0345, 0x0395, 0x0300,
-+      0x0397, 0x0300, 0x0397, 0x0345, 0x1FBF, 0x0300, 0x1FBF, 0x0301,
-+      0x1FBF, 0x0342, 0x03B9, 0x0306, 0x03B9, 0x0304, 0x03CA, 0x0300,
-+      0x03B9, 0x0342, 0x03CA, 0x0342, 0x0399, 0x0306, 0x0399, 0x0304,
-+      0x0399, 0x0300, 0x1FFE, 0x0300, 0x1FFE, 0x0301, 0x1FFE, 0x0342,
-+      0x03C5, 0x0306, 0x03C5, 0x0304, 0x03CB, 0x0300, 0x03C1, 0x0313,
-+      0x03C1, 0x0314, 0x03C5, 0x0342, 0x03CB, 0x0342, 0x03A5, 0x0306,
-+      0x03A5, 0x0304, 0x03A5, 0x0300, 0x03A1, 0x0314, 0x00A8, 0x0300,
-+      0x1F7C, 0x0345, 0x03C9, 0x0345, 0x03CE, 0x0345, 0x03C9, 0x0342,
-+      0x1FF6, 0x0345, 0x039F, 0x0300, 0x03A9, 0x0300, 0x03A9, 0x0345,
-+      0x304B, 0x3099, 0x304D, 0x3099, 0x304F, 0x3099, 0x3051, 0x3099,
-+      0x3053, 0x3099, 0x3055, 0x3099, 0x3057, 0x3099, 0x3059, 0x3099,
-+      0x305B, 0x3099, 0x305D, 0x3099, 0x305F, 0x3099, 0x3061, 0x3099,
-+      0x3064, 0x3099, 0x3066, 0x3099, 0x3068, 0x3099, 0x306F, 0x3099,
-+      0x306F, 0x309A, 0x3072, 0x3099, 0x3072, 0x309A, 0x3075, 0x3099,
-+      0x3075, 0x309A, 0x3078, 0x3099, 0x3078, 0x309A, 0x307B, 0x3099,
-+      0x307B, 0x309A, 0x3046, 0x3099, 0x309D, 0x3099, 0x30AB, 0x3099,
-+      0x30AD, 0x3099, 0x30AF, 0x3099, 0x30B1, 0x3099, 0x30B3, 0x3099,
-+      0x30B5, 0x3099, 0x30B7, 0x3099, 0x30B9, 0x3099, 0x30BB, 0x3099,
-+      0x30BD, 0x3099, 0x30BF, 0x3099, 0x30C1, 0x3099, 0x30C4, 0x3099,
-+      0x30C6, 0x3099, 0x30C8, 0x3099, 0x30CF, 0x3099, 0x30CF, 0x309A,
-+      0x30D2, 0x3099, 0x30D2, 0x309A, 0x30D5, 0x3099, 0x30D5, 0x309A,
-+      0x30D8, 0x3099, 0x30D8, 0x309A, 0x30DB, 0x3099, 0x30DB, 0x309A,
-+      0x30A6, 0x3099, 0x30EF, 0x3099, 0x30F0, 0x3099, 0x30F1, 0x3099,
-+      0x30F2, 0x3099, 0x30FD, 0x3099, 0x05D9, 0x05B4, 0x05F2, 0x05B7,
-+      0x05E9, 0x05C1, 0x05E9, 0x05C2, 0xFB49, 0x05C1, 0xFB49, 0x05C2,
-+      0x05D0, 0x05B7, 0x05D0, 0x05B8, 0x05D0, 0x05BC, 0x05D1, 0x05BC,
-+      0x05D2, 0x05BC, 0x05D3, 0x05BC, 0x05D4, 0x05BC, 0x05D5, 0x05BC,
-+      0x05D6, 0x05BC, 0x05D8, 0x05BC, 0x05D9, 0x05BC, 0x05DA, 0x05BC,
-+      0x05DB, 0x05BC, 0x05DC, 0x05BC, 0x05DE, 0x05BC, 0x05E0, 0x05BC,
-+      0x05E1, 0x05BC, 0x05E3, 0x05BC, 0x05E4, 0x05BC, 0x05E6, 0x05BC,
-+      0x05E7, 0x05BC, 0x05E8, 0x05BC, 0x05E9, 0x05BC, 0x05EA, 0x05BC,
-+      0x05D5, 0x05B9, 0x05D1, 0x05BF, 0x05DB, 0x05BF, 0x05E4, 0x05BF
-+};
-+
-+static const u_int8_t
-+__CFUniCharDecomposableBitmap[] = {
-+      0x01, 0x02, 0x03, 0x04, 0x05, 0x00, 0x06, 0x00,
-+      0x00, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x00, 0x0C,
-+      0x0D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x0F,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
-+      0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
-+      0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
-+      0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
-+      0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
-+      0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x11,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00,
-+
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0xBF, 0xFF, 0x7E, 0x3E, 0xBF, 0xFF, 0x7E, 0xBE,
-+      0xFF, 0xFF, 0xFC, 0xFF, 0x3F, 0xFF, 0xF1, 0x7E,
-+      0xF8, 0xF1, 0xF3, 0xFF, 0x3F, 0xFF, 0xFF, 0x7F,
-+      0x00, 0x00, 0x00, 0x00, 0x03, 0x80, 0x01, 0x00,
-+      0x00, 0xE0, 0xFF, 0xDF, 0xCF, 0xFF, 0x31, 0xFF,
-+      0xFF, 0xFF, 0xFF, 0xCF, 0xC0, 0xFF, 0x0F, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x1B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x40,
-+      0xE0, 0xD7, 0x01, 0x00, 0x00, 0xFC, 0x01, 0x00,
-+      0x00, 0x7C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x8B, 0x70, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02,
-+      0x00, 0x00, 0x8B, 0x70, 0x00, 0x00, 0xC0, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x06, 0x00, 0xCF, 0xFC, 0xFC, 0xFC, 0x3F, 0x03,
-+      0x00, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x05, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x12, 0x00,
-+      0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x18, 0x00, 0xB0, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00,
-+      0x00, 0x00, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x19, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x81, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x74, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x08, 0x20, 0x84, 0x10, 0x00, 0x02, 0x68, 0x01,
-+      0x02, 0x00, 0x08, 0x20, 0x84, 0x10, 0x00, 0x02,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
-+      0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
-+      0xFF, 0xFF, 0xFF, 0x0B, 0xFF, 0xFF, 0xFF, 0xFF,
-+      0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03,
-+      0xFF, 0xFF, 0x3F, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF,
-+      0x3F, 0x3F, 0xFF, 0xAA, 0xFF, 0xFF, 0xFF, 0x3F,
-+      0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0x5F,
-+      0xDE, 0xFF, 0xCF, 0xEF, 0xFF, 0xFF, 0xDC, 0x3F,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x50, 0x55, 0x55, 0xA5, 0x02, 0xDB, 0x36,
-+      0x00, 0x00, 0x10, 0x40, 0x00, 0x50, 0x55, 0x55,
-+      0xA5, 0x02, 0xDB, 0x36, 0x00, 0x00, 0x90, 0x47,
-+      0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
-+      0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
-+      0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0xA0, 0x00, 0xFC, 0x7F, 0x5F,
-+      0xDB, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-+};
-+
-+static const u_int32_t
-+__CFUniCharPrecompSourceTable[] = {
-+      0x00000300, 0x00540000, 0x00000301, 0x00750054,
-+      0x00000302, 0x002000C9, 0x00000303, 0x001C00E9,
-+      0x00000304, 0x002C0105, 0x00000306, 0x00200131,
-+      0x00000307, 0x002E0151, 0x00000308, 0x0036017F,
-+      0x00000309, 0x001801B5, 0x0000030A, 0x000601CD,
-+      0x0000030B, 0x000601D3, 0x0000030C, 0x002501D9,
-+      0x0000030F, 0x000E01FE, 0x00000311, 0x000C020C,
-+      0x00000313, 0x000E0218, 0x00000314, 0x00100226,
-+      0x0000031B, 0x00040236, 0x00000323, 0x002A023A,
-+      0x00000324, 0x00020264, 0x00000325, 0x00020266,
-+      0x00000326, 0x00040268, 0x00000327, 0x0016026C,
-+      0x00000328, 0x000A0282, 0x0000032D, 0x000C028C,
-+      0x0000032E, 0x00020298, 0x00000330, 0x0006029A,
-+      0x00000331, 0x001102A0, 0x00000338, 0x002C02B1,
-+      0x00000342, 0x001D02DD, 0x00000345, 0x003F02FA,
-+      0x00000653, 0x00010339, 0x00000654, 0x0006033A,
-+      0x00000655, 0x00010340, 0x0000093C, 0x00030341,
-+      0x000009BE, 0x00010344, 0x000009D7, 0x00010345,
-+      0x00000B3E, 0x00010346, 0x00000B56, 0x00010347,
-+      0x00000B57, 0x00010348, 0x00000BBE, 0x00020349,
-+      0x00000BD7, 0x0002034B, 0x00000C56, 0x0001034D,
-+      0x00000CC2, 0x0001034E, 0x00000CD5, 0x0003034F,
-+      0x00000CD6, 0x00010352, 0x00000D3E, 0x00020353,
-+      0x00000D57, 0x00010355, 0x00000DCA, 0x00020356,
-+      0x00000DCF, 0x00010358, 0x00000DDF, 0x00010359,
-+      0x0000102E, 0x0001035A, 0x00003099, 0x0030035B,
-+      0x0000309A, 0x000A038B
-+};
-+
-+static const u_int32_t __CFUniCharPrecompositionTableLength =
-+              (sizeof(__CFUniCharPrecompSourceTable) / (sizeof(u_int32_t) * 2));
-+
-+
-+static const u_int16_t
-+__CFUniCharBMPPrecompDestinationTable[] = {
-+      0x0041, 0x00C0, 0x0045, 0x00C8, 0x0049, 0x00CC, 0x004E, 0x01F8,
-+      0x004F, 0x00D2, 0x0055, 0x00D9, 0x0057, 0x1E80, 0x0059, 0x1EF2,
-+      0x0061, 0x00E0, 0x0065, 0x00E8, 0x0069, 0x00EC, 0x006E, 0x01F9,
-+      0x006F, 0x00F2, 0x0075, 0x00F9, 0x0077, 0x1E81, 0x0079, 0x1EF3,
-+      0x00A8, 0x1FED, 0x00C2, 0x1EA6, 0x00CA, 0x1EC0, 0x00D4, 0x1ED2,
-+      0x00DC, 0x01DB, 0x00E2, 0x1EA7, 0x00EA, 0x1EC1, 0x00F4, 0x1ED3,
-+      0x00FC, 0x01DC, 0x0102, 0x1EB0, 0x0103, 0x1EB1, 0x0112, 0x1E14,
-+      0x0113, 0x1E15, 0x014C, 0x1E50, 0x014D, 0x1E51, 0x01A0, 0x1EDC,
-+      0x01A1, 0x1EDD, 0x01AF, 0x1EEA, 0x01B0, 0x1EEB, 0x0391, 0x1FBA,
-+      0x0395, 0x1FC8, 0x0397, 0x1FCA, 0x0399, 0x1FDA, 0x039F, 0x1FF8,
-+      0x03A5, 0x1FEA, 0x03A9, 0x1FFA, 0x03B1, 0x1F70, 0x03B5, 0x1F72,
-+      0x03B7, 0x1F74, 0x03B9, 0x1F76, 0x03BF, 0x1F78, 0x03C5, 0x1F7A,
-+      0x03C9, 0x1F7C, 0x03CA, 0x1FD2, 0x03CB, 0x1FE2, 0x0415, 0x0400,
-+      0x0418, 0x040D, 0x0435, 0x0450, 0x0438, 0x045D, 0x1F00, 0x1F02,
-+      0x1F01, 0x1F03, 0x1F08, 0x1F0A, 0x1F09, 0x1F0B, 0x1F10, 0x1F12,
-+      0x1F11, 0x1F13, 0x1F18, 0x1F1A, 0x1F19, 0x1F1B, 0x1F20, 0x1F22,
-+      0x1F21, 0x1F23, 0x1F28, 0x1F2A, 0x1F29, 0x1F2B, 0x1F30, 0x1F32,
-+      0x1F31, 0x1F33, 0x1F38, 0x1F3A, 0x1F39, 0x1F3B, 0x1F40, 0x1F42,
-+      0x1F41, 0x1F43, 0x1F48, 0x1F4A, 0x1F49, 0x1F4B, 0x1F50, 0x1F52,
-+      0x1F51, 0x1F53, 0x1F59, 0x1F5B, 0x1F60, 0x1F62, 0x1F61, 0x1F63,
-+      0x1F68, 0x1F6A, 0x1F69, 0x1F6B, 0x1FBF, 0x1FCD, 0x1FFE, 0x1FDD,
-+      0x0041, 0x00C1, 0x0043, 0x0106, 0x0045, 0x00C9, 0x0047, 0x01F4,
-+      0x0049, 0x00CD, 0x004B, 0x1E30, 0x004C, 0x0139, 0x004D, 0x1E3E,
-+      0x004E, 0x0143, 0x004F, 0x00D3, 0x0050, 0x1E54, 0x0052, 0x0154,
-+      0x0053, 0x015A, 0x0055, 0x00DA, 0x0057, 0x1E82, 0x0059, 0x00DD,
-+      0x005A, 0x0179, 0x0061, 0x00E1, 0x0063, 0x0107, 0x0065, 0x00E9,
-+      0x0067, 0x01F5, 0x0069, 0x00ED, 0x006B, 0x1E31, 0x006C, 0x013A,
-+      0x006D, 0x1E3F, 0x006E, 0x0144, 0x006F, 0x00F3, 0x0070, 0x1E55,
-+      0x0072, 0x0155, 0x0073, 0x015B, 0x0075, 0x00FA, 0x0077, 0x1E83,
-+      0x0079, 0x00FD, 0x007A, 0x017A, 0x00A8, 0x0385, 0x00C2, 0x1EA4,
-+      0x00C5, 0x01FA, 0x00C6, 0x01FC, 0x00C7, 0x1E08, 0x00CA, 0x1EBE,
-+      0x00CF, 0x1E2E, 0x00D4, 0x1ED0, 0x00D5, 0x1E4C, 0x00D8, 0x01FE,
-+      0x00DC, 0x01D7, 0x00E2, 0x1EA5, 0x00E5, 0x01FB, 0x00E6, 0x01FD,
-+      0x00E7, 0x1E09, 0x00EA, 0x1EBF, 0x00EF, 0x1E2F, 0x00F4, 0x1ED1,
-+      0x00F5, 0x1E4D, 0x00F8, 0x01FF, 0x00FC, 0x01D8, 0x0102, 0x1EAE,
-+      0x0103, 0x1EAF, 0x0112, 0x1E16, 0x0113, 0x1E17, 0x014C, 0x1E52,
-+      0x014D, 0x1E53, 0x0168, 0x1E78, 0x0169, 0x1E79, 0x01A0, 0x1EDA,
-+      0x01A1, 0x1EDB, 0x01AF, 0x1EE8, 0x01B0, 0x1EE9, 0x0391, 0x0386,
-+      0x0395, 0x0388, 0x0397, 0x0389, 0x0399, 0x038A, 0x039F, 0x038C,
-+      0x03A5, 0x038E, 0x03A9, 0x038F, 0x03B1, 0x03AC, 0x03B5, 0x03AD,
-+      0x03B7, 0x03AE, 0x03B9, 0x03AF, 0x03BF, 0x03CC, 0x03C5, 0x03CD,
-+      0x03C9, 0x03CE, 0x03CA, 0x0390, 0x03CB, 0x03B0, 0x03D2, 0x03D3,
-+      0x0413, 0x0403, 0x041A, 0x040C, 0x0433, 0x0453, 0x043A, 0x045C,
-+      0x1F00, 0x1F04, 0x1F01, 0x1F05, 0x1F08, 0x1F0C, 0x1F09, 0x1F0D,
-+      0x1F10, 0x1F14, 0x1F11, 0x1F15, 0x1F18, 0x1F1C, 0x1F19, 0x1F1D,
-+      0x1F20, 0x1F24, 0x1F21, 0x1F25, 0x1F28, 0x1F2C, 0x1F29, 0x1F2D,
-+      0x1F30, 0x1F34, 0x1F31, 0x1F35, 0x1F38, 0x1F3C, 0x1F39, 0x1F3D,
-+      0x1F40, 0x1F44, 0x1F41, 0x1F45, 0x1F48, 0x1F4C, 0x1F49, 0x1F4D,
-+      0x1F50, 0x1F54, 0x1F51, 0x1F55, 0x1F59, 0x1F5D, 0x1F60, 0x1F64,
-+      0x1F61, 0x1F65, 0x1F68, 0x1F6C, 0x1F69, 0x1F6D, 0x1FBF, 0x1FCE,
-+      0x1FFE, 0x1FDE, 0x0041, 0x00C2, 0x0043, 0x0108, 0x0045, 0x00CA,
-+      0x0047, 0x011C, 0x0048, 0x0124, 0x0049, 0x00CE, 0x004A, 0x0134,
-+      0x004F, 0x00D4, 0x0053, 0x015C, 0x0055, 0x00DB, 0x0057, 0x0174,
-+      0x0059, 0x0176, 0x005A, 0x1E90, 0x0061, 0x00E2, 0x0063, 0x0109,
-+      0x0065, 0x00EA, 0x0067, 0x011D, 0x0068, 0x0125, 0x0069, 0x00EE,
-+      0x006A, 0x0135, 0x006F, 0x00F4, 0x0073, 0x015D, 0x0075, 0x00FB,
-+      0x0077, 0x0175, 0x0079, 0x0177, 0x007A, 0x1E91, 0x1EA0, 0x1EAC,
-+      0x1EA1, 0x1EAD, 0x1EB8, 0x1EC6, 0x1EB9, 0x1EC7, 0x1ECC, 0x1ED8,
-+      0x1ECD, 0x1ED9, 0x0041, 0x00C3, 0x0045, 0x1EBC, 0x0049, 0x0128,
-+      0x004E, 0x00D1, 0x004F, 0x00D5, 0x0055, 0x0168, 0x0056, 0x1E7C,
-+      0x0059, 0x1EF8, 0x0061, 0x00E3, 0x0065, 0x1EBD, 0x0069, 0x0129,
-+      0x006E, 0x00F1, 0x006F, 0x00F5, 0x0075, 0x0169, 0x0076, 0x1E7D,
-+      0x0079, 0x1EF9, 0x00C2, 0x1EAA, 0x00CA, 0x1EC4, 0x00D4, 0x1ED6,
-+      0x00E2, 0x1EAB, 0x00EA, 0x1EC5, 0x00F4, 0x1ED7, 0x0102, 0x1EB4,
-+      0x0103, 0x1EB5, 0x01A0, 0x1EE0, 0x01A1, 0x1EE1, 0x01AF, 0x1EEE,
-+      0x01B0, 0x1EEF, 0x0041, 0x0100, 0x0045, 0x0112, 0x0047, 0x1E20,
-+      0x0049, 0x012A, 0x004F, 0x014C, 0x0055, 0x016A, 0x0059, 0x0232,
-+      0x0061, 0x0101, 0x0065, 0x0113, 0x0067, 0x1E21, 0x0069, 0x012B,
-+      0x006F, 0x014D, 0x0075, 0x016B, 0x0079, 0x0233, 0x00C4, 0x01DE,
-+      0x00C6, 0x01E2, 0x00D5, 0x022C, 0x00D6, 0x022A, 0x00DC, 0x01D5,
-+      0x00E4, 0x01DF, 0x00E6, 0x01E3, 0x00F5, 0x022D, 0x00F6, 0x022B,
-+      0x00FC, 0x01D6, 0x01EA, 0x01EC, 0x01EB, 0x01ED, 0x0226, 0x01E0,
-+      0x0227, 0x01E1, 0x022E, 0x0230, 0x022F, 0x0231, 0x0391, 0x1FB9,
-+      0x0399, 0x1FD9, 0x03A5, 0x1FE9, 0x03B1, 0x1FB1, 0x03B9, 0x1FD1,
-+      0x03C5, 0x1FE1, 0x0418, 0x04E2, 0x0423, 0x04EE, 0x0438, 0x04E3,
-+      0x0443, 0x04EF, 0x1E36, 0x1E38, 0x1E37, 0x1E39, 0x1E5A, 0x1E5C,
-+      0x1E5B, 0x1E5D, 0x0041, 0x0102, 0x0045, 0x0114, 0x0047, 0x011E,
-+      0x0049, 0x012C, 0x004F, 0x014E, 0x0055, 0x016C, 0x0061, 0x0103,
-+      0x0065, 0x0115, 0x0067, 0x011F, 0x0069, 0x012D, 0x006F, 0x014F,
-+      0x0075, 0x016D, 0x0228, 0x1E1C, 0x0229, 0x1E1D, 0x0391, 0x1FB8,
-+      0x0399, 0x1FD8, 0x03A5, 0x1FE8, 0x03B1, 0x1FB0, 0x03B9, 0x1FD0,
-+      0x03C5, 0x1FE0, 0x0410, 0x04D0, 0x0415, 0x04D6, 0x0416, 0x04C1,
-+      0x0418, 0x0419, 0x0423, 0x040E, 0x0430, 0x04D1, 0x0435, 0x04D7,
-+      0x0436, 0x04C2, 0x0438, 0x0439, 0x0443, 0x045E, 0x1EA0, 0x1EB6,
-+      0x1EA1, 0x1EB7, 0x0041, 0x0226, 0x0042, 0x1E02, 0x0043, 0x010A,
-+      0x0044, 0x1E0A, 0x0045, 0x0116, 0x0046, 0x1E1E, 0x0047, 0x0120,
-+      0x0048, 0x1E22, 0x0049, 0x0130, 0x004D, 0x1E40, 0x004E, 0x1E44,
-+      0x004F, 0x022E, 0x0050, 0x1E56, 0x0052, 0x1E58, 0x0053, 0x1E60,
-+      0x0054, 0x1E6A, 0x0057, 0x1E86, 0x0058, 0x1E8A, 0x0059, 0x1E8E,
-+      0x005A, 0x017B, 0x0061, 0x0227, 0x0062, 0x1E03, 0x0063, 0x010B,
-+      0x0064, 0x1E0B, 0x0065, 0x0117, 0x0066, 0x1E1F, 0x0067, 0x0121,
-+      0x0068, 0x1E23, 0x006D, 0x1E41, 0x006E, 0x1E45, 0x006F, 0x022F,
-+      0x0070, 0x1E57, 0x0072, 0x1E59, 0x0073, 0x1E61, 0x0074, 0x1E6B,
-+      0x0077, 0x1E87, 0x0078, 0x1E8B, 0x0079, 0x1E8F, 0x007A, 0x017C,
-+      0x015A, 0x1E64, 0x015B, 0x1E65, 0x0160, 0x1E66, 0x0161, 0x1E67,
-+      0x017F, 0x1E9B, 0x1E62, 0x1E68, 0x1E63, 0x1E69, 0x0041, 0x00C4,
-+      0x0045, 0x00CB, 0x0048, 0x1E26, 0x0049, 0x00CF, 0x004F, 0x00D6,
-+      0x0055, 0x00DC, 0x0057, 0x1E84, 0x0058, 0x1E8C, 0x0059, 0x0178,
-+      0x0061, 0x00E4, 0x0065, 0x00EB, 0x0068, 0x1E27, 0x0069, 0x00EF,
-+      0x006F, 0x00F6, 0x0074, 0x1E97, 0x0075, 0x00FC, 0x0077, 0x1E85,
-+      0x0078, 0x1E8D, 0x0079, 0x00FF, 0x00D5, 0x1E4E, 0x00F5, 0x1E4F,
-+      0x016A, 0x1E7A, 0x016B, 0x1E7B, 0x0399, 0x03AA, 0x03A5, 0x03AB,
-+      0x03B9, 0x03CA, 0x03C5, 0x03CB, 0x03D2, 0x03D4, 0x0406, 0x0407,
-+      0x0410, 0x04D2, 0x0415, 0x0401, 0x0416, 0x04DC, 0x0417, 0x04DE,
-+      0x0418, 0x04E4, 0x041E, 0x04E6, 0x0423, 0x04F0, 0x0427, 0x04F4,
-+      0x042B, 0x04F8, 0x042D, 0x04EC, 0x0430, 0x04D3, 0x0435, 0x0451,
-+      0x0436, 0x04DD, 0x0437, 0x04DF, 0x0438, 0x04E5, 0x043E, 0x04E7,
-+      0x0443, 0x04F1, 0x0447, 0x04F5, 0x044B, 0x04F9, 0x044D, 0x04ED,
-+      0x0456, 0x0457, 0x04D8, 0x04DA, 0x04D9, 0x04DB, 0x04E8, 0x04EA,
-+      0x04E9, 0x04EB, 0x0041, 0x1EA2, 0x0045, 0x1EBA, 0x0049, 0x1EC8,
-+      0x004F, 0x1ECE, 0x0055, 0x1EE6, 0x0059, 0x1EF6, 0x0061, 0x1EA3,
-+      0x0065, 0x1EBB, 0x0069, 0x1EC9, 0x006F, 0x1ECF, 0x0075, 0x1EE7,
-+      0x0079, 0x1EF7, 0x00C2, 0x1EA8, 0x00CA, 0x1EC2, 0x00D4, 0x1ED4,
-+      0x00E2, 0x1EA9, 0x00EA, 0x1EC3, 0x00F4, 0x1ED5, 0x0102, 0x1EB2,
-+      0x0103, 0x1EB3, 0x01A0, 0x1EDE, 0x01A1, 0x1EDF, 0x01AF, 0x1EEC,
-+      0x01B0, 0x1EED, 0x0041, 0x00C5, 0x0055, 0x016E, 0x0061, 0x00E5,
-+      0x0075, 0x016F, 0x0077, 0x1E98, 0x0079, 0x1E99, 0x004F, 0x0150,
-+      0x0055, 0x0170, 0x006F, 0x0151, 0x0075, 0x0171, 0x0423, 0x04F2,
-+      0x0443, 0x04F3, 0x0041, 0x01CD, 0x0043, 0x010C, 0x0044, 0x010E,
-+      0x0045, 0x011A, 0x0047, 0x01E6, 0x0048, 0x021E, 0x0049, 0x01CF,
-+      0x004B, 0x01E8, 0x004C, 0x013D, 0x004E, 0x0147, 0x004F, 0x01D1,
-+      0x0052, 0x0158, 0x0053, 0x0160, 0x0054, 0x0164, 0x0055, 0x01D3,
-+      0x005A, 0x017D, 0x0061, 0x01CE, 0x0063, 0x010D, 0x0064, 0x010F,
-+      0x0065, 0x011B, 0x0067, 0x01E7, 0x0068, 0x021F, 0x0069, 0x01D0,
-+      0x006A, 0x01F0, 0x006B, 0x01E9, 0x006C, 0x013E, 0x006E, 0x0148,
-+      0x006F, 0x01D2, 0x0072, 0x0159, 0x0073, 0x0161, 0x0074, 0x0165,
-+      0x0075, 0x01D4, 0x007A, 0x017E, 0x00DC, 0x01D9, 0x00FC, 0x01DA,
-+      0x01B7, 0x01EE, 0x0292, 0x01EF, 0x0041, 0x0200, 0x0045, 0x0204,
-+      0x0049, 0x0208, 0x004F, 0x020C, 0x0052, 0x0210, 0x0055, 0x0214,
-+      0x0061, 0x0201, 0x0065, 0x0205, 0x0069, 0x0209, 0x006F, 0x020D,
-+      0x0072, 0x0211, 0x0075, 0x0215, 0x0474, 0x0476, 0x0475, 0x0477,
-+      0x0041, 0x0202, 0x0045, 0x0206, 0x0049, 0x020A, 0x004F, 0x020E,
-+      0x0052, 0x0212, 0x0055, 0x0216, 0x0061, 0x0203, 0x0065, 0x0207,
-+      0x0069, 0x020B, 0x006F, 0x020F, 0x0072, 0x0213, 0x0075, 0x0217,
-+      0x0391, 0x1F08, 0x0395, 0x1F18, 0x0397, 0x1F28, 0x0399, 0x1F38,
-+      0x039F, 0x1F48, 0x03A9, 0x1F68, 0x03B1, 0x1F00, 0x03B5, 0x1F10,
-+      0x03B7, 0x1F20, 0x03B9, 0x1F30, 0x03BF, 0x1F40, 0x03C1, 0x1FE4,
-+      0x03C5, 0x1F50, 0x03C9, 0x1F60, 0x0391, 0x1F09, 0x0395, 0x1F19,
-+      0x0397, 0x1F29, 0x0399, 0x1F39, 0x039F, 0x1F49, 0x03A1, 0x1FEC,
-+      0x03A5, 0x1F59, 0x03A9, 0x1F69, 0x03B1, 0x1F01, 0x03B5, 0x1F11,
-+      0x03B7, 0x1F21, 0x03B9, 0x1F31, 0x03BF, 0x1F41, 0x03C1, 0x1FE5,
-+      0x03C5, 0x1F51, 0x03C9, 0x1F61, 0x004F, 0x01A0, 0x0055, 0x01AF,
-+      0x006F, 0x01A1, 0x0075, 0x01B0, 0x0041, 0x1EA0, 0x0042, 0x1E04,
-+      0x0044, 0x1E0C, 0x0045, 0x1EB8, 0x0048, 0x1E24, 0x0049, 0x1ECA,
-+      0x004B, 0x1E32, 0x004C, 0x1E36, 0x004D, 0x1E42, 0x004E, 0x1E46,
-+      0x004F, 0x1ECC, 0x0052, 0x1E5A, 0x0053, 0x1E62, 0x0054, 0x1E6C,
-+      0x0055, 0x1EE4, 0x0056, 0x1E7E, 0x0057, 0x1E88, 0x0059, 0x1EF4,
-+      0x005A, 0x1E92, 0x0061, 0x1EA1, 0x0062, 0x1E05, 0x0064, 0x1E0D,
-+      0x0065, 0x1EB9, 0x0068, 0x1E25, 0x0069, 0x1ECB, 0x006B, 0x1E33,
-+      0x006C, 0x1E37, 0x006D, 0x1E43, 0x006E, 0x1E47, 0x006F, 0x1ECD,
-+      0x0072, 0x1E5B, 0x0073, 0x1E63, 0x0074, 0x1E6D, 0x0075, 0x1EE5,
-+      0x0076, 0x1E7F, 0x0077, 0x1E89, 0x0079, 0x1EF5, 0x007A, 0x1E93,
-+      0x01A0, 0x1EE2, 0x01A1, 0x1EE3, 0x01AF, 0x1EF0, 0x01B0, 0x1EF1,
-+      0x0055, 0x1E72, 0x0075, 0x1E73, 0x0041, 0x1E00, 0x0061, 0x1E01,
-+      0x0053, 0x0218, 0x0054, 0x021A, 0x0073, 0x0219, 0x0074, 0x021B,
-+      0x0043, 0x00C7, 0x0044, 0x1E10, 0x0045, 0x0228, 0x0047, 0x0122,
-+      0x0048, 0x1E28, 0x004B, 0x0136, 0x004C, 0x013B, 0x004E, 0x0145,
-+      0x0052, 0x0156, 0x0053, 0x015E, 0x0054, 0x0162, 0x0063, 0x00E7,
-+      0x0064, 0x1E11, 0x0065, 0x0229, 0x0067, 0x0123, 0x0068, 0x1E29,
-+      0x006B, 0x0137, 0x006C, 0x013C, 0x006E, 0x0146, 0x0072, 0x0157,
-+      0x0073, 0x015F, 0x0074, 0x0163, 0x0041, 0x0104, 0x0045, 0x0118,
-+      0x0049, 0x012E, 0x004F, 0x01EA, 0x0055, 0x0172, 0x0061, 0x0105,
-+      0x0065, 0x0119, 0x0069, 0x012F, 0x006F, 0x01EB, 0x0075, 0x0173,
-+      0x0044, 0x1E12, 0x0045, 0x1E18, 0x004C, 0x1E3C, 0x004E, 0x1E4A,
-+      0x0054, 0x1E70, 0x0055, 0x1E76, 0x0064, 0x1E13, 0x0065, 0x1E19,
-+      0x006C, 0x1E3D, 0x006E, 0x1E4B, 0x0074, 0x1E71, 0x0075, 0x1E77,
-+      0x0048, 0x1E2A, 0x0068, 0x1E2B, 0x0045, 0x1E1A, 0x0049, 0x1E2C,
-+      0x0055, 0x1E74, 0x0065, 0x1E1B, 0x0069, 0x1E2D, 0x0075, 0x1E75,
-+      0x0042, 0x1E06, 0x0044, 0x1E0E, 0x004B, 0x1E34, 0x004C, 0x1E3A,
-+      0x004E, 0x1E48, 0x0052, 0x1E5E, 0x0054, 0x1E6E, 0x005A, 0x1E94,
-+      0x0062, 0x1E07, 0x0064, 0x1E0F, 0x0068, 0x1E96, 0x006B, 0x1E35,
-+      0x006C, 0x1E3B, 0x006E, 0x1E49, 0x0072, 0x1E5F, 0x0074, 0x1E6F,
-+      0x007A, 0x1E95, 0x003C, 0x226E, 0x003D, 0x2260, 0x003E, 0x226F,
-+      0x2190, 0x219A, 0x2192, 0x219B, 0x2194, 0x21AE, 0x21D0, 0x21CD,
-+      0x21D2, 0x21CF, 0x21D4, 0x21CE, 0x2203, 0x2204, 0x2208, 0x2209,
-+      0x220B, 0x220C, 0x2223, 0x2224, 0x2225, 0x2226, 0x223C, 0x2241,
-+      0x2243, 0x2244, 0x2245, 0x2247, 0x2248, 0x2249, 0x224D, 0x226D,
-+      0x2261, 0x2262, 0x2264, 0x2270, 0x2265, 0x2271, 0x2272, 0x2274,
-+      0x2273, 0x2275, 0x2276, 0x2278, 0x2277, 0x2279, 0x227A, 0x2280,
-+      0x227B, 0x2281, 0x227C, 0x22E0, 0x227D, 0x22E1, 0x2282, 0x2284,
-+      0x2283, 0x2285, 0x2286, 0x2288, 0x2287, 0x2289, 0x2291, 0x22E2,
-+      0x2292, 0x22E3, 0x22A2, 0x22AC, 0x22A8, 0x22AD, 0x22A9, 0x22AE,
-+      0x22AB, 0x22AF, 0x22B2, 0x22EA, 0x22B3, 0x22EB, 0x22B4, 0x22EC,
-+      0x22B5, 0x22ED, 0x00A8, 0x1FC1, 0x03B1, 0x1FB6, 0x03B7, 0x1FC6,
-+      0x03B9, 0x1FD6, 0x03C5, 0x1FE6, 0x03C9, 0x1FF6, 0x03CA, 0x1FD7,
-+      0x03CB, 0x1FE7, 0x1F00, 0x1F06, 0x1F01, 0x1F07, 0x1F08, 0x1F0E,
-+      0x1F09, 0x1F0F, 0x1F20, 0x1F26, 0x1F21, 0x1F27, 0x1F28, 0x1F2E,
-+      0x1F29, 0x1F2F, 0x1F30, 0x1F36, 0x1F31, 0x1F37, 0x1F38, 0x1F3E,
-+      0x1F39, 0x1F3F, 0x1F50, 0x1F56, 0x1F51, 0x1F57, 0x1F59, 0x1F5F,
-+      0x1F60, 0x1F66, 0x1F61, 0x1F67, 0x1F68, 0x1F6E, 0x1F69, 0x1F6F,
-+      0x1FBF, 0x1FCF, 0x1FFE, 0x1FDF, 0x0391, 0x1FBC, 0x0397, 0x1FCC,
-+      0x03A9, 0x1FFC, 0x03AC, 0x1FB4, 0x03AE, 0x1FC4, 0x03B1, 0x1FB3,
-+      0x03B7, 0x1FC3, 0x03C9, 0x1FF3, 0x03CE, 0x1FF4, 0x1F00, 0x1F80,
-+      0x1F01, 0x1F81, 0x1F02, 0x1F82, 0x1F03, 0x1F83, 0x1F04, 0x1F84,
-+      0x1F05, 0x1F85, 0x1F06, 0x1F86, 0x1F07, 0x1F87, 0x1F08, 0x1F88,
-+      0x1F09, 0x1F89, 0x1F0A, 0x1F8A, 0x1F0B, 0x1F8B, 0x1F0C, 0x1F8C,
-+      0x1F0D, 0x1F8D, 0x1F0E, 0x1F8E, 0x1F0F, 0x1F8F, 0x1F20, 0x1F90,
-+      0x1F21, 0x1F91, 0x1F22, 0x1F92, 0x1F23, 0x1F93, 0x1F24, 0x1F94,
-+      0x1F25, 0x1F95, 0x1F26, 0x1F96, 0x1F27, 0x1F97, 0x1F28, 0x1F98,
-+      0x1F29, 0x1F99, 0x1F2A, 0x1F9A, 0x1F2B, 0x1F9B, 0x1F2C, 0x1F9C,
-+      0x1F2D, 0x1F9D, 0x1F2E, 0x1F9E, 0x1F2F, 0x1F9F, 0x1F60, 0x1FA0,
-+      0x1F61, 0x1FA1, 0x1F62, 0x1FA2, 0x1F63, 0x1FA3, 0x1F64, 0x1FA4,
-+      0x1F65, 0x1FA5, 0x1F66, 0x1FA6, 0x1F67, 0x1FA7, 0x1F68, 0x1FA8,
-+      0x1F69, 0x1FA9, 0x1F6A, 0x1FAA, 0x1F6B, 0x1FAB, 0x1F6C, 0x1FAC,
-+      0x1F6D, 0x1FAD, 0x1F6E, 0x1FAE, 0x1F6F, 0x1FAF, 0x1F70, 0x1FB2,
-+      0x1F74, 0x1FC2, 0x1F7C, 0x1FF2, 0x1FB6, 0x1FB7, 0x1FC6, 0x1FC7,
-+      0x1FF6, 0x1FF7, 0x0627, 0x0622, 0x0627, 0x0623, 0x0648, 0x0624,
-+      0x064A, 0x0626, 0x06C1, 0x06C2, 0x06D2, 0x06D3, 0x06D5, 0x06C0,
-+      0x0627, 0x0625, 0x0928, 0x0929, 0x0930, 0x0931, 0x0933, 0x0934,
-+      0x09C7, 0x09CB, 0x09C7, 0x09CC, 0x0B47, 0x0B4B, 0x0B47, 0x0B48,
-+      0x0B47, 0x0B4C, 0x0BC6, 0x0BCA, 0x0BC7, 0x0BCB, 0x0B92, 0x0B94,
-+      0x0BC6, 0x0BCC, 0x0C46, 0x0C48, 0x0CC6, 0x0CCA, 0x0CBF, 0x0CC0,
-+      0x0CC6, 0x0CC7, 0x0CCA, 0x0CCB, 0x0CC6, 0x0CC8, 0x0D46, 0x0D4A,
-+      0x0D47, 0x0D4B, 0x0D46, 0x0D4C, 0x0DD9, 0x0DDA, 0x0DDC, 0x0DDD,
-+      0x0DD9, 0x0DDC, 0x0DD9, 0x0DDE, 0x1025, 0x1026, 0x3046, 0x3094,
-+      0x304B, 0x304C, 0x304D, 0x304E, 0x304F, 0x3050, 0x3051, 0x3052,
-+      0x3053, 0x3054, 0x3055, 0x3056, 0x3057, 0x3058, 0x3059, 0x305A,
-+      0x305B, 0x305C, 0x305D, 0x305E, 0x305F, 0x3060, 0x3061, 0x3062,
-+      0x3064, 0x3065, 0x3066, 0x3067, 0x3068, 0x3069, 0x306F, 0x3070,
-+      0x3072, 0x3073, 0x3075, 0x3076, 0x3078, 0x3079, 0x307B, 0x307C,
-+      0x309D, 0x309E, 0x30A6, 0x30F4, 0x30AB, 0x30AC, 0x30AD, 0x30AE,
-+      0x30AF, 0x30B0, 0x30B1, 0x30B2, 0x30B3, 0x30B4, 0x30B5, 0x30B6,
-+      0x30B7, 0x30B8, 0x30B9, 0x30BA, 0x30BB, 0x30BC, 0x30BD, 0x30BE,
-+      0x30BF, 0x30C0, 0x30C1, 0x30C2, 0x30C4, 0x30C5, 0x30C6, 0x30C7,
-+      0x30C8, 0x30C9, 0x30CF, 0x30D0, 0x30D2, 0x30D3, 0x30D5, 0x30D6,
-+      0x30D8, 0x30D9, 0x30DB, 0x30DC, 0x30EF, 0x30F7, 0x30F0, 0x30F8,
-+      0x30F1, 0x30F9, 0x30F2, 0x30FA, 0x30FD, 0x30FE, 0x306F, 0x3071,
-+      0x3072, 0x3074, 0x3075, 0x3077, 0x3078, 0x307A, 0x307B, 0x307D,
-+      0x30CF, 0x30D1, 0x30D2, 0x30D4, 0x30D5, 0x30D7, 0x30D8, 0x30DA,
-+      0x30DB, 0x30DD
-+};
-+
-+static const u_int8_t
-+__CFUniCharCombiningBitmap[] = {
-+      0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
-+      0x00, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C,
-+      0x0D, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E,
-+      0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x13, 0x00,
-+
-+      0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
-+      0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x78, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0xFE, 0xFF, 0xFB, 0xFF, 0xFF, 0xBB,
-+      0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0xF8, 0x3F, 0x00, 0x00, 0x00, 0x01, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0xC0, 0xFF, 0x9F, 0x3D, 0x00, 0x00,
-+      0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0xFF, 0xFF,
-+      0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x01, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0,
-+      0xFF, 0x3F, 0x1E, 0x00, 0x0C, 0x00, 0x00, 0x00,
-+      0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0,
-+      0x9F, 0x39, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x00,
-+      0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0,
-+      0x87, 0x39, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
-+      0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0,
-+      0xBF, 0x3B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0,
-+      0x8F, 0x39, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
-+      0xC7, 0x3D, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
-+      0xDF, 0x3D, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
-+      0xDF, 0x3D, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
-+      0xCF, 0x3D, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x84, 0x5F, 0xFF, 0x00, 0x00, 0x0C, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF2, 0x07,
-+      0x80, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF2, 0x1B,
-+      0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0xA0, 0xC2,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF,
-+      0xDF, 0x00, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0x1F,
-+      0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xC7, 0x03,
-+      0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x1C, 0x00,
-+      0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x0C, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF,
-+      0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0xFF, 0xFF, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0x3F, 0x00,
-+      0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF,
-+      0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
-+};
-+
-+/* Surrogate Pair Constants */
-+#define SP_HALF_SHIFT 10
-+#define SP_HALF_BASE  0x0010000UL
-+#define SP_HALF_MASK  0x3FFUL
-+
-+#define SP_HIGH_FIRST 0xD800UL
-+#define SP_HIGH_LAST  0xDBFFUL
-+#define SP_LOW_FIRST  0xDC00UL
-+#define SP_LOW_LAST   0xDFFFUL
-+
-+/*
-+ * Test for a combining character.
-+ *
-+ * Similar to __CFUniCharIsNonBaseCharacter except that
-+ * unicode_combinable also includes Hangul Jamo characters.
-+ */
-+static inline int
-+unicode_combinable(u_int16_t character)
-+{
-+      const u_int8_t *bitmap = __CFUniCharCombiningBitmap;
-+      u_int8_t value;
-+
-+      if (character < 0x0300)
-+              return (0);
-+
-+      value = bitmap[(character >> 8) & 0xFF];
-+
-+      if (value == 0xFF) {
-+              return (1);
-+      } else if (value) {
-+              bitmap = bitmap + ((value - 1) * 32) + 256;
-+              return (bitmap[(character & 0xFF) / 8] & (1 << (character % 8)) ? 1 : 0);
-+      }
-+      return (0);
-+}
-+
-+/*
-+ * Test for a precomposed character.
-+ *
-+ * Similar to __CFUniCharIsDecomposableCharacter.
-+ */
-+static inline int
-+unicode_decomposeable(u_int16_t character) {
-+      const u_int8_t *bitmap = __CFUniCharDecomposableBitmap;
-+      u_int8_t value;
-+      
-+      if (character < 0x00C0)
-+              return (0);
-+
-+      value = bitmap[(character >> 8) & 0xFF];
-+
-+      if (value == 0xFF) {
-+              return (1);
-+      } else if (value) {
-+              bitmap = bitmap + ((value - 1) * 32) + 256;
-+              return (bitmap[(character & 0xFF) / 8] & (1 << (character % 8)) ? 1 : 0);
-+      }
-+      return (0);
-+}
-+
-+static int unicode_decompose(u_int16_t character, u_int16_t *convertedChars);
-+static u_int16_t unicode_combine(u_int16_t base, u_int16_t combining);
-+
-+char utf_extrabytes[32] = {
-+       0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
-+      -1, -1, -1, -1, -1, -1, -1, -1,  1,  1,  1,  1,  2,  2,  3, -1
-+};
-+
-+/*
-+ * utf8_encodestr - Encodes a Unicode string to UTF-8
-+ *
-+ * NOTES:
-+ *    The resulting UTF-8 string is NULL terminated.
-+ *
-+ *    If '/' chars are allowed on disk then an alternate
-+ *    (replacement) char must be provided in altslash.
-+ *
-+ * input flags:
-+ *    UTF_REVERSE_ENDIAN: Unicode byteorder is opposite current runtime
-+ *    UTF_NO_NULL_TERM:  don't add NULL termination to UTF-8 output
-+ *
-+ * result:
-+ *    ENAMETOOLONG: Name didn't fit; only buflen bytes were encoded
-+ *    EINVAL: Illegal char found; char was replaced by an '_'.
-+ */
-+int
-+utf8_encodestr(const u_int16_t * ucsp, size_t ucslen, u_int8_t * utf8p,
-+               size_t * utf8len, size_t buflen, u_int16_t altslash, int flags)
-+{
-+      u_int8_t * bufstart;
-+      u_int8_t * bufend;
-+      u_int16_t ucs_ch;
-+      u_int16_t * chp = NULL;
-+      u_int16_t sequence[8];
-+      int extra = 0;
-+      int charcnt;
-+      int swapbytes = (flags & UTF_REVERSE_ENDIAN);
-+      int nullterm  = ((flags & UTF_NO_NULL_TERM) == 0);
-+      int decompose = (flags & UTF_DECOMPOSED);
-+      int result = 0;
-+      
-+      bufstart = utf8p;
-+      bufend = bufstart + buflen;
-+      if (nullterm)
-+              --bufend;
-+      charcnt = ucslen / 2;
-+
-+      while (charcnt-- > 0) {
-+              if (extra > 0) {
-+                      --extra;
-+                      ucs_ch = *chp++;
-+              } else {
-+                      ucs_ch = swapbytes ? (*ucsp++) : *ucsp++;
-+
-+                      if (decompose && unicode_decomposeable(ucs_ch)) {
-+                              extra = unicode_decompose(ucs_ch, sequence) - 1;
-+                              charcnt += extra;
-+                              ucs_ch = sequence[0];
-+                              chp = &sequence[1];
-+                      }
-+              }
-+
-+              if (ucs_ch < 0x0080) {
-+                      if (utf8p >= bufend) {
-+                              result = ENAMETOOLONG;
-+                              break;
-+                      }                       
-+                      *utf8p++ = ucs_ch;
-+
-+              } else if (ucs_ch < 0x800) {
-+                      if ((utf8p + 1) >= bufend) {
-+                              result = ENAMETOOLONG;
-+                              break;
-+                      }
-+                      *utf8p++ = 0xc0 | (ucs_ch >> 6);
-+                      *utf8p++ = 0x80 | (0x3f & ucs_ch);
-+
-+              } else {
-+                      /* Combine valid surrogate pairs */
-+                      if (ucs_ch >= SP_HIGH_FIRST && ucs_ch <= SP_HIGH_LAST
-+                              && charcnt > 0) {
-+                              u_int16_t ch2;
-+                              u_int32_t pair;
-+
-+                              ch2 = swapbytes ? (*ucsp) : *ucsp;
-+                              if (ch2 >= SP_LOW_FIRST && ch2 <= SP_LOW_LAST) {
-+                                      pair = ((ucs_ch - SP_HIGH_FIRST) << SP_HALF_SHIFT)
-+                                              + (ch2 - SP_LOW_FIRST) + SP_HALF_BASE;
-+                                      if ((utf8p + 3) >= bufend) {
-+                                              result = ENAMETOOLONG;
-+                                              break;
-+                                      }
-+                                      --charcnt;
-+                                      ++ucsp;                         
-+                                      *utf8p++ = 0xf0 | (pair >> 18);
-+                                      *utf8p++ = 0x80 | (0x3f & (pair >> 12));
-+                                      *utf8p++ = 0x80 | (0x3f & (pair >> 6));
-+                                      *utf8p++ = 0x80 | (0x3f & pair);
-+                                      continue;
-+                              }
-+                      }
-+                      if ((utf8p + 2) >= bufend) {
-+                              result = ENAMETOOLONG;
-+                              break;
-+                      }
-+                      *utf8p++ = 0xe0 | (ucs_ch >> 12);
-+                      *utf8p++ = 0x80 | (0x3f & (ucs_ch >> 6));
-+                      *utf8p++ = 0x80 | (0x3f & ucs_ch);
-+              }       
-+      }
-+      
-+      *utf8len = utf8p - bufstart;
-+      if (nullterm)
-+              *utf8p++ = '\0';
-+
-+      return (result);
-+}
-+
-+
-+/*
-+ * utf8_decodestr - Decodes a UTF-8 string back to Unicode
-+ *
-+ * NOTES:
-+ *    The input UTF-8 string does not need to be null terminated
-+ *    if utf8len is set.
-+ *
-+ *    If '/' chars are allowed on disk then an alternate
-+ *    (replacement) char must be provided in altslash.
-+ *
-+ * input flags:
-+ *    UTF_REV_ENDIAN:   Unicode byteorder is oposite current runtime
-+ *    UTF_DECOMPOSED:   Unicode output string must be fully decompsed
-+ *
-+ * result:
-+ *    ENAMETOOLONG: Name didn't fit; only ucslen chars were decoded.
-+ *    EINVAL: Illegal UTF-8 sequence found.
-+ */
-+int
-+utf8_decodestr(const u_int8_t* utf8p, size_t utf8len, u_int16_t* ucsp,
-+               size_t *ucslen, size_t buflen, u_int16_t altslash, int flags, size_t *consumed)
-+{
-+      u_int16_t* bufstart;
-+      u_int16_t* bufend;
-+      unsigned int ucs_ch;
-+      unsigned int byte;
-+      int result = 0;
-+      int decompose, precompose, swapbytes;
-+      const u_int8_t *utf8start, *utf8lastpass;
-+
-+      decompose =  (flags & UTF_DECOMPOSED);
-+      precompose = (flags & UTF_PRECOMPOSED);
-+      swapbytes =  (flags & UTF_REVERSE_ENDIAN);
-+
-+      bufstart = ucsp;
-+      bufend = (u_int16_t *)((u_int8_t *)ucsp + buflen);
-+      utf8start = utf8p;
-+
-+      while (utf8len-- > 0) {
-+              byte = *utf8p++;
-+
-+              if (ucsp >= bufend)
-+                      goto toolong;
-+
-+              /* check for ascii */
-+              if (byte < 0x80) {
-+                      ucs_ch = byte;                 /* 1st byte */
-+              } else {
-+                      u_int32_t ch;
-+                      int extrabytes = utf_extrabytes[byte >> 3];
-+
-+                      if (utf8len < extrabytes)
-+                              goto invalid;
-+                      utf8len -= extrabytes;
-+
-+                      switch (extrabytes) {
-+                      case 1:
-+                              ch = byte; ch <<= 6;   /* 1st byte */
-+                              byte = *utf8p++;       /* 2nd byte */
-+                              if ((byte >> 6) != 2)
-+                                      goto invalid;
-+                              ch += byte;
-+                              ch -= 0x00003080UL;
-+                              if (ch < 0x0080)
-+                                      goto invalid;
-+                              ucs_ch = ch;
-+                              break;
-+                      case 2:
-+                              ch = byte; ch <<= 6;   /* 1st byte */
-+                              byte = *utf8p++;       /* 2nd byte */
-+                              if ((byte >> 6) != 2)
-+                                      goto invalid;
-+                              ch += byte; ch <<= 6;
-+                              byte = *utf8p++;       /* 3rd byte */
-+                              if ((byte >> 6) != 2)
-+                                      goto invalid;
-+                              ch += byte;
-+                              ch -= 0x000E2080UL;
-+                              if (ch < 0x0800)
-+                                      goto invalid;
-+                              if (ch >= 0xD800) {
-+                                      if (ch <= 0xDFFF)
-+                                              goto invalid;
-+                                      if (ch == 0xFFFE || ch == 0xFFFF)
-+                                              goto invalid;
-+                              }
-+                              ucs_ch = ch;
-+                              break;
-+                      case 3:
-+                              ch = byte; ch <<= 6;   /* 1st byte */
-+                              byte = *utf8p++;       /* 2nd byte */
-+                              if ((byte >> 6) != 2)
-+                                      goto invalid;
-+                              ch += byte; ch <<= 6;
-+                              byte = *utf8p++;       /* 3rd byte */
-+                              if ((byte >> 6) != 2)
-+                                      goto invalid;
-+                              ch += byte; ch <<= 6;
-+                              byte = *utf8p++;       /* 4th byte */
-+                              if ((byte >> 6) != 2)
-+                                      goto invalid;
-+                              ch += byte;
-+                              ch -= 0x03C82080UL + SP_HALF_BASE;
-+                              ucs_ch = (ch >> SP_HALF_SHIFT) + SP_HIGH_FIRST;
-+                              if (ucs_ch < SP_HIGH_FIRST || ucs_ch > SP_HIGH_LAST)
-+                                      goto invalid;
-+                              *ucsp++ = swapbytes ? (ucs_ch) : ucs_ch;
-+                              if (ucsp >= bufend)
-+                                      goto toolong;
-+                              ucs_ch = (ch & SP_HALF_MASK) + SP_LOW_FIRST;
-+                              if (ucs_ch < SP_LOW_FIRST || ucs_ch > SP_LOW_LAST)
-+                                      goto invalid;
-+                              *ucsp++ = swapbytes ? (ucs_ch) : ucs_ch;
-+                              continue;
-+                      default:
-+                              goto invalid;
-+                      }
-+              }
-+      if (precompose && (ucsp != bufstart)) {
-+              u_int16_t composite, base;
-+
-+              if (unicode_combinable(ucs_ch)) {
-+                      base = swapbytes ? (*(ucsp - 1)) : *(ucsp - 1);
-+                      composite = unicode_combine(base, ucs_ch);
-+                      if (composite) {
-+                              --ucsp;
-+                              ucs_ch = composite;
-+                      } else {
-+                              goto exit;
-+                      }
-+              } else {
-+                      goto exit;
-+              }
-+      }
-+      *ucsp++ = swapbytes ? (ucs_ch) : ucs_ch;
-+      utf8lastpass = utf8p;
-+      }
-+
-+exit:
-+      *ucslen = (u_int8_t*)ucsp - (u_int8_t*)bufstart;
-+      *consumed = utf8lastpass - utf8start;
-+      return (result);
-+
-+invalid:
-+      result = EINVAL;
-+      goto exit;
-+
-+toolong:
-+      result = ENAMETOOLONG;
-+      goto exit;
-+}
-+
-+ /*
-+  * Unicode 3.2 decomposition code (derived from Core Foundation)
-+  */
-+
-+typedef struct {
-+      u_int32_t _key;
-+      u_int32_t _value;
-+} unicode_mappings32;
-+
-+static inline u_int32_t
-+getmappedvalue32(const unicode_mappings32 *theTable, u_int32_t numElem,
-+              u_int16_t character)
-+{
-+      const unicode_mappings32 *p, *q, *divider;
-+
-+      if ((character < theTable[0]._key) || (character > theTable[numElem-1]._key))
-+              return (0);
-+
-+      p = theTable;
-+      q = p + (numElem-1);
-+      while (p <= q) {
-+              divider = p + ((q - p) >> 1);   /* divide by 2 */
-+              if (character < divider->_key) { q = divider - 1; }
-+              else if (character > divider->_key) { p = divider + 1; }
-+              else { return (divider->_value); }
-+      }
-+      return (0);
-+}
-+
-+#define RECURSIVE_DECOMPOSITION       (1 << 15)
-+#define EXTRACT_COUNT(value)  (((value) >> 12) & 0x0007)
-+
-+typedef struct {
-+      u_int16_t _key;
-+      u_int16_t _value;
-+} unicode_mappings16;
-+
-+static inline u_int16_t
-+getmappedvalue16(const unicode_mappings16 *theTable, u_int32_t numElem,
-+              u_int16_t character)
-+{
-+      const unicode_mappings16 *p, *q, *divider;
-+
-+      if ((character < theTable[0]._key) || (character > theTable[numElem-1]._key))
-+              return (0);
-+
-+      p = theTable;
-+      q = p + (numElem-1);
-+      while (p <= q) {
-+              divider = p + ((q - p) >> 1);   /* divide by 2 */
-+              if (character < divider->_key)
-+                      q = divider - 1;
-+              else if (character > divider->_key)
-+                      p = divider + 1;
-+              else
-+                      return (divider->_value);
-+      }
-+      return (0);
-+}
-+
-+
-+static u_int32_t
-+unicode_recursive_decompose(u_int16_t character, u_int16_t *convertedChars)
-+{
-+      u_int16_t value;
-+      u_int32_t length;
-+      u_int16_t firstChar;
-+      u_int16_t theChar;
-+      const u_int16_t *bmpMappings;
-+      u_int32_t usedLength;
-+
-+      value = getmappedvalue16(
-+              (const unicode_mappings16 *)__CFUniCharDecompositionTable,
-+              __UniCharDecompositionTableLength, character);
-+      length = EXTRACT_COUNT(value);
-+      firstChar = value & 0x0FFF;
-+      theChar = firstChar;
-+      bmpMappings = (length == 1 ? &theChar : __CFUniCharMultipleDecompositionTable + firstChar);
-+      usedLength = 0;
-+
-+      if (value & RECURSIVE_DECOMPOSITION) {
-+          usedLength = unicode_recursive_decompose((u_int16_t)*bmpMappings, convertedChars);
-+      
-+          --length;   /* Decrement for the first char */
-+          if (!usedLength)
-+              return 0;
-+          ++bmpMappings;
-+          convertedChars += usedLength;
-+      }
-+      
-+      usedLength += length;
-+      
-+      while (length--)
-+              *(convertedChars++) = *(bmpMappings++);
-+      
-+      return (usedLength);
-+}
-+
-+#define HANGUL_SBASE 0xAC00
-+#define HANGUL_LBASE 0x1100
-+#define HANGUL_VBASE 0x1161
-+#define HANGUL_TBASE 0x11A7
-+
-+#define HANGUL_SCOUNT 11172
-+#define HANGUL_LCOUNT 19
-+#define HANGUL_VCOUNT 21
-+#define HANGUL_TCOUNT 28
-+#define HANGUL_NCOUNT (HANGUL_VCOUNT * HANGUL_TCOUNT)
-+
-+/*
-+ * unicode_decompose - decompose a composed Unicode char
-+ *
-+ * Composed Unicode characters are forbidden on
-+ * HFS Plus volumes. ucs_decompose will convert a
-+ * composed character into its correct decomposed
-+ * sequence.
-+ *
-+ * Similar to CFUniCharDecomposeCharacter
-+ */
-+static int
-+unicode_decompose(u_int16_t character, u_int16_t *convertedChars)
-+{
-+      if ((character >= HANGUL_SBASE) &&
-+          (character <= (HANGUL_SBASE + HANGUL_SCOUNT))) {
-+              u_int32_t length;
-+
-+              character -= HANGUL_SBASE;
-+              length = (character % HANGUL_TCOUNT ? 3 : 2);
-+
-+              *(convertedChars++) =
-+                      character / HANGUL_NCOUNT + HANGUL_LBASE;
-+              *(convertedChars++) =
-+                      (character % HANGUL_NCOUNT) / HANGUL_TCOUNT + HANGUL_VBASE;
-+              if (length > 2)
-+                      *convertedChars = (character % HANGUL_TCOUNT) + HANGUL_TBASE;
-+              return (length);
-+      } else {
-+              return (unicode_recursive_decompose(character, convertedChars));
-+      }
-+}
-+
-+/*
-+ * unicode_combine - generate a precomposed Unicode char
-+ *
-+ * Precomposed Unicode characters are required for some volume
-+ * formats and network protocols.  unicode_combine will combine
-+ * a decomposed character sequence into a single precomposed
-+ * (composite) character.
-+ *
-+ * Similar toCFUniCharPrecomposeCharacter but unicode_combine
-+ * also handles Hangul Jamo characters.
-+ */
-+static u_int16_t
-+unicode_combine(u_int16_t base, u_int16_t combining)
-+{
-+      u_int32_t value;
-+
-+      /* Check HANGUL */
-+      if ((combining >= HANGUL_VBASE) && (combining < (HANGUL_TBASE + HANGUL_TCOUNT))) {
-+              /* 2 char Hangul sequences */
-+              if ((combining < (HANGUL_VBASE + HANGUL_VCOUNT)) &&
-+                  (base >= HANGUL_LBASE && base < (HANGUL_LBASE + HANGUL_LCOUNT))) {
-+                  return (HANGUL_SBASE +
-+                          ((base - HANGUL_LBASE)*(HANGUL_VCOUNT*HANGUL_TCOUNT)) +
-+                          ((combining  - HANGUL_VBASE)*HANGUL_TCOUNT));
-+              }
-+      
-+              /* 3 char Hangul sequences */
-+              if ((combining > HANGUL_TBASE) &&
-+                  (base >= HANGUL_SBASE && base < (HANGUL_SBASE + HANGUL_SCOUNT))) {
-+                      if ((base - HANGUL_SBASE) % HANGUL_TCOUNT)
-+                              return (0);
-+                      else
-+                              return (base + (combining - HANGUL_TBASE));
-+              }
-+      }
-+
-+      value = getmappedvalue32(
-+              (const unicode_mappings32 *)__CFUniCharPrecompSourceTable,
-+              __CFUniCharPrecompositionTableLength, combining);
-+
-+      if (value) {
-+              value = getmappedvalue16(
-+                      (const unicode_mappings16 *)
-+                      ((u_int32_t *)__CFUniCharBMPPrecompDestinationTable + (value & 0xFFFF)),
-+                      (value >> 16), base);
-+      }
-+      return (value);
-+}
-+
-+static int
-+utf8mac_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
-+{
-+    u_int16_t ucsp[13];
-+    size_t ucslen = 0, consumed = 0;
-+    int ret;
-+
-+    bzero(&ucsp, sizeof(ucsp));
-+    *pwc = 0;
-+
-+    ret = utf8_decodestr(s, n, ucsp, &ucslen, sizeof(ucsp), NULL, UTF_PRECOMPOSED, &consumed);
-+
-+    if (ret == ENAMETOOLONG)  /* Name didn't fit; only ucslen chars were decoded */
-+      return RET_TOOFEW(0);
-+
-+    if ( ret == EINVAL)               /* Illegal UTF-8 sequence found */
-+      return RET_ILSEQ;
-+
-+    if((ret = ucs2_mbtowc(conv, pwc, (const unsigned char *) ucsp, ucslen)) < 0)
-+      return ret;
-+
-+    return consumed;
-+}
-+
-+static int
-+utf8mac_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n) /* n == 0 is acceptable */
-+{
-+    int ret;
-+    size_t len;
-+    u_int16_t ucs_string[13];
-+
-+    if((ret = ucs2_wctomb(conv, (unsigned char *) ucs_string, wc, sizeof(ucs_string))) < 0)
-+      return ret;
-+
-+    utf8_encodestr(ucs_string, ret, r, &len, n, 0, UTF_NO_NULL_TERM | UTF_DECOMPOSED);
-+
-+    return len;
-+}
diff --git a/extras/contrib/src/Patches/libmatroska-win32.patch b/extras/contrib/src/Patches/libmatroska-win32.patch
new file mode 100644 (file)
index 0000000..91719cb
--- /dev/null
@@ -0,0 +1,17 @@
+Index: make/linux/Makefile
+===================================================================
+--- make/linux/Makefile        (revision 1206)
++++ make/linux/Makefile        (working copy)
+@@ -29,9 +29,9 @@
+ INSTALL_OPTS_LIB = -m 644
+ INSTALL_DIR_OPTS = -m 755
+-ifneq (,$(shell $(CXX) -v 2>&1 | tail -n 1 | grep -i mingw))
+-$(error Please use the Makefile in ../mingw32)
+-endif
++#ifneq (,$(shell $(CXX) -v 2>&1 | tail -n 1 | grep -i mingw))
++#$(error Please use the Makefile in ../mingw32)
++#endif
+ CWD=$(shell pwd)
diff --git a/extras/contrib/src/Patches/libogg-1.1-win32.patch b/extras/contrib/src/Patches/libogg-1.1-win32.patch
new file mode 100644 (file)
index 0000000..d032445
--- /dev/null
@@ -0,0 +1,16 @@
+Index: include/ogg/os_types.h
+===================================================================
+RCS file: /usr/local/cvsroot/ogg/include/ogg/os_types.h,v
+retrieving revision 1.12
+diff -u -r1.12 os_types.h
+--- include/ogg/os_types.h     18 Sep 2002 04:42:09 -0000      1.12
++++ include/ogg/os_types.h     18 Apr 2003 13:48:18 -0000
+@@ -24,7 +24,7 @@
+ #define _ogg_realloc realloc
+ #define _ogg_free    free
+-#ifdef _WIN32 
++#if defined(_WIN32) && !defined(__MINGW32__)
+ #  ifndef __GNUC__
+    /* MSVC/Borland */
diff --git a/extras/contrib/src/Patches/libpng-1.2.5-win32.patch b/extras/contrib/src/Patches/libpng-1.2.5-win32.patch
new file mode 100644 (file)
index 0000000..0431899
--- /dev/null
@@ -0,0 +1,47 @@
+diff -ur scripts/makefile.cygwin scripts/makefile.cygwin
+--- scripts/makefile.cygwin    2002-10-03 12:32:34.000000000 +0100
++++ scripts/makefile.cygwin    2003-07-25 11:03:42.000000000 +0100
+@@ -35,7 +35,7 @@
+ # $CFLAGS, and include pnggccrd.o in $OBJS, below, and in the dependency
+ # list at the bottom of this makefile.
+-CC=gcc
++CC=i586-mingw32msvc-gcc
+ ifdef MINGW
+ MINGW_CCFLAGS=-mno-cygwin -I/usr/include/mingw
+ MINGW_LDFLAGS=-mno-cygwin -L/usr/lib/mingw
+@@ -43,13 +43,12 @@
+ # Where "make install" puts libpng*.a, *png*.dll, png.h, and pngconf.h
+ ifndef prefix
+-prefix=/usr
+-$(warning You haven't specified a 'prefix=' location. Defaulting to "/usr")
++prefix=££PREFIX££
+ endif
+ # Where the zlib library and include files are located
+-ZLIBLIB= /usr/lib
+-ZLIBINC=
++ZLIBLIB= ££PREFIX££/lib
++ZLIBINC= ££PREFIX££/include
+ #ZLIBLIB=../zlib
+ #ZLIBINC=../zlib
+@@ -94,7 +94,7 @@
+ LDEXTRA=-Wl,--out-implib=$(IMPLIB) $(addprefix -L,$(ZLIBLIB)) -lz
+ MKDIR=/bin/mkdir -pv
+-RANLIB=ranlib
++RANLIB=i586-mingw32msvc-ranlib
+ #RANLIB=echo
+ INCPATH=$(prefix)/include
+@@ -173,7 +173,7 @@
+       $(CC) -c $(CFLAGS) -DPNG_BUILD_DLL -o $@ $<
+ $(STATLIB): $(OBJS)
+-      ar rc $@ $(OBJS)
++      i586-mingw32msvc-ar rc $@ $(OBJS)
+       $(RANLIB) $@
+ $(SHAREDDEF): projects/msvc/png32ms.def
diff --git a/extras/contrib/src/Patches/livedotcom-win32.patch b/extras/contrib/src/Patches/livedotcom-win32.patch
new file mode 100644 (file)
index 0000000..4ff6c95
--- /dev/null
@@ -0,0 +1,25 @@
+diff -ru live.orig/config.mingw live/config.mingw
+--- live.orig/config.mingw     2005-10-23 08:50:31.000000000 +0200
++++ live/config.mingw  2005-10-23 17:09:35.000000000 +0200
+@@ -1,15 +1,15 @@
+ COMPILE_OPTS =         $(INCLUDES) -I. -O -DSOCKLEN_T=int
+ C =                    c
+-C_COMPILER =           gcc
+-C_FLAGS =              $(COMPILE_OPTS) -DUSE_OUR_BZERO=1 -D__MINGW32__
++C_COMPILER =           i586-mingw32msvc-gcc
++C_FLAGS =              $(COMPILE_OPTS) -DUSE_OUR_BZERO=1 -D__MINGW32__ -DUSE_LOCALE
+ CPP =                  cpp
+-CPLUSPLUS_COMPILER =   c++
+-CPLUSPLUS_FLAGS =      $(COMPILE_OPTS) -D__MINGW32__ -Wall -Wno-deprecated
++CPLUSPLUS_COMPILER =   i586-mingw32msvc-g++
++CPLUSPLUS_FLAGS =      $(COMPILE_OPTS) -D__MINGW32__ -DUSE_LOCALE -Wall -Wno-deprecated 
+ OBJ =                  o
+-LINK =                 c++ -o 
++LINK =                 i586-mingw32msvc-g++ -o 
+ LINK_OPTS =            -L.
+ CONSOLE_LINK_OPTS =    $(LINK_OPTS)
+-LIBRARY_LINK =         ld -o 
++LIBRARY_LINK =         i586-mingw32msvc-ld -o 
+ LIBRARY_LINK_OPTS =    $(LINK_OPTS) -r -Bstatic
+ LIB_SUFFIX =                   a
+ LIBS_FOR_CONSOLE_APPLICATION = -lws2_32
diff --git a/extras/contrib/src/Patches/tiff-cross.patch b/extras/contrib/src/Patches/tiff-cross.patch
new file mode 100644 (file)
index 0000000..64aa088
--- /dev/null
@@ -0,0 +1,27 @@
+diff -Naur tiff/libtiff/Makefile.in tiff-new/libtiff/Makefile.in
+--- tiff/libtiff/Makefile.in   1996-04-30 00:16:21.000000000 +0200
++++ tiff-new/libtiff/Makefile.in       2005-08-31 20:06:07.000000000 +0200
+@@ -206,9 +206,9 @@
+ ALPHA = @ALPHAFILE@
+ VERSION       = @VERSIONFILE@
+-
++# Gruick hard code gcc if we crosscompile
+ version.h: ${VERSION} ${ALPHA} ${SRCDIR}/mkversion.c
+-      ${CC} -o mkversion ${CFLAGS} ${SRCDIR}/mkversion.c
++      gcc -o mkversion ${CFLAGS} ${SRCDIR}/mkversion.c
+       rm -f version.h; ./mkversion -v ${VERSION} -a ${ALPHA} version.h
+ tif_version.o: version.h
+@@ -217,8 +217,10 @@
+ # are generated by the mkg3states program.  On systems without
+ # make these rules have to be manually carried out.
+ #
++#Gruikk. hard code gcc when we cross-compile
++#
+ tif_fax3sm.c: ${SRCDIR}/mkg3states.c ${SRCDIR}/tif_fax3.h
+-      ${CC} -o mkg3states ${CFLAGS} ${SRCDIR}/mkg3states.c
++      gcc -o mkg3states ${CFLAGS} ${SRCDIR}/mkg3states.c
+       rm -f tif_fax3sm.c; ./mkg3states -c const tif_fax3sm.c
+ tif_aux.o: ${SRCDIR}/tif_aux.c
diff --git a/extras/contrib/src/Patches/wx-cvs-2005-02-09-patch.diff b/extras/contrib/src/Patches/wx-cvs-2005-02-09-patch.diff
new file mode 100644 (file)
index 0000000..7410cdf
--- /dev/null
@@ -0,0 +1,13 @@
+diff -u -r1.49 init.cpp
+--- src/common/init.cpp 2004/10/19 13:38:15     1.49
++++ src/common/init.cpp 2005/02/09 12:46:59
+@@ -332,7 +332,7 @@
+ {
+     wxModule::CleanUpModules();
+
+-    wxClassInfo::CleanUp();
++    //wxClassInfo::CleanUp();
+
+     // we can't do this in wxApp itself because it doesn't know if argv had
+     // been allocated
+
diff --git a/extras/contrib/src/Patches/wxMSW-win32.patch b/extras/contrib/src/Patches/wxMSW-win32.patch
new file mode 100644 (file)
index 0000000..7c1c663
--- /dev/null
@@ -0,0 +1,592 @@
+# This patch was done from wxWidgets-2.6.1-Patch01.zip
+# found on the download page of wxwidgets
+# 24/08/05 -- Xtophe
+diff -Naur wxwidgets-orig/include/wx/msw/listbox.h wxwidgets/include/wx/msw/listbox.h
+--- wxwidgets-orig/include/wx/msw/listbox.h    2005-04-11 20:18:36.000000000 +0000
++++ wxwidgets/include/wx/msw/listbox.h 2005-08-24 16:47:00.000000000 +0000
+@@ -4,7 +4,7 @@
+ // Author:      Julian Smart
+ // Modified by:
+ // Created:     01/02/97
+-// RCS-ID:      $Id: listbox.h,v 1.42 2005/04/10 15:22:57 VZ Exp $
++// RCS-ID:      $Id: listbox.h,v 1.43 2005/06/16 15:36:42 JS Exp $
+ // Copyright:   (c) Julian Smart
+ // Licence:     wxWindows licence
+ /////////////////////////////////////////////////////////////////////////////
+@@ -151,6 +151,13 @@
+     virtual wxSize DoGetBestSize() const;
++    // under XP when using "transition effect for menus and tooltips" if we
++    // return true for WM_PRINTCLIENT here then it causes noticable slowdown
++    virtual bool MSWShouldPropagatePrintChild()
++    {
++        return false;
++    }
++
+ #if wxUSE_OWNER_DRAWN
+     // control items
+     wxListBoxItemsArray m_aItems;
+diff -Naur wxwidgets-orig/include/wx/msw/uxthemep.h wxwidgets/include/wx/msw/uxthemep.h
+--- wxwidgets-orig/include/wx/msw/uxthemep.h   2005-05-14 16:57:49.000000000 +0000
++++ wxwidgets/include/wx/msw/uxthemep.h        2005-08-24 16:47:00.000000000 +0000
+@@ -12,7 +12,7 @@
+ #ifndef __WINE_UXTHEME_H
+ #define __WINE_UXTHEME_H
+-#include <commctrl.h>
++#include "wx/msw/wrapcctl.h"
+ typedef HANDLE HTHEME;
+diff -Naur wxwidgets-orig/include/wx/msw/window.h wxwidgets/include/wx/msw/window.h
+--- wxwidgets-orig/include/wx/msw/window.h     2005-05-31 20:47:32.000000000 +0000
++++ wxwidgets/include/wx/msw/window.h  2005-08-24 16:47:00.000000000 +0000
+@@ -5,7 +5,7 @@
+ // Modified by: Vadim Zeitlin on 13.05.99: complete refont of message handling,
+ //              elimination of Default(), ...
+ // Created:     01/02/97
+-// RCS-ID:      $Id: window.h,v 1.146 2005/05/19 22:17:01 RD Exp $
++// RCS-ID:      $Id: window.h,v 1.147 2005/06/16 15:36:42 JS Exp $
+ // Copyright:   (c) Julian Smart
+ // Licence:     wxWindows licence
+ /////////////////////////////////////////////////////////////////////////////
+@@ -391,6 +391,14 @@
+         return false;
+     }
++    // some controls (e.g. wxListBox) need to set the return value themselves
++    //
++    // return true to let parent handle it if we don't, false otherwise
++    virtual bool MSWShouldPropagatePrintChild()
++    {
++        return true;
++    }
++
+     // Responds to colour changes: passes event on to children.
+     void OnSysColourChanged(wxSysColourChangedEvent& event);
+diff -Naur wxwidgets-orig/src/generic/grid.cpp wxwidgets/src/generic/grid.cpp
+--- wxwidgets-orig/src/generic/grid.cpp        2005-06-02 15:19:48.000000000 +0000
++++ wxwidgets/src/generic/grid.cpp     2005-08-24 16:47:00.000000000 +0000
+@@ -4,7 +4,7 @@
+ // Author:      Michael Bedward (based on code by Julian Smart, Robin Dunn)
+ // Modified by: Robin Dunn, Vadim Zeitlin
+ // Created:     1/08/1999
+-// RCS-ID:      $Id: grid.cpp,v 1.339 2005/06/02 11:38:16 VZ Exp $
++// RCS-ID:      $Id: grid.cpp,v 1.341 2005/06/09 14:49:54 JS Exp $
+ // Copyright:   (c) Michael Bedward (mbedward@ozemail.com.au)
+ // Licence:     wxWindows licence
+ /////////////////////////////////////////////////////////////////////////////
+@@ -242,7 +242,8 @@
+ public:
+     wxGridCellEditorEvtHandler(wxGrid* grid, wxGridCellEditor* editor)
+         : m_grid(grid),
+-          m_editor(editor)
++          m_editor(editor),
++          m_inSetFocus(false)
+     {
+     }
+@@ -250,10 +251,16 @@
+     void OnKeyDown(wxKeyEvent& event);
+     void OnChar(wxKeyEvent& event);
++    void SetInSetFocus(bool inSetFocus) { m_inSetFocus = inSetFocus; }
++
+ private:
+     wxGrid*             m_grid;
+     wxGridCellEditor*   m_editor;
++    // Work around the fact that a focus kill event can be sent to
++    // a combobox within a set focus event.
++    bool                m_inSetFocus;
++    
+     DECLARE_EVENT_TABLE()
+     DECLARE_DYNAMIC_CLASS(wxGridCellEditorEvtHandler)
+     DECLARE_NO_COPY_CLASS(wxGridCellEditorEvtHandler)
+@@ -571,7 +578,7 @@
+     // through in that case.
+     if ((ctrl || alt) && !(ctrl && alt))
+         return false;
+-    
++
+ #if wxUSE_UNICODE
+     int key = event.GetUnicodeKey();
+     bool keyOk = true;
+@@ -588,7 +595,7 @@
+     return keyOk;
+ #else // !wxUSE_UNICODE
+     int key = event.GetKeyCode();
+-    if (key <= 255) 
++    if (key <= 255)
+         return true;
+     return false;
+ #endif // wxUSE_UNICODE/!wxUSE_UNICODE
+@@ -752,7 +759,7 @@
+     wxTextCtrl* tc = Text();
+     wxChar ch;
+     long pos;
+-    
++
+ #if wxUSE_UNICODE
+     ch = event.GetUnicodeKey();
+     if (ch <= 127)
+@@ -1106,7 +1113,7 @@
+     tmpbuf[0] = (char) keycode;
+     tmpbuf[1] = '\0';
+     wxString strbuf(tmpbuf, *wxConvCurrent);
+-#if wxUSE_INTL        
++#if wxUSE_INTL
+     bool is_decimal_point = ( strbuf ==
+        wxLocale::GetInfo(wxLOCALE_DECIMAL_POINT, wxLOCALE_CAT_NUMBER) );
+ #else
+@@ -1184,14 +1191,14 @@
+         tmpbuf[0] = (char) keycode;
+         tmpbuf[1] = '\0';
+         wxString strbuf(tmpbuf, *wxConvCurrent);
+-#if wxUSE_INTL        
++#if wxUSE_INTL
+         bool is_decimal_point =
+             ( strbuf == wxLocale::GetInfo(wxLOCALE_DECIMAL_POINT,
+                                           wxLOCALE_CAT_NUMBER) );
+ #else
+         bool is_decimal_point = ( strbuf == _T(".") );
+ #endif
+-        if ( (keycode < 128) && 
++        if ( (keycode < 128) &&
+              (wxIsdigit(keycode) || tolower(keycode) == 'e' ||
+               is_decimal_point || keycode == '+' || keycode == '-') )
+             return true;
+@@ -1375,11 +1382,11 @@
+         case WXK_SPACE:
+             CBox()->SetValue(!CBox()->GetValue());
+             break;
+-            
++
+         case '+':
+             CBox()->SetValue(true);
+             break;
+-                
++
+         case '-':
+             CBox()->SetValue(false);
+             break;
+@@ -1460,6 +1467,14 @@
+     wxASSERT_MSG(m_control,
+                  wxT("The wxGridCellEditor must be Created first!"));
++    wxGridCellEditorEvtHandler* evtHandler = NULL;
++    if (m_control)
++        evtHandler = wxDynamicCast(m_control->GetEventHandler(), wxGridCellEditorEvtHandler);
++
++    // Don't immediately end if we get a kill focus event within BeginEdit
++    if (evtHandler)
++        evtHandler->SetInSetFocus(true);
++
+     m_startValue = grid->GetTable()->GetValue(row, col);
+     if (m_allowOthers)
+@@ -1468,12 +1483,15 @@
+     {
+         // find the right position, or default to the first if not found
+         int pos = Combo()->FindString(m_startValue);
+-        if (pos == -1)
++        if (pos == wxNOT_FOUND)
+             pos = 0;
+         Combo()->SetSelection(pos);
+     }
+     Combo()->SetInsertionPointEnd();
+     Combo()->SetFocus();
++
++    if (evtHandler)
++        evtHandler->SetInSetFocus(false);
+ }
+ bool wxGridCellChoiceEditor::EndEdit(int row, int col,
+@@ -1525,6 +1543,10 @@
+ void wxGridCellEditorEvtHandler::OnKillFocus(wxFocusEvent& event)
+ {
++    // Don't disable the cell if we're just starting to edit it
++    if (m_inSetFocus)
++        return;
++
+     // accept changes
+     m_grid->DisableCellEditControl();
+@@ -3783,7 +3805,7 @@
+ {
+     if (event.ButtonDown(wxMOUSE_BTN_LEFT) && FindFocus() != this)
+         SetFocus();
+-    
++
+     m_owner->ProcessGridCellMouseEvent( event );
+ }
+@@ -4905,6 +4927,7 @@
+                 break;
+                 case WXGRID_CURSOR_SELECT_ROW:
++                {
+                     if ( (row = YToRow( y )) >= 0 )
+                     {
+                         if ( m_selection )
+@@ -4916,6 +4939,8 @@
+                                                     event.MetaDown() );
+                         }
+                     }
++                }
++                break;
+                 // default label to suppress warnings about "enumeration value
+                 // 'xxx' not handled in switch
+@@ -5127,6 +5152,7 @@
+                 break;
+                 case WXGRID_CURSOR_SELECT_COL:
++                {
+                     if ( (col = XToCol( x )) >= 0 )
+                     {
+                         if ( m_selection )
+@@ -5138,6 +5164,8 @@
+                                                     event.MetaDown() );
+                         }
+                     }
++                }
++                break;
+                 // default label to suppress warnings about "enumeration value
+                 // 'xxx' not handled in switch
+diff -Naur wxwidgets-orig/src/generic/splitter.cpp wxwidgets/src/generic/splitter.cpp
+--- wxwidgets-orig/src/generic/splitter.cpp    2005-03-29 12:22:43.000000000 +0000
++++ wxwidgets/src/generic/splitter.cpp 2005-08-24 16:47:00.000000000 +0000
+@@ -4,7 +4,7 @@
+ // Author:      Julian Smart
+ // Modified by:
+ // Created:     01/02/97
+-// RCS-ID:      $Id: splitter.cpp,v 1.114 2005/03/29 12:22:43 JS Exp $
++// RCS-ID:      $Id: splitter.cpp,v 1.115 2005/06/21 16:08:22 JS Exp $
+ // Copyright:   (c) Julian Smart
+ // Licence:     wxWindows licence
+ /////////////////////////////////////////////////////////////////////////////
+@@ -94,6 +94,11 @@
+     if ( !wxWindow::Create(parent, id, pos, size, style, name) )
+         return false;
++    if (size.x >= 0)
++        m_lastSize.x = size.x;
++    if (size.y >= 0)
++        m_lastSize.y = size.y;
++    
+     m_permitUnsplitAlways = (style & wxSP_PERMIT_UNSPLIT) != 0;
+     // FIXME: with this line the background is not erased at all under GTK1,
+@@ -700,8 +705,8 @@
+             y2 = size2;
+         }
+-        GetWindow1()->SetSize(border, border, w1, h1);
+         GetWindow2()->SetSize(x2, y2, w2, h2);
++        GetWindow1()->SetSize(border, border, w1, h1);
+     }
+     wxClientDC dc(this);
+diff -Naur wxwidgets-orig/src/msw/helpchm.cpp wxwidgets/src/msw/helpchm.cpp
+--- wxwidgets-orig/src/msw/helpchm.cpp 2005-05-31 20:49:53.000000000 +0000
++++ wxwidgets/src/msw/helpchm.cpp      2005-08-24 16:47:00.000000000 +0000
+@@ -4,7 +4,7 @@
+ // Author:      Julian Smart
+ // Modified by:
+ // Created:     16/04/2000
+-// RCS-ID:      $Id: helpchm.cpp,v 1.23 2005/05/24 08:53:32 CE Exp $
++// RCS-ID:      $Id: helpchm.cpp,v 1.24 2005/06/20 14:02:35 JS Exp $
+ // Copyright:   (c) Julian Smart
+ // Licence:     wxWindows licence
+ /////////////////////////////////////////////////////////////////////////////
+@@ -243,7 +243,6 @@
+ wxCHMHelpController::~wxCHMHelpController()
+ {
+-      gs_htmlHelp(GetSuitableHWND(), 0, HH_CLOSE_ALL, 0L);
+     UnloadHtmlHelpLibrary();
+ }
+diff -Naur wxwidgets-orig/src/msw/notebook.cpp wxwidgets/src/msw/notebook.cpp
+--- wxwidgets-orig/src/msw/notebook.cpp        2005-05-31 20:49:55.000000000 +0000
++++ wxwidgets/src/msw/notebook.cpp     2005-08-24 16:47:00.000000000 +0000
+@@ -4,7 +4,7 @@
+ // Author:      Vadim Zeitlin
+ // Modified by:
+ // Created:     11.06.98
+-// RCS-ID:      $Id: notebook.cpp,v 1.155 2005/05/30 11:23:27 JS Exp $
++// RCS-ID:      $Id: notebook.cpp,v 1.158 2005/06/19 19:11:11 JS Exp $
+ // Copyright:   (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
+ // Licence:     wxWindows licence
+ ///////////////////////////////////////////////////////////////////////////////
+@@ -93,6 +93,14 @@
+ // the pointer to standard spin button wnd proc
+ static WXFARPROC gs_wndprocNotebookSpinBtn = (WXFARPROC)NULL;
++// the pointer to standard tab control wnd proc
++static WXFARPROC gs_wndprocNotebook = (WXFARPROC)NULL; 
++
++LRESULT APIENTRY _EXPORT wxNotebookWndProc(HWND hwnd,
++                                           UINT message,
++                                           WPARAM wParam,
++                                           LPARAM lParam);
++
+ #endif // USE_NOTEBOOK_ANTIFLICKER
+ // ----------------------------------------------------------------------------
+@@ -285,6 +293,7 @@
+     LPCTSTR className = WC_TABCONTROL;
++#if USE_NOTEBOOK_ANTIFLICKER
+     // SysTabCtl32 class has natively CS_HREDRAW and CS_VREDRAW enabled and it
+     // causes horrible flicker when resizing notebook, so get rid of it by
+     // using a class without these styles (but otherwise identical to it)
+@@ -296,11 +305,14 @@
+             // get a copy of standard class and modify it
+             WNDCLASS wc;
+-            if ( ::GetClassInfo(::GetModuleHandle(NULL), WC_TABCONTROL, &wc) )
++            if ( ::GetClassInfo(NULL, WC_TABCONTROL, &wc) )
+             {
++                gs_wndprocNotebook =
++                    wx_reinterpret_cast(WXFARPROC, wc.lpfnWndProc);
+                 wc.lpszClassName = wxT("_wx_SysTabCtl32");
+                 wc.style &= ~(CS_HREDRAW | CS_VREDRAW);
+-
++                wc.hInstance = wxGetInstance();
++                wc.lpfnWndProc = wxNotebookWndProc;
+                 s_clsNotebook.Register(wc);
+             }
+             else
+@@ -318,6 +330,7 @@
+             className = s_clsNotebook.GetName().c_str();
+         }
+     }
++#endif // USE_NOTEBOOK_ANTIFLICKER
+     if ( !CreateControl(parent, id, pos, size, style | wxTAB_TRAVERSAL,
+                         wxDefaultValidator, name) )
+@@ -789,6 +802,16 @@
+                             hwnd, message, wParam, lParam);
+ }
++LRESULT APIENTRY _EXPORT wxNotebookWndProc(HWND hwnd,
++                                           UINT message,
++                                           WPARAM wParam,
++                                           LPARAM lParam)
++{
++    return ::CallWindowProc(CASTWNDPROC gs_wndprocNotebook,
++                            hwnd, message, wParam, lParam);
++}
++
++ 
+ void wxNotebook::OnEraseBackground(wxEraseEvent& WXUNUSED(event))
+ {
+@@ -918,7 +941,7 @@
+         RefreshRect(wxRect(0, rc.top, rc.left, height), false);
+         RefreshRect(wxRect(0, rc.bottom, widthNbook, heightNbook - rc.bottom),
+                     false);
+-        RefreshRect(wxRect(rc.right, rc.top, widthNbook - rc.bottom, height),
++        RefreshRect(wxRect(rc.right, rc.top, widthNbook - rc.right, height),
+                     false);
+     }
+@@ -967,7 +990,7 @@
+       {
+         wxNotebookPage *pPage = m_pages[sel];
+         pPage->Show(true);
+-        
++
+         // As per bug report:
+         // http://sourceforge.net/tracker/index.php?func=detail&aid=1150659&group_id=9863&atid=109863,
+         // we should not set the page focus (and thereby the focus for
+@@ -1102,17 +1125,17 @@
+     if ( child )
+         ::MapWindowPoints(GetHwnd(), GetHwndOf(child), (POINT *)&rc, 2);
+-
+-    // apparently DrawThemeBackground() modifies the rect passed to it and if we
+-    // don't do these adjustments, there are some drawing artifacts which are
+-    // only visible with some non default themes; so modify the rect here using
+-    // the magic numbers below so that it still paints the correct area
+-    rc.left   -= 2;
+-    rc.top    -= 2;
+-    rc.right  += 4;
+-    rc.bottom += 5;
+-
+-
++    // we have the content area (page size), but we need to draw all of the
++    // background for it to be aligned correctly
++    wxUxThemeEngine::Get()->GetThemeBackgroundExtent
++                            (
++                                theme,
++                                (HDC) hDC,
++                                9 /* TABP_PANE */,
++                                0,
++                                &rc,
++                                &rc
++                            );
+     wxUxThemeEngine::Get()->DrawThemeBackground
+                             (
+                                 theme,
+diff -Naur wxwidgets-orig/src/msw/tbar95.cpp wxwidgets/src/msw/tbar95.cpp
+--- wxwidgets-orig/src/msw/tbar95.cpp  2005-05-31 20:49:56.000000000 +0000
++++ wxwidgets/src/msw/tbar95.cpp       2005-08-24 16:47:00.000000000 +0000
+@@ -4,7 +4,7 @@
+ // Author:      Julian Smart
+ // Modified by:
+ // Created:     04/01/98
+-// RCS-ID:      $Id: tbar95.cpp,v 1.153 2005/05/27 09:14:58 JS Exp $
++// RCS-ID:      $Id: tbar95.cpp,v 1.156 2005/06/09 20:18:24 VZ Exp $
+ // Copyright:   (c) Julian Smart
+ // Licence:     wxWindows licence
+ /////////////////////////////////////////////////////////////////////////////
+@@ -93,9 +93,6 @@
+ // these values correspond to those used by comctl32.dll
+ #define DEFAULTBITMAPX   16
+ #define DEFAULTBITMAPY   15
+-#define DEFAULTBUTTONX   24
+-#define DEFAULTBUTTONY   24
+-#define DEFAULTBARHEIGHT 27
+ // ----------------------------------------------------------------------------
+ // wxWin macros
+@@ -245,31 +242,20 @@
+     SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_BTNFACE));
+     SetFont(wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT));
+-    // workaround for flat toolbar on Windows XP classic style
++    // workaround for flat toolbar on Windows XP classic style: we have to set
++    // the style after creating the control, doing it at creation time doesn't
++    // work
+ #if wxUSE_UXTHEME
+     if ( style & wxTB_FLAT )
+     {
+-        // Testing for an active theme appears to be unnecessary (see comments in patch 1204217).
+-        // Disabling the test brings back separator lines.
+-        // However, the separators can look ugly and distracting, especially between controls,
+-        // so I'm restoring the test and removing the separators again - JACS
+-#if 1
+-        wxUxThemeEngine *p = wxUxThemeEngine::Get();
+-        if ( !p || !p->IsThemeActive() )
+-#endif            
+-        {
+-            DWORD dwToolbarStyle;
+-
+-            dwToolbarStyle = (DWORD)::SendMessage(GetHwnd(), TB_GETSTYLE, 0, 0L );
++        LRESULT style = ::SendMessage(GetHwnd(), TB_GETSTYLE, 0, 0L);
+-            if ((dwToolbarStyle & TBSTYLE_FLAT) == 0)
+-            {
+-                dwToolbarStyle |= TBSTYLE_FLAT;
+-                ::SendMessage(GetHwnd(), TB_SETSTYLE, 0, (LPARAM)dwToolbarStyle );
+-            }
++        if ( !(style & TBSTYLE_FLAT) )
++        {
++            ::SendMessage(GetHwnd(), TB_SETSTYLE, 0, style | TBSTYLE_FLAT);
+         }
+     }
+-#endif
++#endif // wxUSE_UXTHEME
+     return true;
+ }
+@@ -897,7 +883,7 @@
+                                 wxToolBarToolBase *tool = nodePrev->GetData();
+                                 if ( !tool->IsButton() || tool->GetKind() != wxITEM_RADIO )
+                                     break;
+-                                
++
+                                 if ( tool->Toggle(false) )
+                                 {
+                                     DoToggleTool(tool, false);
+@@ -905,7 +891,7 @@
+                                 prevButton.fsState = TBSTATE_ENABLED;
+                                 nodePrev = nodePrev->GetPrevious();
+                                 prevIndex--;
+-                            }                            
++                            }
+                         }
+                         isRadio = true;
+@@ -1249,14 +1235,15 @@
+         return (wxToolBarToolBase *)NULL;
+     }
+-    // if comctl32 version < 4.71 wxToolBar95 adds dummy spacers
+-#if defined(_WIN32_IE) && (_WIN32_IE >= 0x400 )
++    // when TB_SETBUTTONINFO is available (both during compile- and run-time),
++    // we don't use the dummy separators hack
++#ifdef TB_SETBUTTONINFO
+     if ( wxApp::GetComCtl32Version() >= 471 )
+     {
+         return m_tools.Item((size_t)index)->GetData();
+     }
+     else
+-#endif
++#endif // TB_SETBUTTONINFO
+     {
+         return GetItemSkippingDummySpacers( m_tools, (size_t) index );
+     }
+diff -Naur wxwidgets-orig/src/msw/window.cpp wxwidgets/src/msw/window.cpp
+--- wxwidgets-orig/src/msw/window.cpp  2005-05-31 20:49:58.000000000 +0000
++++ wxwidgets/src/msw/window.cpp       2005-08-24 16:47:00.000000000 +0000
+@@ -4,7 +4,7 @@
+ // Author:      Julian Smart
+ // Modified by: VZ on 13.05.99: no more Default(), MSWOnXXX() reorganisation
+ // Created:     04/01/98
+-// RCS-ID:      $Id: window.cpp,v 1.619 2005/05/31 09:20:34 JS Exp $
++// RCS-ID:      $Id: window.cpp,v 1.622 2005/06/21 16:06:45 JS Exp $
+ // Copyright:   (c) Julian Smart
+ // Licence:     wxWindows licence
+ /////////////////////////////////////////////////////////////////////////////
+@@ -2353,6 +2353,7 @@
+             break;
+ #endif // !__WXWINCE__
++#if !(defined(_WIN32_WCE) && _WIN32_WCE < 400)
+         case WM_WINDOWPOSCHANGED:
+             {
+                 WINDOWPOS *lpPos = (WINDOWPOS *)lParam;
+@@ -2365,19 +2366,15 @@
+                     AutoHRGN hrgnClient(::CreateRectRgnIndirect(&rc));
+                     AutoHRGN hrgnNew(::CreateRectRgn(lpPos->x,  lpPos->y,
+                                                      lpPos->cx, lpPos->cy));
+-                    AutoHRGN hrgn(::CreateRectRgn(0, 0, 0, 0));
+                     // we need to invalidate any new exposed areas here
+                     // to force them to repaint
+-                    if ( ::CombineRgn(hrgn, hrgnNew, hrgnClient, RGN_DIFF) != NULLREGION )
+-                        ::InvalidateRgn(GetHwnd(), hrgn, TRUE);
+-                    if ( ::CombineRgn(hrgn, hrgnClient, hrgnNew, RGN_DIFF) != NULLREGION )
+-                        ::InvalidateRgn(GetHwnd(), hrgn, TRUE);
+-
++                    if ( ::CombineRgn(hrgnNew, hrgnNew, hrgnClient, RGN_DIFF) != NULLREGION )
++                        ::InvalidateRgn(GetHwnd(), hrgnNew, TRUE);
+                 }
+             }
+             break;
+-
++#endif
+ #if !defined(__WXMICROWIN__) && !defined(__WXWINCE__)
+         case WM_ACTIVATEAPP:
+             // This implicitly sends a wxEVT_ACTIVATE_APP event
+@@ -4150,6 +4147,11 @@
+     if ( IsTopLevel() || InheritsBackgroundColour() )
+         return false;
++    // sometimes we don't want the parent to handle it at all, instead
++    // return whatever value this window wants
++    if ( !MSWShouldPropagatePrintChild() )
++        return MSWPrintChild(hDC, (wxWindow *)this);
++
+     for ( wxWindow *win = GetParent(); win; win = win->GetParent() )
+     {
+         if ( win->MSWPrintChild(hDC, (wxWindow *)this) )
diff --git a/extras/contrib/src/Patches/x264-20050624-win32.patch b/extras/contrib/src/Patches/x264-20050624-win32.patch
new file mode 100644 (file)
index 0000000..382455c
--- /dev/null
@@ -0,0 +1,203 @@
+Index: common/i386/dct-a.asm
+===================================================================
+--- common/i386/dct-a.asm      (revision 270)
++++ common/i386/dct-a.asm      (working copy)
+@@ -125,27 +125,6 @@
+ ;%endmacro
+ ;=============================================================================
+-; Local Data (Read Only)
+-;=============================================================================
+-
+-%ifdef FORMAT_COFF
+-SECTION .rodata data
+-%else
+-SECTION .rodata data align=16
+-%endif
+-
+-;-----------------------------------------------------------------------------
+-; Various memory constants (trigonometric values or rounding values)
+-;-----------------------------------------------------------------------------
+-
+-ALIGN 16
+-x264_mmx_1:
+-  dw 1, 1, 1, 1
+-
+-x264_mmx_32:
+-  dw 32, 32, 32, 32
+-
+-;=============================================================================
+ ; Code
+ ;=============================================================================
+@@ -311,3 +290,23 @@
+     ret
++;=============================================================================
++; Local Data (Read Only)
++;=============================================================================
++
++%ifdef FORMAT_COFF
++SECTION .rodata data
++%else
++SECTION .rodata data align=16
++%endif
++
++;-----------------------------------------------------------------------------
++; Various memory constants (trigonometric values or rounding values)
++;-----------------------------------------------------------------------------
++
++ALIGN 16
++x264_mmx_1:
++  dw 1, 1, 1, 1
++
++x264_mmx_32:
++  dw 32, 32, 32, 32
+Index: common/i386/mc-a.asm
+===================================================================
+--- common/i386/mc-a.asm       (revision 270)
++++ common/i386/mc-a.asm       (working copy)
+@@ -46,22 +46,6 @@
+ %endmacro
+ ;=============================================================================
+-; Local Data (Read Only)
+-;=============================================================================
+-
+-%ifdef FORMAT_COFF
+-SECTION .rodata data
+-%else
+-SECTION .rodata data align=16
+-%endif
+-
+-;-----------------------------------------------------------------------------
+-; Various memory constants (trigonometric values or rounding values)
+-;-----------------------------------------------------------------------------
+-
+-ALIGN 16
+-
+-;=============================================================================
+ ; Code
+ ;=============================================================================
+@@ -487,3 +471,20 @@
+ .finish
+     pop     edi
+     ret
++
++;=============================================================================
++; Local Data (Read Only)
++;=============================================================================
++
++%ifdef FORMAT_COFF
++SECTION .rodata data
++%else
++SECTION .rodata data align=16
++%endif
++
++;-----------------------------------------------------------------------------
++; Various memory constants (trigonometric values or rounding values)
++;-----------------------------------------------------------------------------
++
++ALIGN 16
++
+Index: common/i386/mc-a2.asm
+===================================================================
+--- common/i386/mc-a2.asm      (revision 270)
++++ common/i386/mc-a2.asm      (working copy)
+@@ -33,22 +33,6 @@
+     %endif
+ %endmacro
+-;=============================================================================
+-; Read only data
+-;=============================================================================
+-
+-SECTION .rodata data align=16
+-
+-ALIGN 16
+-mmx_dw_one:
+-    times 4 dw 16
+-mmx_dd_one:
+-    times 2 dd 512
+-mmx_dw_20:
+-    times 4 dw 20
+-mmx_dw_5:
+-    times 4 dw -5
+-
+ %assign twidth  0
+ %assign theight 4
+ %assign tdstp1  8
+@@ -60,7 +44,6 @@
+ %assign toffset 32
+ %assign tbuffer 36
+-
+ ;=============================================================================
+ ; Macros
+ ;=============================================================================
+@@ -375,3 +358,23 @@
+     pop         edi
+     ret
++
++;=============================================================================
++; Read only data
++;=============================================================================
++
++%ifdef FORMAT_COFF
++SECTION .rodata data
++%else
++SECTION .rodata data align=16
++%endif
++
++ALIGN 16
++mmx_dw_one:
++    times 4 dw 16
++mmx_dd_one:
++    times 2 dd 512
++mmx_dw_20:
++    times 4 dw 20
++mmx_dw_5:
++    times 4 dw -5
+Index: build/cygwin/Makefile
+===================================================================
+--- build/cygwin/Makefile      (revision 270)
++++ build/cygwin/Makefile      (working copy)
+@@ -7,6 +7,8 @@
+ # $Id: Makefile,v 1.4 2004/06/18 02:00:40 chenm001 Exp $
+ ##############################################################################
++CC=i586-mingw32msvc-gcc
++
+ # Current dir
+ DIR_CUR=$(shell pwd)
+@@ -18,7 +20,7 @@
+ # Sources
+ SRC_C= common/mc.c common/predict.c common/pixel.c common/macroblock.c \
+        common/frame.c common/dct.c common/cpu.c common/cabac.c \
+-       common/common.c common/mdate.c common/csp.c \
++       common/common.c common/mdate.c common/csp.c common/set.c \
+        encoder/analyse.c encoder/me.c encoder/ratecontrol.c \
+        encoder/set.c encoder/macroblock.c encoder/cabac.c encoder/cavlc.c \
+        encoder/encoder.c encoder/eval.c \
+@@ -33,7 +35,7 @@
+ ##############################################################################
+ # PFLAGS
+ ##############################################################################
+-PFLAGS=-DARCH_X86 -DHAVE_MMXEXT -UHAVE_SSE2
++PFLAGS=-DHAVE_PTHREAD -DARCH_X86 -DHAVE_MMXEXT -UHAVE_SSE2
+ ##############################################################################
+ # CFLAGS
+@@ -107,7 +109,7 @@
+ libx264.a: $(DIR_BUILD) $(OBJECTS)
+       @echo " L: $(@F)"
+       @cd $(DIR_BUILD) && \
+-      ar rc libx264.a $(OBJECTS) && \
++      i586-mingw32msvc-ar rc libx264.a $(OBJECTS) && \
+       cp -f libx264.a $(DIR_SRC)
+ x264.exe: $(DIR_BUILD) $(OBJECTS) x264.obj
diff --git a/extras/contrib/src/Patches/x264-svn-win32.patch b/extras/contrib/src/Patches/x264-svn-win32.patch
new file mode 100644 (file)
index 0000000..2de18d3
--- /dev/null
@@ -0,0 +1,529 @@
+Index: common/i386/mc-a.asm
+===================================================================
+--- common/i386/mc-a.asm       (revision 346)
++++ common/i386/mc-a.asm       (working copy)
+@@ -46,22 +46,6 @@
+ %endmacro
+ ;=============================================================================
+-; Constants
+-;=============================================================================
+-
+-%ifdef FORMAT_COFF
+-SECTION .rodata data
+-%else
+-SECTION .rodata data align=16
+-%endif
+-
+-ALIGN 16
+-pw_4:  times 4 dw  4
+-pw_8:  times 4 dw  8
+-pw_32: times 4 dw 32
+-pw_64: times 4 dw 64
+-
+-;=============================================================================
+ ; Code
+ ;=============================================================================
+@@ -589,3 +573,20 @@
+ .finish
+     pop     edi
+     ret
++
++;=============================================================================
++; Constants
++;=============================================================================
++
++%ifdef FORMAT_COFF
++SECTION .rodata data
++%else
++SECTION .rodata data align=16
++%endif
++
++ALIGN 16
++pw_4:  times 4 dw  4
++pw_8:  times 4 dw  8
++pw_32: times 4 dw 32
++pw_64: times 4 dw 64
++
+Index: common/i386/deblock-a.asm
+===================================================================
+--- common/i386/deblock-a.asm  (revision 346)
++++ common/i386/deblock-a.asm  (working copy)
+@@ -31,11 +31,6 @@
+     %endif
+ %endmacro
+-SECTION .rodata align=16
+-pb_01: times 16 db 0x01
+-pb_3f: times 16 db 0x3f
+-pb_ff: times 16 db 0xff
+-
+ SECTION .text
+ cglobal x264_deblock_v8_luma_mmxext
+ cglobal x264_deblock_h_luma_mmxext
+@@ -525,3 +520,11 @@
+     pop  ebp
+     CHROMA_END
++;=============================================================================
++; Local Data (Read Only)
++;=============================================================================
++SECTION .rodata align=16
++pb_01: times 16 db 0x01
++pb_3f: times 16 db 0x3f
++pb_ff: times 16 db 0xff
++
+Index: common/i386/dct-a.asm
+===================================================================
+--- common/i386/dct-a.asm      (revision 346)
++++ common/i386/dct-a.asm      (working copy)
+@@ -124,31 +124,6 @@
+ %endmacro
+ ;=============================================================================
+-; Local Data (Read Only)
+-;=============================================================================
+-
+-%ifdef FORMAT_COFF
+-SECTION .rodata data
+-%else
+-SECTION .rodata data align=16
+-%endif
+-
+-;-----------------------------------------------------------------------------
+-; Various memory constants (trigonometric values or rounding values)
+-;-----------------------------------------------------------------------------
+-
+-ALIGN 16
+-x264_mmx_1:        dw  1,  1,  1,  1
+-x264_mmx_32:       dw 32, 32, 32, 32
+-x264_mmx_PPNN:     dw  1,  1, -1, -1
+-x264_mmx_PNPN:     dw  1, -1,  1, -1 
+-x264_mmx_PNNP:     dw  1, -1, -1,  1 
+-x264_mmx_PPPN:     dw  1,  1,  1, -1 
+-x264_mmx_PPNP:     dw  1,  1, -1,  1 
+-x264_mmx_2121:     dw  2,  1,  2,  1 
+-x264_mmx_p2n2p1p1: dw  2, -2,  1,  1
+-
+-;=============================================================================
+ ; Code
+ ;=============================================================================
+@@ -729,3 +704,28 @@
+     %endrep
+     ret
++;=============================================================================
++; Local Data (Read Only)
++;=============================================================================
++
++%ifdef FORMAT_COFF
++SECTION .rodata data
++%else
++SECTION .rodata data align=16
++%endif
++
++;-----------------------------------------------------------------------------
++; Various memory constants (trigonometric values or rounding values)
++;-----------------------------------------------------------------------------
++
++ALIGN 16
++x264_mmx_1:        dw  1,  1,  1,  1
++x264_mmx_32:       dw 32, 32, 32, 32
++x264_mmx_PPNN:     dw  1,  1, -1, -1
++x264_mmx_PNPN:     dw  1, -1,  1, -1 
++x264_mmx_PNNP:     dw  1, -1, -1,  1 
++x264_mmx_PPPN:     dw  1,  1,  1, -1 
++x264_mmx_PPNP:     dw  1,  1, -1,  1 
++x264_mmx_2121:     dw  2,  1,  2,  1 
++x264_mmx_p2n2p1p1: dw  2, -2,  1,  1
++
+Index: common/i386/pixel-sse2.asm
+===================================================================
+--- common/i386/pixel-sse2.asm (revision 346)
++++ common/i386/pixel-sse2.asm (working copy)
+@@ -36,15 +36,6 @@
+ %endmacro
+-%ifdef FORMAT_COFF
+-SECTION .rodata data
+-%else
+-SECTION .rodata data align=16
+-%endif
+-
+-pd_0000ffff: times 4 dd 0x0000ffff
+-
+-
+ SECTION .text
+@@ -531,3 +522,15 @@
+     SATD_END
++;=============================================================================
++; Local Data (Read Only)
++;=============================================================================
++%ifdef FORMAT_COFF
++SECTION .rodata data
++%else
++SECTION .rodata data align=16
++%endif
++
++pd_0000ffff: times 4 dd 0x0000ffff
++
++
+Index: common/i386/mc-a2.asm
+===================================================================
+--- common/i386/mc-a2.asm      (revision 346)
++++ common/i386/mc-a2.asm      (working copy)
+@@ -33,22 +33,6 @@
+     %endif
+ %endmacro
+-;=============================================================================
+-; Read only data
+-;=============================================================================
+-
+-SECTION .rodata data align=16
+-
+-ALIGN 16
+-mmx_dw_one:
+-    times 4 dw 16
+-mmx_dd_one:
+-    times 2 dd 512
+-mmx_dw_20:
+-    times 4 dw 20
+-mmx_dw_5:
+-    times 4 dw -5
+-
+ %assign twidth  0
+ %assign theight 4
+ %assign tdstp1  8
+@@ -374,3 +358,20 @@
+     pop         edi
+     ret
++
++;=============================================================================
++; Read only data
++;=============================================================================
++
++SECTION .rodata data align=16
++
++ALIGN 16
++mmx_dw_one:
++    times 4 dw 16
++mmx_dd_one:
++    times 2 dd 512
++mmx_dw_20:
++    times 4 dw 20
++mmx_dw_5:
++    times 4 dw -5
++
+--- configure.crosscompile~    2005-10-23 14:48:21.000000000 +0200
++++ configure  2005-10-27 17:04:09.000000000 +0200
+@@ -7,6 +7,7 @@
+ echo "available options:"
+ echo ""
+ echo "  --help                   print this message"
++echo "  --crosscompile=ARCH      crosscompile for ARCH"
+ echo "  --enable-avis-input      enables avisynth input (win32 only)"
+ echo "  --enable-mp4-output      enables mp4 output (using gpac)"
+ echo "  --enable-vfw             compiles the VfW frontend"
+@@ -45,43 +46,138 @@
+ EXE=""
+-UNAMES="`uname -s`"
++AR="ar"
++AROPTS="rc"
++RANLIB="ranlib"
++
++UNAMES="`uname -s |tr A-Z a-z`"
++UNAMEM="`uname -m |tr A-Z a-z`"
++
++# parse options
++
++for opt do
++    optarg="${opt#*=}"
++    case "$opt" in
++      --crosscompile=*)
++          CROSS="$optarg"
++          CC="$CROSS-gcc"
++          AR="$CROSS-ar"
++          RANLIB="$CROSS-ranlib"
++          UNAMES="`echo $CROSS | cut -d- -f3`"
++          UNAMEM="`echo $CROSS | cut -d- -f1`"
++          ;;
++      --prefix=*)
++          prefix="$optarg"
++          ;;
++      --exec-prefix=*)
++          eprefix="$optarg"
++          ;;
++      --bindir=*)
++          bindir="$optarg"
++          ;;
++      --libdir=*)
++          libdir="$optarg"
++          ;;
++      --includedir=*)
++          includedir="$optarg"
++          ;;
++        --enable-avis-input)
++            if [ $SYS = CYGWIN -o $SYS = MINGW ]; then
++                CFLAGS="$CFLAGS -DAVIS_INPUT"
++                LDFLAGS="$LDFLAGS -lvfw32"
++                avis_input="yes"
++            fi
++            ;;
++        --enable-mp4-output)
++            CFLAGS="$CFLAGS -DMP4_OUTPUT"
++            LDFLAGS="$LDFLAGS -lgpac_static"
++            if [ $SYS = CYGWIN -o $SYS = MINGW ]; then
++                LDFLAGS="$LDFLAGS -lwinmm"
++            fi
++            mp4_output="yes"
++            ;;
++        --extra-asflags=*)
++            ASFLAGS="$ASFLAGS ${opt#--extra-asflags=}"
++            ;;
++        --extra-cflags=*)
++            CFLAGS="$CFLAGS ${opt#--extra-cflags=}"
++            VFW_CFLAGS="${opt#--extra-cflags=}"
++            ;;
++        --extra-ldflags=*)
++            LDFLAGS="$LDFLAGS ${opt#--extra-ldflags=}"
++            VFW_LDFLAGS="${opt#--extra-ldflags=}"
++            ;;
++        --enable-pthread)
++            CFLAGS="$CFLAGS -DHAVE_PTHREAD=1"
++            pthread="yes"
++            case $SYS in
++              MINGW|CYGWIN|BEOS)
++                ;;
++              *)
++                LDFLAGS="$LDFLAGS -lpthread"
++                ;;
++            esac
++            ;;
++        --enable-debug)
++            CFLAGS="$CFLAGS -g"
++            debug="yes"
++            ;;
++        --enable-gprof)
++            CFLAGS="$CFLAGS -pg"
++            LDFLAGS="$LDFLAGS -pg"
++            gprof="yes"
++            ;;
++        --enable-vfw)
++            vfw="yes"
++            ;;
++        --enable-visualize)
++            LDFLAGS="$LDFLAGS -L/usr/X11R6/lib -lX11"
++            CFLAGS="$CFLAGS -DVISUALIZE=1"
++            vis="yes"
++            ;;
++        *)
++            echo "Unknown option $opt, ignored"
++            ;;
++    esac
++done
++
++
+ case "$UNAMES" in
+-  BeOS)
++  beos)
+     SYS="BEOS"
+     CFLAGS="$CFLAGS -DHAVE_MALLOC_H"
+     ;;
+-  Darwin)
++  darwin)
+     SYS="MACOSX"
+     CFLAGS="$CFLAGS -falign-loops=16"
+     LDFLAGS="$LDFLAGS -lm -lmx"
+     ;;
+-  FreeBSD)
++  freebsd)
+     SYS="FREEBSD"
+     LDFLAGS="$LDFLAGS -lm"
+     ;;
+-  NetBSD)
++  netbsd)
+     SYS="NETBSD"
+     LDFLAGS="$LDFLAGS -lm"
+     ;;
+-  Linux)
++  linux)
+     SYS="LINUX"
+     CFLAGS="$CFLAGS -DHAVE_MALLOC_H"
+     LDFLAGS="$LDFLAGS -lm"
+     ;;
+-  CYGWIN*)
++  cygwin*)
+     SYS="CYGWIN"
+     CFLAGS="$CFLAGS -mno-cygwin"
+     LDFLAGS="$LDFLAGS -mno-cygwin"
+     ASFLAGS="-f win32 -DPREFIX"
+     EXE=".exe"
+     ;;
+-  MINGW*)
++  mingw*)
+     SYS="MINGW"
+     ASFLAGS="-f win32 -DPREFIX"
+     EXE=".exe"
+     ;;
+-  SunOS)
++  sunos)
+     SYS="SunOS"
+     CFLAGS="$CFLAGS -DHAVE_MALLOC_H"
+     LDFLAGS="$LDFLAGS -lm"
+@@ -93,9 +189,8 @@
+     ;;
+ esac
+-UNAMEM="`uname -m`"
+ case "$UNAMEM" in
+-  i386|i486|i586|i686|BePC)
++  i386|i486|i586|i686|bepc)
+     ARCH="X86"
+     CFLAGS="$CFLAGS -DHAVE_MMXEXT -DHAVE_SSE2"
+     ;;
+@@ -105,7 +200,7 @@
+     AS="yasm"
+     ASFLAGS="-f elf -m amd64"
+     ;;
+-  "Power Macintosh"|ppc)
++  "power macintosh"|ppc)
+     ARCH="PPC"
+     if [ $SYS = MACOSX ]
+     then
+@@ -150,86 +245,6 @@
+ CFLAGS="$CFLAGS -DARCH_$ARCH -DSYS_$SYS"
+-# parse options
+-
+-for opt do
+-    optarg="${opt#*=}"
+-    case "$opt" in
+-        --prefix=*)
+-            prefix="$optarg"
+-            ;;
+-        --exec-prefix=*)
+-            eprefix="$optarg"
+-            ;;
+-        --bindir=*)
+-            bindir="$optarg"
+-            ;;
+-        --libdir=*)
+-            libdir="$optarg"
+-            ;;
+-        --includedir=*)
+-            includedir="$optarg"
+-            ;;
+-        --enable-avis-input)
+-            if [ $SYS = CYGWIN -o $SYS = MINGW ]; then
+-                CFLAGS="$CFLAGS -DAVIS_INPUT"
+-                LDFLAGS="$LDFLAGS -lvfw32"
+-                avis_input="yes"
+-            fi
+-            ;;
+-        --enable-mp4-output)
+-            CFLAGS="$CFLAGS -DMP4_OUTPUT"
+-            LDFLAGS="$LDFLAGS -lgpac_static"
+-            if [ $SYS = CYGWIN -o $SYS = MINGW ]; then
+-                LDFLAGS="$LDFLAGS -lwinmm"
+-            fi
+-            mp4_output="yes"
+-            ;;
+-        --extra-asflags=*)
+-            ASFLAGS="$ASFLAGS ${opt#--extra-asflags=}"
+-            ;;
+-        --extra-cflags=*)
+-            CFLAGS="$CFLAGS ${opt#--extra-cflags=}"
+-            VFW_CFLAGS="${opt#--extra-cflags=}"
+-            ;;
+-        --extra-ldflags=*)
+-            LDFLAGS="$LDFLAGS ${opt#--extra-ldflags=}"
+-            VFW_LDFLAGS="${opt#--extra-ldflags=}"
+-            ;;
+-        --enable-pthread)
+-            CFLAGS="$CFLAGS -DHAVE_PTHREAD=1"
+-            pthread="yes"
+-            case $SYS in
+-              MINGW|CYGWIN|BEOS)
+-                ;;
+-              *)
+-                LDFLAGS="$LDFLAGS -lpthread"
+-                ;;
+-            esac
+-            ;;
+-        --enable-debug)
+-            CFLAGS="$CFLAGS -g"
+-            debug="yes"
+-            ;;
+-        --enable-gprof)
+-            CFLAGS="$CFLAGS -pg"
+-            LDFLAGS="$LDFLAGS -pg"
+-            gprof="yes"
+-            ;;
+-        --enable-vfw)
+-            vfw="yes"
+-            ;;
+-        --enable-visualize)
+-            LDFLAGS="$LDFLAGS -L/usr/X11R6/lib -lX11"
+-            CFLAGS="$CFLAGS -DVISUALIZE=1"
+-            vis="yes"
+-            ;;
+-        *)
+-            echo "Unknown option $opt, ignored"
+-            ;;
+-    esac
+-done
+-
+ VFWFLAGS=
+ if [ "$debug" != "yes" -a "$gprof" != "yes" ]; then
+     CFLAGS="$CFLAGS -s -fomit-frame-pointer"
+@@ -253,6 +268,9 @@
+ ASFLAGS=$ASFLAGS
+ VFW=$vfw
+ EXE=$EXE
++AR=$AR
++AROPTS=$AROPTS
++RANLIB=$RANLIB
+ VIS=$vis
+ HAVE_GETOPT_LONG=$HAVE_GETOPT_LONG
+ EOF
+--- x264/Makefile.crosscompile~        2005-10-27 17:01:35.000000000 +0200
++++ x264/Makefile      2005-10-27 17:02:51.000000000 +0200
+@@ -62,8 +62,8 @@
+ default: $(DEP) x264$(EXE)
+ libx264.a: .depend $(OBJS) $(OBJASM)
+-      ar rc libx264.a $(OBJS) $(OBJASM)
+-      ranlib libx264.a
++      $(AR) $(AROPTS) libx264.a $(OBJS) $(OBJASM)
++      $(RANLIB) libx264.a
+ x264$(EXE): libx264.a x264.o matroska.o
+       $(CC) -o $@ x264.o matroska.o libx264.a $(LDFLAGS)
+@@ -100,12 +100,12 @@
+ distclean: clean
+       rm -f config.mak vfw/build/cygwin/config.mak
+-install: x264
++install: x264$(EXE)
+       install -d $(DESTDIR)$(bindir) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir)
+       install -m 644 x264.h $(DESTDIR)$(includedir)
+       install -m 644 libx264.a $(DESTDIR)$(libdir)
+-      install x264 $(DESTDIR)$(bindir)
+-      ranlib $(DESTDIR)$(libdir)/libx264.a
++      install x264$(EXE) $(DESTDIR)$(bindir)
++      $(RANLIB) $(DESTDIR)$(libdir)/libx264.a
+ etags: TAGS
diff --git a/extras/contrib/src/Patches/xml2-win32.patch b/extras/contrib/src/Patches/xml2-win32.patch
new file mode 100644 (file)
index 0000000..f13fea9
--- /dev/null
@@ -0,0 +1,193 @@
+# Get rid of the test programs. -- Xtophe
+--- xml/Makefile.am    2005-07-11 00:53:13.000000000 +0200
++++ xml-new/Makefile.am        2005-08-30 21:36:51.000000000 +0200
+@@ -1,16 +1,16 @@
+ ## Process this file with automake to produce Makefile.in
+-SUBDIRS = include . doc example xstc @PYTHON_SUBDIR@
++SUBDIRS = include . 
+-DIST_SUBDIRS = include . doc example python xstc
++DIST_SUBDIRS = include . 
+ INCLUDES = -I$(top_builddir)/include -I@srcdir@/include @THREAD_CFLAGS@ @Z_CFLAGS@ 
+-noinst_PROGRAMS=testSchemas testRelax testSAX testHTML testXPath testURI \
+-                testThreads testC14N testAutomata testRegexp \
+-                testReader testapi testModule runtest runsuite
++#noinst_PROGRAMS=testSchemas testRelax testSAX testHTML testXPath testURI \
++#                testThreads testC14N testAutomata testRegexp \
++#                testReader testapi testModule runtest runsuite
+-bin_PROGRAMS = xmllint xmlcatalog
++#bin_PROGRAMS = xmllint xmlcatalog
+ bin_SCRIPTS=xml2-config
+@@ -49,86 +49,86 @@
+ m4datadir = $(datadir)/aclocal
+ m4data_DATA = libxml.m4
+-runtest_SOURCES=runtest.c
+-runtest_LDFLAGS = 
+-runtest_DEPENDENCIES = $(DEPS)
+-runtest_LDADD= @BASE_THREAD_LIBS@ @RDL_LIBS@ $(LDADDS)
+-
+-runsuite_SOURCES=runsuite.c
+-runsuite_LDFLAGS = 
+-runsuite_DEPENDENCIES = $(DEPS)
+-runsuite_LDADD= @RDL_LIBS@ $(LDADDS)
+-
+-xmllint_SOURCES=xmllint.c
+-xmllint_LDFLAGS = 
+-xmllint_DEPENDENCIES = $(DEPS)
+-xmllint_LDADD=  @RDL_LIBS@ $(LDADDS)
+-
+-testSAX_SOURCES=testSAX.c
+-testSAX_LDFLAGS = 
+-testSAX_DEPENDENCIES = $(DEPS)
+-testSAX_LDADD= $(LDADDS)
+-
+-testHTML_SOURCES=testHTML.c
+-testHTML_LDFLAGS = 
+-testHTML_DEPENDENCIES = $(DEPS)
+-testHTML_LDADD= $(LDADDS)
+-
+-xmlcatalog_SOURCES=xmlcatalog.c
+-xmlcatalog_LDFLAGS = 
+-xmlcatalog_DEPENDENCIES = $(DEPS)
+-xmlcatalog_LDADD= @RDL_LIBS@ $(LDADDS)
+-
+-testXPath_SOURCES=testXPath.c
+-testXPath_LDFLAGS = 
+-testXPath_DEPENDENCIES = $(DEPS)
+-testXPath_LDADD= $(LDADDS)
+-
+-testC14N_SOURCES=testC14N.c
+-testC14N_LDFLAGS = 
+-testC14N_DEPENDENCIES = $(DEPS)
+-testC14N_LDADD= $(LDADDS)
+-
+-testThreads_SOURCES=testThreads@THREADS_W32@.c
+-testThreads_LDFLAGS = 
+-testThreads_DEPENDENCIES = $(DEPS)
+-testThreads_LDADD= @BASE_THREAD_LIBS@  $(LDADDS)
+-
+-testURI_SOURCES=testURI.c
+-testURI_LDFLAGS = 
+-testURI_DEPENDENCIES = $(DEPS)
+-testURI_LDADD= $(LDADDS)
+-
+-testRegexp_SOURCES=testRegexp.c
+-testRegexp_LDFLAGS = 
+-testRegexp_DEPENDENCIES = $(DEPS)
+-testRegexp_LDADD= $(LDADDS)
+-
+-testAutomata_SOURCES=testAutomata.c
+-testAutomata_LDFLAGS = 
+-testAutomata_DEPENDENCIES = $(DEPS)
+-testAutomata_LDADD= $(LDADDS)
+-
+-testSchemas_SOURCES=testSchemas.c
+-testSchemas_LDFLAGS = 
+-testSchemas_DEPENDENCIES = $(DEPS)
+-testSchemas_LDADD= $(LDADDS)
+-
+-testRelax_SOURCES=testRelax.c
+-testRelax_LDFLAGS = 
+-testRelax_DEPENDENCIES = $(DEPS)
+-testRelax_LDADD= $(LDADDS)
+-
+-testReader_SOURCES=testReader.c
+-testReader_LDFLAGS = 
+-testReader_DEPENDENCIES = $(DEPS)
+-testReader_LDADD= $(LDADDS)
+-
+-testModule_SOURCES=testModule.c
+-testModule_LDFLAGS = 
+-testModule_DEPENDENCIES = $(DEPS)
+-testModule_LDADD= $(LDADDS)
+-
++#runtest_SOURCES=runtest.c
++#runtest_LDFLAGS = 
++#runtest_DEPENDENCIES = $(DEPS)
++#runtest_LDADD= @BASE_THREAD_LIBS@ @RDL_LIBS@ $(LDADDS)
++#
++#runsuite_SOURCES=runsuite.c
++#runsuite_LDFLAGS = 
++#runsuite_DEPENDENCIES = $(DEPS)
++#runsuite_LDADD= @RDL_LIBS@ $(LDADDS)
++#
++##xmllint_SOURCES=xmllint.c
++##xmllint_LDFLAGS = 
++##xmllint_DEPENDENCIES = $(DEPS)
++##xmllint_LDADD=  @RDL_LIBS@ $(LDADDS)
++##
++#testSAX_SOURCES=testSAX.c
++#testSAX_LDFLAGS = 
++#testSAX_DEPENDENCIES = $(DEPS)
++#testSAX_LDADD= $(LDADDS)
++#
++#testHTML_SOURCES=testHTML.c
++#testHTML_LDFLAGS = 
++#testHTML_DEPENDENCIES = $(DEPS)
++#testHTML_LDADD= $(LDADDS)
++#
++##xmlcatalog_SOURCES=xmlcatalog.c
++##xmlcatalog_LDFLAGS = 
++##xmlcatalog_DEPENDENCIES = $(DEPS)
++##xmlcatalog_LDADD= @RDL_LIBS@ $(LDADDS)
++##
++#testXPath_SOURCES=testXPath.c
++#testXPath_LDFLAGS = 
++#testXPath_DEPENDENCIES = $(DEPS)
++#testXPath_LDADD= $(LDADDS)
++#
++#testC14N_SOURCES=testC14N.c
++#testC14N_LDFLAGS = 
++#testC14N_DEPENDENCIES = $(DEPS)
++#testC14N_LDADD= $(LDADDS)
++#
++#testThreads_SOURCES=testThreads@THREADS_W32@.c
++#testThreads_LDFLAGS = 
++#testThreads_DEPENDENCIES = $(DEPS)
++#testThreads_LDADD= @BASE_THREAD_LIBS@  $(LDADDS)
++#
++#testURI_SOURCES=testURI.c
++#testURI_LDFLAGS = 
++#testURI_DEPENDENCIES = $(DEPS)
++#testURI_LDADD= $(LDADDS)
++#
++#testRegexp_SOURCES=testRegexp.c
++#testRegexp_LDFLAGS = 
++#testRegexp_DEPENDENCIES = $(DEPS)
++#testRegexp_LDADD= $(LDADDS)
++#
++#testAutomata_SOURCES=testAutomata.c
++#testAutomata_LDFLAGS = 
++#testAutomata_DEPENDENCIES = $(DEPS)
++#testAutomata_LDADD= $(LDADDS)
++#
++#testSchemas_SOURCES=testSchemas.c
++#testSchemas_LDFLAGS = 
++#testSchemas_DEPENDENCIES = $(DEPS)
++#testSchemas_LDADD= $(LDADDS)
++#
++#testRelax_SOURCES=testRelax.c
++#testRelax_LDFLAGS = 
++#testRelax_DEPENDENCIES = $(DEPS)
++#testRelax_LDADD= $(LDADDS)
++#
++#testReader_SOURCES=testReader.c
++#testReader_LDFLAGS = 
++#testReader_DEPENDENCIES = $(DEPS)
++#testReader_LDADD= $(LDADDS)
++#
++#testModule_SOURCES=testModule.c
++#testModule_LDFLAGS = 
++#testModule_DEPENDENCIES = $(DEPS)
++#testModule_LDADD= $(LDADDS)
++#
+ noinst_LTLIBRARIES = testdso.la
+ testdso_la_SOURCES = testdso.c
+ testdso_la_LDFLAGS = -module -rpath $(libdir)
index 500250c..690836e 100644 (file)
@@ -74,7 +74,7 @@ FAAD2_URL=$(VIDEOLAN)/testing/contrib/faad2-$(FAAD2_VERSION).tar.bz2
 FAAD2_CVSROOT=:pserver:anonymous@cvs.audiocoding.com:/cvsroot/faac
 FAAC_VERSION=1.24
 FAAC_URL=$(VIDEOLAN)/testing/contrib/faac-$(FAAC_VERSION).tar.bz2
-LAME_VERSION=3.93.1
+LAME_VERSION=3.96.1
 LAME_URL=$(SF)/lame/lame-$(LAME_VERSION).tar.gz
 LIBEBML_VERSION=0.7.6
 LIBEBML_URL=http://dl.matroska.org/downloads/libebml/libebml-$(LIBEBML_VERSION).tar.bz2
@@ -87,10 +87,10 @@ OPENSLP_VERSION=1.0.11
 OPENSLP_URL=$(SF)/openslp/openslp-$(OPENSLP_VERSION).tar.gz
 LIBDVDCSS_VERSION=1.2.8
 LIBDVDCSS_URL=$(VIDEOLAN)/libdvdcss/$(LIBDVDCSS_VERSION)/libdvdcss-$(LIBDVDCSS_VERSION).tar.gz
-LIBDVDREAD_VERSION=0.9.4
-LIBDVDREAD_URL=http://download.videolan.org/pub/videolan/libdvdread/$(LIBDVDREAD_VERSION)/libdvdread-$(LIBDVDREAD_VERSION).tar.gz
-LIBDVDNAV_VERSION=0.1.10
-LIBDVDNAV_URL=$(VIDEOLAN)/testing/contrib/libdvdnav-$(LIBDVDNAV_VERSION).tar.gz
+LIBDVDREAD_VERSION=20041028
+LIBDVDREAD_URL=$(VIDEOLAN)/contrib/libdvdread-$(LIBDVDREAD_VERSION).tar.bz2
+LIBDVDNAV_VERSION=20050211
+LIBDVDNAV_URL=$(VIDEOLAN)/testing/contrib/libdvdnav-$(LIBDVDNAV_VERSION).tar.bz2
 LIBDVBPSI_VERSION=0.1.5
 LIBDVBPSI_URL=$(VIDEOLAN)/contrib/libdvbpsi3-$(LIBDVBPSI_VERSION).tar.gz
 LIVEDOTCOM_VERSION=latest
@@ -101,7 +101,7 @@ GOOM2k4_URL=$(SF)/goom/goom-$(GOOM2k4_VERSION)-src.tar.gz
 LIBCACA_VERSION=0.9
 LIBCACA_URL=http://sam.zoy.org/libcaca/libcaca-$(LIBCACA_VERSION).tar.gz
 LIBDTS_VERSION=0.0.2
-LIBDTS_URL=$(VIDEOLAN)/libdts/$(LIBDTS_VERSION)/libdts-$(LIBDTS_VERSION).tar.gz
+LIBDTS_URL=http://debian.unnet.nl/pub/videolan/libdts/$(LIBDTS_VERSION)/libdts-$(LIBDTS_VERSION).tar.gz
 MODPLUG_VERSION=0.7
 MODPLUG_URL=$(VIDEOLAN)/testing/contrib/libmodplug-$(MODPLUG_VERSION).tar.gz
 MASH_VERSION=5.2
@@ -116,10 +116,10 @@ PNG_VERSION=1.2.5
 PNG_URL=$(VIDEOLAN)/testing/contrib/libpng-$(PNG_VERSION).tar.bz2
 GPGERROR_VERSION=1.0
 GPGERROR_URL=$(VIDEOLAN)/testing/contrib/libgpg-error-$(GPGERROR_VERSION).tar.gz
-GCRYPT_VERSION=1.2.0
-GCRYPT_URL=$(VIDEOLAN)/testing/contrib/libgcrypt-$(GCRYPT_VERSION).tar.gz
-GNUTLS_VERSION=1.2.6
-GNUTLS_URL=ftp://ftp.gnutls.org/pub/gnutls/gnutls-$(GNUTLS_VERSION).tar.bz2
+GCRYPT_VERSION=1.2.1
+GCRYPT_URL=$(VIDEOLAN)/testing/contrib/libgcrypt-$(GCRYPT_VERSION).tar.bz2
+GNUTLS_VERSION=1.2.7
+GNUTLS_URL=http://ftp.gnupg.org/gcrypt/gnutls/gnutls-$(GNUTLS_VERSION).tar.bz2
 DAAP_VERSION=0.4.0
 DAAP_URL=http://craz.net/programs/itunes/files/libopendaap-$(DAAP_VERSION).tar.bz2
 GLIB_VERSION=1.2.8
@@ -127,6 +127,9 @@ GLIB_URL=ftp://ftp.gtk.org/pub/gtk/v1.2/glib-1.2.8.tar.gz
 LIBIDL_VERSION=0.6.8
 LIBIDL_URL=http://andrewtv.org/libIDL/libIDL-$(LIBIDL_VERSION).tar.gz
 GECKO_SDK_MAC_URL=$(VIDEOLAN)/testing/contrib/gecko-sdk-ppc-macosx10.2-1.7.5.tar.gz
+GECKO_SDK_WIN32_URL=ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla1.7.5/gecko-sdk-i586-pc-msvc-1.7.5.zip
+LIBIDL_WIN32_BIN_URL=ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/libIDL-0.6.3-win32-bin.zip
+VC71_GLIB_WIN32_BIN_URL=ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/vc71-glib-1.2.10-bin.zip
 MOZILLA_VERSION=1.7.5
 MOZILLA_URL=http://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla$(MOZILLA_VERSION)/source/mozilla-source-$(MOZILLA_VERSION).tar.bz2
 TWOLAME_VERSION=0.3.2
@@ -143,3 +146,13 @@ SDL_IMAGE_VERSION=1.2.4
 SDL_IMAGE_URL=http://www.libsdl.org/projects/SDL_image/release/SDL_image-$(SDL_IMAGE_VERSION).tar.gz
 MUSE_VERSION=1.2.1
 MUSE_URL=http://files.musepack.net/source/libmpcdec-$(MUSE_VERSION).tar.bz2
+WXWIDGETS_VERSION=2.6.2
+WXWIDGETS_URL=$(SF)/wxwindows/wxWidgets-$(WXWIDGETS_VERSION).tar.gz
+ZLIB_VERSION=1.2.3
+ZLIB_URL=$(SF)/libpng/zlib-$(ZLIB_VERSION).tar.gz
+XML_VERSION=2.6.20
+XML_URL=http://xmlsoft.org/sources/libxml2-$(XML_VERSION).tar.gz
+DIRAC_VERSION=0.5.3
+DIRAC_URL=$(SF)/dirac/dirac-$(DIRAC_VERSION).tar.gz
+DX_HEADERS_URL=$(VIDEOLAN)/testing/contrib/win32-dx7headers.tgz
+DSHOW_HEADERS_URL=$(VIDEOLAN)/contrib/dshow-headers.tgz
index 1b974f5..144104d 100644 (file)
--- a/m4/vlc.m4
+++ b/m4/vlc.m4
@@ -3,6 +3,8 @@ dnl  $Id$
 
 dnl ===========================================================================
 dnl  Macros to add plugins or builtins and handle their flags
+m4_pattern_allow([^PKG_CONFIG(_LIBDIR)?$])
+
 
 AC_DEFUN([VLC_ADD_BUILTINS], [
   BUILTINS="${BUILTINS} $1"