From 0a5027d1cdcff19dbb5e8f8fc9e325fa47ed091b Mon Sep 17 00:00:00 2001 From: Christophe Mutricy Date: Tue, 1 Nov 2005 11:30:23 +0000 Subject: [PATCH] ALL: Merge the win32-contrib branch. Todo: Fix FLAC SDL patch by Meuh --- configure.ac | 7 + extras/contrib/src/Makefile | 410 +- extras/contrib/src/Patches/dirac-cross.patch | 78 + .../src/Patches/faad2-20050513-win32.patch | 20 + .../src/Patches/ffmpeg-20050513-win32.patch | 17 + .../contrib/src/Patches/ffmpeg-beos.patch.cvs | 0 extras/contrib/src/Patches/ffmpeg-cvs.patch | 16 + extras/contrib/src/Patches/ffmpeg.patch | 97 - extras/contrib/src/Patches/ffmpeg.patch.cvs | 101 - .../contrib/src/Patches/fribidi-win32.patch | 21 + extras/contrib/src/Patches/gettext-osx.patch | 0 extras/contrib/src/Patches/gettext.patch | 103 - .../contrib/src/Patches/goom2k4-0-win32.patch | 68 + .../src/Patches/goom2k4-0-win32.patch.bak | 150 + .../Patches/libdvdnav-20050211-win32.patch | 245 ++ .../Patches/libdvdread-20041028-win32.patch | 112 + .../src/Patches/libdvdread-win32.patch | 61 + extras/contrib/src/Patches/libdvdread.patch | 26 +- .../src/Patches/libebml-svn-win32.patch | 41 + extras/contrib/src/Patches/libiconv.patch | 3376 ----------------- .../src/Patches/libmatroska-win32.patch | 17 + .../src/Patches/libogg-1.1-win32.patch | 16 + .../src/Patches/libpng-1.2.5-win32.patch | 47 + .../src/Patches/livedotcom-win32.patch | 25 + extras/contrib/src/Patches/tiff-cross.patch | 27 + .../src/Patches/wx-cvs-2005-02-09-patch.diff | 13 + extras/contrib/src/Patches/wxMSW-win32.patch | 592 +++ .../src/Patches/x264-20050624-win32.patch | 203 + .../contrib/src/Patches/x264-svn-win32.patch | 529 +++ extras/contrib/src/Patches/xml2-win32.patch | 193 + extras/contrib/src/packages.mak | 33 +- m4/vlc.m4 | 2 + 32 files changed, 2874 insertions(+), 3772 deletions(-) create mode 100644 extras/contrib/src/Patches/dirac-cross.patch create mode 100644 extras/contrib/src/Patches/faad2-20050513-win32.patch create mode 100644 extras/contrib/src/Patches/ffmpeg-20050513-win32.patch create mode 100644 extras/contrib/src/Patches/ffmpeg-beos.patch.cvs create mode 100644 extras/contrib/src/Patches/ffmpeg-cvs.patch delete mode 100644 extras/contrib/src/Patches/ffmpeg.patch delete mode 100644 extras/contrib/src/Patches/ffmpeg.patch.cvs create mode 100644 extras/contrib/src/Patches/fribidi-win32.patch create mode 100644 extras/contrib/src/Patches/gettext-osx.patch delete mode 100644 extras/contrib/src/Patches/gettext.patch create mode 100644 extras/contrib/src/Patches/goom2k4-0-win32.patch create mode 100644 extras/contrib/src/Patches/goom2k4-0-win32.patch.bak create mode 100644 extras/contrib/src/Patches/libdvdnav-20050211-win32.patch create mode 100644 extras/contrib/src/Patches/libdvdread-20041028-win32.patch create mode 100644 extras/contrib/src/Patches/libdvdread-win32.patch create mode 100644 extras/contrib/src/Patches/libebml-svn-win32.patch create mode 100644 extras/contrib/src/Patches/libmatroska-win32.patch create mode 100644 extras/contrib/src/Patches/libogg-1.1-win32.patch create mode 100644 extras/contrib/src/Patches/libpng-1.2.5-win32.patch create mode 100644 extras/contrib/src/Patches/livedotcom-win32.patch create mode 100644 extras/contrib/src/Patches/tiff-cross.patch create mode 100644 extras/contrib/src/Patches/wx-cvs-2005-02-09-patch.diff create mode 100644 extras/contrib/src/Patches/wxMSW-win32.patch create mode 100644 extras/contrib/src/Patches/x264-20050624-win32.patch create mode 100644 extras/contrib/src/Patches/x264-svn-win32.patch create mode 100644 extras/contrib/src/Patches/xml2-win32.patch diff --git a/configure.ac b/configure.ac index 527299af77..a1da8a2d3f 100644 --- a/configure.ac +++ b/configure.ac @@ -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" diff --git a/extras/contrib/src/Makefile b/extras/contrib/src/Makefile index dd45746822..a198b2bb08 100644 --- a/extras/contrib/src/Makefile +++ b/extras/contrib/src/Makefile @@ -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 ./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 |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 + #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 index 0000000000..e69de29bb2 diff --git a/extras/contrib/src/Patches/ffmpeg-cvs.patch b/extras/contrib/src/Patches/ffmpeg-cvs.patch new file mode 100644 index 0000000000..67a647432b --- /dev/null +++ b/extras/contrib/src/Patches/ffmpeg-cvs.patch @@ -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 index 8abe10c83f..0000000000 --- a/extras/contrib/src/Patches/ffmpeg.patch +++ /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 - #include - -+/* 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 /* for select() prototype */ - #include -+#include - #include - #include - #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 - #include - #include -+#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 index 2b792cba63..0000000000 --- a/extras/contrib/src/Patches/ffmpeg.patch.cvs +++ /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 - #include - -+/* 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 - #include - #include -+#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 index 0000000000..b0638235aa --- /dev/null +++ b/extras/contrib/src/Patches/fribidi-win32.patch @@ -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 index 0000000000..e69de29bb2 diff --git a/extras/contrib/src/Patches/gettext.patch b/extras/contrib/src/Patches/gettext.patch deleted file mode 100644 index d828a39db4..0000000000 --- a/extras/contrib/src/Patches/gettext.patch +++ /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 - #include -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 - --#if !HAVE_POSIX_PRINTF -+#if !HAVE_POSIX_PRINTF && !defined(__BEOS__) - - #include - #include -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 - #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 - #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 - #endif - --#if HAVE_VASPRINTF && HAVE_POSIX_PRINTF -+#if ( HAVE_VASPRINTF && HAVE_POSIX_PRINTF ) || defined(__BEOS__) - - /* Get asprintf(), vasprintf() declarations. */ - #include diff --git a/extras/contrib/src/Patches/goom2k4-0-win32.patch b/extras/contrib/src/Patches/goom2k4-0-win32.patch new file mode 100644 index 0000000000..fd5819af0a --- /dev/null +++ b/extras/contrib/src/Patches/goom2k4-0-win32.patch @@ -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) + +-AM_DISABLE_STATIC + AM_INIT_AUTOMAKE(SDL_Goom, 2k4) + + ACLOCAL="$ACLOCAL -I m4" +@@ -76,24 +75,7 @@ + AM_CONDITIONAL(MACTARGET,test "x$MACTARGET" = "xyes") + + +-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") +- +-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 + dnl echo -n checking for nasm... +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 index 0000000000..27adae33b5 --- /dev/null +++ b/extras/contrib/src/Patches/goom2k4-0-win32.patch.bak @@ -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 index 0000000000..047dc90a84 --- /dev/null +++ b/extras/contrib/src/Patches/libdvdnav-20050211-win32.patch @@ -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 + #include +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 ++ ++#include ++#include ++#include ++#include /* 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 + # include +-# include +-# include /* 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 +-#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 + #include + #include /* 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 + #include + +-#include "ifo_types.h" /* vm_cmd_t */ ++#include /* 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 + #include + +-#include "ifo_types.h" +-#include "ifo_read.h" ++/* from dvdread */ ++#include ++#include + + #include "dvdnav_internal.h" + + #ifdef _MSC_VER + #include /* 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 index 0000000000..ebc5a68e50 --- /dev/null +++ b/extras/contrib/src/Patches/libdvdread-20041028-win32.patch @@ -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 ], + [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 + #include ++ ++#if defined(HAVE_INTTYPES_H) ++#include ++#elif defined(HAVE_STDINT_H) ++#include ++#endif ++ + #include + #include + + #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 index 0000000000..e27b7d2aa2 --- /dev/null +++ b/extras/contrib/src/Patches/libdvdread-win32.patch @@ -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 + #include ++ ++#if defined(HAVE_INTTYPES_H) ++#include ++#elif defined(HAVE_STDINT_H) ++#include ++#endif ++ + #include + #include + + #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.patch b/extras/contrib/src/Patches/libdvdread.patch index e813215493..357a7fb992 100644 --- a/extras/contrib/src/Patches/libdvdread.patch +++ b/extras/contrib/src/Patches/libdvdread.patch @@ -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 index 0000000000..3c2023b781 --- /dev/null +++ b/extras/contrib/src/Patches/libebml-svn-win32.patch @@ -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) diff --git a/extras/contrib/src/Patches/libiconv.patch b/extras/contrib/src/Patches/libiconv.patch index c8b161bacd..e69de29bb2 100644 --- a/extras/contrib/src/Patches/libiconv.patch +++ b/extras/contrib/src/Patches/libiconv.patch @@ -1,3376 +0,0 @@ -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 -+ -+#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 index 0000000000..91719cb8ea --- /dev/null +++ b/extras/contrib/src/Patches/libmatroska-win32.patch @@ -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 index 0000000000..d032445bf3 --- /dev/null +++ b/extras/contrib/src/Patches/libogg-1.1-win32.patch @@ -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 index 0000000000..043189917d --- /dev/null +++ b/extras/contrib/src/Patches/libpng-1.2.5-win32.patch @@ -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 index 0000000000..4ff6c95dc6 --- /dev/null +++ b/extras/contrib/src/Patches/livedotcom-win32.patch @@ -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 index 0000000000..64aa08871f --- /dev/null +++ b/extras/contrib/src/Patches/tiff-cross.patch @@ -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 index 0000000000..7410cdf9cb --- /dev/null +++ b/extras/contrib/src/Patches/wx-cvs-2005-02-09-patch.diff @@ -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 index 0000000000..7c1c6637fe --- /dev/null +++ b/extras/contrib/src/Patches/wxMSW-win32.patch @@ -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 ++#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 + // 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 index 0000000000..382455cbb4 --- /dev/null +++ b/extras/contrib/src/Patches/x264-20050624-win32.patch @@ -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 index 0000000000..2de18d3860 --- /dev/null +++ b/extras/contrib/src/Patches/x264-svn-win32.patch @@ -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 index 0000000000..f13fea9b64 --- /dev/null +++ b/extras/contrib/src/Patches/xml2-win32.patch @@ -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) diff --git a/extras/contrib/src/packages.mak b/extras/contrib/src/packages.mak index 500250ced3..690836e363 100644 --- a/extras/contrib/src/packages.mak +++ b/extras/contrib/src/packages.mak @@ -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 diff --git a/m4/vlc.m4 b/m4/vlc.m4 index 1b974f574f..144104d987 100644 --- 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" -- 2.39.2